From cd812337aeb4d6a807b057b2ae9c413a66b94cac Mon Sep 17 00:00:00 2001 From: dstocco Date: Tue, 22 Jun 2021 11:27:24 +0200 Subject: [PATCH 001/314] Bug fix: use correct index over neighbour boards --- Detectors/MUON/MID/Clustering/src/PreClustersDE.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/MUON/MID/Clustering/src/PreClustersDE.cxx b/Detectors/MUON/MID/Clustering/src/PreClustersDE.cxx index 7f68b22fa7f8c..c2716aec0b83e 100644 --- a/Detectors/MUON/MID/Clustering/src/PreClustersDE.cxx +++ b/Detectors/MUON/MID/Clustering/src/PreClustersDE.cxx @@ -43,7 +43,7 @@ std::vector PreClustersDE::getNeighbours(int icolumn, int idx) const } const BP& pcB = mPreClustersBP[icolumn][idx]; for (int ib = 0; ib < mPreClustersBP[icolumn + 1].size(); ++ib) { - const BP& neigh = mPreClustersBP[icolumn + 1][idx]; + const BP& neigh = mPreClustersBP[icolumn + 1][ib]; if (neigh.area.getYmin() > pcB.area.getYmax()) { continue; } From 637273319e41c71de60e624ff6f15a47eb52e62f Mon Sep 17 00:00:00 2001 From: shahoian Date: Tue, 22 Jun 2021 18:42:53 +0200 Subject: [PATCH 002/314] Do not use std::array in ConfigurableParam --- .../reconstruction/include/ZDCReconstruction/RecoParamZDC.h | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/RecoParamZDC.h b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/RecoParamZDC.h index 008c5dbb34756..47d07b4c0bd6c 100644 --- a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/RecoParamZDC.h +++ b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/RecoParamZDC.h @@ -11,7 +11,6 @@ #ifndef O2_ZDC_RECOPARAMZDC_H #define O2_ZDC_RECOPARAMZDC_H -#include #include "CommonUtils/ConfigurableParam.h" #include "CommonUtils/ConfigurableParamHelper.h" #include "ZDCBase/Constants.h" @@ -28,7 +27,7 @@ struct RecoParamZDC : public o2::conf::ConfigurableParamHelper { // Trigger Int_t tsh[NTDCChannels] = {4, 4, 4, 4, 4, 4, 4, 4, 4, 4}; // Trigger shift Int_t tth[NTDCChannels] = {8, 8, 8, 8, 8, 8, 8, 8, 8, 8}; // Trigger threshold - std::array bitset = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; // Set bits in coincidence + bool bitset[NTDCChannels] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; // Set bits in coincidence void setBit(uint32_t ibit, bool val = true); // TDC From 0336917b2d2952194261205a69595431ff8f24fa Mon Sep 17 00:00:00 2001 From: shahoian Date: Tue, 22 Jun 2021 00:30:18 +0200 Subject: [PATCH 003/314] suppress overlaps check option in AlignParam::apply --- .../DetectorsCommonDataFormats/AlignParam.h | 4 ++-- DataFormats/Detectors/Common/src/AlignParam.cxx | 17 ++--------------- Detectors/Base/README.md | 2 +- .../include/DetectorsBase/GeometryManager.h | 4 ++-- Detectors/Base/src/GeometryManager.cxx | 6 +++--- 5 files changed, 10 insertions(+), 23 deletions(-) diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/AlignParam.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/AlignParam.h index 712485691e44b..b328c528cae35 100644 --- a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/AlignParam.h +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/AlignParam.h @@ -48,8 +48,8 @@ class AlignParam double getY() const { return mY; } double getZ() const { return mZ; } - /// apply object to geoemetry with optional check for the overlaps - bool applyToGeometry(bool ovlpcheck = false, double ovlToler = 1e-3) const; + /// apply object to geoemetry + bool applyToGeometry() const; /// extract global delta matrix TGeoHMatrix createMatrix() const; diff --git a/DataFormats/Detectors/Common/src/AlignParam.cxx b/DataFormats/Detectors/Common/src/AlignParam.cxx index 6281b215fa1eb..6dc78a1682444 100644 --- a/DataFormats/Detectors/Common/src/AlignParam.cxx +++ b/DataFormats/Detectors/Common/src/AlignParam.cxx @@ -243,7 +243,7 @@ bool AlignParam::createLocalMatrix(TGeoHMatrix& m) const } //_____________________________________________________________________________ -bool AlignParam::applyToGeometry(bool ovlpcheck, double ovlToler) const +bool AlignParam::applyToGeometry() const { /// Apply the current alignment object to the TGeo geometry /// This method returns FALSE if the symname of the object was not @@ -298,20 +298,7 @@ bool AlignParam::applyToGeometry(bool ovlpcheck, double ovlToler) const LOG(DEBUG) << "Aligning volume " << symname; - if (ovlpcheck) { - node->Align(ginv, nullptr, true, ovlToler); - TObjArray* ovlpArray = gGeoManager->GetListOfOverlaps(); - Int_t nOvlp = ovlpArray->GetEntriesFast(); - if (nOvlp) { - LOG(INFO) << "Misalignment of node " << node->GetName() << " generated the following " << nOvlp - << "overlaps/extrusions:"; - for (int i = 0; i < nOvlp; i++) { - ((TGeoOverlap*)ovlpArray->UncheckedAt(i))->PrintInfo(); - } - } - } else { - node->Align(ginv, nullptr, false, ovlToler); - } + node->Align(ginv); return true; } diff --git a/Detectors/Base/README.md b/Detectors/Base/README.md index 954ce4a553fbc..7f6f48be8d170 100644 --- a/Detectors/Base/README.md +++ b/Detectors/Base/README.md @@ -38,7 +38,7 @@ Some details about the transformations applied by the `o2::detectors::AlignParam Currently the test CCDB server [http://ccdb-test.cern.ch:8080](http://ccdb-test.cern.ch:8080) is populated with empty vectors (generated by the `O2/macros/UploadDummyAlignment.C` macro) which do not modify the geometry (except for the ITS whose misalignment is generated by the sample macro `O2/Detectors/ITSMFT/ITS/macros/test/ITSMisaligner.C`. -On the low level the (mis)alignment is applied to the geometry by the static method `o2::base::GeometryManager::applyAlignment(const std::vector& algPars, bool ovlpcheck = false, double ovlToler = 1e-3)`. +On the low level the (mis)alignment is applied to the geometry by the static method `o2::base::GeometryManager::applyAlignment(const std::vector& algPars)`. When loading the geometry via `o2::base::GeometryManager::loadGeometry(..)` method the alignment will be applied if the argument `applyMisalignment` is `true`, using the `o2::base::Aligner` helper. This latter inherits from the `ConfigurableParam`, so it can be configured from the command line by passing `--configKeyValues "align-geom.="` string (provided the workflow invokes `o2::conf::ConfigurableParam::updateFromString(configcontext.options().get("configKeyValues"))`). It allows to set the following parameters: diff --git a/Detectors/Base/include/DetectorsBase/GeometryManager.h b/Detectors/Base/include/DetectorsBase/GeometryManager.h index 84ad9c9ad2582..616ac677e2592 100644 --- a/Detectors/Base/include/DetectorsBase/GeometryManager.h +++ b/Detectors/Base/include/DetectorsBase/GeometryManager.h @@ -72,8 +72,8 @@ class GeometryManager : public TObject ~GeometryManager() override = default; /// misalign geometry with alignment objects from the array, optionaly check overlaps - static bool applyAlignment(const std::vector& algPars, bool ovlpcheck = false, double ovlToler = 1e-3); - static bool applyAlignment(const std::vector*> algPars, bool ovlpcheck = false, double ovlToler = 1e-3); + static bool applyAlignment(const std::vector& algPars); + static bool applyAlignment(const std::vector*> algPars); struct MatBudgetExt { double meanRho = 0.; // mean density: sum(x_i*rho_i)/sum(x_i) [g/cm3] diff --git a/Detectors/Base/src/GeometryManager.cxx b/Detectors/Base/src/GeometryManager.cxx index f249e2821fe21..022ff8e5b9f49 100644 --- a/Detectors/Base/src/GeometryManager.cxx +++ b/Detectors/Base/src/GeometryManager.cxx @@ -233,7 +233,7 @@ Bool_t GeometryManager::getOriginalMatrix(DetID detid, int sensid, TGeoHMatrix& } //______________________________________________________________________ -bool GeometryManager::applyAlignment(const std::vector*> algPars, bool ovlpcheck, double ovlToler) +bool GeometryManager::applyAlignment(const std::vector*> algPars) { /// misalign geometry with alignment objects from the array, optionaly check overlaps for (auto dv : algPars) { @@ -245,7 +245,7 @@ bool GeometryManager::applyAlignment(const std::vector& algPars, bool ovlpcheck, double ovlToler) +bool GeometryManager::applyAlignment(const std::vector& algPars) { /// misalign geometry with alignment objects from the array, optionaly check overlaps int nvols = algPars.size(); @@ -255,7 +255,7 @@ bool GeometryManager::applyAlignment(const std::vector Date: Tue, 22 Jun 2021 01:08:11 +0200 Subject: [PATCH 004/314] add ZDC reconstruction to FST and sim_challenge --- prodtests/full-system-test/dpl-workflow.sh | 1 + prodtests/sim_challenge.sh | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/prodtests/full-system-test/dpl-workflow.sh b/prodtests/full-system-test/dpl-workflow.sh index 4a59e1e93513f..e32698d4f8235 100755 --- a/prodtests/full-system-test/dpl-workflow.sh +++ b/prodtests/full-system-test/dpl-workflow.sh @@ -136,6 +136,7 @@ if [ $SYNCMODE == 0 ]; then WORKFLOW+="o2-primary-vertexing-workflow $ARGS_ALL $DISABLE_MC --disable-root-input --disable-root-output --validate-with-ft0 | " WORKFLOW+="o2-secondary-vertexing-workflow $ARGS_ALL --disable-root-input --disable-root-output | " WORKFLOW+="o2-fdd-reco-workflow $ARGS_ALL --disable-root-input --disable-root-output | " + WORKFLOW+="o2-zdc-digits-reco $ARGS_ALL --disable-root-input --disable-root-output $DISABLE_MC | " fi # Workflows disabled in async mode diff --git a/prodtests/sim_challenge.sh b/prodtests/sim_challenge.sh index 142188bec2d24..68449e925e908 100755 --- a/prodtests/sim_challenge.sh +++ b/prodtests/sim_challenge.sh @@ -176,6 +176,11 @@ if [ "$doreco" == "1" ]; then taskwrapper tofmatch_qa.log root -b -q -l $O2_ROOT/share/macro/checkTOFMatching.C echo "Return status of TOF matching qa: $?" + echo "Running ZDC reconstruction" + #need ZDC digits + taskwrapper zdcreco.log o2-zdc-digits-reco $gloOpt + echo "Return status of ZDC reconstruction: $?" + echo "Producing AOD" taskwrapper aod.log o2-aod-producer-workflow --aod-writer-keep dangling --aod-writer-resfile "AO2D" --aod-writer-resmode UPDATE --aod-timeframe-id 1 echo "Return status of AOD production: $?" From 5aa01b4ba8b0ed5938685f1d0c6f20a3a831d04e Mon Sep 17 00:00:00 2001 From: shahoian Date: Tue, 22 Jun 2021 02:07:18 +0200 Subject: [PATCH 005/314] CPV digi2raw must set triggered mode to write SOX --- Detectors/CPV/simulation/src/RawCreator.cxx | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Detectors/CPV/simulation/src/RawCreator.cxx b/Detectors/CPV/simulation/src/RawCreator.cxx index 97426bfa3662f..04885cf0872d4 100644 --- a/Detectors/CPV/simulation/src/RawCreator.cxx +++ b/Detectors/CPV/simulation/src/RawCreator.cxx @@ -27,6 +27,7 @@ #include "CPVBase/Geometry.h" #include "CPVSimulation/RawWriter.h" #include "DetectorsCommonDataFormats/NameConf.h" +#include "DataFormatsParameters/GRPObject.h" namespace bpo = boost::program_options; @@ -101,10 +102,14 @@ int main(int argc, const char** argv) granularity = o2::cpv::RawWriter::FileFor_t::kLink; } + std::string inputGRP = o2::base::NameConf::getGRPFileName(); + const auto grp = o2::parameters::GRPObject::loadFrom(inputGRP); + o2::cpv::RawWriter rawwriter; rawwriter.setOutputLocation(outputdir.data()); rawwriter.setFileFor(granularity); rawwriter.init(); + rawwriter.getWriter().setContinuousReadout(grp->isDetContinuousReadOut(o2::detectors::DetID::CPV)); // must be set explicitly // Loop over all entries in the tree, where each tree entry corresponds to a time frame for (auto en : *treereader) { From b71c86b2ed2774d6db5777851fbd555114917451 Mon Sep 17 00:00:00 2001 From: Dmitri Peresunko Date: Mon, 21 Jun 2021 13:37:09 +0300 Subject: [PATCH 006/314] inf. loop fixed; hwerror handling improved --- .../include/PHOSReconstruction/AltroDecoder.h | 7 ++- .../PHOS/reconstruction/src/AltroDecoder.cxx | 61 +++++++++++++------ .../workflow/src/RawToCellConverterSpec.cxx | 4 ++ 3 files changed, 54 insertions(+), 18 deletions(-) diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/AltroDecoder.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/AltroDecoder.h index af391bf538da7..d6d203250bb28 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/AltroDecoder.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/AltroDecoder.h @@ -103,6 +103,9 @@ class AltroDecoder std::vector& cellContainer, std::vector& truContainer); + /// \brief Get list of hw errors found in decoding + const std::vector& hwerrors() { return mOutputHWErrors; } + /// \brief Get reference to the RCU trailer object /// \return reference to the RCU trailers vector const RCUTrailer& getRCUTrailer() const { return mRCUTrailer; } @@ -119,10 +122,12 @@ class AltroDecoder void setCombineHGLG(bool a) { mCombineGHLG = a; } private: + static constexpr int kGeneralSRUErr = 15; ///< Non-existing FEE card to store general SRU errors + static constexpr int kGeneralTRUErr = 16; ///< Non-existing FEE card to store general TRU errors //check and convert HW address to absId and caloFlag bool hwToAbsAddress(short hwaddress, short& absId, Mapping::CaloFlag& caloFlag); //read trigger digits - void readTRUDigits(short absId, int payloadSize, std::vector& truContainer) const; + void readTRUDigits(short absId, int payloadSize, std::vector& truContainer); //read trigger summary tables void readTRUFlags(short hwAddress, int payloadSize); diff --git a/Detectors/PHOS/reconstruction/src/AltroDecoder.cxx b/Detectors/PHOS/reconstruction/src/AltroDecoder.cxx index fab3dd0d03581..f0a5d860020c9 100644 --- a/Detectors/PHOS/reconstruction/src/AltroDecoder.cxx +++ b/Detectors/PHOS/reconstruction/src/AltroDecoder.cxx @@ -37,6 +37,7 @@ AltroDecoderError::ErrorType_t AltroDecoder::decode(RawReaderMemory& rawreader, mRCUTrailer.constructFromRawPayload(tmp); } catch (RCUTrailer::Error& e) { LOG(ERROR) << "RCU trailer error" << (int)e.getErrorType(); + mOutputHWErrors.emplace_back(mddl, kGeneralSRUErr, static_cast(e.getErrorType())); //assign general SRU header errors to non-existing FEE 15 return AltroDecoderError::RCU_TRAILER_ERROR; } @@ -55,13 +56,6 @@ void AltroDecoder::readChannels(const std::vector& buffer, CaloRawFitt { int currentpos = 0; - // if (err != AltroDecoderError::kOK) { - // //TODO handle severe errors - // //TODO: probably careful conversion of decoder errors to Fitter errors? - // char e = (char)err; - // mOutputHWErrors.emplace_back(ddl, 16, e); //assign general header errors to non-existing FEE 16 - // } - int payloadend = buffer.size() - mRCUTrailer.getTrailerSize(); //mRCUTrailer.getPayloadSize() was not updated in case of merged pages. while (currentpos < payloadend) { auto currentword = buffer[currentpos++]; @@ -69,6 +63,11 @@ void AltroDecoder::readChannels(const std::vector& buffer, CaloRawFitt if (header.mMark != 1) { if (currentword != 0) { LOG(ERROR) << "Channel header mark not found, header word " << currentword; + short fec = header.mHardwareAddress >> 7 & 0xf; //try to extract FEE number from header + if (fec < 0 || fec > 13) { + fec = kGeneralSRUErr; + } + mOutputHWErrors.emplace_back(mddl, fec, 5); //5: channel header error } continue; } @@ -76,6 +75,11 @@ void AltroDecoder::readChannels(const std::vector& buffer, CaloRawFitt int numberofwords = (header.mPayloadSize + 2) / 3; if (numberofwords > payloadend - currentpos) { LOG(ERROR) << "Channel payload " << numberofwords << " larger than left in total " << payloadend - currentpos; + short fec = header.mHardwareAddress >> 7 & 0xf; //try to extract FEE number from header + if (fec < 0 || fec > 13) { + fec = kGeneralSRUErr; + } + mOutputHWErrors.emplace_back(mddl, fec, 6); //6: channel payload error continue; } mBunchwords.clear(); @@ -86,6 +90,11 @@ void AltroDecoder::readChannels(const std::vector& buffer, CaloRawFitt LOG(ERROR) << "Unexpected end of payload in altro channel payload! FEE=" << mddl << ", Address=0x" << std::hex << header.mHardwareAddress << ", word=0x" << currentword << std::dec; currentpos--; + short fec = header.mHardwareAddress >> 7 & 0xf; //try to extract FEE number from header + if (fec < 0 || fec > 13) { + fec = kGeneralSRUErr; + } + mOutputHWErrors.emplace_back(mddl, fec, 6); //6: channel payload error break; } mBunchwords.push_back((currentword >> 20) & 0x3FF); @@ -107,6 +116,11 @@ void AltroDecoder::readChannels(const std::vector& buffer, CaloRawFitt Mapping::CaloFlag caloFlag; if (!hwToAbsAddress(header.mHardwareAddress, absId, caloFlag)) { // do not decode, skip to hext channel + short fec = header.mHardwareAddress >> 7 & 0xf; //try to extract FEE number from header + if (fec < 0 || fec > 13) { + fec = kGeneralSRUErr; + } + mOutputHWErrors.emplace_back(mddl, fec, 7); //7: wrong hw address continue; } @@ -121,8 +135,12 @@ void AltroDecoder::readChannels(const std::vector& buffer, CaloRawFitt CaloRawFitter::FitStatus fitResult = rawFitter->evaluate(gsl::span(&mBunchwords[currentsample + 2], std::min((unsigned long)bunchlength, mBunchwords.size() - currentsample - 2))); currentsample += bunchlength + 2; //set output cell - if (fitResult == CaloRawFitter::FitStatus::kNoTime) { - // mOutputHWErrors.emplace_back(ddl, fee, (char)5); //Time evaluation error occured + if (fitResult == CaloRawFitter::FitStatus::kNoTime) { //Time evaluation error occured: should we add this err to list? + short fec = header.mHardwareAddress >> 7 & 0xf; //try to extract FEE number from header + if (fec < 0 || fec > 13) { + fec = kGeneralSRUErr; + } + mOutputHWErrors.emplace_back(mddl, fec, 8); //8: time calculation failed } if (!rawFitter->isOverflow()) { //Overflow is will show wrong chi2 short chiAddr = absId; @@ -195,6 +213,7 @@ bool AltroDecoder::hwToAbsAddress(short hwAddr, short& absId, Mapping::CaloFlag& } else { if (fec < 0 || fec > 15) { e2 = 2; + fec = kGeneralSRUErr; } else { if (fec != 0 && (chip < 0 || chip > 4 || chip == 1)) { //Do not check for TRU (fec=0) e2 = 3; @@ -210,21 +229,25 @@ bool AltroDecoder::hwToAbsAddress(short hwAddr, short& absId, Mapping::CaloFlag& //correct hw address, try to convert Mapping::ErrorStatus s = Mapping::Instance()->hwToAbsId(mddl, hwAddr, absId, caloFlag); if (s != Mapping::ErrorStatus::kOK) { - mOutputHWErrors.emplace_back(mddl, 15, (char)s); //use non-existing FEE 15 for general errors + mOutputHWErrors.emplace_back(mddl, kGeneralSRUErr, 4); //4: error in mapping return false; } return true; } -void AltroDecoder::readTRUDigits(short absId, int payloadSize, std::vector& truContainer) const +void AltroDecoder::readTRUDigits(short absId, int payloadSize, std::vector& truContainer) { int currentsample = 0; while (currentsample < payloadSize) { - int bunchlength = mBunchwords[currentsample] - 2, // remove words for bunchlength and starttime - timeBin = mBunchwords[currentsample + 1]; - currentsample += bunchlength + 2; + int bunchlength = mBunchwords[currentsample] - 2; // remove words for bunchlength and starttime + if (bunchlength < 0) { //corrupted sample: add error and ignore the reast of bunchwords + mOutputHWErrors.emplace_back(mddl, kGeneralTRUErr, static_cast(1)); // 1: wrong TRU header + return; + } + int timeBin = mBunchwords[currentsample + 1]; int istart = currentsample + 2; int iend = std::min((unsigned long)bunchlength, mBunchwords.size() - currentsample - 2); + currentsample += bunchlength + 2; int smax = 0, tmax = 0; // Loop over all the time steps in the signal for (int i = iend - 1; i >= istart; i--) { @@ -251,11 +274,15 @@ void AltroDecoder::readTRUFlags(short hwAddress, int payloadSize) int currentsample = 0; while (currentsample < payloadSize) { - int bunchlength = mBunchwords[currentsample] - 2, // remove words for bunchlength and starttime - timeBin = mBunchwords[currentsample + 1]; - currentsample += bunchlength + 2; + int bunchlength = mBunchwords[currentsample] - 2; // remove words for bunchlength and starttime + int timeBin = mBunchwords[currentsample + 1]; + if (bunchlength < 0) { //corrupted sample: add error and ignore the reast of bunchwords + mOutputHWErrors.emplace_back(mddl, kGeneralTRUErr, static_cast(1)); // 1: wrong TRU header + return; + } int istart = currentsample + 2; int iend = std::min((unsigned long)bunchlength, mBunchwords.size() - currentsample - 2); + currentsample += bunchlength + 2; for (int i = iend - 1; i >= istart; i--) { short a = mBunchwords[i]; diff --git a/Detectors/PHOS/workflow/src/RawToCellConverterSpec.cxx b/Detectors/PHOS/workflow/src/RawToCellConverterSpec.cxx index 81251c2865206..8a644a64b1290 100644 --- a/Detectors/PHOS/workflow/src/RawToCellConverterSpec.cxx +++ b/Detectors/PHOS/workflow/src/RawToCellConverterSpec.cxx @@ -176,6 +176,10 @@ void RawToCellConverterSpec::run(framework::ProcessingContext& ctx) // use the altro decoder to decode the raw data, and extract the RCU trailer mDecoder->decode(rawreader, mRawFitter.get(), currentCellContainer, currentTRUContainer); + const std::vector& errs = mDecoder->hwerrors(); + for (auto a : errs) { + mOutputHWErrors.emplace_back(a); + } // Sort cells according to cell ID (*rangeIter)[2 * ddl + 1] = currentCellContainer.size(); auto itBegin = currentCellContainer.begin() + (*rangeIter)[2 * ddl]; From 935c85675180aa8b1b9b2d21bcacf07012ba4d99 Mon Sep 17 00:00:00 2001 From: sevdokim <30727271+sevdokim@users.noreply.github.com> Date: Tue, 22 Jun 2021 23:05:15 +0200 Subject: [PATCH 007/314] CPV missing TF handling (#6483) * CPV missing TF handling * clang-formatted commit * format fix of CMakeLists.txt * fix for cpv macros * fix for macros/CMakeLists.txt * RAWDATA Lifetime must be Optional, add extra options Co-authored-by: sevdokim Co-authored-by: shahoian --- DataFormats/Detectors/CPV/CMakeLists.txt | 26 ++- .../include/DataFormatsCPV}/BadChannelMap.h | 0 .../CPV/include/DataFormatsCPV}/CalibParams.h | 0 .../CPV/include/DataFormatsCPV}/Hit.h | 0 .../CPV/include/DataFormatsCPV}/Pedestals.h | 0 .../Detectors/CPV}/src/BadChannelMap.cxx | 2 +- .../Detectors/CPV}/src/CalibParams.cxx | 2 +- .../Detectors/CPV/src/DataFormatsCPVLinkDef.h | 6 + DataFormats/Detectors/CPV/src/Digit.cxx | 2 +- .../Detectors/CPV}/src/Hit.cxx | 2 +- .../Detectors/CPV}/src/Pedestals.cxx | 2 +- Detectors/CPV/base/CMakeLists.txt | 4 +- Detectors/CPV/base/include/CPVBase/Geometry.h | 1 - Detectors/CPV/base/src/CPVBaseLinkDef.h | 2 - Detectors/CPV/calib/CMakeLists.txt | 18 +- .../CPV/calib/CPVCalibWorkflow/CMakeLists.txt | 4 +- .../CPVCalibWorkflow/CPVBadMapCalibDevice.h | 2 +- .../CPVCalibWorkflow/CPVGainCalibDevice.h | 2 +- .../CPVCalibWorkflow/CPVPedestalCalibDevice.h | 2 +- Detectors/CPV/calib/macros/PostBadMapCCDB.C | 2 +- Detectors/CPV/calib/macros/PostCalibCCDB.C | 2 +- Detectors/CPV/reconstruction/CMakeLists.txt | 1 - .../include/CPVReconstruction/Clusterer.h | 4 +- Detectors/CPV/simulation/CMakeLists.txt | 5 +- .../include/CPVSimulation/Detector.h | 2 +- .../include/CPVSimulation/Digitizer.h | 10 +- .../include/CPVSimulation/RawWriter.h | 10 +- Detectors/CPV/simulation/src/Detector.cxx | 2 +- Detectors/CPV/simulation/src/RawCreator.cxx | 4 + Detectors/CPV/simulation/src/RawWriter.cxx | 93 ++++---- Detectors/CPV/testsimulation/plot_hit_cpv.C | 2 +- Detectors/CPV/workflow/CMakeLists.txt | 13 +- .../CPVWorkflow/RawToDigitConverterSpec.h | 20 +- .../include/CPVWorkflow/RecoWorkflow.h | 6 +- .../workflow/src/RawToDigitConverterSpec.cxx | 204 +++++++++--------- Detectors/CPV/workflow/src/RecoWorkflow.cxx | 5 +- .../CPV/workflow/src/cpv-reco-workflow.cxx | 11 +- .../DigitizerWorkflow/src/CPVDigitizerSpec.h | 2 +- macro/CMakeLists.txt | 6 +- macro/analyzeHits.C | 2 +- macro/duplicateHits.C | 2 +- 41 files changed, 246 insertions(+), 239 deletions(-) rename {Detectors/CPV/calib/include/CPVCalib => DataFormats/Detectors/CPV/include/DataFormatsCPV}/BadChannelMap.h (100%) rename {Detectors/CPV/calib/include/CPVCalib => DataFormats/Detectors/CPV/include/DataFormatsCPV}/CalibParams.h (100%) rename {Detectors/CPV/base/include/CPVBase => DataFormats/Detectors/CPV/include/DataFormatsCPV}/Hit.h (100%) rename {Detectors/CPV/calib/include/CPVCalib => DataFormats/Detectors/CPV/include/DataFormatsCPV}/Pedestals.h (100%) rename {Detectors/CPV/calib => DataFormats/Detectors/CPV}/src/BadChannelMap.cxx (98%) rename {Detectors/CPV/calib => DataFormats/Detectors/CPV}/src/CalibParams.cxx (97%) rename {Detectors/CPV/base => DataFormats/Detectors/CPV}/src/Hit.cxx (98%) rename {Detectors/CPV/calib => DataFormats/Detectors/CPV}/src/Pedestals.cxx (98%) diff --git a/DataFormats/Detectors/CPV/CMakeLists.txt b/DataFormats/Detectors/CPV/CMakeLists.txt index 06a8069234efd..5194406785adf 100644 --- a/DataFormats/Detectors/CPV/CMakeLists.txt +++ b/DataFormats/Detectors/CPV/CMakeLists.txt @@ -9,22 +9,30 @@ # submit itself to any jurisdiction. o2_add_library(DataFormatsCPV - SOURCES src/CPVBlockHeader.cxx - src/Digit.cxx - src/Cluster.cxx + SOURCES src/CPVBlockHeader.cxx + src/Hit.cxx + src/Digit.cxx + src/Cluster.cxx src/TriggerRecord.cxx src/CTF.cxx - PUBLIC_LINK_LIBRARIES O2::CommonDataFormat - O2::Headers - O2::MathUtils - O2::DetectorsBase - O2::CPVBase + src/CalibParams.cxx + src/BadChannelMap.cxx + src/Pedestals.cxx + PUBLIC_LINK_LIBRARIES O2::CommonDataFormat + O2::Headers + O2::MathUtils + O2::DetectorsBase + O2::CPVBase O2::SimulationDataFormat Boost::serialization) o2_target_root_dictionary(DataFormatsCPV HEADERS include/DataFormatsCPV/CPVBlockHeader.h + include/DataFormatsCPV/Hit.h include/DataFormatsCPV/Digit.h include/DataFormatsCPV/Cluster.h include/DataFormatsCPV/TriggerRecord.h - include/DataFormatsCPV/CTF.h) + include/DataFormatsCPV/CTF.h + include/DataFormatsCPV/CalibParams.h + include/DataFormatsCPV/BadChannelMap.h + include/DataFormatsCPV/Pedestals.h) diff --git a/Detectors/CPV/calib/include/CPVCalib/BadChannelMap.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/BadChannelMap.h similarity index 100% rename from Detectors/CPV/calib/include/CPVCalib/BadChannelMap.h rename to DataFormats/Detectors/CPV/include/DataFormatsCPV/BadChannelMap.h diff --git a/Detectors/CPV/calib/include/CPVCalib/CalibParams.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/CalibParams.h similarity index 100% rename from Detectors/CPV/calib/include/CPVCalib/CalibParams.h rename to DataFormats/Detectors/CPV/include/DataFormatsCPV/CalibParams.h diff --git a/Detectors/CPV/base/include/CPVBase/Hit.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/Hit.h similarity index 100% rename from Detectors/CPV/base/include/CPVBase/Hit.h rename to DataFormats/Detectors/CPV/include/DataFormatsCPV/Hit.h diff --git a/Detectors/CPV/calib/include/CPVCalib/Pedestals.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/Pedestals.h similarity index 100% rename from Detectors/CPV/calib/include/CPVCalib/Pedestals.h rename to DataFormats/Detectors/CPV/include/DataFormatsCPV/Pedestals.h diff --git a/Detectors/CPV/calib/src/BadChannelMap.cxx b/DataFormats/Detectors/CPV/src/BadChannelMap.cxx similarity index 98% rename from Detectors/CPV/calib/src/BadChannelMap.cxx rename to DataFormats/Detectors/CPV/src/BadChannelMap.cxx index 0e545574b16bc..db1e6c991e5c2 100644 --- a/Detectors/CPV/calib/src/BadChannelMap.cxx +++ b/DataFormats/Detectors/CPV/src/BadChannelMap.cxx @@ -9,7 +9,7 @@ // or submit itself to any jurisdiction. #include "CPVBase/Geometry.h" -#include "CPVCalib/BadChannelMap.h" +#include "DataFormatsCPV/BadChannelMap.h" #include "FairLogger.h" diff --git a/Detectors/CPV/calib/src/CalibParams.cxx b/DataFormats/Detectors/CPV/src/CalibParams.cxx similarity index 97% rename from Detectors/CPV/calib/src/CalibParams.cxx rename to DataFormats/Detectors/CPV/src/CalibParams.cxx index 4276a5d62b15f..10fd818fd7eb6 100644 --- a/Detectors/CPV/calib/src/CalibParams.cxx +++ b/DataFormats/Detectors/CPV/src/CalibParams.cxx @@ -8,7 +8,7 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#include "CPVCalib/CalibParams.h" +#include "DataFormatsCPV/CalibParams.h" #include "CPVBase/Geometry.h" #include "FairLogger.h" diff --git a/DataFormats/Detectors/CPV/src/DataFormatsCPVLinkDef.h b/DataFormats/Detectors/CPV/src/DataFormatsCPVLinkDef.h index 6313759502591..80918b6c9e30f 100644 --- a/DataFormats/Detectors/CPV/src/DataFormatsCPVLinkDef.h +++ b/DataFormats/Detectors/CPV/src/DataFormatsCPVLinkDef.h @@ -14,10 +14,12 @@ #pragma link off all classes; #pragma link off all functions; +#pragma link C++ class o2::cpv::Hit + ; #pragma link C++ class o2::cpv::Digit + ; #pragma link C++ class o2::cpv::Cluster + ; #pragma link C++ class o2::cpv::TriggerRecord + ; +#pragma link C++ class vector < o2::cpv::Hit> + ; #pragma link C++ class std::vector < o2::cpv::Digit> + ; #pragma link C++ class std::vector < o2::cpv::Cluster> + ; #pragma link C++ class std::vector < o2::cpv::TriggerRecord> + ; @@ -26,4 +28,8 @@ #pragma link C++ struct o2::cpv::CTF + ; #pragma link C++ class o2::ctf::EncodedBlocks < o2::cpv::CTFHeader, 7, uint32_t> + ; +#pragma link C++ class o2::cpv::BadChannelMap + ; +#pragma link C++ class o2::cpv::CalibParams + ; +#pragma link C++ class o2::cpv::Pedestals + ; + #endif diff --git a/DataFormats/Detectors/CPV/src/Digit.cxx b/DataFormats/Detectors/CPV/src/Digit.cxx index e1263f165229f..21e6b3ad58857 100644 --- a/DataFormats/Detectors/CPV/src/Digit.cxx +++ b/DataFormats/Detectors/CPV/src/Digit.cxx @@ -10,7 +10,7 @@ #include "FairLogger.h" #include "DataFormatsCPV/Digit.h" -#include "CPVBase/Hit.h" +#include "DataFormatsCPV/Hit.h" #include using namespace o2::cpv; diff --git a/Detectors/CPV/base/src/Hit.cxx b/DataFormats/Detectors/CPV/src/Hit.cxx similarity index 98% rename from Detectors/CPV/base/src/Hit.cxx rename to DataFormats/Detectors/CPV/src/Hit.cxx index 9fbddd7e5fc7e..4762b13c7525c 100644 --- a/Detectors/CPV/base/src/Hit.cxx +++ b/DataFormats/Detectors/CPV/src/Hit.cxx @@ -8,7 +8,7 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#include "CPVBase/Hit.h" +#include "DataFormatsCPV/Hit.h" using namespace o2::cpv; diff --git a/Detectors/CPV/calib/src/Pedestals.cxx b/DataFormats/Detectors/CPV/src/Pedestals.cxx similarity index 98% rename from Detectors/CPV/calib/src/Pedestals.cxx rename to DataFormats/Detectors/CPV/src/Pedestals.cxx index 3f4f6ee39e811..c16c11722e636 100644 --- a/Detectors/CPV/calib/src/Pedestals.cxx +++ b/DataFormats/Detectors/CPV/src/Pedestals.cxx @@ -8,7 +8,7 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#include "CPVCalib/Pedestals.h" +#include "DataFormatsCPV/Pedestals.h" #include "FairLogger.h" #include #include diff --git a/Detectors/CPV/base/CMakeLists.txt b/Detectors/CPV/base/CMakeLists.txt index 3d0dd482329b8..10258ffc3770c 100644 --- a/Detectors/CPV/base/CMakeLists.txt +++ b/Detectors/CPV/base/CMakeLists.txt @@ -9,12 +9,10 @@ # submit itself to any jurisdiction. o2_add_library(CPVBase - SOURCES src/Geometry.cxx - src/Hit.cxx + SOURCES src/Geometry.cxx src/CPVSimParams.cxx PUBLIC_LINK_LIBRARIES O2::SimulationDataFormat) o2_target_root_dictionary(CPVBase HEADERS include/CPVBase/Geometry.h - include/CPVBase/Hit.h include/CPVBase/CPVSimParams.h) diff --git a/Detectors/CPV/base/include/CPVBase/Geometry.h b/Detectors/CPV/base/include/CPVBase/Geometry.h index 634572043ac2b..9dfa43e63ec70 100644 --- a/Detectors/CPV/base/include/CPVBase/Geometry.h +++ b/Detectors/CPV/base/include/CPVBase/Geometry.h @@ -42,7 +42,6 @@ class Geometry /// Absolute pad coordunate /// absId=0..128*60*3-1=23039 /// Raw addresses: - /// DDL corresponds to one module: ddl=Module /// each module consist of 16 columns of width 8 pads: row=0..15 /// Each column consists of 10 dilogics (in z direction) dilogic=0...9 /// Ecah dilogic contains 8*6 pads: hwaddress=0...48 diff --git a/Detectors/CPV/base/src/CPVBaseLinkDef.h b/Detectors/CPV/base/src/CPVBaseLinkDef.h index 73ab6adea36da..8c82cbe04f7c2 100644 --- a/Detectors/CPV/base/src/CPVBaseLinkDef.h +++ b/Detectors/CPV/base/src/CPVBaseLinkDef.h @@ -15,8 +15,6 @@ #pragma link off all functions; #pragma link C++ class o2::cpv::Geometry + ; -#pragma link C++ class o2::cpv::Hit + ; -#pragma link C++ class vector < o2::cpv::Hit> + ; #pragma link C++ class o2::cpv::CPVSimParams + ; #pragma link C++ class o2::conf::ConfigurableParamHelper < o2::cpv::CPVSimParams> + ; diff --git a/Detectors/CPV/calib/CMakeLists.txt b/Detectors/CPV/calib/CMakeLists.txt index 0efd80cbd79c3..ddce7dc1730f7 100644 --- a/Detectors/CPV/calib/CMakeLists.txt +++ b/Detectors/CPV/calib/CMakeLists.txt @@ -8,27 +8,15 @@ # granted to it by virtue of its status as an Intergovernmental Organization or # submit itself to any jurisdiction. -o2_add_library(CPVCalib - SOURCES src/BadChannelMap.cxx - src/CalibParams.cxx - src/Pedestals.cxx - PUBLIC_LINK_LIBRARIES O2::CCDB O2::CPVBase) - -o2_target_root_dictionary(CPVCalib - HEADERS include/CPVCalib/BadChannelMap.h - include/CPVCalib/CalibParams.h - include/CPVCalib/Pedestals.h - LINKDEF src/CPVCalibLinkDef.h) - add_subdirectory(CPVCalibWorkflow) if(BUILD_TESTING) - o2_add_test_root_macro(macros/PostBadMapCCDB.C - PUBLIC_LINK_LIBRARIES O2::CCDB O2::CPVBase O2::CPVCalib + o2_add_test_root_macro(macros/PostBadMapCCDB.C + PUBLIC_LINK_LIBRARIES O2::CCDB O2::DataFormatsCPV LABELS CPV COMPILE_ONLY) o2_add_test_root_macro( macros/PostCalibCCDB.C - PUBLIC_LINK_LIBRARIES O2::CCDB O2::CPVBase O2::CPVCalib + PUBLIC_LINK_LIBRARIES O2::CCDB O2::DataFormatsCPV LABELS CPV COMPILE_ONLY) endif() diff --git a/Detectors/CPV/calib/CPVCalibWorkflow/CMakeLists.txt b/Detectors/CPV/calib/CPVCalibWorkflow/CMakeLists.txt index 80eaae8e72474..b52ef05fb18d8 100644 --- a/Detectors/CPV/calib/CPVCalibWorkflow/CMakeLists.txt +++ b/Detectors/CPV/calib/CPVCalibWorkflow/CMakeLists.txt @@ -12,11 +12,10 @@ o2_add_library(CPVCalibWorkflow SOURCES src/CPVPedestalCalibDevice.cxx src/CPVGainCalibDevice.cxx src/CPVBadMapCalibDevice.cxx - PUBLIC_LINK_LIBRARIES O2::Framework + PUBLIC_LINK_LIBRARIES O2::Framework O2::DataFormatsCPV O2::DetectorsRaw O2::CPVReconstruction - O2::CPVCalib O2::DetectorsCalibration) @@ -25,6 +24,5 @@ o2_add_executable(calib-workflow SOURCES src/cpv-calib-workflow.cxx PUBLIC_LINK_LIBRARIES O2::Framework O2::DataFormatsCPV - O2::CPVCalib O2::CPVCalibWorkflow O2::DetectorsCalibration) diff --git a/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVBadMapCalibDevice.h b/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVBadMapCalibDevice.h index 9b475f4d70794..859168a928211 100644 --- a/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVBadMapCalibDevice.h +++ b/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVBadMapCalibDevice.h @@ -18,7 +18,7 @@ // #include "Framework/ConfigParamRegistry.h" // #include "Framework/ControlService.h" #include "Framework/WorkflowSpec.h" -#include "CPVCalib/BadChannelMap.h" +#include "DataFormatsCPV/BadChannelMap.h" #include "CPVBase/Geometry.h" #include "TH2.h" diff --git a/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVGainCalibDevice.h b/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVGainCalibDevice.h index 04f0635686a10..2f3009e60bdb2 100644 --- a/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVGainCalibDevice.h +++ b/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVGainCalibDevice.h @@ -16,7 +16,7 @@ #include "Framework/Task.h" #include "Framework/WorkflowSpec.h" -#include "CPVCalib/CalibParams.h" +#include "DataFormatsCPV/CalibParams.h" #include "CPVBase/Geometry.h" #include "TH2.h" #include diff --git a/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVPedestalCalibDevice.h b/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVPedestalCalibDevice.h index 95bad3d251c5c..3f3ed6cee78f0 100644 --- a/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVPedestalCalibDevice.h +++ b/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVPedestalCalibDevice.h @@ -18,7 +18,7 @@ // #include "Framework/ConfigParamRegistry.h" // #include "Framework/ControlService.h" #include "Framework/WorkflowSpec.h" -#include "CPVCalib/Pedestals.h" +#include "DataFormatsCPV/Pedestals.h" #include "CPVBase/Geometry.h" #include "TH2.h" diff --git a/Detectors/CPV/calib/macros/PostBadMapCCDB.C b/Detectors/CPV/calib/macros/PostBadMapCCDB.C index 538807c2df60e..0666af5dadd46 100644 --- a/Detectors/CPV/calib/macros/PostBadMapCCDB.C +++ b/Detectors/CPV/calib/macros/PostBadMapCCDB.C @@ -11,7 +11,7 @@ #if !defined(__CLING__) || defined(__ROOTCLING__) #include "TRandom.h" #include "CCDB/CcdbApi.h" -#include "CPVCalib/BadChannelMap.h" +#include "DataFormatsCPV/BadChannelMap.h" #include "CPVBase/Geometry.h" #endif void PostBadMapCCDB() diff --git a/Detectors/CPV/calib/macros/PostCalibCCDB.C b/Detectors/CPV/calib/macros/PostCalibCCDB.C index f159d2b548e7f..85cf4cabf46c0 100644 --- a/Detectors/CPV/calib/macros/PostCalibCCDB.C +++ b/Detectors/CPV/calib/macros/PostCalibCCDB.C @@ -12,7 +12,7 @@ #include "TFile.h" #include "TH2F.h" #include "CCDB/CcdbApi.h" -#include "CPVCalib/CalibParams.h" +#include "DataFormatsCPV/CalibParams.h" #include "CPVBase/Geometry.h" #include #endif diff --git a/Detectors/CPV/reconstruction/CMakeLists.txt b/Detectors/CPV/reconstruction/CMakeLists.txt index 09b1c003756be..7ec757f3648f0 100644 --- a/Detectors/CPV/reconstruction/CMakeLists.txt +++ b/Detectors/CPV/reconstruction/CMakeLists.txt @@ -16,7 +16,6 @@ o2_add_library(CPVReconstruction src/CTFCoder.cxx src/CTFHelper.cxx PUBLIC_LINK_LIBRARIES O2::CPVBase - O2::CPVCalib O2::DataFormatsCPV O2::DetectorsRaw AliceO2::InfoLogger diff --git a/Detectors/CPV/reconstruction/include/CPVReconstruction/Clusterer.h b/Detectors/CPV/reconstruction/include/CPVReconstruction/Clusterer.h index 591d5f75d13c4..3c728a3355e9f 100644 --- a/Detectors/CPV/reconstruction/include/CPVReconstruction/Clusterer.h +++ b/Detectors/CPV/reconstruction/include/CPVReconstruction/Clusterer.h @@ -15,8 +15,8 @@ #include "DataFormatsCPV/Digit.h" #include "DataFormatsCPV/Cluster.h" #include "CPVReconstruction/FullCluster.h" -#include "CPVCalib/CalibParams.h" -#include "CPVCalib/BadChannelMap.h" +#include "DataFormatsCPV/CalibParams.h" +#include "DataFormatsCPV/BadChannelMap.h" #include "SimulationDataFormat/MCTruthContainer.h" #include "DataFormatsCPV/TriggerRecord.h" diff --git a/Detectors/CPV/simulation/CMakeLists.txt b/Detectors/CPV/simulation/CMakeLists.txt index dd2b803aa3f4d..53dfd43567d28 100644 --- a/Detectors/CPV/simulation/CMakeLists.txt +++ b/Detectors/CPV/simulation/CMakeLists.txt @@ -16,11 +16,10 @@ o2_add_library(CPVSimulation PUBLIC_LINK_LIBRARIES O2::DetectorsBase O2::DataFormatsCPV O2::CPVBase - O2::CPVCalib O2::CCDB O2::SimConfig - O2::SimulationDataFormat - O2::Headers + O2::SimulationDataFormat + O2::Headers O2::DetectorsRaw) o2_target_root_dictionary(CPVSimulation diff --git a/Detectors/CPV/simulation/include/CPVSimulation/Detector.h b/Detectors/CPV/simulation/include/CPVSimulation/Detector.h index 8922c9a8cc9cc..04c5bc92fb066 100644 --- a/Detectors/CPV/simulation/include/CPVSimulation/Detector.h +++ b/Detectors/CPV/simulation/include/CPVSimulation/Detector.h @@ -13,7 +13,7 @@ #include "DetectorsBase/Detector.h" #include "MathUtils/Cartesian.h" -#include "CPVBase/Hit.h" +#include "DataFormatsCPV/Hit.h" #include "RStringView.h" #include "Rtypes.h" diff --git a/Detectors/CPV/simulation/include/CPVSimulation/Digitizer.h b/Detectors/CPV/simulation/include/CPVSimulation/Digitizer.h index adb199b353a27..f0f7fa3542429 100644 --- a/Detectors/CPV/simulation/include/CPVSimulation/Digitizer.h +++ b/Detectors/CPV/simulation/include/CPVSimulation/Digitizer.h @@ -11,12 +11,12 @@ #ifndef ALICEO2_CPV_DIGITIZER_H #define ALICEO2_CPV_DIGITIZER_H -#include "DataFormatsCPV/Digit.h" #include "CPVBase/Geometry.h" -#include "CPVCalib/CalibParams.h" -#include "CPVCalib/Pedestals.h" -#include "CPVCalib/BadChannelMap.h" -#include "CPVBase/Hit.h" +#include "DataFormatsCPV/Hit.h" +#include "DataFormatsCPV/Digit.h" +#include "DataFormatsCPV/CalibParams.h" +#include "DataFormatsCPV/Pedestals.h" +#include "DataFormatsCPV/BadChannelMap.h" #include "SimulationDataFormat/MCCompLabel.h" #include "SimulationDataFormat/MCTruthContainer.h" diff --git a/Detectors/CPV/simulation/include/CPVSimulation/RawWriter.h b/Detectors/CPV/simulation/include/CPVSimulation/RawWriter.h index e4f21a1dd388b..6399d4a165f1b 100644 --- a/Detectors/CPV/simulation/include/CPVSimulation/RawWriter.h +++ b/Detectors/CPV/simulation/include/CPVSimulation/RawWriter.h @@ -25,9 +25,9 @@ #include "DetectorsRaw/RawFileWriter.h" #include "DataFormatsCPV/Digit.h" #include "DataFormatsCPV/TriggerRecord.h" -#include "CPVCalib/CalibParams.h" -#include "CPVCalib/Pedestals.h" -#include "CPVCalib/BadChannelMap.h" +#include "DataFormatsCPV/CalibParams.h" +#include "DataFormatsCPV/Pedestals.h" +#include "DataFormatsCPV/BadChannelMap.h" namespace o2 { @@ -65,6 +65,7 @@ class RawWriter o2::raw::RawFileWriter& getWriter() const { return *mRawWriter; } void setOutputLocation(const char* outputdir) { mOutputLocation = outputdir; } + void setCcdbUrl(const char* ccdbUrl) { mCcdbUrl = ccdbUrl; } void setFileFor(FileFor_t filefor) { mFileFor = filefor; } void init(); @@ -79,6 +80,7 @@ class RawWriter std::vector mPadCharge[kNcc][kNDilogic][kNGasiplex]; ///< list of signals per event FileFor_t mFileFor = FileFor_t::kFullDet; ///< Granularity of the output files std::string mOutputLocation = "./"; ///< Rawfile name + std::string mCcdbUrl = "http://ccdb-test.cern.ch:8080"; ///< CCDB Url std::unique_ptr mCalibParams; ///< CPV calibration std::unique_ptr mPedestals; ///< CPV pedestals std::unique_ptr mBadMap; ///< CPV bad channel map @@ -86,7 +88,7 @@ class RawWriter gsl::span mDigits; ///< Digits input vector - must be in digitized format including the time response std::unique_ptr mRawWriter; ///< Raw writer - ClassDefNV(RawWriter, 1); + ClassDefNV(RawWriter, 2); }; } // namespace cpv diff --git a/Detectors/CPV/simulation/src/Detector.cxx b/Detectors/CPV/simulation/src/Detector.cxx index 98ce6f20f3f38..488d46a8be886 100644 --- a/Detectors/CPV/simulation/src/Detector.cxx +++ b/Detectors/CPV/simulation/src/Detector.cxx @@ -22,7 +22,7 @@ #include "FairVolume.h" #include "CPVBase/Geometry.h" -#include "CPVBase/Hit.h" +#include "DataFormatsCPV/Hit.h" #include "CPVBase/CPVSimParams.h" #include "CPVSimulation/Detector.h" #include "CPVSimulation/GeometryParams.h" diff --git a/Detectors/CPV/simulation/src/RawCreator.cxx b/Detectors/CPV/simulation/src/RawCreator.cxx index 04885cf0872d4..00c29253d0d24 100644 --- a/Detectors/CPV/simulation/src/RawCreator.cxx +++ b/Detectors/CPV/simulation/src/RawCreator.cxx @@ -50,6 +50,7 @@ int main(int argc, const char** argv) add_option("file-for,f", bpo::value()->default_value("all"), "single file per: all,link"); add_option("output-dir,o", bpo::value()->default_value("./"), "output directory for raw data"); add_option("debug,d", bpo::value()->default_value(0), "Select debug output level [0 = no debug output]"); + add_option("ccdb-url,c", bpo::value()->default_value("http://ccdb-test.cern.ch:8080"), "CCDB Url ['localtest' for local testing]"); add_option("hbfutils-config,u", bpo::value()->default_value(std::string(o2::base::NameConf::DIGITIZATIONCONFIGFILE)), "config file for HBFUtils (or none)"); add_option("configKeyValues", bpo::value()->default_value(""), "comma-separated configKeyValues"); @@ -81,6 +82,8 @@ int main(int argc, const char** argv) outputdir = vm["output-dir"].as(), filefor = vm["file-for"].as(); + auto ccdbUrl = vm["ccdb-url"].as(); + // if needed, create output directory if (!std::filesystem::exists(outputdir)) { if (!std::filesystem::create_directories(outputdir)) { @@ -108,6 +111,7 @@ int main(int argc, const char** argv) o2::cpv::RawWriter rawwriter; rawwriter.setOutputLocation(outputdir.data()); rawwriter.setFileFor(granularity); + rawwriter.setCcdbUrl(ccdbUrl.data()); rawwriter.init(); rawwriter.getWriter().setContinuousReadout(grp->isDetContinuousReadOut(o2::detectors::DetID::CPV)); // must be set explicitly diff --git a/Detectors/CPV/simulation/src/RawWriter.cxx b/Detectors/CPV/simulation/src/RawWriter.cxx index c632eb795abcb..a878fb7223f4b 100644 --- a/Detectors/CPV/simulation/src/RawWriter.cxx +++ b/Detectors/CPV/simulation/src/RawWriter.cxx @@ -18,7 +18,8 @@ #include "CPVSimulation/RawWriter.h" #include "CPVBase/CPVSimParams.h" #include "CPVBase/Geometry.h" -#include "CCDB/CcdbApi.h" +#include "CCDB/CCDBTimeStampUtils.h" +#include "CCDB/BasicCCDBManager.h" using namespace o2::cpv; @@ -34,6 +35,53 @@ void RawWriter::init() //ddl,crorc, link,... mRawWriter->registerLink(0, 0, 0, 0, rawfilename.data()); + + //CCDB setup + LOG(INFO) << "CCDB Url: " << mCcdbUrl; + auto& ccdbMgr = o2::ccdb::BasicCCDBManager::instance(); + ccdbMgr.setURL(mCcdbUrl); + bool isCcdbReachable = ccdbMgr.isHostReachable(); //if host is not reachable we can use only dummy calibration + if (!isCcdbReachable) { + if (mCcdbUrl.compare("localtest") != 0) { + LOG(ERROR) << "Host " << mCcdbUrl << " is not reachable!!!"; + } + LOG(INFO) << "Using dummy calibration"; + mCalibParams = std::make_unique(1); + //mBadMap = std::make_unique(1); + mPedestals = std::make_unique(1); + } else { + ccdbMgr.setCaching(true); //make local cache of remote objects + ccdbMgr.setLocalObjectValidityChecking(true); //query objects from remote site only when local one is not valid + LOG(INFO) << "Successfully initializated BasicCCDBManager with caching option"; + + //read calibration from ccdb (for now do it only at the beginning of dataprocessing) + //TODO: setup timestam according to anchors + ccdbMgr.setTimestamp(o2::ccdb::getCurrentTimestamp()); + + LOG(INFO) << "CCDB: Reading o2::cpv::CalibParams from CPV/Calib/Gains"; + mCalibParams.reset(ccdbMgr.get("CPV/Calib/Gains")); + if (!mCalibParams) { + LOG(ERROR) << "Cannot get o2::cpv::CalibParams from CCDB. using dummy calibration!"; + mCalibParams = std::make_unique(1); + } + + /* + LOG(INFO) << "CCDB: Reading o2::cpv::BadChannelMap from CPV/Calib/BadChannelMap"; + mBadMap.reset(ccdbMgr.get("CPV/Calib/BadChannelMap")); + if (!mBadMap) { + LOG(ERROR) << "Cannot get o2::cpv::BadChannelMap from CCDB. using dummy calibration!"; + mBadMap = std::make_unique(1); + } + */ + + LOG(INFO) << "CCDB: Reading o2::cpv::Pedestals from CPV/Calib/Pedestals"; + mPedestals.reset(ccdbMgr.get("CPV/Calib/Pedestals")); + if (!mPedestals) { + LOG(ERROR) << "Cannot get o2::cpv::Pedestals from CCDB. using dummy calibration!"; + mPedestals = std::make_unique(1); + } + LOG(INFO) << "Task configuration is done."; + } } void RawWriter::digitsToRaw(gsl::span digitsbranch, gsl::span triggerbranch) @@ -41,49 +89,6 @@ void RawWriter::digitsToRaw(gsl::span digitsbranch, gsl::span(1); // test default calibration - LOG(INFO) << "[RawWriter] No reading calibration from ccdb requested, set default"; - } else { - LOG(INFO) << "[RawWriter] getting calibration object from ccdb"; - o2::ccdb::CcdbApi ccdb; - std::map metadata; - ccdb.init("http://ccdb-test.cern.ch:8080"); // or http://localhost:8080 for a local installation - auto tr = triggerbranch.begin(); - double eventTime = -1; - // if(tr!=triggerbranch.end()){ - // eventTime = (*tr).getBCData().getTimeNS() ; - // } - //add copy constructor if necessary - // mCalibParams = std::make_unique(ccdb.retrieveFromTFileAny("CPV/Calib", metadata, eventTime)); - if (!mCalibParams) { - LOG(FATAL) << "[RawWriter] can not get calibration object from ccdb"; - } - } - } - - if (!mPedestals) { - if (o2::cpv::CPVSimParams::Instance().mCCDBPath.compare("localtest") == 0) { - mPedestals = std::make_unique(1); // test default calibration - LOG(INFO) << "[RawWriter] No reading calibration from ccdb requested, set default"; - } else { - LOG(INFO) << "[RawWriter] getting calibration object from ccdb"; - o2::ccdb::CcdbApi ccdb; - std::map metadata; - ccdb.init("http://ccdb-test.cern.ch:8080"); // or http://localhost:8080 for a local installation - auto tr = triggerbranch.begin(); - double eventTime = -1; - // if(tr!=triggerbranch.end()){ - // eventTime = (*tr).getBCData().getTimeNS() ; - // } - //add copy constructor if necessary - // mPedestals = std::make_unique(ccdb.retrieveFromTFileAny("CPV/Calib", metadata, eventTime)); - if (!mPedestals) { - LOG(FATAL) << "[RawWriter] can not get calibration object from ccdb"; - } - } - } //process digits which belong to same orbit int iFirstTrgInCurrentOrbit = 0; diff --git a/Detectors/CPV/testsimulation/plot_hit_cpv.C b/Detectors/CPV/testsimulation/plot_hit_cpv.C index 5be311e7eb953..0ba358c0feb19 100644 --- a/Detectors/CPV/testsimulation/plot_hit_cpv.C +++ b/Detectors/CPV/testsimulation/plot_hit_cpv.C @@ -13,7 +13,7 @@ #include "FairSystemInfo.h" #include "SimulationDataFormat/MCCompLabel.h" #include "CPVBase/Geometry.h" -#include "CPVBase/Hit.h" +#include "DataFormatsCPV/Hit.h" #include "DetectorsCommonDataFormats/NameConf.h" #include "DetectorsCommonDataFormats/DetID.h" #endif diff --git a/Detectors/CPV/workflow/CMakeLists.txt b/Detectors/CPV/workflow/CMakeLists.txt index 905fa0dd5f2a0..2289e72b53d92 100644 --- a/Detectors/CPV/workflow/CMakeLists.txt +++ b/Detectors/CPV/workflow/CMakeLists.txt @@ -17,13 +17,12 @@ o2_add_library(CPVWorkflow src/RawToDigitConverterSpec.cxx src/EntropyEncoderSpec.cxx src/EntropyDecoderSpec.cxx - PUBLIC_LINK_LIBRARIES O2::Framework - O2::DataFormatsCPV - O2::DPLUtils - O2::CPVBase - O2::CPVCalib - O2::CPVSimulation - O2::CPVReconstruction + PUBLIC_LINK_LIBRARIES O2::Framework + O2::DataFormatsCPV + O2::DPLUtils + O2::CPVBase + O2::CPVSimulation + O2::CPVReconstruction O2::Algorithm) o2_add_executable(reco-workflow diff --git a/Detectors/CPV/workflow/include/CPVWorkflow/RawToDigitConverterSpec.h b/Detectors/CPV/workflow/include/CPVWorkflow/RawToDigitConverterSpec.h index d44ce0aa8bc6b..fbb5b9496e5f7 100644 --- a/Detectors/CPV/workflow/include/CPVWorkflow/RawToDigitConverterSpec.h +++ b/Detectors/CPV/workflow/include/CPVWorkflow/RawToDigitConverterSpec.h @@ -14,10 +14,11 @@ #include "Framework/Task.h" #include "DataFormatsCPV/Digit.h" #include "DataFormatsCPV/TriggerRecord.h" -#include "CPVCalib/CalibParams.h" -#include "CPVCalib/BadChannelMap.h" -#include "CPVCalib/Pedestals.h" +#include "DataFormatsCPV/CalibParams.h" +#include "DataFormatsCPV/BadChannelMap.h" +#include "DataFormatsCPV/Pedestals.h" #include "CPVReconstruction/RawDecoder.h" +#include "CCDB/BasicCCDBManager.h" namespace o2 { @@ -52,8 +53,8 @@ class RawToDigitConverterSpec : public framework::Task /// /// The following branches are linked: /// Input RawData: {"ROUT", "RAWDATA", 0, Lifetime::Timeframe} - /// Output cells: {"CPV", "CELLS", 0, Lifetime::Timeframe} - /// Output cells trigger record: {"CPV", "CELLSTR", 0, Lifetime::Timeframe} + /// Output cells: {"CPV", "DIGITS", 0, Lifetime::Timeframe} + /// Output cells trigger record: {"CPV", "DIGITTRIGREC", 0, Lifetime::Timeframe} /// Output HW errors: {"CPV", "RAWHWERRORS", 0, Lifetime::Timeframe} void run(framework::ProcessingContext& ctx) final; @@ -62,8 +63,9 @@ class RawToDigitConverterSpec : public framework::Task char CheckHWAddress(short ddl, short hwAddress, short& fee); private: - int mDDL = 15; - bool mIsPedestalData; ///< No subtract pedestals if true + bool mIsPedestalData; ///< Do not subtract pedestals if true + bool mIsUsingCcdbMgr; ///< Are we using CCDB manager? + long mCurrentTimeStamp; ///< Current timestamp for CCDB querying std::unique_ptr mCalibParams; ///< CPV calibration std::unique_ptr mPedestals; ///< CPV pedestals std::unique_ptr mBadMap; ///< BadMap @@ -72,10 +74,10 @@ class RawToDigitConverterSpec : public framework::Task std::vector mOutputHWErrors; ///< Errors occured in reading data }; -/// \brief Creating DataProcessorSpec for the CPV Cell Converter Spec +/// \brief Creating DataProcessorSpec for the CPV Digit Converter Spec /// /// Refer to RawToDigitConverterSpec::run for input and output specs -o2::framework::DataProcessorSpec getRawToDigitConverterSpec(); +o2::framework::DataProcessorSpec getRawToDigitConverterSpec(bool askDISTSTF = true); } // namespace reco_workflow diff --git a/Detectors/CPV/workflow/include/CPVWorkflow/RecoWorkflow.h b/Detectors/CPV/workflow/include/CPVWorkflow/RecoWorkflow.h index 900e40c080e2d..cd863e6fe2be1 100644 --- a/Detectors/CPV/workflow/include/CPVWorkflow/RecoWorkflow.h +++ b/Detectors/CPV/workflow/include/CPVWorkflow/RecoWorkflow.h @@ -38,9 +38,9 @@ enum struct OutputType { Digits, framework::WorkflowSpec getWorkflow(bool disableRootInp, bool disableRootOut, bool propagateMC = true, - std::string const& cfgInput = "digits", // - std::string const& cfgOutput = "clusters" // -); + bool askSTFDist = true, + std::string const& cfgInput = "digits", + std::string const& cfgOutput = "clusters"); } // namespace reco_workflow } // namespace cpv diff --git a/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx b/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx index 381cfcaabba42..83d5a2a3f3e22 100644 --- a/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx +++ b/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx @@ -19,25 +19,81 @@ #include "DetectorsRaw/RDHUtils.h" #include "CPVReconstruction/RawDecoder.h" #include "CPVWorkflow/RawToDigitConverterSpec.h" -#include "CCDB/CcdbApi.h" -#include "CPVBase/CPVSimParams.h" +#include "CCDB/CCDBTimeStampUtils.h" +#include "CCDB/BasicCCDBManager.h" #include "CPVBase/Geometry.h" using namespace o2::cpv::reco_workflow; void RawToDigitConverterSpec::init(framework::InitContext& ctx) { - mDDL = ctx.options().get("DDL"); - LOG(DEBUG) << "Initialize converter "; + LOG(DEBUG) << "Initializing RawToDigitConverterSpec..."; //Read command-line options - //Pedestal flag (on/off) - std::string optPedestal(""); + //Pedestal flag true/false + mIsPedestalData = false; if (ctx.options().isSet("pedestal")) { - optPedestal = ctx.options().get("pedestal"); + mIsPedestalData = ctx.options().get("pedestal"); + } + LOG(INFO) << "Pedestal data: " << mIsPedestalData; + if (mIsPedestalData) { //no calibration for pedestal runs needed + return; //skip CCDB initialization for pedestal runs + } + + //CCDB Url + std::string ccdbUrl = "localtest"; + if (ctx.options().isSet("ccdb-url")) { + ccdbUrl = ctx.options().get("ccdb-url"); + } + LOG(INFO) << "CCDB Url: " << ccdbUrl; + + //dummy calibration objects + if (ccdbUrl.compare("localtest") == 0) { // test default calibration + mIsUsingCcdbMgr = false; + mCalibParams = std::make_unique(1); + mBadMap = std::make_unique(1); + mPedestals = std::make_unique(1); + LOG(INFO) << "No reading calibration from ccdb requested, using dummy calibration for testing"; + return; //localtest = no reading ccdb + } + + //init CCDB + auto& ccdbMgr = o2::ccdb::BasicCCDBManager::instance(); + ccdbMgr.setURL(ccdbUrl); + mIsUsingCcdbMgr = ccdbMgr.isHostReachable(); //if host is not reachable we can use only dummy calibration + if (!mIsUsingCcdbMgr) { + LOG(ERROR) << "Host " << ccdbUrl << " is not reachable!!!"; + LOG(ERROR) << "Using dummy calibration"; + mCalibParams = std::make_unique(1); + mBadMap = std::make_unique(1); + mPedestals = std::make_unique(1); + } else { + ccdbMgr.setCaching(true); //make local cache of remote objects + ccdbMgr.setLocalObjectValidityChecking(true); //query objects from remote site only when local one is not valid + LOG(INFO) << "Successfully initializated BasicCCDBManager with caching option"; + + //read calibration from ccdb (for now do it only at the beginning of dataprocessing) + //probably later we can check bad channel map more oftenly + mCurrentTimeStamp = o2::ccdb::getCurrentTimestamp(); + ccdbMgr.setTimestamp(mCurrentTimeStamp); + + mCalibParams.reset(ccdbMgr.get("CPV/Calib/Gains")); + if (!mCalibParams) { + LOG(ERROR) << "Cannot get o2::cpv::CalibParams from CCDB. using dummy calibration!"; + mCalibParams = std::make_unique(1); + } + mBadMap.reset(ccdbMgr.get("CPV/Calib/BadChannelMap")); + if (!mBadMap) { + LOG(ERROR) << "Cannot get o2::cpv::BadChannelMap from CCDB. using dummy calibration!"; + mBadMap = std::make_unique(1); + } + mPedestals.reset(ccdbMgr.get("CPV/Calib/Pedestals")); + if (!mPedestals) { + LOG(ERROR) << "Cannot get o2::cpv::Pedestals from CCDB. using dummy calibration!"; + mPedestals = std::make_unique(1); + } + LOG(INFO) << "Task configuration is done."; } - LOG(INFO) << "Pedestal data: " << optPedestal; - mIsPedestalData = optPedestal == "on" ? true : false; } void RawToDigitConverterSpec::run(framework::ProcessingContext& ctx) @@ -47,87 +103,27 @@ void RawToDigitConverterSpec::run(framework::ProcessingContext& ctx) int firstEntry = 0; mOutputHWErrors.clear(); - if (!mCalibParams) { - if (o2::cpv::CPVSimParams::Instance().mCCDBPath.compare("localtest") == 0) { - mCalibParams = std::make_unique(1); // test default calibration - LOG(INFO) << "No reading calibration from ccdb requested, set default"; - } else { - LOG(INFO) << "Getting calibration object from ccdb"; - //TODO: configuring ccdb address from config file, readign proper calibration/BadMap and updateing if necessary - o2::ccdb::CcdbApi ccdb; - std::map metadata; - ccdb.init("http://ccdb-test.cern.ch:8080"); // or http://localhost:8080 for a local installation - // auto tr = triggerbranch.begin(); - // double eventTime = -1; - // if(tr!=triggerbranch.end()){ - // eventTime = (*tr).getBCData().getTimeNS() ; - // } - // mCalibParams = ccdb.retrieveFromTFileAny("CPV/Calib", metadata, eventTime); - // if (!mCalibParams) { - // LOG(FATAL) << "Can not get calibration object from ccdb"; - // } + // if we see requested data type input with 0xDEADBEEF subspec and 0 payload this means that the "delayed message" + // mechanism created it in absence of real data from upstream. Processor should send empty output to not block the workflow + std::vector dummy{o2::framework::InputSpec{"dummy", o2::framework::ConcreteDataMatcher{"CPV", o2::header::gDataDescriptionRawData, 0xDEADBEEF}}}; + for (const auto& ref : framework::InputRecordWalker(ctx.inputs(), dummy)) { + const auto dh = o2::framework::DataRefUtils::getHeader(ref); + if (dh->payloadSize == 0) { // send empty output + LOG(INFO) << "Sending empty output due to data type input with 0xDEADBEEF"; + mOutputDigits.clear(); + ctx.outputs().snapshot(o2::framework::Output{"CPV", "DIGITS", 0, o2::framework::Lifetime::Timeframe}, mOutputDigits); + mOutputTriggerRecords.clear(); + ctx.outputs().snapshot(o2::framework::Output{"CPV", "DIGITTRIGREC", 0, o2::framework::Lifetime::Timeframe}, mOutputTriggerRecords); + mOutputHWErrors.clear(); + ctx.outputs().snapshot(o2::framework::Output{"CPV", "RAWHWERRORS", 0, o2::framework::Lifetime::Timeframe}, mOutputHWErrors); + return; //empty TF, nothing to process } } - if (!mBadMap) { - if (o2::cpv::CPVSimParams::Instance().mCCDBPath.compare("localtest") == 0) { - mBadMap = std::make_unique(1); // test default calibration - LOG(INFO) << "No reading bad map from ccdb requested, set default"; - } else { - LOG(INFO) << "Getting bad map object from ccdb"; - o2::ccdb::CcdbApi ccdb; - std::map metadata; - ccdb.init("http://ccdb-test.cern.ch:8080"); // or http://localhost:8080 for a local installation - // auto tr = triggerbranch.begin(); - // double eventTime = -1; - // if(tr!=triggerbranch.end()){ - // eventTime = (*tr).getBCData().getTimeNS() ; - // } - // mBadMap = ccdb.retrieveFromTFileAny("CPV/BadMap", metadata, eventTime); - // if (!mBadMap) { - // LOG(FATAL) << "Can not get bad map object from ccdb"; - // } - } - } - - if (!mPedestals && !mIsPedestalData) { - if (o2::cpv::CPVSimParams::Instance().mCCDBPath.compare("localtest") == 0) { - mPedestals = std::make_unique(1); // test default calibration - LOG(INFO) << "No reading calibration from ccdb requested, set default"; - } else { - LOG(INFO) << "Getting calibration object from ccdb"; - //TODO: configuring ccdb address from config file, readign proper calibration/BadMap and updateing if necessary - o2::ccdb::CcdbApi ccdb; - std::map metadata; - ccdb.init("http://ccdb-test.cern.ch:8080"); // or http://localhost:8080 for a local installation - // auto tr = triggerbranch.begin(); - // double eventTime = -1; - // if(tr!=triggerbranch.end()){ - // eventTime = (*tr).getBCData().getTimeNS() ; - // } - // mPedestals = ccdb.retrieveFromTFileAny("CPV/Calib", metadata, eventTime); - // if (!mPedestals) { - // LOG(FATAL) << "Can not get calibration object from ccdb"; - // } - } - } - - for (const auto& rawData : framework::InputRecordWalker(ctx.inputs())) { - /* enum RawErrorType_t { - kOK, ///< NoError - kNO_PAYLOAD, ///< No payload per ddl - kRDH_DECODING, - kNOT_CPV_RDH, - kPAGE_NOTFOUND, - kPAYLOAD_INCOMPLETE, - kCPVHEADER_INVALID, - kCPVTRAILER_INVALID, - kSEGMENT_HEADER_ERROR, - kROW_HEADER_ERROR, - kEOE_HEADER_ERROR, - kPADERROR, - kPadAddress - */ + std::vector rawFilter{ + {"RAWDATA", o2::framework::ConcreteDataTypeMatcher{"CPV", "RAWDATA"}, o2::framework::Lifetime::Timeframe}, + }; + for (const auto& rawData : framework::InputRecordWalker(ctx.inputs(), rawFilter)) { o2::cpv::RawReaderMemory rawreader(o2::framework::DataRefUtils::as(rawData)); // loop over all the DMA pages while (rawreader.hasNext()) { @@ -136,7 +132,9 @@ void RawToDigitConverterSpec::run(framework::ProcessingContext& ctx) } catch (RawErrorType_t e) { LOG(ERROR) << "Raw decoding error " << (int)e; //add error list - mOutputHWErrors.emplace_back(5, 0, 0, 0, e); //Put general errors to non-existing DDL5 + //RawErrorType_t is defined in O2/Detectors/CPV/reconstruction/include/CPVReconstruction/RawReaderMemory.h + //RawDecoderError(short c, short d, short g, short p, RawErrorType_t e) + mOutputHWErrors.emplace_back(25, 0, 0, 0, e); //Put general errors to non-existing ccId 25 //if problem in header, abandon this page if (e == RawErrorType_t::kRDH_DECODING) { break; @@ -146,24 +144,20 @@ void RawToDigitConverterSpec::run(framework::ProcessingContext& ctx) } auto& rdh = rawreader.getRawHeader(); auto triggerOrbit = o2::raw::RDHUtils::getTriggerOrbit(rdh); - // auto ddl = o2::raw::RDHUtils::getFEEID(header); auto mod = o2::raw::RDHUtils::getLinkID(rdh) + 2; //link=0,1,2 -> mod=2,3,4 - // if(ddl != mDDL){ - // LOG(ERROR) << "DDL from header "<< ddl << " != configured DDL=" << mDDL; - // } - if (mod > o2::cpv::Geometry::kNMod) { //only 3 correct modules:2,3,4 + //for now all modules are written to one LinkID + if (mod > o2::cpv::Geometry::kNMod || mod < 2) { //only 3 correct modules:2,3,4 LOG(ERROR) << "module=" << mod << "do not exist"; - mOutputHWErrors.emplace_back(6, mod, 0, 0, kRDH_INVALID); //Add non-existing DDL as DDL 5 - continue; //skip STU mod + mOutputHWErrors.emplace_back(25, mod, 0, 0, kRDH_INVALID); //Add non-existing modules to non-existing ccId 25 and dilogic = mod + continue; //skip STU mod } - // use the altro decoder to decode the raw data, and extract the RCU trailer o2::cpv::RawDecoder decoder(rawreader); RawErrorType_t err = decoder.decode(); - if (err != kOK) { + if (!(err == kOK || err == kOK_NO_PAYLOAD)) { //TODO handle severe errors //TODO: probably careful conversion of decoder errors to Fitter errors? - mOutputHWErrors.emplace_back(mod, 1, 0, 0, err); //assign general header errors to non-existing FEE 16 + mOutputHWErrors.emplace_back(25, mod, 0, 0, err); //assign general RDH errors to non-existing ccId 25 and dilogic = mod } std::shared_ptr> currentDigitContainer; @@ -233,22 +227,26 @@ void RawToDigitConverterSpec::run(framework::ProcessingContext& ctx) ctx.outputs().snapshot(o2::framework::Output{"CPV", "RAWHWERRORS", 0, o2::framework::Lifetime::Timeframe}, mOutputHWErrors); } -o2::framework::DataProcessorSpec o2::cpv::reco_workflow::getRawToDigitConverterSpec() +o2::framework::DataProcessorSpec o2::cpv::reco_workflow::getRawToDigitConverterSpec(bool askDISTSTF) { std::vector inputs; - inputs.emplace_back("RAWDATA", o2::framework::ConcreteDataTypeMatcher{"CPV", "RAWDATA"}, o2::framework::Lifetime::Timeframe); - + inputs.emplace_back("RAWDATA", o2::framework::ConcreteDataTypeMatcher{"CPV", "RAWDATA"}, o2::framework::Lifetime::Optional); + //receive at least 1 guaranteed input (which will allow to acknowledge the TF) + if (askDISTSTF) { + inputs.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe); + } std::vector outputs; outputs.emplace_back("CPV", "DIGITS", 0, o2::framework::Lifetime::Timeframe); outputs.emplace_back("CPV", "DIGITTRIGREC", 0, o2::framework::Lifetime::Timeframe); outputs.emplace_back("CPV", "RAWHWERRORS", 0, o2::framework::Lifetime::Timeframe); + //note that for cpv we always have stream #0 (i.e. CPV/DIGITS/0) return o2::framework::DataProcessorSpec{"CPVRawToDigitConverterSpec", inputs, // o2::framework::select("A:CPV/RAWDATA"), outputs, o2::framework::adaptFromTask(), o2::framework::Options{ - {"pedestal", o2::framework::VariantType::String, "off", {"Analyze as pedestal run on/off"}}, - {"DDL", o2::framework::VariantType::String, "0", {"DDL id to read"}}, + {"pedestal", o2::framework::VariantType::Bool, false, {"If true then do not subtract pedestals from digits"}}, + {"ccdb-url", o2::framework::VariantType::String, "http://ccdb-test.cern.ch:8080", {"CCDB Url"}}, }}; } diff --git a/Detectors/CPV/workflow/src/RecoWorkflow.cxx b/Detectors/CPV/workflow/src/RecoWorkflow.cxx index 0f6f241843374..2f5cea8d046fe 100644 --- a/Detectors/CPV/workflow/src/RecoWorkflow.cxx +++ b/Detectors/CPV/workflow/src/RecoWorkflow.cxx @@ -57,6 +57,7 @@ const std::unordered_map OutputMap{ o2::framework::WorkflowSpec getWorkflow(bool disableRootInp, bool disableRootOut, bool propagateMC, + bool askSTFDist, std::string const& cfgInput, std::string const& cfgOutput) { @@ -84,14 +85,14 @@ o2::framework::WorkflowSpec getWorkflow(bool disableRootInp, //no explicit raw reader if (isEnabled(OutputType::Digits)) { - specs.emplace_back(o2::cpv::reco_workflow::getRawToDigitConverterSpec()); + specs.emplace_back(o2::cpv::reco_workflow::getRawToDigitConverterSpec(askSTFDist)); if (!disableRootOut) { specs.emplace_back(o2::cpv::getDigitWriterSpec(false)); } } if (isEnabled(OutputType::Clusters)) { // add clusterizer - specs.emplace_back(o2::cpv::reco_workflow::getRawToDigitConverterSpec()); + specs.emplace_back(o2::cpv::reco_workflow::getRawToDigitConverterSpec(askSTFDist)); specs.emplace_back(o2::cpv::reco_workflow::getClusterizerSpec(false)); if (!disableRootOut) { specs.emplace_back(o2::cpv::getClusterWriterSpec(false)); diff --git a/Detectors/CPV/workflow/src/cpv-reco-workflow.cxx b/Detectors/CPV/workflow/src/cpv-reco-workflow.cxx index d74275e344775..4a98309a3e8fe 100644 --- a/Detectors/CPV/workflow/src/cpv-reco-workflow.cxx +++ b/Detectors/CPV/workflow/src/cpv-reco-workflow.cxx @@ -33,6 +33,9 @@ void customize(std::vector& workflowOptions) {"disable-mc", o2::framework::VariantType::Bool, false, {"disable sending of MC information"}}, {"disable-root-input", o2::framework::VariantType::Bool, false, {"disable root-files input reader"}}, {"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writer"}}, + {"pedestal", o2::framework::VariantType::Bool, false, {"pedestal run? if true then don't subtract pedestals from digits"}}, + {"ignore-dist-stf", o2::framework::VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}, + //{"ccdb-url", o2::framework::VariantType::String, "http://ccdb-test.cern.ch:8080", {"path to CCDB like http://ccdb-test.cern.ch:8080"}}, {"configKeyValues", o2::framework::VariantType::String, "", {"Semicolon separated key=value strings ..."}}}; std::swap(workflowOptions, options); } @@ -59,8 +62,8 @@ o2::framework::WorkflowSpec defineDataProcessing(o2::framework::ConfigContext co return o2::cpv::reco_workflow::getWorkflow(cfgc.options().get("disable-root-input"), cfgc.options().get("disable-root-output"), - !cfgc.options().get("disable-mc"), // - cfgc.options().get("input-type"), // - cfgc.options().get("output-type") // - ); + !cfgc.options().get("disable-mc"), + !cfgc.options().get("ignore-dist-stf"), + cfgc.options().get("input-type"), + cfgc.options().get("output-type")); } diff --git a/Steer/DigitizerWorkflow/src/CPVDigitizerSpec.h b/Steer/DigitizerWorkflow/src/CPVDigitizerSpec.h index a7ba75fb7e023..226cbb160b169 100644 --- a/Steer/DigitizerWorkflow/src/CPVDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/CPVDigitizerSpec.h @@ -14,7 +14,7 @@ #include "Framework/DataProcessorSpec.h" #include "Framework/Task.h" #include "DataFormatsCPV/Digit.h" -#include "CPVBase/Hit.h" +#include "DataFormatsCPV/Hit.h" #include "CPVSimulation/Digitizer.h" #include "SimulationDataFormat/MCTruthContainer.h" #include "DetectorsBase/BaseDPLDigitizer.h" diff --git a/macro/CMakeLists.txt b/macro/CMakeLists.txt index 897a1414c3eb4..3a41ab185fd1a 100644 --- a/macro/CMakeLists.txt +++ b/macro/CMakeLists.txt @@ -82,8 +82,8 @@ o2_add_test_root_macro(analyzeHits.C O2::FDDSimulation O2::MCHSimulation O2::MIDSimulation - O2::ZDCSimulation - O2::CPVBase) + O2::ZDCSimulation + O2::DataFormatsCPV) o2_add_test_root_macro(duplicateHits.C PUBLIC_LINK_LIBRARIES O2::ITSMFTSimulation @@ -99,7 +99,7 @@ o2_add_test_root_macro(duplicateHits.C O2::MCHSimulation O2::MIDSimulation O2::ZDCSimulation - O2::CPVBase COMPILE_ONLY) + O2::DataFormatsCPV COMPILE_ONLY) o2_add_test_root_macro(migrateSimFiles.C PUBLIC_LINK_LIBRARIES O2::DetectorsCommonDataFormats) diff --git a/macro/analyzeHits.C b/macro/analyzeHits.C index 7983e6b1188b6..cc22e9e05f05e 100644 --- a/macro/analyzeHits.C +++ b/macro/analyzeHits.C @@ -14,7 +14,7 @@ #include "DataFormatsFDD/Hit.h" #include "MCHSimulation/Hit.h" #include "MIDSimulation/Hit.h" -#include "CPVBase/Hit.h" +#include "DataFormatsCPV/Hit.h" #include "DataFormatsZDC/Hit.h" #include "DetectorsCommonDataFormats/NameConf.h" #include "DataFormatsParameters/GRPObject.h" diff --git a/macro/duplicateHits.C b/macro/duplicateHits.C index 531101b73e2aa..f22b0957dea4f 100644 --- a/macro/duplicateHits.C +++ b/macro/duplicateHits.C @@ -14,7 +14,7 @@ #include "DataFormatsFDD/Hit.h" #include "MCHSimulation/Hit.h" #include "MIDSimulation/Hit.h" -#include "CPVBase/Hit.h" +#include "DataFormatsCPV/Hit.h" #include "DataFormatsZDC/Hit.h" #include "SimulationDataFormat/MCEventHeader.h" #include "DataFormatsParameters/GRPObject.h" From d91094005d34630f500fac3f719d40011f05a2a9 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Tue, 22 Jun 2021 23:30:39 +0200 Subject: [PATCH 008/314] DPL: provide level everywhere when mapping FairLogger to InfoLogger (#6490) * DPL: provide level everywhere when mapping FairLogger to InfoLogger * Adapt the levels tried to match them to the guidelines in https://alice-flp.docs.cern.ch/InfoLogger/ * Update CommonServices.cxx * fix compilation Co-authored-by: David Rohr --- Framework/Core/src/CommonServices.cxx | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/Framework/Core/src/CommonServices.cxx b/Framework/Core/src/CommonServices.cxx index 4c3f2361a3e75..0bedaa003ad75 100644 --- a/Framework/Core/src/CommonServices.cxx +++ b/Framework/Core/src/CommonServices.cxx @@ -199,29 +199,34 @@ auto createInfoLoggerSinkHelper(InfoLogger* logger, InfoLoggerContext* ctx) return; } else if (metadata.severity_name == fair::Logger::SeverityName(fair::Severity::fatal)) { severity = InfoLogger::Severity::Fatal; + level = 1; } else if (metadata.severity_name == fair::Logger::SeverityName(fair::Severity::error)) { severity = InfoLogger::Severity::Error; + level = 3; } else if (metadata.severity_name == fair::Logger::SeverityName(fair::Severity::warn)) { severity = InfoLogger::Severity::Warning; + level = 6; } else if (metadata.severity_name == fair::Logger::SeverityName(fair::Severity::state)) { severity = InfoLogger::Severity::Info; - level = 10; + level = 8; } else if (metadata.severity_name == fair::Logger::SeverityName(fair::Severity::info)) { severity = InfoLogger::Severity::Info; + level = 10; } else if (metadata.severity_name == fair::Logger::SeverityName(fair::Severity::debug)) { severity = InfoLogger::Severity::Debug; + level = 11; } else if (metadata.severity_name == fair::Logger::SeverityName(fair::Severity::debug1)) { severity = InfoLogger::Severity::Debug; - level = 10; + level = 12; } else if (metadata.severity_name == fair::Logger::SeverityName(fair::Severity::debug2)) { severity = InfoLogger::Severity::Debug; - level = 20; + level = 13; } else if (metadata.severity_name == fair::Logger::SeverityName(fair::Severity::debug3)) { severity = InfoLogger::Severity::Debug; - level = 30; + level = 14; } else if (metadata.severity_name == fair::Logger::SeverityName(fair::Severity::debug4)) { severity = InfoLogger::Severity::Debug; - level = 40; + level = 15; } else if (metadata.severity_name == fair::Logger::SeverityName(fair::Severity::trace)) { severity = InfoLogger::Severity::Debug; level = 50; From cd8eb6a8b223630c09c1b3b6fcf78d8fa9cae685 Mon Sep 17 00:00:00 2001 From: shahoian Date: Wed, 23 Jun 2021 00:10:06 +0200 Subject: [PATCH 009/314] ZDC Digits2Raw: labels are not guaranteed to be present --- Detectors/ZDC/simulation/src/Digits2Raw.cxx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Detectors/ZDC/simulation/src/Digits2Raw.cxx b/Detectors/ZDC/simulation/src/Digits2Raw.cxx index fdcf1f4b3c047..ea9951de6394c 100644 --- a/Detectors/ZDC/simulation/src/Digits2Raw.cxx +++ b/Detectors/ZDC/simulation/src/Digits2Raw.cxx @@ -98,7 +98,9 @@ void Digits2Raw::processDigits(const std::string& outDir, const std::string& fil return; } - digiTree->SetBranchStatus("ZDCDigitLabel*", 0); + if (digiTree->GetBranchStatus("ZDCDigitLabels")) { + digiTree->SetBranchStatus("ZDCDigitLabel*", 0); + } for (int ient = 0; ient < digiTree->GetEntries(); ient++) { digiTree->GetEntry(ient); From ed9ba24540de738671de5673c92bc1f1343a5b3b Mon Sep 17 00:00:00 2001 From: shahoian Date: Wed, 23 Jun 2021 11:11:13 +0200 Subject: [PATCH 010/314] CPV: Never take ownership CCDB objects --- .../simulation/include/CPVSimulation/RawWriter.h | 10 +++++++--- Detectors/CPV/simulation/src/RawWriter.cxx | 16 ++++++++++------ 2 files changed, 17 insertions(+), 9 deletions(-) diff --git a/Detectors/CPV/simulation/include/CPVSimulation/RawWriter.h b/Detectors/CPV/simulation/include/CPVSimulation/RawWriter.h index 6399d4a165f1b..cbf74c62862d0 100644 --- a/Detectors/CPV/simulation/include/CPVSimulation/RawWriter.h +++ b/Detectors/CPV/simulation/include/CPVSimulation/RawWriter.h @@ -81,9 +81,13 @@ class RawWriter FileFor_t mFileFor = FileFor_t::kFullDet; ///< Granularity of the output files std::string mOutputLocation = "./"; ///< Rawfile name std::string mCcdbUrl = "http://ccdb-test.cern.ch:8080"; ///< CCDB Url - std::unique_ptr mCalibParams; ///< CPV calibration - std::unique_ptr mPedestals; ///< CPV pedestals - std::unique_ptr mBadMap; ///< CPV bad channel map + std::unique_ptr mCalibParamsTst; ///< CPV calibration + std::unique_ptr mPedestalsTst; ///< CPV pedestals + std::unique_ptr mBadMapTst; ///< CPV bad channel map + CalibParams* mCalibParams = nullptr; ///< CPV calibration + Pedestals* mPedestals = nullptr; ///< CPV pedestals + BadChannelMap* mBadMap = nullptr; ///< CPV bad channel map + std::vector mPayload; ///< Payload to be written gsl::span mDigits; ///< Digits input vector - must be in digitized format including the time response std::unique_ptr mRawWriter; ///< Raw writer diff --git a/Detectors/CPV/simulation/src/RawWriter.cxx b/Detectors/CPV/simulation/src/RawWriter.cxx index a878fb7223f4b..ecb63b6658d61 100644 --- a/Detectors/CPV/simulation/src/RawWriter.cxx +++ b/Detectors/CPV/simulation/src/RawWriter.cxx @@ -46,9 +46,11 @@ void RawWriter::init() LOG(ERROR) << "Host " << mCcdbUrl << " is not reachable!!!"; } LOG(INFO) << "Using dummy calibration"; - mCalibParams = std::make_unique(1); + mCalibParamsTst = std::make_unique(1); + mCalibParams = mCalibParamsTst.get(); //mBadMap = std::make_unique(1); - mPedestals = std::make_unique(1); + mPedestalsTst = std::make_unique(1); + mPedestals = mPedestalsTst.get(); } else { ccdbMgr.setCaching(true); //make local cache of remote objects ccdbMgr.setLocalObjectValidityChecking(true); //query objects from remote site only when local one is not valid @@ -59,10 +61,11 @@ void RawWriter::init() ccdbMgr.setTimestamp(o2::ccdb::getCurrentTimestamp()); LOG(INFO) << "CCDB: Reading o2::cpv::CalibParams from CPV/Calib/Gains"; - mCalibParams.reset(ccdbMgr.get("CPV/Calib/Gains")); + mCalibParams = ccdbMgr.get("CPV/Calib/Gains"); if (!mCalibParams) { LOG(ERROR) << "Cannot get o2::cpv::CalibParams from CCDB. using dummy calibration!"; - mCalibParams = std::make_unique(1); + mCalibParamsTst = std::make_unique(1); + mCalibParams = mCalibParamsTst.get(); } /* @@ -75,10 +78,11 @@ void RawWriter::init() */ LOG(INFO) << "CCDB: Reading o2::cpv::Pedestals from CPV/Calib/Pedestals"; - mPedestals.reset(ccdbMgr.get("CPV/Calib/Pedestals")); + mPedestals = ccdbMgr.get("CPV/Calib/Pedestals"); if (!mPedestals) { LOG(ERROR) << "Cannot get o2::cpv::Pedestals from CCDB. using dummy calibration!"; - mPedestals = std::make_unique(1); + mPedestalsTst = std::make_unique(1); + mPedestals = mPedestalsTst.get(); } LOG(INFO) << "Task configuration is done."; } From 03608ff899d444d52571dbed14a0106ae4616562 Mon Sep 17 00:00:00 2001 From: Ivana Hrivnacova Date: Wed, 23 Jun 2021 13:52:31 +0200 Subject: [PATCH 011/314] =?UTF-8?q?Updated=20copyright=20headers=20in=20al?= =?UTF-8?q?l=20files=20with=20new=20text=20=E2=80=A6=20(#6430)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Updated copyright headers in all files with new text agreed in the O2 project --- Algorithm/CMakeLists.txt | 13 +++++++------ Algorithm/include/Algorithm/BitstreamReader.h | 9 +++++---- Algorithm/include/Algorithm/FlattenRestore.h | 9 +++++---- Algorithm/include/Algorithm/HeaderStack.h | 9 +++++---- Algorithm/include/Algorithm/O2FormatParser.h | 9 +++++---- Algorithm/include/Algorithm/PageParser.h | 9 +++++---- Algorithm/include/Algorithm/Parser.h | 9 +++++---- Algorithm/include/Algorithm/RangeTokenizer.h | 9 +++++---- Algorithm/include/Algorithm/TableView.h | 9 +++++---- Algorithm/include/Algorithm/mpl_tools.h | 9 +++++---- Algorithm/test/StaticSequenceAllocator.h | 9 +++++---- Algorithm/test/headerstack.cxx | 9 +++++---- Algorithm/test/o2formatparser.cxx | 9 +++++---- Algorithm/test/pageparser.cxx | 9 +++++---- Algorithm/test/parser.cxx | 9 +++++---- Algorithm/test/tableview.cxx | 9 +++++---- Algorithm/test/test_BitstreamReader.cxx | 9 +++++---- Algorithm/test/test_FlattenRestore.cxx | 9 +++++---- Algorithm/test/test_RangeTokenizer.cxx | 9 +++++---- Algorithm/test/test_mpl_tools.cxx | 9 +++++---- Analysis/ALICE3/CMakeLists.txt | 13 +++++++------ Analysis/ALICE3/include/ALICE3Analysis/RICH.h | 9 +++++---- Analysis/ALICE3/src/alice3-pidTOF.cxx | 9 +++++---- Analysis/ALICE3/src/alice3-qa-multiplicity.cxx | 9 +++++---- Analysis/ALICE3/src/alice3-trackextension.cxx | 9 +++++---- Analysis/ALICE3/src/alice3-trackselection.cxx | 9 +++++---- Analysis/ALICE3/src/pidRICHqa.cxx | 9 +++++---- Analysis/CMakeLists.txt | 13 +++++++------ Analysis/Core/CMakeLists.txt | 13 +++++++------ .../AnalysisCore/CorrelationContainer.h | 9 +++++---- .../include/AnalysisCore/HFConfigurables.h | 9 +++++---- .../Core/include/AnalysisCore/HFSelectorCuts.h | 9 +++++---- Analysis/Core/include/AnalysisCore/JetFinder.h | 9 +++++---- Analysis/Core/include/AnalysisCore/MC.h | 9 +++++---- Analysis/Core/include/AnalysisCore/PairCuts.h | 9 +++++---- Analysis/Core/include/AnalysisCore/RecoDecay.h | 9 +++++---- .../Core/include/AnalysisCore/TrackSelection.h | 9 +++++---- .../AnalysisCore/TrackSelectionDefaults.h | 9 +++++---- .../include/AnalysisCore/TrackSelectorPID.h | 9 +++++---- .../Core/include/AnalysisCore/TriggerAliases.h | 9 +++++---- .../Core/include/AnalysisCore/trackUtilities.h | 9 +++++---- Analysis/Core/src/AODMerger.cxx | 9 +++++---- Analysis/Core/src/AnalysisCoreLinkDef.h | 9 +++++---- Analysis/Core/src/AnalysisJetsLinkDef.h | 9 +++++---- Analysis/Core/src/CorrelationContainer.cxx | 9 +++++---- Analysis/Core/src/HFConfigurables.cxx | 9 +++++---- Analysis/Core/src/JetFinder.cxx | 9 +++++---- Analysis/Core/src/TrackSelection.cxx | 9 +++++---- Analysis/Core/src/TriggerAliases.cxx | 9 +++++---- Analysis/DataModel/CMakeLists.txt | 13 +++++++------ .../include/AnalysisDataModel/CFDerived.h | 9 +++++---- .../include/AnalysisDataModel/Centrality.h | 9 +++++---- .../include/AnalysisDataModel/EMCALClusters.h | 9 +++++---- .../include/AnalysisDataModel/EventSelection.h | 9 +++++---- .../HFCandidateSelectionTables.h | 9 +++++---- .../AnalysisDataModel/HFSecondaryVertex.h | 9 +++++---- .../DataModel/include/AnalysisDataModel/Jet.h | 9 +++++---- .../include/AnalysisDataModel/Multiplicity.h | 9 +++++---- .../include/AnalysisDataModel/PID/BetheBloch.h | 9 +++++---- .../AnalysisDataModel/PID/DetectorResponse.h | 9 +++++---- .../AnalysisDataModel/PID/PIDResponse.h | 9 +++++---- .../include/AnalysisDataModel/PID/PIDTOF.h | 9 +++++---- .../include/AnalysisDataModel/PID/PIDTPC.h | 9 +++++---- .../include/AnalysisDataModel/PID/ParamBase.h | 9 +++++---- .../include/AnalysisDataModel/PID/TOFReso.h | 9 +++++---- .../AnalysisDataModel/PID/TOFResoALICE3.h | 9 +++++---- .../include/AnalysisDataModel/PID/TPCReso.h | 9 +++++---- .../AnalysisDataModel/ReducedInfoTables.h | 9 +++++---- .../AnalysisDataModel/StrangenessTables.h | 9 +++++---- .../AnalysisDataModel/TrackSelectionTables.h | 9 +++++---- .../DataModel/src/AnalysisDataModelLinkDef.h | 9 +++++---- Analysis/DataModel/src/ParamBase.cxx | 9 +++++---- Analysis/DataModel/src/aodDataModelGraph.cxx | 9 +++++---- Analysis/DataModel/src/handleParamTOFReso.cxx | 9 +++++---- .../DataModel/src/handleParamTOFResoALICE3.cxx | 9 +++++---- .../DataModel/src/handleParamTPCBetheBloch.cxx | 9 +++++---- Analysis/EventFiltering/CMakeLists.txt | 13 +++++++------ .../EventFiltering/PWGUD/CutHolderLinkDef.h | 9 +++++---- Analysis/EventFiltering/PWGUD/cutHolder.cxx | 9 +++++---- Analysis/EventFiltering/PWGUD/cutHolder.h | 9 +++++---- .../EventFiltering/PWGUD/diffractionFilter.cxx | 9 +++++---- .../PWGUD/diffractionSelectors.h | 9 +++++---- Analysis/EventFiltering/cefp.cxx | 9 +++++---- .../centralEventFilterProcessor.cxx | 9 +++++---- .../centralEventFilterProcessor.h | 9 +++++---- Analysis/EventFiltering/filterTables.h | 9 +++++---- Analysis/EventFiltering/nucleiFilter.cxx | 9 +++++---- Analysis/PWGDQ/CMakeLists.txt | 13 +++++++------ .../include/PWGDQCore/AnalysisCompositeCut.h | 9 +++++---- Analysis/PWGDQ/include/PWGDQCore/AnalysisCut.h | 9 +++++---- Analysis/PWGDQ/include/PWGDQCore/CutsLibrary.h | 9 +++++---- .../PWGDQ/include/PWGDQCore/HistogramManager.h | 9 +++++---- .../include/PWGDQCore/HistogramsLibrary.h | 9 +++++---- Analysis/PWGDQ/include/PWGDQCore/VarManager.h | 9 +++++---- Analysis/PWGDQ/src/AnalysisCompositeCut.cxx | 9 +++++---- Analysis/PWGDQ/src/AnalysisCut.cxx | 9 +++++---- Analysis/PWGDQ/src/HistogramManager.cxx | 9 +++++---- Analysis/PWGDQ/src/PWGDQCoreLinkDef.h | 9 +++++---- Analysis/PWGDQ/src/VarManager.cxx | 9 +++++---- Analysis/Scripts/update_ccdb.py | 9 +++++---- Analysis/Tasks/CMakeLists.txt | 13 +++++++------ Analysis/Tasks/PID/CMakeLists.txt | 13 +++++++------ Analysis/Tasks/PID/pidTOF.cxx | 9 +++++---- Analysis/Tasks/PID/pidTOFFull.cxx | 9 +++++---- Analysis/Tasks/PID/pidTOFbeta.cxx | 9 +++++---- Analysis/Tasks/PID/pidTPC.cxx | 9 +++++---- Analysis/Tasks/PID/pidTPCFull.cxx | 9 +++++---- Analysis/Tasks/PID/qaHMPID.cxx | 9 +++++---- Analysis/Tasks/PID/qaTOFMC.cxx | 9 +++++---- .../Tasks/PWGCF/AnalysisConfigurableCuts.cxx | 9 +++++---- .../Tasks/PWGCF/AnalysisConfigurableCuts.h | 9 +++++---- Analysis/Tasks/PWGCF/CMakeLists.txt | 13 +++++++------ Analysis/Tasks/PWGCF/FemtoDream/CMakeLists.txt | 13 +++++++------ .../FemtoDream/femtoDreamProducerTask.cxx | 9 +++++---- .../include/FemtoDream/FemtoDerived.h | 9 +++++---- .../FemtoDream/FemtoDreamCollisionSelection.h | 9 +++++---- .../FemtoDream/FemtoDreamObjectSelection.h | 9 +++++---- .../include/FemtoDream/FemtoDreamSelection.h | 9 +++++---- .../FemtoDream/FemtoDreamTrackSelection.h | 9 +++++---- Analysis/Tasks/PWGCF/PWGCFCoreLinkDef.h | 9 +++++---- Analysis/Tasks/PWGCF/correlations.cxx | 9 +++++---- Analysis/Tasks/PWGCF/correlationsFiltered.cxx | 9 +++++---- Analysis/Tasks/PWGCF/dptdptcorrelations.cxx | 9 +++++---- Analysis/Tasks/PWGCF/filterCF.cxx | 9 +++++---- Analysis/Tasks/PWGDQ/CMakeLists.txt | 13 +++++++------ Analysis/Tasks/PWGDQ/dileptonEE.cxx | 9 +++++---- Analysis/Tasks/PWGDQ/dileptonMuMu.cxx | 9 +++++---- Analysis/Tasks/PWGDQ/filterPP.cxx | 9 +++++---- Analysis/Tasks/PWGDQ/tableMaker.cxx | 9 +++++---- Analysis/Tasks/PWGDQ/tableMaker_PbPb.cxx | 9 +++++---- Analysis/Tasks/PWGDQ/tableReader.cxx | 9 +++++---- Analysis/Tasks/PWGDQ/v0selector.cxx | 9 +++++---- Analysis/Tasks/PWGHF/CMakeLists.txt | 13 +++++++------ .../Tasks/PWGHF/HFCandidateCreator2Prong.cxx | 9 +++++---- .../Tasks/PWGHF/HFCandidateCreator3Prong.cxx | 9 +++++---- .../Tasks/PWGHF/HFCandidateCreatorCascade.cxx | 9 +++++---- Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx | 9 +++++---- .../Tasks/PWGHF/HFCorrelatorDplusDminus.cxx | 9 +++++---- Analysis/Tasks/PWGHF/HFD0CandidateSelector.cxx | 9 +++++---- .../PWGHF/HFDplusToPiKPiCandidateSelector.cxx | 9 +++++---- .../PWGHF/HFJpsiToEECandidateSelector.cxx | 9 +++++---- Analysis/Tasks/PWGHF/HFLcCandidateSelector.cxx | 9 +++++---- .../Tasks/PWGHF/HFLcK0sPCandidateSelector.cxx | 9 +++++---- Analysis/Tasks/PWGHF/HFMCValidation.cxx | 9 +++++---- .../Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx | 9 +++++---- Analysis/Tasks/PWGHF/HFTreeCreatorD0ToKPi.cxx | 9 +++++---- Analysis/Tasks/PWGHF/HFTreeCreatorLcToPKPi.cxx | 9 +++++---- .../PWGHF/HFXicToPKPiCandidateSelector.cxx | 9 +++++---- Analysis/Tasks/PWGHF/taskBPlus.cxx | 9 +++++---- Analysis/Tasks/PWGHF/taskCorrelationDDbar.cxx | 9 +++++---- Analysis/Tasks/PWGHF/taskD0.cxx | 9 +++++---- Analysis/Tasks/PWGHF/taskDPlus.cxx | 9 +++++---- Analysis/Tasks/PWGHF/taskJpsi.cxx | 9 +++++---- Analysis/Tasks/PWGHF/taskLc.cxx | 9 +++++---- Analysis/Tasks/PWGHF/taskLcK0sP.cxx | 9 +++++---- Analysis/Tasks/PWGHF/taskX.cxx | 9 +++++---- Analysis/Tasks/PWGHF/taskXic.cxx | 9 +++++---- Analysis/Tasks/PWGJE/CMakeLists.txt | 13 +++++++------ Analysis/Tasks/PWGJE/jetfinder.cxx | 9 +++++---- Analysis/Tasks/PWGJE/jetfinderhadronrecoil.cxx | 9 +++++---- Analysis/Tasks/PWGJE/jetfinderhf.cxx | 9 +++++---- Analysis/Tasks/PWGJE/jetskimming.cxx | 18 ++++++++++-------- Analysis/Tasks/PWGJE/jetsubstructure.cxx | 9 +++++---- Analysis/Tasks/PWGLF/CMakeLists.txt | 13 +++++++------ Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx | 9 +++++---- Analysis/Tasks/PWGLF/cascadeanalysis.cxx | 9 +++++---- Analysis/Tasks/PWGLF/cascadebuilder.cxx | 9 +++++---- Analysis/Tasks/PWGLF/cascadefinder.cxx | 9 +++++---- Analysis/Tasks/PWGLF/lambdakzeroanalysis.cxx | 9 +++++---- Analysis/Tasks/PWGLF/lambdakzerobuilder.cxx | 9 +++++---- Analysis/Tasks/PWGLF/lambdakzerofinder.cxx | 9 +++++---- Analysis/Tasks/PWGLF/mcspectraefficiency.cxx | 9 +++++---- Analysis/Tasks/PWGLF/raacharged.cxx | 9 +++++---- Analysis/Tasks/PWGLF/spectraTOF.cxx | 9 +++++---- Analysis/Tasks/PWGLF/spectraTOFtiny.cxx | 9 +++++---- Analysis/Tasks/PWGLF/spectraTPC.cxx | 9 +++++---- Analysis/Tasks/PWGLF/spectraTPCPiKaPr.cxx | 9 +++++---- Analysis/Tasks/PWGLF/spectraTPCtiny.cxx | 9 +++++---- Analysis/Tasks/PWGLF/spectraTPCtinyPiKaPr.cxx | 9 +++++---- Analysis/Tasks/PWGLF/trackchecks.cxx | 9 +++++---- Analysis/Tasks/PWGMM/CMakeLists.txt | 13 +++++++------ Analysis/Tasks/PWGMM/dNdetaRun2Tracklets.cxx | 9 +++++---- Analysis/Tasks/PWGPP/qaEfficiency.cxx | 9 +++++---- Analysis/Tasks/PWGPP/qaEventTrack.cxx | 9 +++++---- Analysis/Tasks/PWGUD/CMakeLists.txt | 13 +++++++------ Analysis/Tasks/PWGUD/upcAnalysis.cxx | 9 +++++---- Analysis/Tasks/PWGUD/upcForward.cxx | 9 +++++---- .../Tasks/SkimmingTutorials/CMakeLists.txt | 13 +++++++------ .../SkimmingTutorials/DataModel/JEDerived.h | 9 +++++---- .../SkimmingTutorials/DataModel/LFDerived.h | 9 +++++---- .../SkimmingTutorials/DataModel/UDDerived.h | 9 +++++---- .../Tasks/SkimmingTutorials/jetProvider.cxx | 9 +++++---- .../SkimmingTutorials/jetSpectraAnalyser.cxx | 9 +++++---- .../SkimmingTutorials/jetSpectraReference.cxx | 9 +++++---- .../spectraNucleiAnalyser.cxx | 9 +++++---- .../spectraNucleiProvider.cxx | 9 +++++---- .../spectraNucleiReference.cxx | 9 +++++---- .../SkimmingTutorials/spectraTPCAnalyser.cxx | 9 +++++---- .../SkimmingTutorials/spectraTPCProvider.cxx | 9 +++++---- .../SkimmingTutorials/spectraTPCReference.cxx | 9 +++++---- .../SkimmingTutorials/spectraUPCAnalyser.cxx | 9 +++++---- .../SkimmingTutorials/spectraUPCProvider.cxx | 9 +++++---- .../SkimmingTutorials/spectraUPCReference.cxx | 9 +++++---- Analysis/Tasks/Utils/CMakeLists.txt | 13 +++++++------ .../AnalysisTasksUtils/UtilsDebugLcK0Sp.h | 9 +++++---- Analysis/Tasks/centralityQa.cxx | 9 +++++---- Analysis/Tasks/centralityTable.cxx | 9 +++++---- Analysis/Tasks/emcalCorrectionTask.cxx | 9 +++++---- Analysis/Tasks/eventSelection.cxx | 9 +++++---- Analysis/Tasks/eventSelectionQa.cxx | 9 +++++---- Analysis/Tasks/multiplicityQa.cxx | 9 +++++---- Analysis/Tasks/multiplicityTable.cxx | 9 +++++---- Analysis/Tasks/timestamp.cxx | 9 +++++---- Analysis/Tasks/trackextension.cxx | 9 +++++---- Analysis/Tasks/trackqa.cxx | 9 +++++---- Analysis/Tasks/trackselection.cxx | 9 +++++---- Analysis/Tasks/validation.cxx | 9 +++++---- Analysis/Tasks/weakDecayIndices.cxx | 9 +++++---- Analysis/Tutorials/CMakeLists.txt | 13 +++++++------ .../include/Analysis/configurableCut.h | 9 +++++---- .../Tutorials/src/ConfigurableCutLinkDef.h | 9 +++++---- Analysis/Tutorials/src/ZDCVZeroIteration.cxx | 9 +++++---- Analysis/Tutorials/src/aodreader.cxx | 9 +++++---- Analysis/Tutorials/src/aodwriter.cxx | 9 +++++---- Analysis/Tutorials/src/associatedExample.cxx | 9 +++++---- Analysis/Tutorials/src/ccdbaccess.cxx | 9 +++++---- .../Tutorials/src/collisionTracksIteration.cxx | 9 +++++---- Analysis/Tutorials/src/compatibleBCs.cxx | 9 +++++---- Analysis/Tutorials/src/configurableCut.cxx | 9 +++++---- Analysis/Tutorials/src/configurableObjects.cxx | 9 +++++---- Analysis/Tutorials/src/dynamicColumns.cxx | 9 +++++---- Analysis/Tutorials/src/efficiencyGlobal.cxx | 9 +++++---- Analysis/Tutorials/src/efficiencyPerRun.cxx | 9 +++++---- Analysis/Tutorials/src/eventMixing.cxx | 9 +++++---- Analysis/Tutorials/src/extendedColumns.cxx | 9 +++++---- Analysis/Tutorials/src/extendedTables.cxx | 9 +++++---- Analysis/Tutorials/src/filters.cxx | 9 +++++---- Analysis/Tutorials/src/fullTrackIteration.cxx | 9 +++++---- Analysis/Tutorials/src/histogramRegistry.cxx | 9 +++++---- .../Tutorials/src/histogramTrackSelection.cxx | 9 +++++---- Analysis/Tutorials/src/histograms.cxx | 9 +++++---- .../Tutorials/src/histogramsFullTracks.cxx | 9 +++++---- Analysis/Tutorials/src/jetAnalysis.cxx | 9 +++++---- Analysis/Tutorials/src/mcHistograms.cxx | 9 +++++---- Analysis/Tutorials/src/multiProcess.cxx | 9 +++++---- .../src/multiplicityEventTrackSelection.cxx | 9 +++++---- Analysis/Tutorials/src/muonIteration.cxx | 9 +++++---- Analysis/Tutorials/src/newCollections.cxx | 9 +++++---- Analysis/Tutorials/src/outputs.cxx | 9 +++++---- Analysis/Tutorials/src/partitions.cxx | 9 +++++---- Analysis/Tutorials/src/schemaEvolution.cxx | 9 +++++---- Analysis/Tutorials/src/tableIOin.cxx | 9 +++++---- Analysis/Tutorials/src/tableIOout.cxx | 9 +++++---- .../Tutorials/src/trackCollectionIteration.cxx | 9 +++++---- Analysis/Tutorials/src/trackIteration.cxx | 9 +++++---- Analysis/Tutorials/src/tracksCombinations.cxx | 9 +++++---- Analysis/Tutorials/src/weakDecayIteration.cxx | 9 +++++---- CCDB/CMakeLists.txt | 13 +++++++------ CCDB/include/CCDB/BasicCCDBManager.h | 9 +++++---- CCDB/include/CCDB/CCDBQuery.h | 9 +++++---- CCDB/include/CCDB/CCDBTimeStampUtils.h | 9 +++++---- CCDB/include/CCDB/CcdbApi.h | 9 +++++---- CCDB/include/CCDB/CcdbObjectInfo.h | 9 +++++---- CCDB/include/CCDB/IdPath.h | 9 +++++---- CCDB/include/CCDB/TObjectWrapper.h | 9 +++++---- CCDB/src/BasicCCDBManager.cxx | 9 +++++---- CCDB/src/CCDBLinkDef.h | 9 +++++---- CCDB/src/CCDBQuery.cxx | 9 +++++---- CCDB/src/CCDBTimeStampUtils.cxx | 9 +++++---- CCDB/src/CcdbApi.cxx | 9 +++++---- CCDB/src/DownloadCCDBFile.cxx | 9 +++++---- CCDB/src/IdPath.cxx | 9 +++++---- CCDB/src/InspectCCDBFile.cxx | 9 +++++---- CCDB/src/UploadTool.cxx | 9 +++++---- CCDB/test/testBasicCCDBManager.cxx | 9 +++++---- CCDB/test/testCcdbApi.cxx | 9 +++++---- CCDB/test/testCcdbApi_alien.cxx | 9 +++++---- CMakeLists.txt | 13 +++++++------ Common/CMakeLists.txt | 13 +++++++------ Common/Constants/CMakeLists.txt | 13 +++++++------ .../include/CommonConstants/GeomConstants.h | 9 +++++---- .../include/CommonConstants/LHCConstants.h | 9 +++++---- .../include/CommonConstants/MathConstants.h | 9 +++++---- .../include/CommonConstants/PhysicsConstants.h | 9 +++++---- .../include/CommonConstants/Triggers.h | 9 +++++---- Common/Field/CMakeLists.txt | 13 +++++++------ Common/Field/include/Field/MagFieldContFact.h | 9 +++++---- Common/Field/include/Field/MagFieldFact.h | 9 +++++---- Common/Field/include/Field/MagFieldFast.h | 9 +++++---- Common/Field/include/Field/MagFieldParam.h | 9 +++++---- Common/Field/include/Field/MagneticField.h | 9 +++++---- .../include/Field/MagneticWrapperChebyshev.h | 9 +++++---- Common/Field/src/FieldLinkDef.h | 9 +++++---- Common/Field/src/MagFieldContFact.cxx | 9 +++++---- Common/Field/src/MagFieldFact.cxx | 9 +++++---- Common/Field/src/MagFieldFast.cxx | 9 +++++---- Common/Field/src/MagFieldParam.cxx | 9 +++++---- Common/Field/src/MagneticField.cxx | 9 +++++---- Common/Field/src/MagneticWrapperChebyshev.cxx | 9 +++++---- Common/Field/test/testMagneticField.cxx | 9 +++++---- Common/MathUtils/CMakeLists.txt | 13 +++++++------ .../MathUtils/include/MathUtils/CachingTF1.h | 9 +++++---- Common/MathUtils/include/MathUtils/Cartesian.h | 9 +++++---- .../MathUtils/include/MathUtils/CartesianGPU.h | 9 +++++---- .../MathUtils/include/MathUtils/Chebyshev3D.h | 9 +++++---- .../include/MathUtils/Chebyshev3DCalc.h | 9 +++++---- .../MathUtils/include/MathUtils/Primitive2D.h | 9 +++++---- .../MathUtils/include/MathUtils/RandomRing.h | 9 +++++---- .../MathUtils/include/MathUtils/SMatrixGPU.h | 9 +++++---- Common/MathUtils/include/MathUtils/Utils.h | 9 +++++---- .../include/MathUtils/detail/Bracket.h | 9 +++++---- .../include/MathUtils/detail/CircleXY.h | 9 +++++---- .../include/MathUtils/detail/IntervalXY.h | 9 +++++---- .../include/MathUtils/detail/StatAccumulator.h | 9 +++++---- .../include/MathUtils/detail/TypeTruncation.h | 9 +++++---- .../include/MathUtils/detail/basicMath.h | 9 +++++---- .../include/MathUtils/detail/bitOps.h | 9 +++++---- .../include/MathUtils/detail/trigonometric.h | 9 +++++---- Common/MathUtils/include/MathUtils/fit.h | 9 +++++---- Common/MathUtils/src/CachingTF1.cxx | 9 +++++---- Common/MathUtils/src/Cartesian.cxx | 9 +++++---- Common/MathUtils/src/Chebyshev3D.cxx | 9 +++++---- Common/MathUtils/src/Chebyshev3DCalc.cxx | 9 +++++---- Common/MathUtils/src/MathUtilsLinkDef.h | 9 +++++---- Common/MathUtils/test/testCachingTF1.cxx | 9 +++++---- Common/MathUtils/test/testCartesian.cxx | 9 +++++---- Common/MathUtils/test/testUtils.cxx | 9 +++++---- Common/SimConfig/CMakeLists.txt | 13 +++++++------ .../SimConfig/include/SimConfig/DigiParams.h | 9 +++++---- Common/SimConfig/include/SimConfig/G4Params.h | 9 +++++---- Common/SimConfig/include/SimConfig/SimConfig.h | 9 +++++---- .../SimConfig/include/SimConfig/SimCutParams.h | 9 +++++---- .../SimConfig/include/SimConfig/SimUserDecay.h | 9 +++++---- Common/SimConfig/src/DigiParams.cxx | 9 +++++---- Common/SimConfig/src/G4Params.cxx | 9 +++++---- Common/SimConfig/src/SimConfig.cxx | 9 +++++---- Common/SimConfig/src/SimConfigLinkDef.h | 9 +++++---- Common/SimConfig/src/SimCutParams.cxx | 9 +++++---- Common/SimConfig/src/SimUserDecay.cxx | 9 +++++---- Common/SimConfig/test/TestConfig.cxx | 9 +++++---- .../SimConfig/test/TestConfigurableParam.cxx | 9 +++++---- Common/SimConfig/test/testSimCutParam.cxx | 9 +++++---- Common/Types/CMakeLists.txt | 13 +++++++------ Common/Types/include/CommonTypes/Units.h | 9 +++++---- Common/Utils/CMakeLists.txt | 13 +++++++------ .../include/CommonUtils/BoostHistogramUtils.h | 9 +++++---- .../include/CommonUtils/BoostSerializer.h | 9 +++++---- Common/Utils/include/CommonUtils/CompStream.h | 9 +++++---- .../include/CommonUtils/ConfigurableParam.h | 9 +++++---- .../CommonUtils/ConfigurableParamHelper.h | 9 +++++---- .../CommonUtils/ConfigurationMacroHelper.h | 9 +++++---- .../include/CommonUtils/FileSystemUtils.h | 9 +++++---- Common/Utils/include/CommonUtils/KeyValParam.h | 9 +++++---- .../Utils/include/CommonUtils/MemFileHelper.h | 9 +++++---- Common/Utils/include/CommonUtils/RngHelper.h | 9 +++++---- Common/Utils/include/CommonUtils/RootChain.h | 9 +++++---- .../RootSerializableKeyValueStore.h | 9 +++++---- .../Utils/include/CommonUtils/ShmAllocator.h | 9 +++++---- Common/Utils/include/CommonUtils/ShmManager.h | 9 +++++---- Common/Utils/include/CommonUtils/StringUtils.h | 9 +++++---- Common/Utils/include/CommonUtils/TreeStream.h | 9 +++++---- .../include/CommonUtils/TreeStreamRedirector.h | 9 +++++---- .../Utils/include/CommonUtils/ValueMonitor.h | 9 +++++---- Common/Utils/src/CommonUtilsLinkDef.h | 9 +++++---- Common/Utils/src/CompStream.cxx | 9 +++++---- Common/Utils/src/ConfigurableParam.cxx | 9 +++++---- Common/Utils/src/ConfigurableParamHelper.cxx | 9 +++++---- Common/Utils/src/FileSystemUtils.cxx | 9 +++++---- Common/Utils/src/KeyValParam.cxx | 9 +++++---- Common/Utils/src/RootChain.cxx | 9 +++++---- .../src/RootSerializableKeyValueStore.cxx | 9 +++++---- Common/Utils/src/ShmManager.cxx | 9 +++++---- Common/Utils/src/StringUtils.cxx | 9 +++++---- Common/Utils/src/TreeMergerTool.cxx | 9 +++++---- Common/Utils/src/TreeStream.cxx | 9 +++++---- Common/Utils/src/TreeStreamRedirector.cxx | 9 +++++---- Common/Utils/src/ValueMonitor.cxx | 9 +++++---- Common/Utils/test/testBoostSerializer.cxx | 9 +++++---- Common/Utils/test/testCompStream.cxx | 9 +++++---- Common/Utils/test/testMemFileHelper.cxx | 9 +++++---- .../test/testRootSerializableKeyValueStore.cxx | 9 +++++---- Common/Utils/test/testTreeStream.cxx | 9 +++++---- Common/Utils/test/testValueMonitor.cxx | 9 +++++---- DataFormats/Calibration/CMakeLists.txt | 13 +++++++------ .../DataFormatsCalibration/MeanVertexObject.h | 9 +++++---- .../src/DataFormatsCalibrationLinkDef.h | 9 +++++---- .../Calibration/src/MeanVertexObject.cxx | 9 +++++---- DataFormats/Detectors/CMakeLists.txt | 13 +++++++------ DataFormats/Detectors/CPV/CMakeLists.txt | 13 +++++++------ .../CPV/include/DataFormatsCPV/BadChannelMap.h | 9 +++++---- .../include/DataFormatsCPV/CPVBlockHeader.h | 9 +++++---- .../Detectors/CPV/include/DataFormatsCPV/CTF.h | 9 +++++---- .../CPV/include/DataFormatsCPV/CalibParams.h | 9 +++++---- .../CPV/include/DataFormatsCPV/Cluster.h | 9 +++++---- .../CPV/include/DataFormatsCPV/Digit.h | 9 +++++---- .../Detectors/CPV/include/DataFormatsCPV/Hit.h | 9 +++++---- .../CPV/include/DataFormatsCPV/Pedestals.h | 9 +++++---- .../CPV/include/DataFormatsCPV/RawFormats.h | 9 +++++---- .../CPV/include/DataFormatsCPV/TriggerRecord.h | 9 +++++---- .../Detectors/CPV/src/BadChannelMap.cxx | 9 +++++---- .../Detectors/CPV/src/CPVBlockHeader.cxx | 9 +++++---- DataFormats/Detectors/CPV/src/CTF.cxx | 9 +++++---- DataFormats/Detectors/CPV/src/CalibParams.cxx | 9 +++++---- DataFormats/Detectors/CPV/src/Cluster.cxx | 9 +++++---- .../Detectors/CPV/src/DataFormatsCPVLinkDef.h | 9 +++++---- DataFormats/Detectors/CPV/src/Digit.cxx | 9 +++++---- DataFormats/Detectors/CPV/src/Hit.cxx | 9 +++++---- DataFormats/Detectors/CPV/src/Pedestals.cxx | 9 +++++---- .../Detectors/CPV/src/TriggerRecord.cxx | 9 +++++---- DataFormats/Detectors/CTP/CMakeLists.txt | 13 +++++++------ .../CTP/include/DataFormatsCTP/Configuration.h | 9 +++++---- .../CTP/include/DataFormatsCTP/Digits.h | 9 +++++---- .../Detectors/CTP/src/Configuration.cxx | 9 +++++---- .../Detectors/CTP/src/DataFormatsCTPLinkDef.h | 9 +++++---- DataFormats/Detectors/CTP/src/Digits.cxx | 9 +++++---- DataFormats/Detectors/Common/CMakeLists.txt | 13 +++++++------ .../Detectors/Common/UpgradesStatus.h.in | 9 +++++---- .../DetectorsCommonDataFormats/AlignParam.h | 9 +++++---- .../DetectorsCommonDataFormats/CTFHeader.h | 9 +++++---- .../include/DetectorsCommonDataFormats/DetID.h | 9 +++++---- .../DetMatrixCache.h | 9 +++++---- .../DetectorsCommonDataFormats/EncodedBlocks.h | 9 +++++---- .../DetectorsCommonDataFormats/NameConf.h | 9 +++++---- .../DetectorsCommonDataFormats/SimTraits.h | 9 +++++---- .../UpgradesStatus.h | 9 +++++---- .../Detectors/Common/src/AlignParam.cxx | 9 +++++---- DataFormats/Detectors/Common/src/CTFHeader.cxx | 9 +++++---- DataFormats/Detectors/Common/src/DetID.cxx | 9 +++++---- .../Detectors/Common/src/DetMatrixCache.cxx | 9 +++++---- .../src/DetectorsCommonDataFormatsLinkDef.h | 9 +++++---- .../Detectors/Common/src/EncodedBlocks.cxx | 9 +++++---- DataFormats/Detectors/Common/src/NameConf.cxx | 9 +++++---- .../Detectors/Common/test/testDetID.cxx | 9 +++++---- DataFormats/Detectors/EMCAL/CMakeLists.txt | 13 +++++++------ DataFormats/Detectors/EMCAL/doxymodules.h | 9 +++++---- .../include/DataFormatsEMCAL/AnalysisCluster.h | 9 +++++---- .../EMCAL/include/DataFormatsEMCAL/CTF.h | 9 +++++---- .../EMCAL/include/DataFormatsEMCAL/Cell.h | 9 +++++---- .../EMCAL/include/DataFormatsEMCAL/Cluster.h | 9 +++++---- .../EMCAL/include/DataFormatsEMCAL/Constants.h | 9 +++++---- .../EMCAL/include/DataFormatsEMCAL/Digit.h | 9 +++++---- .../DataFormatsEMCAL/EMCALBlockHeader.h | 9 +++++---- .../DataFormatsEMCAL/EMCALChannelData.h | 9 +++++---- .../include/DataFormatsEMCAL/ErrorTypeFEE.h | 9 +++++---- .../EMCAL/include/DataFormatsEMCAL/EventData.h | 9 +++++---- .../include/DataFormatsEMCAL/EventHandler.h | 9 +++++---- .../EMCAL/include/DataFormatsEMCAL/MCLabel.h | 9 +++++---- .../include/DataFormatsEMCAL/TriggerRecord.h | 9 +++++---- .../Detectors/EMCAL/src/AnalysisCluster.cxx | 9 +++++---- DataFormats/Detectors/EMCAL/src/CTF.cxx | 9 +++++---- DataFormats/Detectors/EMCAL/src/Cell.cxx | 9 +++++---- DataFormats/Detectors/EMCAL/src/Cluster.cxx | 9 +++++---- DataFormats/Detectors/EMCAL/src/Constants.cxx | 9 +++++---- .../EMCAL/src/DataFormatsEMCALLinkDef.h | 9 +++++---- DataFormats/Detectors/EMCAL/src/Digit.cxx | 9 +++++---- .../Detectors/EMCAL/src/EMCALBlockHeader.cxx | 9 +++++---- .../Detectors/EMCAL/src/EMCALChannelData.cxx | 9 +++++---- .../Detectors/EMCAL/src/ErrorTypeFEE.cxx | 9 +++++---- .../Detectors/EMCAL/src/EventHandler.cxx | 9 +++++---- .../Detectors/EMCAL/src/TriggerRecord.cxx | 9 +++++---- DataFormats/Detectors/EMCAL/test/testCell.cxx | 9 +++++---- DataFormats/Detectors/FIT/CMakeLists.txt | 13 +++++++------ DataFormats/Detectors/FIT/FDD/CMakeLists.txt | 13 +++++++------ .../FIT/FDD/include/DataFormatsFDD/CTF.h | 9 +++++---- .../FDD/include/DataFormatsFDD/ChannelData.h | 9 +++++---- .../FIT/FDD/include/DataFormatsFDD/Digit.h | 9 +++++---- .../FIT/FDD/include/DataFormatsFDD/Hit.h | 9 +++++---- .../FDD/include/DataFormatsFDD/LookUpTable.h | 9 +++++---- .../FIT/FDD/include/DataFormatsFDD/MCLabel.h | 9 +++++---- .../FDD/include/DataFormatsFDD/RawEventData.h | 9 +++++---- .../FIT/FDD/include/DataFormatsFDD/RecPoint.h | 9 +++++---- DataFormats/Detectors/FIT/FDD/src/CTF.cxx | 9 +++++---- .../FIT/FDD/src/DataFormatsFDDLinkDef.h | 9 +++++---- .../Detectors/FIT/FDD/src/RawEventData.cxx | 9 +++++---- DataFormats/Detectors/FIT/FT0/CMakeLists.txt | 13 +++++++------ .../FIT/FT0/include/DataFormatsFT0/CTF.h | 9 +++++---- .../FT0/include/DataFormatsFT0/ChannelData.h | 9 +++++---- .../FIT/FT0/include/DataFormatsFT0/Digit.h | 9 +++++---- .../FT0/include/DataFormatsFT0/DigitsTemp.h | 9 +++++---- .../FIT/FT0/include/DataFormatsFT0/HitType.h | 9 +++++---- .../FT0/include/DataFormatsFT0/LookUpTable.h | 9 +++++---- .../FIT/FT0/include/DataFormatsFT0/MCLabel.h | 9 +++++---- .../FT0/include/DataFormatsFT0/RawEventData.h | 9 +++++---- .../FIT/FT0/include/DataFormatsFT0/RecPoints.h | 9 +++++---- DataFormats/Detectors/FIT/FT0/src/CTF.cxx | 9 +++++---- .../Detectors/FIT/FT0/src/ChannelData.cxx | 9 +++++---- .../FIT/FT0/src/DataFormatsFT0LinkDef.h | 9 +++++---- DataFormats/Detectors/FIT/FT0/src/Digit.cxx | 9 +++++---- .../Detectors/FIT/FT0/src/DigitsTemp.cxx | 9 +++++---- .../Detectors/FIT/FT0/src/RawEventData.cxx | 9 +++++---- .../Detectors/FIT/FT0/src/RecPoints.cxx | 9 +++++---- DataFormats/Detectors/FIT/FV0/CMakeLists.txt | 13 +++++++------ .../FIT/FV0/include/DataFormatsFV0/BCData.h | 9 +++++---- .../FIT/FV0/include/DataFormatsFV0/CTF.h | 9 +++++---- .../FV0/include/DataFormatsFV0/ChannelData.h | 9 +++++---- .../FIT/FV0/include/DataFormatsFV0/Hit.h | 9 +++++---- .../FV0/include/DataFormatsFV0/LookUpTable.h | 9 +++++---- .../FIT/FV0/include/DataFormatsFV0/MCLabel.h | 9 +++++---- .../FV0/include/DataFormatsFV0/RawEventData.h | 9 +++++---- DataFormats/Detectors/FIT/FV0/src/BCData.cxx | 9 +++++---- DataFormats/Detectors/FIT/FV0/src/CTF.cxx | 9 +++++---- .../Detectors/FIT/FV0/src/ChannelData.cxx | 9 +++++---- .../FIT/FV0/src/DataFormatsFV0LinkDef.h | 9 +++++---- DataFormats/Detectors/FIT/FV0/src/Hit.cxx | 9 +++++---- .../Detectors/FIT/FV0/src/RawEventData.cxx | 9 +++++---- .../Detectors/GlobalTracking/CMakeLists.txt | 13 +++++++------ .../DataFormatsGlobalTracking/RecoContainer.h | 9 +++++---- .../RecoContainerCreateTracksVariadic.h | 9 +++++---- .../GlobalTracking/src/RecoContainer.cxx | 9 +++++---- DataFormats/Detectors/HMPID/CMakeLists.txt | 13 +++++++------ .../HMPID/include/DataFormatsHMP/CTF.h | 9 +++++---- .../HMPID/include/DataFormatsHMP/Cluster.h | 9 +++++---- .../HMPID/include/DataFormatsHMP/DataFormat.h | 9 +++++---- .../HMPID/include/DataFormatsHMP/Digit.h | 9 +++++---- .../HMPID/include/DataFormatsHMP/Hit.h | 9 +++++---- .../HMPID/include/DataFormatsHMP/Trigger.h | 9 +++++---- DataFormats/Detectors/HMPID/src/CTF.cxx | 9 +++++---- DataFormats/Detectors/HMPID/src/Cluster.cxx | 9 +++++---- .../HMPID/src/DataFormatsHMPLinkDef.h | 9 +++++---- DataFormats/Detectors/HMPID/src/Digit.cxx | 9 +++++---- DataFormats/Detectors/HMPID/src/Trigger.cxx | 9 +++++---- DataFormats/Detectors/ITSMFT/CMakeLists.txt | 13 +++++++------ .../Detectors/ITSMFT/IT3/CMakeLists.txt | 13 +++++++------ .../IT3/include/DataFormatsITS3/CompCluster.h | 9 +++++---- .../Detectors/ITSMFT/IT3/src/CompCluster.cxx | 9 +++++---- .../ITSMFT/IT3/src/ITS3DataFormatsLinkDef.h | 9 +++++---- .../Detectors/ITSMFT/ITS/CMakeLists.txt | 13 +++++++------ .../ITS/include/DataFormatsITS/TrackITS.h | 9 +++++---- .../ITSMFT/ITS/src/DataFormatsITSLinkDef.h | 9 +++++---- .../Detectors/ITSMFT/ITS/src/TrackITS.cxx | 9 +++++---- .../Detectors/ITSMFT/MFT/CMakeLists.txt | 13 +++++++------ .../MFT/include/DataFormatsMFT/TrackMFT.h | 9 +++++---- .../ITSMFT/MFT/src/DataFormatsMFTLinkDef.h | 9 +++++---- .../Detectors/ITSMFT/MFT/src/TrackMFT.cxx | 9 +++++---- .../Detectors/ITSMFT/common/CMakeLists.txt | 13 +++++++------ .../common/include/DataFormatsITSMFT/CTF.h | 9 +++++---- .../common/include/DataFormatsITSMFT/Cluster.h | 9 +++++---- .../include/DataFormatsITSMFT/ClusterPattern.h | 9 +++++---- .../DataFormatsITSMFT/ClusterTopology.h | 9 +++++---- .../include/DataFormatsITSMFT/CompCluster.h | 9 +++++---- .../common/include/DataFormatsITSMFT/Digit.h | 9 +++++---- .../include/DataFormatsITSMFT/GBTCalibData.h | 9 +++++---- .../include/DataFormatsITSMFT/NoiseMap.h | 9 +++++---- .../include/DataFormatsITSMFT/ROFRecord.h | 9 +++++---- .../DataFormatsITSMFT/TopologyDictionary.h | 9 +++++---- .../Detectors/ITSMFT/common/src/CTF.cxx | 9 +++++---- .../Detectors/ITSMFT/common/src/Cluster.cxx | 9 +++++---- .../ITSMFT/common/src/ClusterPattern.cxx | 9 +++++---- .../ITSMFT/common/src/ClusterTopology.cxx | 9 +++++---- .../ITSMFT/common/src/CompCluster.cxx | 9 +++++---- .../Detectors/ITSMFT/common/src/Digit.cxx | 9 +++++---- .../common/src/ITSMFTDataFormatsLinkDef.h | 9 +++++---- .../Detectors/ITSMFT/common/src/NoiseMap.cxx | 9 +++++---- .../Detectors/ITSMFT/common/src/ROFRecord.cxx | 9 +++++---- .../ITSMFT/common/src/TopologyDictionary.cxx | 9 +++++---- .../ITSMFT/common/test/test_Cluster.cxx | 9 +++++---- DataFormats/Detectors/MUON/CMakeLists.txt | 13 +++++++------ DataFormats/Detectors/MUON/MCH/CMakeLists.txt | 13 +++++++------ .../MUON/MCH/include/DataFormatsMCH/CTF.h | 9 +++++---- .../MUON/MCH/include/DataFormatsMCH/Digit.h | 9 +++++---- .../include/DataFormatsMCH/DsChannelGroup.h | 9 +++++---- .../MCH/include/DataFormatsMCH/ROFRecord.h | 9 +++++---- .../MUON/MCH/include/DataFormatsMCH/TrackMCH.h | 9 +++++---- DataFormats/Detectors/MUON/MCH/src/CTF.cxx | 9 +++++---- .../MUON/MCH/src/DataFormatsMCHLinkDef.h | 9 +++++---- DataFormats/Detectors/MUON/MCH/src/Digit.cxx | 9 +++++---- .../Detectors/MUON/MCH/src/ROFRecord.cxx | 9 +++++---- .../Detectors/MUON/MCH/src/TrackMCH.cxx | 9 +++++---- .../MUON/MCH/src/convert-bad-channels.cxx | 9 +++++---- .../Detectors/MUON/MCH/src/testDigit.cxx | 9 +++++---- DataFormats/Detectors/MUON/MID/CMakeLists.txt | 13 +++++++------ .../MUON/MID/include/DataFormatsMID/CTF.h | 9 +++++---- .../MID/include/DataFormatsMID/Cluster2D.h | 9 +++++---- .../MID/include/DataFormatsMID/Cluster3D.h | 9 +++++---- .../MID/include/DataFormatsMID/ColumnData.h | 9 +++++---- .../MUON/MID/include/DataFormatsMID/ROBoard.h | 9 +++++---- .../MID/include/DataFormatsMID/ROFRecord.h | 9 +++++---- .../MUON/MID/include/DataFormatsMID/Track.h | 9 +++++---- DataFormats/Detectors/MUON/MID/src/CTF.cxx | 9 +++++---- .../Detectors/MUON/MID/src/ColumnData.cxx | 9 +++++---- .../MUON/MID/src/DataFormatsMIDLinkDef.h | 9 +++++---- DataFormats/Detectors/MUON/MID/src/ROBoard.cxx | 9 +++++---- DataFormats/Detectors/MUON/MID/src/Track.cxx | 9 +++++---- DataFormats/Detectors/PHOS/CMakeLists.txt | 13 +++++++------ .../include/DataFormatsPHOS/BadChannelsMap.h | 9 +++++---- .../PHOS/include/DataFormatsPHOS/CTF.h | 9 +++++---- .../PHOS/include/DataFormatsPHOS/CalibParams.h | 9 +++++---- .../PHOS/include/DataFormatsPHOS/Cell.h | 9 +++++---- .../PHOS/include/DataFormatsPHOS/Cluster.h | 9 +++++---- .../PHOS/include/DataFormatsPHOS/Digit.h | 9 +++++---- .../PHOS/include/DataFormatsPHOS/MCLabel.h | 9 +++++---- .../include/DataFormatsPHOS/PHOSBlockHeader.h | 9 +++++---- .../PHOS/include/DataFormatsPHOS/Pedestals.h | 9 +++++---- .../PHOS/include/DataFormatsPHOS/TriggerMap.h | 9 +++++---- .../include/DataFormatsPHOS/TriggerRecord.h | 9 +++++---- .../Detectors/PHOS/src/BadChannelsMap.cxx | 9 +++++---- DataFormats/Detectors/PHOS/src/CTF.cxx | 9 +++++---- DataFormats/Detectors/PHOS/src/CalibParams.cxx | 9 +++++---- DataFormats/Detectors/PHOS/src/Cell.cxx | 9 +++++---- DataFormats/Detectors/PHOS/src/Cluster.cxx | 9 +++++---- .../PHOS/src/DataFormatsPHOSLinkDef.h | 9 +++++---- DataFormats/Detectors/PHOS/src/Digit.cxx | 9 +++++---- DataFormats/Detectors/PHOS/src/MCLabel.cxx | 9 +++++---- .../Detectors/PHOS/src/PHOSBlockHeader.cxx | 9 +++++---- DataFormats/Detectors/PHOS/src/Pedestals.cxx | 9 +++++---- DataFormats/Detectors/PHOS/src/TriggerMap.cxx | 9 +++++---- .../Detectors/PHOS/src/TriggerRecord.cxx | 9 +++++---- DataFormats/Detectors/PHOS/test/testCell.cxx | 9 +++++---- DataFormats/Detectors/TOF/CMakeLists.txt | 13 +++++++------ .../Detectors/TOF/include/DataFormatsTOF/CTF.h | 9 +++++---- .../include/DataFormatsTOF/CalibInfoCluster.h | 9 +++++---- .../TOF/include/DataFormatsTOF/CalibInfoTOF.h | 9 +++++---- .../include/DataFormatsTOF/CalibInfoTOFshort.h | 9 +++++---- .../include/DataFormatsTOF/CalibLHCphaseTOF.h | 9 +++++---- .../DataFormatsTOF/CalibTimeSlewingParamTOF.h | 9 +++++---- .../TOF/include/DataFormatsTOF/Cluster.h | 9 +++++---- .../DataFormatsTOF/CompressedDataFormat.h | 9 +++++---- .../TOF/include/DataFormatsTOF/CosmicInfo.h | 9 +++++---- .../TOF/include/DataFormatsTOF/RawDataFormat.h | 9 +++++---- DataFormats/Detectors/TOF/src/CTF.cxx | 9 +++++---- .../Detectors/TOF/src/CalibInfoCluster.cxx | 9 +++++---- DataFormats/Detectors/TOF/src/CalibInfoTOF.cxx | 9 +++++---- .../Detectors/TOF/src/CalibInfoTOFshort.cxx | 9 +++++---- .../Detectors/TOF/src/CalibLHCphaseTOF.cxx | 9 +++++---- .../TOF/src/CalibTimeSlewingParamTOF.cxx | 9 +++++---- DataFormats/Detectors/TOF/src/Cluster.cxx | 9 +++++---- DataFormats/Detectors/TOF/src/CosmicInfo.cxx | 9 +++++---- .../Detectors/TOF/src/DataFormatsTOFLinkDef.h | 9 +++++---- DataFormats/Detectors/TPC/CMakeLists.txt | 13 +++++++------ .../Detectors/TPC/include/DataFormatsTPC/CTF.h | 9 +++++---- .../DataFormatsTPC/ClusterGroupAttribute.h | 9 +++++---- .../include/DataFormatsTPC/ClusterHardware.h | 9 +++++---- .../TPC/include/DataFormatsTPC/ClusterNative.h | 9 +++++---- .../DataFormatsTPC/ClusterNativeHelper.h | 9 +++++---- .../DataFormatsTPC/CompressedClusters.h | 9 +++++---- .../DataFormatsTPC/CompressedClustersHelpers.h | 9 +++++---- .../TPC/include/DataFormatsTPC/Constants.h | 9 +++++---- .../TPC/include/DataFormatsTPC/Defs.h | 9 +++++---- .../TPC/include/DataFormatsTPC/Digit.h | 9 +++++---- .../TPC/include/DataFormatsTPC/Helpers.h | 9 +++++---- .../Detectors/TPC/include/DataFormatsTPC/IDC.h | 9 +++++---- .../TPC/include/DataFormatsTPC/LaserTrack.h | 9 +++++---- .../include/DataFormatsTPC/TPCSectorHeader.h | 9 +++++---- .../TPC/include/DataFormatsTPC/TrackTPC.h | 9 +++++---- .../include/DataFormatsTPC/WorkflowHelper.h | 9 +++++---- .../include/DataFormatsTPC/ZeroSuppression.h | 9 +++++---- .../DataFormatsTPC/ZeroSuppressionLinkBased.h | 9 +++++---- .../TPC/include/DataFormatsTPC/dEdxInfo.h | 9 +++++---- .../Detectors/TPC/src/ClusterNativeHelper.cxx | 9 +++++---- .../Detectors/TPC/src/CompressedClusters.cxx | 9 +++++---- .../Detectors/TPC/src/DataFormatsTPCLinkDef.h | 9 +++++---- DataFormats/Detectors/TPC/src/Helpers.cxx | 9 +++++---- DataFormats/Detectors/TPC/src/LaserTrack.cxx | 9 +++++---- .../Detectors/TPC/src/TPCSectorHeader.cxx | 9 +++++---- DataFormats/Detectors/TPC/src/TrackTPC.cxx | 9 +++++---- .../Detectors/TPC/src/WorkflowHelper.cxx | 9 +++++---- .../Detectors/TPC/test/testClusterHardware.cxx | 9 +++++---- .../Detectors/TPC/test/testClusterNative.cxx | 9 +++++---- .../TPC/test/testCompressedClusters.cxx | 9 +++++---- DataFormats/Detectors/TRD/CMakeLists.txt | 13 +++++++------ .../DataFormatsTRD/AngularResidHistos.h | 9 +++++---- .../Detectors/TRD/include/DataFormatsTRD/CTF.h | 9 +++++---- .../DataFormatsTRD/CalibratedTracklet.h | 9 +++++---- .../include/DataFormatsTRD/CompressedDigit.h | 9 +++++---- .../include/DataFormatsTRD/CompressedHeader.h | 9 +++++---- .../TRD/include/DataFormatsTRD/Constants.h | 9 +++++---- .../TRD/include/DataFormatsTRD/Digit.h | 9 +++++---- .../TRD/include/DataFormatsTRD/EventRecord.h | 9 +++++---- .../TRD/include/DataFormatsTRD/HelperMethods.h | 9 +++++---- .../Detectors/TRD/include/DataFormatsTRD/Hit.h | 9 +++++---- .../TRD/include/DataFormatsTRD/LinkRecord.h | 9 +++++---- .../TRD/include/DataFormatsTRD/RawData.h | 9 +++++---- .../DataFormatsTRD/RecoInputContainer.h | 9 +++++---- .../TRD/include/DataFormatsTRD/SignalArray.h | 9 +++++---- .../TRD/include/DataFormatsTRD/TrackTRD.h | 9 +++++---- .../DataFormatsTRD/TrackTriggerRecord.h | 9 +++++---- .../TRD/include/DataFormatsTRD/Tracklet64.h | 9 +++++---- .../TRD/include/DataFormatsTRD/TriggerRecord.h | 9 +++++---- .../Detectors/TRD/src/AngularResidHistos.cxx | 9 +++++---- DataFormats/Detectors/TRD/src/CTF.cxx | 9 +++++---- .../Detectors/TRD/src/CompressedDigit.cxx | 9 +++++---- .../Detectors/TRD/src/DataFormatsTRDLinkDef.h | 9 +++++---- DataFormats/Detectors/TRD/src/Digit.cxx | 9 +++++---- DataFormats/Detectors/TRD/src/EventRecord.cxx | 9 +++++---- DataFormats/Detectors/TRD/src/LinkRecord.cxx | 9 +++++---- DataFormats/Detectors/TRD/src/RawData.cxx | 9 +++++---- DataFormats/Detectors/TRD/src/Tracklet64.cxx | 9 +++++---- .../Detectors/TRD/src/TriggerRecord.cxx | 9 +++++---- DataFormats/Detectors/TRD/test/testDigit.cxx | 9 +++++---- DataFormats/Detectors/Upgrades/CMakeLists.txt | 13 +++++++------ DataFormats/Detectors/ZDC/CMakeLists.txt | 13 +++++++------ .../ZDC/include/DataFormatsZDC/BCData.h | 9 +++++---- .../Detectors/ZDC/include/DataFormatsZDC/CTF.h | 9 +++++---- .../ZDC/include/DataFormatsZDC/ChannelData.h | 9 +++++---- .../Detectors/ZDC/include/DataFormatsZDC/Hit.h | 9 +++++---- .../ZDC/include/DataFormatsZDC/MCLabel.h | 9 +++++---- .../ZDC/include/DataFormatsZDC/OrbitData.h | 9 +++++---- .../ZDC/include/DataFormatsZDC/OrbitRawData.h | 9 +++++---- .../ZDC/include/DataFormatsZDC/OrbitRecData.h | 9 +++++---- .../ZDC/include/DataFormatsZDC/RawEventData.h | 9 +++++---- .../ZDC/include/DataFormatsZDC/RecEvent.h | 9 +++++---- DataFormats/Detectors/ZDC/src/BCData.cxx | 9 +++++---- DataFormats/Detectors/ZDC/src/CTF.cxx | 9 +++++---- DataFormats/Detectors/ZDC/src/ChannelData.cxx | 9 +++++---- .../Detectors/ZDC/src/DataFormatsZDCLinkDef.h | 9 +++++---- DataFormats/Detectors/ZDC/src/OrbitData.cxx | 9 +++++---- DataFormats/Detectors/ZDC/src/OrbitRawData.cxx | 9 +++++---- DataFormats/Detectors/ZDC/src/OrbitRecData.cxx | 9 +++++---- DataFormats/Detectors/ZDC/src/RawEventData.cxx | 9 +++++---- DataFormats/Detectors/ZDC/src/RecEvent.cxx | 9 +++++---- DataFormats/Headers/CMakeLists.txt | 13 +++++++------ DataFormats/Headers/include/Headers/DAQID.h | 9 +++++---- .../Headers/include/Headers/DataHeader.h | 9 +++++---- .../include/Headers/DataHeaderHelpers.h | 9 +++++---- .../Headers/include/Headers/HeartbeatFrame.h | 9 +++++---- .../Headers/include/Headers/NameHeader.h | 9 +++++---- .../Headers/include/Headers/RAWDataHeader.h | 9 +++++---- DataFormats/Headers/include/Headers/RDHAny.h | 9 +++++---- DataFormats/Headers/include/Headers/Stack.h | 9 +++++---- .../Headers/include/Headers/SubframeMetadata.h | 9 +++++---- .../Headers/include/Headers/TimeStamp.h | 9 +++++---- DataFormats/Headers/src/DAQID.cxx | 9 +++++---- DataFormats/Headers/src/DataHeader.cxx | 9 +++++---- DataFormats/Headers/src/HeartbeatFrame.cxx | 9 +++++---- DataFormats/Headers/src/NameHeader.cxx | 9 +++++---- DataFormats/Headers/src/RDHAny.cxx | 9 +++++---- DataFormats/Headers/src/TimeStamp.cxx | 9 +++++---- DataFormats/Headers/test/testDAQID.cxx | 9 +++++---- DataFormats/Headers/test/testDataHeader.cxx | 9 +++++---- DataFormats/Headers/test/testTimeStamp.cxx | 9 +++++---- .../Headers/test/test_HeartbeatFrame.cxx | 9 +++++---- .../Headers/test/test_RAWDataHeader.cxx | 9 +++++---- .../HLT/include/AliceHLT/TPCRawCluster.h | 9 +++++---- DataFormats/MemoryResources/CMakeLists.txt | 13 +++++++------ .../include/MemoryResources/MemoryResources.h | 9 +++++---- .../include/MemoryResources/observer_ptr.h | 9 +++++---- .../MemoryResources/src/MemoryResources.cxx | 9 +++++---- .../test/testMemoryResources.cxx | 9 +++++---- .../MemoryResources/test/test_observer_ptr.cxx | 9 +++++---- DataFormats/Parameters/CMakeLists.txt | 13 +++++++------ .../include/DataFormatsParameters/GRPObject.h | 9 +++++---- DataFormats/Parameters/src/GRPObject.cxx | 9 +++++---- .../Parameters/src/ParametersDataLinkDef.h | 9 +++++---- DataFormats/QualityControl/CMakeLists.txt | 13 +++++++------ .../DataFormatsQualityControl/FlagReasons.h | 9 +++++---- .../DataFormatsQualityControl/TimeRangeFlag.h | 9 +++++---- .../TimeRangeFlagCollection.h | 9 +++++---- .../src/DataFormatsQualityControlLinkDef.h | 9 +++++---- DataFormats/QualityControl/src/FlagReasons.cxx | 9 +++++---- .../QualityControl/src/TimeRangeFlag.cxx | 9 +++++---- .../src/TimeRangeFlagCollection.cxx | 9 +++++---- .../QualityControl/test/testFlagReasons.cxx | 9 +++++---- .../QualityControl/test/testTimeRangeFlag.cxx | 9 +++++---- .../test/testTimeRangeFlagCollection.cxx | 9 +++++---- DataFormats/Reconstruction/CMakeLists.txt | 13 +++++++------ .../ReconstructionDataFormats/BaseCluster.h | 9 +++++---- .../ReconstructionDataFormats/Cascade.h | 9 +++++---- .../include/ReconstructionDataFormats/DCA.h | 9 +++++---- .../GlobalTrackAccessor.h | 9 +++++---- .../ReconstructionDataFormats/GlobalTrackID.h | 9 +++++---- .../ReconstructionDataFormats/MatchInfoTOF.h | 9 +++++---- .../include/ReconstructionDataFormats/PID.h | 9 +++++---- .../ReconstructionDataFormats/PrimaryVertex.h | 9 +++++---- .../include/ReconstructionDataFormats/Track.h | 9 +++++---- .../ReconstructionDataFormats/TrackCosmics.h | 9 +++++---- .../ReconstructionDataFormats/TrackFwd.h | 9 +++++---- .../TrackLTIntegral.h | 9 +++++---- .../TrackParametrization.h | 9 +++++---- .../TrackParametrizationWithError.h | 9 +++++---- .../ReconstructionDataFormats/TrackTPCITS.h | 9 +++++---- .../ReconstructionDataFormats/TrackTPCTOF.h | 9 +++++---- .../ReconstructionDataFormats/TrackUtils.h | 9 +++++---- .../include/ReconstructionDataFormats/V0.h | 9 +++++---- .../include/ReconstructionDataFormats/Vertex.h | 9 +++++---- .../ReconstructionDataFormats/VtxTrackIndex.h | 9 +++++---- .../ReconstructionDataFormats/VtxTrackRef.h | 9 +++++---- DataFormats/Reconstruction/src/BaseCluster.cxx | 9 +++++---- DataFormats/Reconstruction/src/Cascade.cxx | 9 +++++---- DataFormats/Reconstruction/src/DCA.cxx | 9 +++++---- .../Reconstruction/src/GlobalTrackID.cxx | 9 +++++---- .../Reconstruction/src/MatchInfoTOF.cxx | 9 +++++---- DataFormats/Reconstruction/src/PID.cxx | 9 +++++---- .../Reconstruction/src/PrimaryVertex.cxx | 9 +++++---- .../src/ReconstructionDataFormatsLinkDef.h | 9 +++++---- .../Reconstruction/src/TrackCosmics.cxx | 9 +++++---- DataFormats/Reconstruction/src/TrackFwd.cxx | 9 +++++---- .../Reconstruction/src/TrackLTIntegral.cxx | 9 +++++---- .../src/TrackParametrization.cxx | 18 ++++++++++-------- .../src/TrackParametrizationWithError.cxx | 18 ++++++++++-------- DataFormats/Reconstruction/src/TrackTPCITS.cxx | 9 +++++---- DataFormats/Reconstruction/src/TrackTPCTOF.cxx | 9 +++++---- DataFormats/Reconstruction/src/V0.cxx | 9 +++++---- DataFormats/Reconstruction/src/Vertex.cxx | 9 +++++---- .../Reconstruction/src/VtxTrackIndex.cxx | 9 +++++---- DataFormats/Reconstruction/src/VtxTrackRef.cxx | 9 +++++---- .../test/testLTOFIntegration.cxx | 9 +++++---- DataFormats/Reconstruction/test/testVertex.cxx | 9 +++++---- DataFormats/TimeFrame/CMakeLists.txt | 13 +++++++------ .../TimeFrame/include/TimeFrame/TimeFrame.h | 9 +++++---- DataFormats/TimeFrame/src/TimeFrame.cxx | 9 +++++---- DataFormats/TimeFrame/src/TimeFrameLinkDef.h | 9 +++++---- DataFormats/TimeFrame/test/TimeFrameTest.cxx | 9 +++++---- DataFormats/common/CMakeLists.txt | 13 +++++++------ .../include/CommonDataFormat/AbstractRef.h | 9 +++++---- .../CommonDataFormat/AbstractRefAccessor.h | 9 +++++---- .../include/CommonDataFormat/BunchFilling.h | 9 +++++---- .../common/include/CommonDataFormat/EvIndex.h | 9 +++++---- .../include/CommonDataFormat/FlatHisto1D.h | 9 +++++---- .../include/CommonDataFormat/FlatHisto2D.h | 9 +++++---- .../common/include/CommonDataFormat/IRFrame.h | 9 +++++---- .../CommonDataFormat/InteractionRecord.h | 9 +++++---- .../include/CommonDataFormat/RangeReference.h | 9 +++++---- .../include/CommonDataFormat/TimeStamp.h | 9 +++++---- DataFormats/common/src/AbstractRefAccessor.cxx | 9 +++++---- DataFormats/common/src/BunchFilling.cxx | 9 +++++---- .../common/src/CommonDataFormatLinkDef.h | 9 +++++---- DataFormats/common/src/FlatHisto1D.cxx | 9 +++++---- DataFormats/common/src/FlatHisto2D.cxx | 9 +++++---- DataFormats/common/src/InteractionRecord.cxx | 9 +++++---- .../common/test/testAbstractRefAccessor.cxx | 9 +++++---- DataFormats/common/test/testFlatHisto.cxx | 9 +++++---- DataFormats/common/test/testRangeRef.cxx | 9 +++++---- DataFormats/common/test/testTimeStamp.cxx | 9 +++++---- DataFormats/simulation/CMakeLists.txt | 13 +++++++------ .../include/SimulationDataFormat/BaseHits.h | 9 +++++---- .../ConstMCTruthContainer.h | 9 +++++---- .../SimulationDataFormat/DigitizationContext.h | 9 +++++---- .../IOMCTruthContainerView.h | 9 +++++---- .../SimulationDataFormat/LabelContainer.h | 9 +++++---- .../include/SimulationDataFormat/MCCompLabel.h | 9 +++++---- .../SimulationDataFormat/MCEventHeader.h | 9 +++++---- .../SimulationDataFormat/MCEventLabel.h | 9 +++++---- .../SimulationDataFormat/MCEventStats.h | 9 +++++---- .../include/SimulationDataFormat/MCTrack.h | 9 +++++---- .../SimulationDataFormat/MCTruthContainer.h | 9 +++++---- .../SimulationDataFormat/ParticleStatus.h | 9 +++++---- .../SimulationDataFormat/PrimaryChunk.h | 9 +++++---- .../SimulationDataFormat/ProcessingEventInfo.h | 9 +++++---- .../include/SimulationDataFormat/Stack.h | 9 +++++---- .../include/SimulationDataFormat/StackParam.h | 9 +++++---- .../SimulationDataFormat/TrackReference.h | 9 +++++---- DataFormats/simulation/src/CustomStreamers.cxx | 9 +++++---- .../simulation/src/DigitizationContext.cxx | 9 +++++---- DataFormats/simulation/src/MCCompLabel.cxx | 9 +++++---- DataFormats/simulation/src/MCEventHeader.cxx | 9 +++++---- DataFormats/simulation/src/MCEventLabel.cxx | 9 +++++---- DataFormats/simulation/src/MCTrack.cxx | 9 +++++---- .../simulation/src/SimulationDataLinkDef.h | 9 +++++---- DataFormats/simulation/src/Stack.cxx | 9 +++++---- DataFormats/simulation/src/StackParam.cxx | 9 +++++---- DataFormats/simulation/test/MCTrack.cxx | 9 +++++---- DataFormats/simulation/test/testBasicHits.cxx | 9 +++++---- .../simulation/test/testMCCompLabel.cxx | 9 +++++---- .../simulation/test/testMCEventLabel.cxx | 9 +++++---- .../simulation/test/testMCTruthContainer.cxx | 9 +++++---- Detectors/AOD/CMakeLists.txt | 13 +++++++------ .../AODProducerWorkflowSpec.h | 9 +++++---- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 9 +++++---- Detectors/AOD/src/StandaloneAODProducer.cxx | 9 +++++---- Detectors/AOD/src/aod-producer-workflow.cxx | 9 +++++---- Detectors/Align/CMakeLists.txt | 13 +++++++------ .../Align/include/Align/AlignableDetector.h | 9 +++++---- .../include/Align/AlignableDetectorHMPID.h | 9 +++++---- .../Align/include/Align/AlignableDetectorITS.h | 9 +++++---- .../Align/include/Align/AlignableDetectorTOF.h | 9 +++++---- .../Align/include/Align/AlignableDetectorTPC.h | 9 +++++---- .../Align/include/Align/AlignableDetectorTRD.h | 9 +++++---- .../Align/include/Align/AlignableSensor.h | 9 +++++---- .../Align/include/Align/AlignableSensorHMPID.h | 9 +++++---- .../Align/include/Align/AlignableSensorITS.h | 9 +++++---- .../Align/include/Align/AlignableSensorTOF.h | 9 +++++---- .../Align/include/Align/AlignableSensorTPC.h | 9 +++++---- .../Align/include/Align/AlignableSensorTRD.h | 9 +++++---- .../Align/include/Align/AlignableVolume.h | 9 +++++---- Detectors/Align/include/Align/AlignmentPoint.h | 9 +++++---- Detectors/Align/include/Align/AlignmentTrack.h | 9 +++++---- Detectors/Align/include/Align/Controller.h | 9 +++++---- Detectors/Align/include/Align/DOFStatistics.h | 9 +++++---- Detectors/Align/include/Align/EventVertex.h | 9 +++++---- .../include/Align/GeometricalConstraint.h | 9 +++++---- Detectors/Align/include/Align/Mille.h | 9 +++++---- .../Align/include/Align/Millepede2Record.h | 9 +++++---- .../Align/include/Align/ResidualsController.h | 9 +++++---- .../include/Align/ResidualsControllerFast.h | 9 +++++---- Detectors/Align/include/Align/utils.h | 9 +++++---- Detectors/Align/src/AlignLinkDef.h | 9 +++++---- Detectors/Align/src/AlignableDetector.cxx | 9 +++++---- Detectors/Align/src/AlignableDetectorHMPID.cxx | 9 +++++---- Detectors/Align/src/AlignableDetectorITS.cxx | 9 +++++---- Detectors/Align/src/AlignableDetectorTOF.cxx | 9 +++++---- Detectors/Align/src/AlignableDetectorTPC.cxx | 9 +++++---- Detectors/Align/src/AlignableDetectorTRD.cxx | 9 +++++---- Detectors/Align/src/AlignableSensor.cxx | 9 +++++---- Detectors/Align/src/AlignableSensorHMPID.cxx | 9 +++++---- Detectors/Align/src/AlignableSensorITS.cxx | 9 +++++---- Detectors/Align/src/AlignableSensorTOF.cxx | 9 +++++---- Detectors/Align/src/AlignableSensorTPC.cxx | 9 +++++---- Detectors/Align/src/AlignableSensorTRD.cxx | 9 +++++---- Detectors/Align/src/AlignableVolume.cxx | 9 +++++---- Detectors/Align/src/AlignmentPoint.cxx | 9 +++++---- Detectors/Align/src/AlignmentTrack.cxx | 9 +++++---- Detectors/Align/src/Controller.cxx | 9 +++++---- Detectors/Align/src/DOFStatistics.cxx | 9 +++++---- Detectors/Align/src/EventVertex.cxx | 9 +++++---- Detectors/Align/src/GeometricalConstraint.cxx | 9 +++++---- Detectors/Align/src/Mille.cxx | 9 +++++---- Detectors/Align/src/Millepede2Record.cxx | 9 +++++---- Detectors/Align/src/ResidualsController.cxx | 9 +++++---- .../Align/src/ResidualsControllerFast.cxx | 9 +++++---- Detectors/Base/CMakeLists.txt | 13 +++++++------ Detectors/Base/include/DetectorsBase/Aligner.h | 9 +++++---- .../include/DetectorsBase/BaseDPLDigitizer.h | 9 +++++---- .../Base/include/DetectorsBase/CTFCoderBase.h | 9 +++++---- .../Base/include/DetectorsBase/Detector.h | 9 +++++---- .../include/DetectorsBase/GeometryManager.h | 9 +++++---- Detectors/Base/include/DetectorsBase/MatCell.h | 9 +++++---- .../Base/include/DetectorsBase/MatLayerCyl.h | 9 +++++---- .../include/DetectorsBase/MatLayerCylSet.h | 9 +++++---- .../include/DetectorsBase/MaterialManager.h | 9 +++++---- .../Base/include/DetectorsBase/Propagator.h | 9 +++++---- Detectors/Base/include/DetectorsBase/Ray.h | 9 +++++---- Detectors/Base/src/Aligner.cxx | 9 +++++---- Detectors/Base/src/BaseDPLDigitizer.cxx | 9 +++++---- Detectors/Base/src/CTFCoderBase.cxx | 9 +++++---- Detectors/Base/src/Detector.cxx | 9 +++++---- Detectors/Base/src/DetectorsBaseLinkDef.h | 9 +++++---- Detectors/Base/src/GeometryManager.cxx | 9 +++++---- Detectors/Base/src/MatLayerCyl.cxx | 9 +++++---- Detectors/Base/src/MatLayerCylSet.cxx | 9 +++++---- Detectors/Base/src/MaterialManager.cxx | 9 +++++---- Detectors/Base/src/Propagator.cxx | 9 +++++---- Detectors/Base/src/Ray.cxx | 9 +++++---- Detectors/Base/test/buildMatBudLUT.C | 9 +++++---- Detectors/Base/test/testDCAFitter.cxx | 9 +++++---- Detectors/Base/test/testMatBudLUT.cxx | 9 +++++---- Detectors/CMakeLists.txt | 13 +++++++------ Detectors/CPV/CMakeLists.txt | 13 +++++++------ Detectors/CPV/base/CMakeLists.txt | 13 +++++++------ .../CPV/base/include/CPVBase/CPVSimParams.h | 9 +++++---- Detectors/CPV/base/include/CPVBase/Geometry.h | 9 +++++---- Detectors/CPV/base/src/CPVBaseLinkDef.h | 9 +++++---- Detectors/CPV/base/src/CPVSimParams.cxx | 9 +++++---- Detectors/CPV/base/src/Geometry.cxx | 9 +++++---- Detectors/CPV/calib/CMakeLists.txt | 13 +++++++------ .../CPV/calib/CPVCalibWorkflow/CMakeLists.txt | 13 +++++++------ .../CPVCalibWorkflow/CPVBadMapCalibDevice.h | 9 +++++---- .../CPVCalibWorkflow/CPVGainCalibDevice.h | 9 +++++---- .../CPVCalibWorkflow/CPVPedestalCalibDevice.h | 9 +++++---- .../src/CPVBadMapCalibDevice.cxx | 9 +++++---- .../src/CPVGainCalibDevice.cxx | 9 +++++---- .../src/CPVPedestalCalibDevice.cxx | 9 +++++---- .../src/cpv-calib-workflow.cxx | 9 +++++---- Detectors/CPV/calib/macros/PostBadMapCCDB.C | 9 +++++---- Detectors/CPV/calib/macros/PostCalibCCDB.C | 9 +++++---- Detectors/CPV/calib/src/CPVCalibLinkDef.h | 9 +++++---- Detectors/CPV/reconstruction/CMakeLists.txt | 15 ++++++++------- .../include/CPVReconstruction/CTFCoder.h | 9 +++++---- .../include/CPVReconstruction/CTFHelper.h | 9 +++++---- .../include/CPVReconstruction/Clusterer.h | 9 +++++---- .../include/CPVReconstruction/FullCluster.h | 9 +++++---- .../include/CPVReconstruction/RawDecoder.h | 9 +++++---- .../CPVReconstruction/RawReaderMemory.h | 9 +++++---- .../src/CPVReconstructionLinkDef.h | 9 +++++---- Detectors/CPV/reconstruction/src/CTFCoder.cxx | 9 +++++---- Detectors/CPV/reconstruction/src/CTFHelper.cxx | 9 +++++---- Detectors/CPV/reconstruction/src/Clusterer.cxx | 9 +++++---- .../CPV/reconstruction/src/FullCluster.cxx | 9 +++++---- .../CPV/reconstruction/src/RawDecoder.cxx | 9 +++++---- .../CPV/reconstruction/src/RawReaderMemory.cxx | 9 +++++---- Detectors/CPV/simulation/CMakeLists.txt | 13 +++++++------ .../include/CPVSimulation/Detector.h | 9 +++++---- .../include/CPVSimulation/Digitizer.h | 9 +++++---- .../include/CPVSimulation/GeometryParams.h | 9 +++++---- .../include/CPVSimulation/RawWriter.h | 9 +++++---- .../CPV/simulation/src/CPVSimulationLinkDef.h | 9 +++++---- Detectors/CPV/simulation/src/Detector.cxx | 9 +++++---- Detectors/CPV/simulation/src/Digitizer.cxx | 9 +++++---- .../CPV/simulation/src/GeometryParams.cxx | 9 +++++---- Detectors/CPV/simulation/src/RawCreator.cxx | 9 +++++---- Detectors/CPV/simulation/src/RawWriter.cxx | 9 +++++---- Detectors/CPV/testsimulation/CMakeLists.txt | 13 +++++++------ Detectors/CPV/workflow/CMakeLists.txt | 9 +++++---- .../include/CPVWorkflow/ClusterizerSpec.h | 9 +++++---- .../include/CPVWorkflow/DigitsPrinterSpec.h | 9 +++++---- .../include/CPVWorkflow/EntropyDecoderSpec.h | 9 +++++---- .../include/CPVWorkflow/EntropyEncoderSpec.h | 9 +++++---- .../CPVWorkflow/RawToDigitConverterSpec.h | 9 +++++---- .../workflow/include/CPVWorkflow/ReaderSpec.h | 9 +++++---- .../include/CPVWorkflow/RecoWorkflow.h | 9 +++++---- .../workflow/include/CPVWorkflow/WriterSpec.h | 9 +++++---- Detectors/CPV/workflow/src/ClusterizerSpec.cxx | 9 +++++---- .../CPV/workflow/src/DigitsPrinterSpec.cxx | 9 +++++---- .../CPV/workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../CPV/workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- .../workflow/src/RawToDigitConverterSpec.cxx | 9 +++++---- Detectors/CPV/workflow/src/ReaderSpec.cxx | 9 +++++---- Detectors/CPV/workflow/src/RecoWorkflow.cxx | 9 +++++---- Detectors/CPV/workflow/src/WriterSpec.cxx | 9 +++++---- .../CPV/workflow/src/cpv-reco-workflow.cxx | 9 +++++---- .../workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- Detectors/CTF/CMakeLists.txt | 13 +++++++------ Detectors/CTF/test/test_ctf_io_cpv.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_emcal.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_fdd.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_ft0.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_fv0.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_hmpid.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_itsmft.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_mch.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_mid.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_phos.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_tof.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_tpc.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_trd.cxx | 9 +++++---- Detectors/CTF/test/test_ctf_io_zdc.cxx | 9 +++++---- Detectors/CTF/workflow/CMakeLists.txt | 13 +++++++------ .../include/CTFWorkflow/CTFReaderSpec.h | 9 +++++---- .../include/CTFWorkflow/CTFWriterSpec.h | 9 +++++---- Detectors/CTF/workflow/src/CTFReaderSpec.cxx | 9 +++++---- Detectors/CTF/workflow/src/CTFWriterSpec.cxx | 9 +++++---- .../CTF/workflow/src/ctf-reader-workflow.cxx | 9 +++++---- .../CTF/workflow/src/ctf-writer-workflow.cxx | 9 +++++---- Detectors/CTP/CMakeLists.txt | 13 +++++++------ Detectors/CTP/macro/CMakeLists.txt | 13 +++++++------ Detectors/CTP/macro/CreateCTPConfig.C | 9 +++++---- Detectors/CTP/simulation/CMakeLists.txt | 13 +++++++------ .../include/CTPSimulation/Digitizer.h | 9 +++++---- .../include/CTPSimulation/Digits2Raw.h | 9 +++++---- .../CTP/simulation/src/CTPSimulationLinkDef.h | 9 +++++---- Detectors/CTP/simulation/src/Digitizer.cxx | 9 +++++---- Detectors/CTP/simulation/src/Digits2Raw.cxx | 9 +++++---- Detectors/CTP/simulation/src/digi2raw.cxx | 9 +++++---- Detectors/CTP/workflow/CMakeLists.txt | 13 +++++++------ .../include/CTPWorkflow/CTPDigitWriterSpec.h | 9 +++++---- .../CTP/workflow/src/CTPDigitWriterSpec.cxx | 9 +++++---- Detectors/Calibration/CMakeLists.txt | 13 +++++++------ .../MeanVertexCalibrator.h | 9 +++++---- .../DetectorsCalibration/MeanVertexData.h | 9 +++++---- .../DetectorsCalibration/MeanVertexParams.h | 9 +++++---- .../include/DetectorsCalibration/TimeSlot.h | 9 +++++---- .../DetectorsCalibration/TimeSlotCalibration.h | 9 +++++---- .../include/DetectorsCalibration/Utils.h | 9 +++++---- .../src/DetectorsCalibrationLinkDef.h | 9 +++++---- .../Calibration/src/MeanVertexCalibrator.cxx | 9 +++++---- Detectors/Calibration/src/MeanVertexData.cxx | 9 +++++---- Detectors/Calibration/src/MeanVertexParams.cxx | 9 +++++---- Detectors/Calibration/src/TimeSlot.cxx | 9 +++++---- .../Calibration/src/TimeSlotCalibration.cxx | 9 +++++---- Detectors/Calibration/src/Utils.cxx | 9 +++++---- .../Calibration/testMacros/CMakeLists.txt | 13 +++++++------ .../Calibration/testMacros/populateCCDB.cxx | 9 +++++---- .../testMacros/retrieveFromCCDB.cxx | 9 +++++---- .../Calibration/workflow/CCDBPopulatorSpec.h | 9 +++++---- Detectors/Calibration/workflow/CMakeLists.txt | 13 +++++++------ .../workflow/ccdb-populator-workflow.cxx | 9 +++++---- .../MeanVertexCalibratorSpec.h | 9 +++++---- .../workflow/src/MeanVertexCalibratorSpec.cxx | 9 +++++---- .../src/mean-vertex-calibration-workflow.cxx | 9 +++++---- Detectors/DCS/CMakeLists.txt | 13 +++++++------ .../DCS/include/DetectorsDCS/AliasExpander.h | 9 +++++---- Detectors/DCS/include/DetectorsDCS/Clock.h | 9 +++++---- .../DetectorsDCS/DataPointCompositeObject.h | 9 +++++---- .../include/DetectorsDCS/DataPointCreator.h | 9 +++++---- .../include/DetectorsDCS/DataPointGenerator.h | 9 +++++---- .../include/DetectorsDCS/DataPointIdentifier.h | 9 +++++---- .../DCS/include/DetectorsDCS/DataPointValue.h | 9 +++++---- .../DCS/include/DetectorsDCS/DeliveryType.h | 9 +++++---- .../include/DetectorsDCS/GenericFunctions.h | 9 +++++---- .../DCS/include/DetectorsDCS/StringUtils.h | 9 +++++---- Detectors/DCS/src/AliasExpander.cxx | 9 +++++---- Detectors/DCS/src/Clock.cxx | 9 +++++---- Detectors/DCS/src/DataPointCompositeObject.cxx | 9 +++++---- Detectors/DCS/src/DataPointCreator.cxx | 9 +++++---- Detectors/DCS/src/DataPointGenerator.cxx | 9 +++++---- Detectors/DCS/src/DataPointIdentifier.cxx | 9 +++++---- Detectors/DCS/src/DataPointValue.cxx | 9 +++++---- Detectors/DCS/src/DeliveryType.cxx | 9 +++++---- Detectors/DCS/src/DetectorsDCSLinkDef.h | 9 +++++---- Detectors/DCS/src/GenericFunctions.cxx | 9 +++++---- Detectors/DCS/src/StringUtils.cxx | 9 +++++---- Detectors/DCS/test/testAliasExpander.cxx | 9 +++++---- Detectors/DCS/test/testDataPointGenerator.cxx | 9 +++++---- Detectors/DCS/test/testDataPointTypes.cxx | 9 +++++---- .../DCSRandomDataGeneratorSpec.h | 9 +++++---- .../DCS/testWorkflow/macros/CMakeLists.txt | 13 +++++++------ .../testWorkflow/macros/makeCCDBEntryForDCS.C | 9 +++++---- .../DCS/testWorkflow/src/DCSConsumerSpec.h | 9 +++++---- .../src/DCSRandomDataGeneratorSpec.cxx | 9 +++++---- .../DCS/testWorkflow/src/DCStoDPLconverter.h | 9 +++++---- .../DCS/testWorkflow/src/dcs-config-proxy.cxx | 9 +++++---- .../src/dcs-config-test-workflow.cxx | 9 +++++---- .../src/dcs-data-client-workflow.cxx | 9 +++++---- Detectors/DCS/testWorkflow/src/dcs-proxy.cxx | 9 +++++---- Detectors/EMCAL/CMakeLists.txt | 13 +++++++------ Detectors/EMCAL/base/CMakeLists.txt | 13 +++++++------ .../base/include/EMCALBase/ClusterFactory.h | 9 +++++---- .../EMCAL/base/include/EMCALBase/Geometry.h | 9 +++++---- .../base/include/EMCALBase/GeometryBase.h | 9 +++++---- Detectors/EMCAL/base/include/EMCALBase/Hit.h | 9 +++++---- .../EMCAL/base/include/EMCALBase/Mapper.h | 9 +++++---- .../EMCAL/base/include/EMCALBase/RCUTrailer.h | 9 +++++---- .../include/EMCALBase/ShishKebabTrd1Module.h | 9 +++++---- Detectors/EMCAL/base/src/ClusterFactory.cxx | 9 +++++---- Detectors/EMCAL/base/src/EMCALBaseLinkDef.h | 9 +++++---- Detectors/EMCAL/base/src/Geometry.cxx | 9 +++++---- Detectors/EMCAL/base/src/Hit.cxx | 9 +++++---- Detectors/EMCAL/base/src/Mapper.cxx | 9 +++++---- Detectors/EMCAL/base/src/RCUTrailer.cxx | 9 +++++---- .../EMCAL/base/src/ShishKebabTrd1Module.cxx | 9 +++++---- .../base/test/testGeometryRowColIndexing.C | 11 ++++++----- Detectors/EMCAL/base/test/testMapper.cxx | 9 +++++---- Detectors/EMCAL/base/test/testRCUTrailer.cxx | 9 +++++---- Detectors/EMCAL/calib/CMakeLists.txt | 13 +++++++------ .../calib/include/EMCALCalib/BadChannelMap.h | 9 +++++---- .../EMCAL/calib/include/EMCALCalib/CalibDB.h | 9 +++++---- .../EMCALCalib/GainCalibrationFactors.h | 9 +++++---- .../include/EMCALCalib/TempCalibParamSM.h | 9 +++++---- .../include/EMCALCalib/TempCalibrationParams.h | 9 +++++---- .../include/EMCALCalib/TimeCalibParamL1Phase.h | 9 +++++---- .../include/EMCALCalib/TimeCalibrationParams.h | 9 +++++---- .../calib/include/EMCALCalib/TriggerDCS.h | 9 +++++---- .../calib/include/EMCALCalib/TriggerSTUDCS.h | 9 +++++---- .../EMCALCalib/TriggerSTUErrorCounter.h | 9 +++++---- .../calib/include/EMCALCalib/TriggerTRUDCS.h | 9 +++++---- .../calib/macros/BadChannelMap_CCDBApitest.C | 9 +++++---- .../calib/macros/BadChannelMap_CalibDBtest.C | 9 +++++---- .../GainCalibrationFactors_CCDBApiTest.C | 9 +++++---- .../GainCalibrationFactors_CalibDBTest.C | 9 +++++---- .../macros/ReadTestBadChannelMap_CCDBApi.C | 9 +++++---- .../macros/TempCalibParamSM_CCDBApiTest.C | 9 +++++---- .../macros/TempCalibParamSM_CalibDBTest.C | 9 +++++---- .../macros/TempCalibrationParams_CCDBApiTest.C | 9 +++++---- .../macros/TempCalibrationParams_CalibDBTest.C | 9 +++++---- .../TimeCalibParamsL1Phase_CCDBApiTest.C | 9 +++++---- .../TimeCalibParamsL1Phase_CalibDBTest.C | 9 +++++---- .../macros/TimeCalibrationParams_CCDBApiTest.C | 9 +++++---- .../macros/TimeCalibrationParams_CalibDBTest.C | 9 +++++---- .../calib/macros/TriggerDCS_CCDBApiTest.C | 9 +++++---- .../calib/macros/TriggerDCS_CalibDBTest.C | 9 +++++---- Detectors/EMCAL/calib/src/BadChannelMap.cxx | 9 +++++---- Detectors/EMCAL/calib/src/CalibDB.cxx | 9 +++++---- Detectors/EMCAL/calib/src/EMCALCalibLinkDef.h | 9 +++++---- .../EMCAL/calib/src/GainCalibrationFactors.cxx | 9 +++++---- Detectors/EMCAL/calib/src/TempCalibParamSM.cxx | 9 +++++---- .../EMCAL/calib/src/TempCalibrationParams.cxx | 9 +++++---- .../EMCAL/calib/src/TimeCalibParamL1Phase.cxx | 9 +++++---- .../EMCAL/calib/src/TimeCalibrationParams.cxx | 9 +++++---- Detectors/EMCAL/calib/src/TriggerDCS.cxx | 9 +++++---- Detectors/EMCAL/calib/src/TriggerSTUDCS.cxx | 9 +++++---- .../EMCAL/calib/src/TriggerSTUErrorCounter.cxx | 9 +++++---- Detectors/EMCAL/calib/src/TriggerTRUDCS.cxx | 9 +++++---- .../EMCAL/calib/test/testBadChannelMap.cxx | 9 +++++---- .../EMCAL/calib/test/testGainCalibration.cxx | 9 +++++---- .../EMCAL/calib/test/testTempCalibration.cxx | 9 +++++---- .../EMCAL/calib/test/testTempCalibrationSM.cxx | 9 +++++---- .../EMCAL/calib/test/testTimeCalibration.cxx | 9 +++++---- .../EMCAL/calib/test/testTimeL1PhaseCalib.cxx | 9 +++++---- Detectors/EMCAL/calib/test/testTriggerDCS.cxx | 9 +++++---- .../EMCAL/calib/test/testTriggerSTUDCS.cxx | 9 +++++---- .../calib/test/testTriggerSTUErrorCounter.cxx | 9 +++++---- .../EMCAL/calib/test/testTriggerTRUDCS.cxx | 9 +++++---- Detectors/EMCAL/calibration/CMakeLists.txt | 13 +++++++------ .../EMCALCalibration/EMCALChannelCalibrator.h | 9 +++++---- .../calibration/src/EMCALCalibrationLinkDef.h | 9 +++++---- .../calibration/src/EMCALChannelCalibrator.cxx | 9 +++++---- .../testWorkflow/EMCALChannelCalibratorSpec.h | 9 +++++---- .../emc-channel-calib-workflow.cxx | 9 +++++---- Detectors/EMCAL/doxymodules.h | 9 +++++---- Detectors/EMCAL/reconstruction/CMakeLists.txt | 13 +++++++------ .../include/EMCALReconstruction/AltroDecoder.h | 9 +++++---- .../include/EMCALReconstruction/Bunch.h | 9 +++++---- .../include/EMCALReconstruction/CTFCoder.h | 9 +++++---- .../include/EMCALReconstruction/CTFHelper.h | 9 +++++---- .../EMCALReconstruction/CaloFitResults.h | 9 +++++---- .../EMCALReconstruction/CaloRawFitter.h | 9 +++++---- .../EMCALReconstruction/CaloRawFitterGamma2.h | 9 +++++---- .../CaloRawFitterStandard.h | 9 +++++---- .../include/EMCALReconstruction/Channel.h | 9 +++++---- .../include/EMCALReconstruction/Clusterizer.h | 9 +++++---- .../ClusterizerParameters.h | 9 +++++---- .../EMCALReconstruction/ClusterizerTask.h | 9 +++++---- .../include/EMCALReconstruction/DigitReader.h | 9 +++++---- .../include/EMCALReconstruction/RawBuffer.h | 9 +++++---- .../EMCALReconstruction/RawDecodingError.h | 9 +++++---- .../EMCALReconstruction/RawHeaderStream.h | 9 +++++---- .../include/EMCALReconstruction/RawPayload.h | 9 +++++---- .../EMCALReconstruction/RawReaderMemory.h | 9 +++++---- .../reconstruction/macros/RawFitterTESTMulti.C | 9 +++++---- .../reconstruction/macros/RawFitterTESTs.C | 9 +++++---- .../EMCAL/reconstruction/run/rawReaderFile.cxx | 9 +++++---- .../EMCAL/reconstruction/src/AltroDecoder.cxx | 9 +++++---- Detectors/EMCAL/reconstruction/src/Bunch.cxx | 9 +++++---- .../EMCAL/reconstruction/src/CTFCoder.cxx | 9 +++++---- .../EMCAL/reconstruction/src/CTFHelper.cxx | 9 +++++---- .../reconstruction/src/CaloFitResults.cxx | 9 +++++---- .../EMCAL/reconstruction/src/CaloRawFitter.cxx | 9 +++++---- .../reconstruction/src/CaloRawFitterGamma2.cxx | 9 +++++---- .../src/CaloRawFitterStandard.cxx | 9 +++++---- Detectors/EMCAL/reconstruction/src/Channel.cxx | 9 +++++---- .../EMCAL/reconstruction/src/Clusterizer.cxx | 9 +++++---- .../src/ClusterizerParameters.cxx | 9 +++++---- .../reconstruction/src/ClusterizerTask.cxx | 9 +++++---- .../EMCAL/reconstruction/src/DigitReader.cxx | 9 +++++---- .../src/EMCALReconstructionLinkDef.h | 9 +++++---- .../EMCAL/reconstruction/src/RawBuffer.cxx | 9 +++++---- .../reconstruction/src/RawHeaderStream.cxx | 9 +++++---- .../EMCAL/reconstruction/src/RawPayload.cxx | 9 +++++---- .../reconstruction/src/RawReaderMemory.cxx | 9 +++++---- Detectors/EMCAL/simulation/CMakeLists.txt | 13 +++++++------ .../include/EMCALSimulation/Detector.h | 9 +++++---- .../include/EMCALSimulation/Digitizer.h | 9 +++++---- .../EMCALSimulation/DigitsWriteoutBuffer.h | 9 +++++---- .../include/EMCALSimulation/LabeledDigit.h | 9 +++++---- .../include/EMCALSimulation/RawWriter.h | 9 +++++---- .../include/EMCALSimulation/SDigitizer.h | 9 +++++---- .../include/EMCALSimulation/SimParam.h | 9 +++++---- .../include/EMCALSimulation/SpaceFrame.h | 9 +++++---- Detectors/EMCAL/simulation/src/Detector.cxx | 9 +++++---- Detectors/EMCAL/simulation/src/Digitizer.cxx | 9 +++++---- .../simulation/src/DigitsWriteoutBuffer.cxx | 9 +++++---- .../simulation/src/EMCALSimulationLinkDef.h | 9 +++++---- .../EMCAL/simulation/src/LabeledDigit.cxx | 9 +++++---- Detectors/EMCAL/simulation/src/RawCreator.cxx | 9 +++++---- Detectors/EMCAL/simulation/src/RawWriter.cxx | 9 +++++---- Detectors/EMCAL/simulation/src/SDigitizer.cxx | 9 +++++---- Detectors/EMCAL/simulation/src/SimParam.cxx | 9 +++++---- Detectors/EMCAL/simulation/src/SpaceFrame.cxx | 9 +++++---- Detectors/EMCAL/testsimulation/CMakeLists.txt | 13 +++++++------ .../testsimulation/fixedEnergyElectronGun.C | 9 +++++---- .../testsimulation/fixedEnergyPhotonGun.C | 9 +++++---- .../EMCAL/testsimulation/fixedEnergyPionGun.C | 9 +++++---- Detectors/EMCAL/workflow/CMakeLists.txt | 9 +++++---- .../EMCALWorkflow/AnalysisClusterSpec.h | 9 +++++---- .../include/EMCALWorkflow/CellConverterSpec.h | 9 +++++---- .../include/EMCALWorkflow/ClusterizerSpec.h | 9 +++++---- .../include/EMCALWorkflow/DigitsPrinterSpec.h | 9 +++++---- .../include/EMCALWorkflow/EntropyDecoderSpec.h | 9 +++++---- .../include/EMCALWorkflow/EntropyEncoderSpec.h | 9 +++++---- .../include/EMCALWorkflow/PublisherSpec.h | 9 +++++---- .../EMCALWorkflow/RawToCellConverterSpec.h | 9 +++++---- .../include/EMCALWorkflow/RecoWorkflow.h | 9 +++++---- .../EMCAL/workflow/src/AnalysisClusterSpec.cxx | 9 +++++---- .../EMCAL/workflow/src/CellConverterSpec.cxx | 9 +++++---- .../EMCAL/workflow/src/ClusterizerSpec.cxx | 9 +++++---- .../EMCAL/workflow/src/DigitsPrinterSpec.cxx | 9 +++++---- .../EMCAL/workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../EMCAL/workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- Detectors/EMCAL/workflow/src/PublisherSpec.cxx | 9 +++++---- .../workflow/src/RawToCellConverterSpec.cxx | 9 +++++---- Detectors/EMCAL/workflow/src/RecoWorkflow.cxx | 9 +++++---- .../EMCAL/workflow/src/emc-reco-workflow.cxx | 9 +++++---- .../workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- Detectors/FIT/CMakeLists.txt | 13 +++++++------ Detectors/FIT/FDD/CMakeLists.txt | 13 +++++++------ Detectors/FIT/FDD/base/CMakeLists.txt | 13 +++++++------ .../FIT/FDD/base/include/FDDBase/Constants.h | 9 +++++---- .../FIT/FDD/base/include/FDDBase/Geometry.h | 9 +++++---- Detectors/FIT/FDD/base/src/FDDBaseLinkDef.h | 9 +++++---- Detectors/FIT/FDD/base/src/Geometry.cxx | 9 +++++---- Detectors/FIT/FDD/raw/CMakeLists.txt | 15 ++++++++------- .../FIT/FDD/raw/include/FDDRaw/DataBlockFDD.h | 9 +++++---- .../FIT/FDD/raw/include/FDDRaw/DigitBlockFDD.h | 9 +++++---- .../FDD/raw/include/FDDRaw/RawReaderFDDBase.h | 9 +++++---- .../FIT/FDD/raw/include/FDDRaw/RawWriterFDD.h | 9 +++++---- Detectors/FIT/FDD/raw/src/DataBlockFDD.cxx | 9 +++++---- Detectors/FIT/FDD/raw/src/DigitBlockFDD.cxx | 9 +++++---- Detectors/FIT/FDD/raw/src/RawReaderFDDBase.cxx | 9 +++++---- Detectors/FIT/FDD/raw/src/RawWriterFDD.cxx | 9 +++++---- .../FIT/FDD/reconstruction/CMakeLists.txt | 13 +++++++------ .../include/FDDReconstruction/CTFCoder.h | 9 +++++---- .../include/FDDReconstruction/ReadRaw.h | 9 +++++---- .../include/FDDReconstruction/Reconstructor.h | 9 +++++---- .../FIT/FDD/reconstruction/src/CTFCoder.cxx | 9 +++++---- .../src/FDDReconstructionLinkDef.h | 9 +++++---- .../FIT/FDD/reconstruction/src/ReadRaw.cxx | 9 +++++---- .../FDD/reconstruction/src/Reconstructor.cxx | 9 +++++---- .../FDD/reconstruction/src/test-raw2digit.cxx | 9 +++++---- Detectors/FIT/FDD/simulation/CMakeLists.txt | 13 +++++++------ .../include/FDDSimulation/Detector.h | 9 +++++---- .../FDDSimulation/DigitizationParameters.h | 9 +++++---- .../include/FDDSimulation/Digitizer.h | 9 +++++---- .../include/FDDSimulation/Digits2Raw.h | 9 +++++---- Detectors/FIT/FDD/simulation/src/Detector.cxx | 9 +++++---- Detectors/FIT/FDD/simulation/src/Digitizer.cxx | 9 +++++---- .../FIT/FDD/simulation/src/Digits2Raw.cxx | 9 +++++---- .../FDD/simulation/src/FDDSimulationLinkDef.h | 9 +++++---- Detectors/FIT/FDD/simulation/src/digit2raw.cxx | 9 +++++---- Detectors/FIT/FDD/workflow/CMakeLists.txt | 13 +++++++------ .../include/FDDWorkflow/DigitReaderSpec.h | 9 +++++---- .../include/FDDWorkflow/DigitWriterSpec.h | 9 +++++---- .../include/FDDWorkflow/EntropyDecoderSpec.h | 9 +++++---- .../include/FDDWorkflow/EntropyEncoderSpec.h | 9 +++++---- .../include/FDDWorkflow/RawDataProcessSpec.h | 9 +++++---- .../include/FDDWorkflow/RawDataReaderSpec.h | 9 +++++---- .../include/FDDWorkflow/RawReaderFDD.h | 9 +++++---- .../workflow/include/FDDWorkflow/RawWorkflow.h | 9 +++++---- .../include/FDDWorkflow/RecPointReaderSpec.h | 9 +++++---- .../include/FDDWorkflow/RecPointWriterSpec.h | 9 +++++---- .../include/FDDWorkflow/RecoWorkflow.h | 9 +++++---- .../include/FDDWorkflow/ReconstructorSpec.h | 9 +++++---- .../FIT/FDD/workflow/src/DigitReaderSpec.cxx | 9 +++++---- .../FDD/workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../FDD/workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- .../FDD/workflow/src/RawDataProcessSpec.cxx | 9 +++++---- .../FIT/FDD/workflow/src/RawDataReaderSpec.cxx | 9 +++++---- .../FIT/FDD/workflow/src/RawReaderFDD.cxx | 9 +++++---- Detectors/FIT/FDD/workflow/src/RawWorkflow.cxx | 9 +++++---- .../FDD/workflow/src/RecPointReaderSpec.cxx | 9 +++++---- .../FDD/workflow/src/RecPointWriterSpec.cxx | 9 +++++---- .../FIT/FDD/workflow/src/RecoWorkflow.cxx | 9 +++++---- .../FIT/FDD/workflow/src/ReconstructorSpec.cxx | 9 +++++---- .../workflow/src/digits-reader-workflow.cxx | 9 +++++---- .../workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- .../FIT/FDD/workflow/src/fdd-flp-workflow.cxx | 9 +++++---- .../FIT/FDD/workflow/src/fdd-reco-workflow.cxx | 9 +++++---- Detectors/FIT/FT0/CMakeLists.txt | 13 +++++++------ Detectors/FIT/FT0/base/CMakeLists.txt | 13 +++++++------ .../FIT/FT0/base/include/FT0Base/Geometry.h | 9 +++++---- Detectors/FIT/FT0/base/src/FT0BaseLinkDef.h | 9 +++++---- Detectors/FIT/FT0/base/src/Geometry.cxx | 9 +++++---- Detectors/FIT/FT0/calibration/CMakeLists.txt | 13 +++++++------ .../FT0Calibration/FT0CalibrationInfoObject.h | 9 +++++---- .../FT0ChannelTimeCalibrationObject.h | 9 +++++---- .../FT0ChannelTimeTimeSlotContainer.h | 9 +++++---- .../FT0Calibration/FT0DummyCalibrationObject.h | 9 +++++---- .../macros/makeDummyFT0CalibObjectInCCDB.C | 9 +++++---- .../calibration/src/FT0CalibrationLinkDef.h | 9 +++++---- .../src/FT0ChannelTimeCalibrationObject.cxx | 9 +++++---- .../src/FT0ChannelTimeTimeSlotContainer.cxx | 9 +++++---- .../testWorkflow/FT0Calibration-Workflow.cxx | 9 +++++---- .../FT0CalibrationDummy-Workflow.cxx | 9 +++++---- .../FT0ChannelTimeCalibration-Workflow.cxx | 9 +++++---- .../FT0ChannelTimeCalibrationSpec.h | 9 +++++---- .../FT0SlewingCalibrationWorkflow.cxx | 9 +++++---- .../testWorkflow/FT0TFProcessor-Workflow.cxx | 9 +++++---- Detectors/FIT/FT0/raw/CMakeLists.txt | 15 ++++++++------- .../FIT/FT0/raw/include/FT0Raw/DataBlockFT0.h | 9 +++++---- .../FIT/FT0/raw/include/FT0Raw/DigitBlockFT0.h | 9 +++++---- .../FT0/raw/include/FT0Raw/RawReaderFT0Base.h | 9 +++++---- .../FIT/FT0/raw/include/FT0Raw/RawWriterFT0.h | 9 +++++---- Detectors/FIT/FT0/raw/src/DataBlockFT0.cxx | 9 +++++---- Detectors/FIT/FT0/raw/src/DigitBlockFT0.cxx | 9 +++++---- Detectors/FIT/FT0/raw/src/RawReaderFT0Base.cxx | 9 +++++---- Detectors/FIT/FT0/raw/src/RawWriterFT0.cxx | 9 +++++---- .../FIT/FT0/reconstruction/CMakeLists.txt | 13 +++++++------ .../include/FT0Reconstruction/CTFCoder.h | 9 +++++---- .../FT0Reconstruction/CollisionTimeRecoTask.h | 9 +++++---- .../include/FT0Reconstruction/InteractionTag.h | 9 +++++---- .../include/FT0Reconstruction/ReadRaw.h | 9 +++++---- .../FIT/FT0/reconstruction/src/CTFCoder.cxx | 9 +++++---- .../src/CollisionTimeRecoTask.cxx | 9 +++++---- .../src/FT0ReconstructionLinkDef.h | 9 +++++---- .../FT0/reconstruction/src/InteractionTag.cxx | 9 +++++---- .../FIT/FT0/reconstruction/src/ReadRaw.cxx | 9 +++++---- .../reconstruction/src/test-raw-conversion.cxx | 9 +++++---- .../FT0/reconstruction/src/test-raw2digit.cxx | 9 +++++---- Detectors/FIT/FT0/simulation/CMakeLists.txt | 13 +++++++------ .../include/FT0Simulation/Detector.h | 9 +++++---- .../FT0Simulation/DigitizationConstants.h | 9 +++++---- .../FT0Simulation/DigitizationParameters.h | 9 +++++---- .../include/FT0Simulation/Digitizer.h | 9 +++++---- .../include/FT0Simulation/DigitizerTask.h | 9 +++++---- .../include/FT0Simulation/Digits2Raw.h | 9 +++++---- Detectors/FIT/FT0/simulation/src/Detector.cxx | 9 +++++---- Detectors/FIT/FT0/simulation/src/Digitizer.cxx | 9 +++++---- .../FIT/FT0/simulation/src/DigitizerTask.cxx | 9 +++++---- .../FIT/FT0/simulation/src/Digits2Raw.cxx | 9 +++++---- .../FT0/simulation/src/FT0SimulationLinkDef.h | 9 +++++---- Detectors/FIT/FT0/simulation/src/digi2raw.cxx | 9 +++++---- Detectors/FIT/FT0/workflow/CMakeLists.txt | 13 +++++++------ .../include/FT0Workflow/DigitReaderSpec.h | 9 +++++---- .../include/FT0Workflow/EntropyDecoderSpec.h | 9 +++++---- .../include/FT0Workflow/EntropyEncoderSpec.h | 9 +++++---- .../FT0Workflow/FT0DataProcessDPLSpec.h | 9 +++++---- .../include/FT0Workflow/FT0DataReaderDPLSpec.h | 9 +++++---- .../include/FT0Workflow/FT0DigitWriterSpec.h | 9 +++++---- .../workflow/include/FT0Workflow/FT0Workflow.h | 9 +++++---- .../include/FT0Workflow/RawReaderFT0.h | 9 +++++---- .../include/FT0Workflow/RecPointReaderSpec.h | 9 +++++---- .../include/FT0Workflow/RecPointWriterSpec.h | 9 +++++---- .../include/FT0Workflow/RecoWorkflow.h | 9 +++++---- .../include/FT0Workflow/ReconstructionSpec.h | 9 +++++---- .../FIT/FT0/workflow/src/DigitReaderSpec.cxx | 9 +++++---- .../FT0/workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../FT0/workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- .../FT0/workflow/src/FT0DataProcessDPLSpec.cxx | 9 +++++---- .../FT0/workflow/src/FT0DataReaderDPLSpec.cxx | 9 +++++---- .../FT0/workflow/src/FT0DigitWriterSpec.cxx | 9 +++++---- Detectors/FIT/FT0/workflow/src/FT0Workflow.cxx | 9 +++++---- .../FIT/FT0/workflow/src/RawReaderFT0.cxx | 9 +++++---- .../FT0/workflow/src/RecPointReaderSpec.cxx | 9 +++++---- .../FT0/workflow/src/RecPointWriterSpec.cxx | 9 +++++---- .../FIT/FT0/workflow/src/RecoWorkflow.cxx | 9 +++++---- .../FT0/workflow/src/ReconstructionSpec.cxx | 9 +++++---- .../workflow/src/digits-reader-workflow.cxx | 9 +++++---- .../workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- .../FIT/FT0/workflow/src/ft0-flp-workflow.cxx | 9 +++++---- .../FIT/FT0/workflow/src/ft0-reco-workflow.cxx | 9 +++++---- Detectors/FIT/FV0/CMakeLists.txt | 13 +++++++------ Detectors/FIT/FV0/base/CMakeLists.txt | 13 +++++++------ .../FIT/FV0/base/include/FV0Base/Constants.h | 9 +++++---- .../FIT/FV0/base/include/FV0Base/Geometry.h | 9 +++++---- Detectors/FIT/FV0/base/src/FV0BaseLinkDef.h | 9 +++++---- Detectors/FIT/FV0/base/src/Geometry.cxx | 9 +++++---- Detectors/FIT/FV0/macro/CMakeLists.txt | 13 +++++++------ Detectors/FIT/FV0/raw/CMakeLists.txt | 15 ++++++++------- .../FIT/FV0/raw/include/FV0Raw/DataBlockFV0.h | 9 +++++---- .../FIT/FV0/raw/include/FV0Raw/DigitBlockFV0.h | 9 +++++---- .../FV0/raw/include/FV0Raw/RawReaderFV0Base.h | 9 +++++---- .../FIT/FV0/raw/include/FV0Raw/RawWriterFV0.h | 9 +++++---- Detectors/FIT/FV0/raw/src/DataBlockFV0.cxx | 9 +++++---- Detectors/FIT/FV0/raw/src/DigitBlockFV0.cxx | 9 +++++---- Detectors/FIT/FV0/raw/src/RawReaderFV0Base.cxx | 9 +++++---- Detectors/FIT/FV0/raw/src/RawWriterFV0.cxx | 9 +++++---- .../FIT/FV0/reconstruction/CMakeLists.txt | 13 +++++++------ .../include/FV0Reconstruction/CTFCoder.h | 9 +++++---- .../include/FV0Reconstruction/ReadRaw.h | 9 +++++---- .../FIT/FV0/reconstruction/src/CTFCoder.cxx | 9 +++++---- .../src/FV0ReconstructionLinkDef.h | 9 +++++---- .../FIT/FV0/reconstruction/src/ReadRaw.cxx | 9 +++++---- .../FV0/reconstruction/src/test-raw2digit.cxx | 9 +++++---- Detectors/FIT/FV0/simulation/CMakeLists.txt | 13 +++++++------ .../include/FV0Simulation/Detector.h | 9 +++++---- .../FV0Simulation/DigitizationConstant.h | 9 +++++---- .../include/FV0Simulation/Digitizer.h | 9 +++++---- .../include/FV0Simulation/Digits2Raw.h | 9 +++++---- .../include/FV0Simulation/FV0DigParam.h | 9 +++++---- Detectors/FIT/FV0/simulation/src/Detector.cxx | 9 +++++---- Detectors/FIT/FV0/simulation/src/Digitizer.cxx | 9 +++++---- .../FIT/FV0/simulation/src/Digits2Raw.cxx | 9 +++++---- .../FIT/FV0/simulation/src/FV0DigParam.cxx | 9 +++++---- .../FV0/simulation/src/FV0SimulationLinkDef.h | 9 +++++---- Detectors/FIT/FV0/simulation/src/digit2raw.cxx | 9 +++++---- Detectors/FIT/FV0/workflow/CMakeLists.txt | 13 +++++++------ .../include/FV0Workflow/DigitReaderSpec.h | 9 +++++---- .../include/FV0Workflow/EntropyDecoderSpec.h | 9 +++++---- .../include/FV0Workflow/EntropyEncoderSpec.h | 9 +++++---- .../FIT/FV0/workflow/src/DigitReaderSpec.cxx | 9 +++++---- .../FV0/workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../FV0/workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- .../workflow/src/digits-reader-workflow.cxx | 9 +++++---- .../workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- .../FIT/FV0/workflow/src/fv0-flp-workflow.cxx | 9 +++++---- Detectors/FIT/common/CMakeLists.txt | 13 +++++++------ .../FIT/common/calibration/CMakeLists.txt | 13 +++++++------ .../include/FITCalibration/FITCalibrationApi.h | 9 +++++---- .../FITCalibration/FITCalibrationDevice.h | 9 +++++---- .../FITCalibrationObjectProducer.h | 9 +++++---- .../include/FITCalibration/FITCalibrator.h | 9 +++++---- .../calibration/src/FITCalibrationLinkDef.h | 9 +++++---- Detectors/FIT/common/simulation/CMakeLists.txt | 13 +++++++------ .../FITSimulation/DigitizationParameters.h | 9 +++++---- .../simulation/src/FITSimulationLinkDef.h | 9 +++++---- Detectors/FIT/macros/CMakeLists.txt | 13 +++++++------ Detectors/FIT/raw/CMakeLists.txt | 15 ++++++++------- .../FIT/raw/include/FITRaw/DataBlockBase.h | 9 +++++---- .../FIT/raw/include/FITRaw/DataBlockFIT.h | 9 +++++---- .../FIT/raw/include/FITRaw/DigitBlockBase.h | 9 +++++---- .../FIT/raw/include/FITRaw/DigitBlockFIT.h | 9 +++++---- .../FIT/raw/include/FITRaw/RawReaderBase.h | 9 +++++---- .../FIT/raw/include/FITRaw/RawReaderBaseFIT.h | 9 +++++---- .../FIT/raw/include/FITRaw/RawWriterFIT.h | 9 +++++---- Detectors/FIT/raw/src/DataBlockBase.cxx | 9 +++++---- Detectors/FIT/raw/src/DataBlockFIT.cxx | 9 +++++---- Detectors/FIT/raw/src/DigitBlockBase.cxx | 9 +++++---- Detectors/FIT/raw/src/DigitBlockFIT.cxx | 9 +++++---- Detectors/FIT/raw/src/RawReaderBase.cxx | 9 +++++---- Detectors/FIT/raw/src/RawReaderBaseFIT.cxx | 9 +++++---- Detectors/FIT/raw/src/RawWriterFIT.cxx | 9 +++++---- Detectors/FIT/workflow/CMakeLists.txt | 13 +++++++------ .../include/FITWorkflow/FITDataReaderDPLSpec.h | 9 +++++---- .../include/FITWorkflow/FITDigitWriterSpec.h | 9 +++++---- .../include/FITWorkflow/RawReaderFIT.h | 9 +++++---- .../FIT/workflow/src/FITDataReaderDPLSpec.cxx | 9 +++++---- .../FIT/workflow/src/FITDigitWriterSpec.cxx | 9 +++++---- Detectors/FIT/workflow/src/RawReaderFIT.cxx | 9 +++++---- Detectors/GlobalTracking/CMakeLists.txt | 13 +++++++------ .../include/GlobalTracking/MatchCosmics.h | 9 +++++---- .../GlobalTracking/MatchCosmicsParams.h | 9 +++++---- .../include/GlobalTracking/MatchTOF.h | 9 +++++---- .../include/GlobalTracking/MatchTPCITS.h | 9 +++++---- .../include/GlobalTracking/MatchTPCITSParams.h | 9 +++++---- .../GlobalTracking/src/GlobalTrackingLinkDef.h | 9 +++++---- Detectors/GlobalTracking/src/MatchCosmics.cxx | 9 +++++---- .../GlobalTracking/src/MatchCosmicsParams.cxx | 9 +++++---- Detectors/GlobalTracking/src/MatchTOF.cxx | 9 +++++---- Detectors/GlobalTracking/src/MatchTPCITS.cxx | 9 +++++---- .../GlobalTracking/src/MatchTPCITSParams.cxx | 9 +++++---- .../GlobalTrackingWorkflow/CMakeLists.txt | 13 +++++++------ .../helpers/CMakeLists.txt | 13 +++++++------ .../InputHelper.h | 9 +++++---- .../helpers/src/GlobalTrackClusterReader.cxx | 9 +++++---- .../helpers/src/InputHelper.cxx | 9 +++++---- .../CosmicsMatchingSpec.h | 9 +++++---- .../PrimaryVertexWriterSpec.h | 9 +++++---- .../PrimaryVertexingSpec.h | 9 +++++---- .../SecondaryVertexWriterSpec.h | 9 +++++---- .../SecondaryVertexingSpec.h | 9 +++++---- .../GlobalTrackingWorkflow/TOFMatcherSpec.h | 9 +++++---- .../TPCITSMatchingSpec.h | 9 +++++---- .../TrackCosmicsWriterSpec.h | 9 +++++---- .../TrackWriterTPCITSSpec.h | 9 +++++---- .../VertexTrackMatcherSpec.h | 9 +++++---- .../readers/CMakeLists.txt | 13 +++++++------ .../PrimaryVertexReaderSpec.h | 9 +++++---- .../SecondaryVertexReaderSpec.h | 9 +++++---- .../TrackCosmicsReaderSpec.h | 9 +++++---- .../TrackTPCITSReaderSpec.h | 9 +++++---- .../readers/src/PrimaryVertexReaderSpec.cxx | 9 +++++---- .../readers/src/SecondaryVertexReaderSpec.cxx | 9 +++++---- .../readers/src/TrackCosmicsReaderSpec.cxx | 9 +++++---- .../readers/src/TrackTPCITSReaderSpec.cxx | 9 +++++---- .../src/CosmicsMatchingSpec.cxx | 9 +++++---- .../src/PrimaryVertexWriterSpec.cxx | 9 +++++---- .../src/PrimaryVertexingSpec.cxx | 9 +++++---- .../src/SecondaryVertexWriterSpec.cxx | 9 +++++---- .../src/SecondaryVertexingSpec.cxx | 9 +++++---- .../src/TOFMatcherSpec.cxx | 9 +++++---- .../src/TPCITSMatchingSpec.cxx | 9 +++++---- .../src/TrackCosmicsWriterSpec.cxx | 9 +++++---- .../src/TrackWriterTPCITSSpec.cxx | 9 +++++---- .../src/VertexTrackMatcherSpec.cxx | 9 +++++---- .../src/cosmics-match-workflow.cxx | 9 +++++---- .../src/primary-vertex-reader-workflow.cxx | 9 +++++---- .../src/primary-vertexing-workflow.cxx | 9 +++++---- .../src/secondary-vertex-reader-workflow.cxx | 9 +++++---- .../src/secondary-vertexing-workflow.cxx | 9 +++++---- .../src/tof-matcher-workflow.cxx | 9 +++++---- .../src/tpcits-match-workflow.cxx | 9 +++++---- .../tofworkflow/CMakeLists.txt | 13 +++++++------ .../include/TOFWorkflow/RecoWorkflowSpec.h | 9 +++++---- .../TOFWorkflow/RecoWorkflowWithTPCSpec.h | 9 +++++---- .../tofworkflow/src/RecoWorkflowSpec.cxx | 9 +++++---- .../src/RecoWorkflowWithTPCSpec.cxx | 9 +++++---- .../tofworkflow/src/tof-calibinfo-reader.cxx | 9 +++++---- .../tofworkflow/src/tof-matcher-global.cxx | 9 +++++---- .../tofworkflow/src/tof-matcher-tpc.cxx | 9 +++++---- .../tofworkflow/src/tof-reco-workflow.cxx | 9 +++++---- .../tpcinterpolationworkflow/CMakeLists.txt | 13 +++++++------ .../TPCInterpolationSpec.h | 9 +++++---- .../TPCResidualWriterSpec.h | 9 +++++---- .../TrackInterpolationReaderSpec.h | 9 +++++---- .../TrackInterpolationWorkflow.h | 9 +++++---- .../src/TPCInterpolationSpec.cxx | 9 +++++---- .../src/TPCResidualWriterSpec.cxx | 9 +++++---- .../src/TrackInterpolationReaderSpec.cxx | 9 +++++---- .../src/TrackInterpolationWorkflow.cxx | 9 +++++---- .../src/tpc-interpolation-workflow.cxx | 9 +++++---- Detectors/HMPID/CMakeLists.txt | 13 +++++++------ Detectors/HMPID/base/CMakeLists.txt | 13 +++++++------ .../HMPID/base/include/HMPIDBase/Common.h | 9 +++++---- Detectors/HMPID/base/include/HMPIDBase/Geo.h | 9 +++++---- Detectors/HMPID/base/include/HMPIDBase/Param.h | 9 +++++---- Detectors/HMPID/base/src/Geo.cxx | 9 +++++---- Detectors/HMPID/base/src/HMPIDBaseLinkDef.h | 9 +++++---- Detectors/HMPID/base/src/Param.cxx | 9 +++++---- Detectors/HMPID/reconstruction/CMakeLists.txt | 13 +++++++------ .../include/HMPIDReconstruction/CTFCoder.h | 9 +++++---- .../include/HMPIDReconstruction/CTFHelper.h | 9 +++++---- .../include/HMPIDReconstruction/Clusterer.h | 9 +++++---- .../HMPIDReconstruction/HmpidDecodeRawFile.h | 9 +++++---- .../HMPIDReconstruction/HmpidDecodeRawMem.h | 9 +++++---- .../include/HMPIDReconstruction/HmpidDecoder.h | 9 +++++---- .../HMPIDReconstruction/HmpidDecoder2.h | 9 +++++---- .../HMPIDReconstruction/HmpidEquipment.h | 9 +++++---- .../HMPID/reconstruction/src/CTFCoder.cxx | 9 +++++---- .../HMPID/reconstruction/src/CTFHelper.cxx | 9 +++++---- .../HMPID/reconstruction/src/Clusterer.cxx | 9 +++++---- .../src/HMPIDReconstructionLinkDef.h | 9 +++++---- .../reconstruction/src/HmpidDecodeRawFile.cxx | 9 +++++---- .../reconstruction/src/HmpidDecodeRawMem.cxx | 9 +++++---- .../HMPID/reconstruction/src/HmpidDecoder.cxx | 9 +++++---- .../HMPID/reconstruction/src/HmpidDecoder2.cxx | 9 +++++---- .../reconstruction/src/HmpidEquipment.cxx | 9 +++++---- Detectors/HMPID/simulation/CMakeLists.txt | 13 +++++++------ .../include/HMPIDSimulation/Detector.h | 9 +++++---- .../include/HMPIDSimulation/HMPIDDigitizer.h | 9 +++++---- .../include/HMPIDSimulation/HmpidCoder2.h | 9 +++++---- Detectors/HMPID/simulation/src/Detector.cxx | 9 +++++---- .../HMPID/simulation/src/HMPIDDigitizer.cxx | 9 +++++---- .../simulation/src/HMPIDSimulationLinkDef.h | 9 +++++---- Detectors/HMPID/simulation/src/HmpidCoder2.cxx | 9 +++++---- Detectors/HMPID/workflow/CMakeLists.txt | 13 +++++++------ .../HMPIDWorkflow/ClusterizerSpec.h_notused.h | 9 +++++---- .../include/HMPIDWorkflow/DataDecoderSpec.h | 9 +++++---- .../include/HMPIDWorkflow/DataDecoderSpec2.h | 9 +++++---- .../HMPIDWorkflow/DigitReaderSpec.h_notused.h | 9 +++++---- .../include/HMPIDWorkflow/DigitsToRawSpec.h | 9 +++++---- .../include/HMPIDWorkflow/DumpDigitsSpec.h | 9 +++++---- .../include/HMPIDWorkflow/EntropyDecoderSpec.h | 9 +++++---- .../include/HMPIDWorkflow/EntropyEncoderSpec.h | 9 +++++---- .../HMPIDWorkflow/PedestalsCalculationSpec.h | 9 +++++---- .../include/HMPIDWorkflow/RawToDigitsSpec.h | 9 +++++---- .../include/HMPIDWorkflow/ReadRawFileSpec.h | 9 +++++---- .../include/HMPIDWorkflow/WriteRawFileSpec.h | 9 +++++---- .../HMPID/workflow/src/DataDecoderSpec.cxx | 9 +++++---- .../HMPID/workflow/src/DataDecoderSpec2.cxx | 9 +++++---- .../HMPID/workflow/src/DigitsToRawSpec.cxx | 9 +++++---- .../HMPID/workflow/src/DumpDigitsSpec.cxx | 9 +++++---- .../HMPID/workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../HMPID/workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- .../workflow/src/PedestalsCalculationSpec.cxx | 9 +++++---- .../HMPID/workflow/src/RawToDigitsSpec.cxx | 9 +++++---- .../HMPID/workflow/src/ReadRawFileSpec.cxx | 9 +++++---- .../HMPID/workflow/src/WriteRawFileSpec.cxx | 9 +++++---- .../src/digits-to-raw-stream-workflow.cxx | 9 +++++---- .../workflow/src/digits-to-raw-workflow.cxx | 9 +++++---- .../src/dump-digits-stream-workflow.cxx | 9 +++++---- .../workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- .../src/raw-to-digits-stream-workflow.cxx | 9 +++++---- .../workflow/src/raw-to-digits-workflow.cxx | 9 +++++---- .../workflow/src/raw-to-pedestals-workflow.cxx | 9 +++++---- .../src/read-raw-file-stream-workflow.cxx | 9 +++++---- Detectors/ITSMFT/CMakeLists.txt | 13 +++++++------ Detectors/ITSMFT/ITS/CMakeLists.txt | 13 +++++++------ Detectors/ITSMFT/ITS/QC/CMakeLists.txt | 13 +++++++------ .../QC/TestDataReaderWorkflow/CMakeLists.txt | 13 +++++++------ .../ITSQCDataReaderWorkflow/RootInclude.h | 9 +++++---- .../ITSQCDataReaderWorkflow/TestDataGetter.h | 9 +++++---- .../ITSQCDataReaderWorkflow/TestDataReader.h | 9 +++++---- .../TestDataReaderWorkflow.h | 9 +++++---- .../src/TestDataGetter.cxx | 9 +++++---- .../src/TestDataReader.cxx | 9 +++++---- .../src/TestDataReaderWorkflow.cxx | 9 +++++---- .../src/its-qc-data-reader.cxx | 9 +++++---- Detectors/ITSMFT/ITS/base/CMakeLists.txt | 13 +++++++------ .../base/include/ITSBase/ContainerFactory.h | 9 +++++---- .../ITS/base/include/ITSBase/GeometryTGeo.h | 9 +++++---- .../include/ITSBase/MisalignmentParameter.h | 9 +++++---- .../ITSMFT/ITS/base/src/ContainerFactory.cxx | 9 +++++---- Detectors/ITSMFT/ITS/base/src/GeometryTGeo.cxx | 9 +++++---- Detectors/ITSMFT/ITS/base/src/ITSBaseLinkDef.h | 9 +++++---- .../ITS/base/src/MisalignmentParameter.cxx | 9 +++++---- .../ITSMFT/ITS/calibration/CMakeLists.txt | 13 +++++++------ .../include/ITSCalibration/NoiseCalibrator.h | 9 +++++---- .../ITSCalibration/NoiseCalibratorSpec.h | 9 +++++---- .../ITSCalibration/NoiseSlotCalibrator.h | 9 +++++---- .../ITS/calibration/macros/CMakeLists.txt | 13 +++++++------ .../calibration/src/ITSCalibrationLinkDef.h | 9 +++++---- .../ITS/calibration/src/NoiseCalibrator.cxx | 9 +++++---- .../calibration/src/NoiseCalibratorSpec.cxx | 9 +++++---- .../calibration/src/NoiseSlotCalibrator.cxx | 9 +++++---- .../testWorkflow/its-calib-workflow.cxx | 9 +++++---- Detectors/ITSMFT/ITS/macros/CMakeLists.txt | 13 +++++++------ Detectors/ITSMFT/ITS/macros/EVE/CMakeLists.txt | 13 +++++++------ .../ITSMFT/ITS/macros/test/CMakeLists.txt | 13 +++++++------ .../ITSMFT/ITS/reconstruction/CMakeLists.txt | 13 +++++++------ .../include/ITSReconstruction/ClustererTask.h | 9 +++++---- .../include/ITSReconstruction/CookedTracker.h | 9 +++++---- .../include/ITSReconstruction/FastMultEst.h | 9 +++++---- .../ITSReconstruction/FastMultEstConfig.h | 9 +++++---- .../include/ITSReconstruction/RecoGeomHelper.h | 9 +++++---- .../ITSReconstruction/TrivialVertexer.h | 9 +++++---- .../ITS/reconstruction/src/ClustererTask.cxx | 9 +++++---- .../ITS/reconstruction/src/CookedTracker.cxx | 9 +++++---- .../ITS/reconstruction/src/FastMultEst.cxx | 9 +++++---- .../reconstruction/src/FastMultEstConfig.cxx | 9 +++++---- .../src/ITSReconstructionLinkDef.h | 9 +++++---- .../ITS/reconstruction/src/RecoGeomHelper.cxx | 9 +++++---- .../ITS/reconstruction/src/TrivialVertexer.cxx | 9 +++++---- Detectors/ITSMFT/ITS/simulation/CMakeLists.txt | 13 +++++++------ .../include/ITSSimulation/Detector.h | 9 +++++---- .../include/ITSSimulation/V11Geometry.h | 9 +++++---- .../simulation/include/ITSSimulation/V1Layer.h | 9 +++++---- .../simulation/include/ITSSimulation/V3Layer.h | 9 +++++---- .../include/ITSSimulation/V3Services.h | 9 +++++---- .../ITSMFT/ITS/simulation/src/Detector.cxx | 9 +++++---- .../ITS/simulation/src/ITSSimulationLinkDef.h | 9 +++++---- .../ITSMFT/ITS/simulation/src/V11Geometry.cxx | 9 +++++---- .../ITSMFT/ITS/simulation/src/V1Layer.cxx | 9 +++++---- .../ITSMFT/ITS/simulation/src/V3Layer.cxx | 9 +++++---- .../ITSMFT/ITS/simulation/src/V3Services.cxx | 9 +++++---- .../ITSMFT/ITS/simulation/src/digi2raw.cxx | 9 +++++---- Detectors/ITSMFT/ITS/tracking/CMakeLists.txt | 13 +++++++------ .../ITSMFT/ITS/tracking/cuda/CMakeLists.txt | 13 +++++++------ .../cuda/include/ITStrackingCUDA/Array.h | 9 +++++---- .../include/ITStrackingCUDA/ClusterLinesGPU.h | 9 +++++---- .../cuda/include/ITStrackingCUDA/Context.h | 9 +++++---- .../include/ITStrackingCUDA/DeviceStoreNV.h | 9 +++++---- .../ITStrackingCUDA/DeviceStoreVertexerGPU.h | 9 +++++---- .../ITStrackingCUDA/PrimaryVertexContextNV.h | 9 +++++---- .../cuda/include/ITStrackingCUDA/Stream.h | 9 +++++---- .../include/ITStrackingCUDA/TrackerTraitsNV.h | 9 +++++---- .../include/ITStrackingCUDA/UniquePointer.h | 9 +++++---- .../cuda/include/ITStrackingCUDA/Utils.h | 9 +++++---- .../cuda/include/ITStrackingCUDA/Vector.h | 9 +++++---- .../ITStrackingCUDA/VertexerTraitsGPU.h | 9 +++++---- .../ITS/tracking/cuda/src/ClusterLinesGPU.cu | 9 +++++---- .../ITSMFT/ITS/tracking/cuda/src/Context.cu | 9 +++++---- .../ITS/tracking/cuda/src/DeviceStoreNV.cu | 9 +++++---- .../cuda/src/DeviceStoreVertexerGPU.cu | 9 +++++---- .../ITSMFT/ITS/tracking/cuda/src/Stream.cu | 9 +++++---- .../ITS/tracking/cuda/src/TrackerTraitsNV.cu | 9 +++++---- .../ITSMFT/ITS/tracking/cuda/src/Utils.cu | 9 +++++---- .../ITS/tracking/cuda/src/VertexerTraitsGPU.cu | 9 +++++---- .../ITSMFT/ITS/tracking/hip/CMakeLists.txt | 13 +++++++------ .../hip/include/ITStrackingHIP/ArrayHIP.h | 9 +++++---- .../include/ITStrackingHIP/ClusterLinesHIP.h | 9 +++++---- .../hip/include/ITStrackingHIP/ContextHIP.h | 9 +++++---- .../ITStrackingHIP/DeviceStoreVertexerHIP.h | 9 +++++---- .../hip/include/ITStrackingHIP/StreamHIP.h | 9 +++++---- .../include/ITStrackingHIP/UniquePointerHIP.h | 9 +++++---- .../hip/include/ITStrackingHIP/UtilsHIP.h | 9 +++++---- .../hip/include/ITStrackingHIP/VectorHIP.h | 9 +++++---- .../include/ITStrackingHIP/VertexerTraitsHIP.h | 9 +++++---- .../tracking/hip/src/ClusterLinesHIP.hip.cxx | 9 +++++---- .../ITS/tracking/hip/src/ContextHIP.hip.cxx | 9 +++++---- .../hip/src/DeviceStoreVertexerHIP.hip.cxx | 9 +++++---- .../ITS/tracking/hip/src/StreamHIP.hip.cxx | 9 +++++---- .../ITS/tracking/hip/src/UtilsHIP.hip.cxx | 9 +++++---- .../tracking/hip/src/VertexerTraitsHIP.hip.cxx | 9 +++++---- .../tracking/include/ITStracking/ArrayUtils.h | 9 +++++---- .../ITS/tracking/include/ITStracking/Cell.h | 9 +++++---- .../ITS/tracking/include/ITStracking/Cluster.h | 9 +++++---- .../include/ITStracking/ClusterLines.h | 9 +++++---- .../include/ITStracking/Configuration.h | 9 +++++---- .../tracking/include/ITStracking/Constants.h | 9 +++++---- .../tracking/include/ITStracking/Definitions.h | 9 +++++---- .../ITS/tracking/include/ITStracking/IOUtils.h | 9 +++++---- .../include/ITStracking/IndexTableUtils.h | 9 +++++---- .../ITS/tracking/include/ITStracking/Label.h | 9 +++++---- .../tracking/include/ITStracking/MathUtils.h | 9 +++++---- .../include/ITStracking/PrimaryVertexContext.h | 9 +++++---- .../ITS/tracking/include/ITStracking/ROframe.h | 9 +++++---- .../ITS/tracking/include/ITStracking/Road.h | 9 +++++---- .../include/ITStracking/StandaloneDebugger.h | 9 +++++---- .../ITS/tracking/include/ITStracking/Tracker.h | 9 +++++---- .../include/ITStracking/TrackerTraits.h | 9 +++++---- .../include/ITStracking/TrackerTraitsCPU.h | 9 +++++---- .../include/ITStracking/TrackingConfigParam.h | 9 +++++---- .../tracking/include/ITStracking/Tracklet.h | 9 +++++---- .../tracking/include/ITStracking/Vertexer.h | 9 +++++---- .../include/ITStracking/VertexerTraits.h | 9 +++++---- .../ITS/tracking/include/ITStracking/json.h | 9 +++++---- Detectors/ITSMFT/ITS/tracking/src/Cluster.cxx | 9 +++++---- .../ITSMFT/ITS/tracking/src/ClusterLines.cxx | 9 +++++---- Detectors/ITSMFT/ITS/tracking/src/IOUtils.cxx | 9 +++++---- .../ITS/tracking/src/IndexTableUtils.cxx | 9 +++++---- Detectors/ITSMFT/ITS/tracking/src/Label.cxx | 9 +++++---- .../ITS/tracking/src/PrimaryVertexContext.cxx | 9 +++++---- Detectors/ITSMFT/ITS/tracking/src/ROframe.cxx | 9 +++++---- Detectors/ITSMFT/ITS/tracking/src/Road.cxx | 9 +++++---- .../ITS/tracking/src/StandaloneDebugger.cxx | 9 +++++---- Detectors/ITSMFT/ITS/tracking/src/Tracker.cxx | 9 +++++---- .../ITS/tracking/src/TrackerTraitsCPU.cxx | 9 +++++---- .../ITS/tracking/src/TrackingConfigParam.cxx | 9 +++++---- .../ITSMFT/ITS/tracking/src/TrackingLinkDef.h | 9 +++++---- Detectors/ITSMFT/ITS/tracking/src/Vertexer.cxx | 9 +++++---- .../ITSMFT/ITS/tracking/src/VertexerTraits.cxx | 9 +++++---- Detectors/ITSMFT/ITS/workflow/CMakeLists.txt | 13 +++++++------ .../include/ITSWorkflow/ClusterWriterSpec.h | 9 +++++---- .../ITSWorkflow/ClusterWriterWorkflow.h | 9 +++++---- .../include/ITSWorkflow/ClustererSpec.h | 9 +++++---- .../include/ITSWorkflow/CookedTrackerSpec.h | 9 +++++---- .../include/ITSWorkflow/IRFrameReaderSpec.h | 9 +++++---- .../include/ITSWorkflow/IRFrameWriterSpec.h | 9 +++++---- .../include/ITSWorkflow/RecoWorkflow.h | 9 +++++---- .../include/ITSWorkflow/TrackReaderSpec.h | 9 +++++---- .../include/ITSWorkflow/TrackWriterSpec.h | 9 +++++---- .../workflow/include/ITSWorkflow/TrackerSpec.h | 9 +++++---- .../include/ITSWorkflow/VertexReaderSpec.h | 9 +++++---- .../ITS/workflow/src/ClusterWriterSpec.cxx | 9 +++++---- .../ITS/workflow/src/ClusterWriterWorkflow.cxx | 9 +++++---- .../ITSMFT/ITS/workflow/src/ClustererSpec.cxx | 9 +++++---- .../ITS/workflow/src/CookedTrackerSpec.cxx | 9 +++++---- .../ITS/workflow/src/IRFrameReaderSpec.cxx | 9 +++++---- .../ITS/workflow/src/IRFrameWriterSpec.cxx | 9 +++++---- .../ITSMFT/ITS/workflow/src/RecoWorkflow.cxx | 9 +++++---- .../ITS/workflow/src/TrackReaderSpec.cxx | 9 +++++---- .../ITS/workflow/src/TrackWriterSpec.cxx | 9 +++++---- .../ITSMFT/ITS/workflow/src/TrackerSpec.cxx | 9 +++++---- .../ITS/workflow/src/VertexReaderSpec.cxx | 9 +++++---- .../src/its-cluster-reader-workflow.cxx | 9 +++++---- .../src/its-cluster-writer-workflow.cxx | 9 +++++---- .../ITS/workflow/src/its-reco-workflow.cxx | 9 +++++---- Detectors/ITSMFT/MFT/CMakeLists.txt | 13 +++++++------ Detectors/ITSMFT/MFT/base/CMakeLists.txt | 13 +++++++------ .../ITSMFT/MFT/base/include/MFTBase/Barrel.h | 9 +++++---- .../base/include/MFTBase/ChipSegmentation.h | 9 +++++---- .../MFT/base/include/MFTBase/Constants.h | 9 +++++---- .../ITSMFT/MFT/base/include/MFTBase/Flex.h | 9 +++++---- .../ITSMFT/MFT/base/include/MFTBase/Geometry.h | 9 +++++---- .../MFT/base/include/MFTBase/GeometryBuilder.h | 9 +++++---- .../MFT/base/include/MFTBase/GeometryTGeo.h | 9 +++++---- .../ITSMFT/MFT/base/include/MFTBase/HalfCone.h | 9 +++++---- .../MFT/base/include/MFTBase/HalfDetector.h | 9 +++++---- .../ITSMFT/MFT/base/include/MFTBase/HalfDisk.h | 9 +++++---- .../include/MFTBase/HalfDiskSegmentation.h | 9 +++++---- .../base/include/MFTBase/HalfSegmentation.h | 9 +++++---- .../MFT/base/include/MFTBase/HeatExchanger.h | 9 +++++---- .../ITSMFT/MFT/base/include/MFTBase/Ladder.h | 9 +++++---- .../base/include/MFTBase/LadderSegmentation.h | 9 +++++---- .../MFT/base/include/MFTBase/MFTBaseParam.h | 9 +++++---- .../MFT/base/include/MFTBase/PCBSupport.h | 9 +++++---- .../MFT/base/include/MFTBase/PatchPanel.h | 9 +++++---- .../MFT/base/include/MFTBase/PowerSupplyUnit.h | 9 +++++---- .../MFT/base/include/MFTBase/Segmentation.h | 9 +++++---- .../ITSMFT/MFT/base/include/MFTBase/Support.h | 9 +++++---- .../MFT/base/include/MFTBase/VSegmentation.h | 9 +++++---- Detectors/ITSMFT/MFT/base/src/Barrel.cxx | 9 +++++---- .../ITSMFT/MFT/base/src/ChipSegmentation.cxx | 9 +++++---- Detectors/ITSMFT/MFT/base/src/Flex.cxx | 9 +++++---- Detectors/ITSMFT/MFT/base/src/Geometry.cxx | 9 +++++---- .../ITSMFT/MFT/base/src/GeometryBuilder.cxx | 9 +++++---- Detectors/ITSMFT/MFT/base/src/GeometryTGeo.cxx | 9 +++++---- Detectors/ITSMFT/MFT/base/src/HalfCone.cxx | 9 +++++---- Detectors/ITSMFT/MFT/base/src/HalfDetector.cxx | 9 +++++---- Detectors/ITSMFT/MFT/base/src/HalfDisk.cxx | 9 +++++---- .../MFT/base/src/HalfDiskSegmentation.cxx | 9 +++++---- .../ITSMFT/MFT/base/src/HalfSegmentation.cxx | 9 +++++---- .../ITSMFT/MFT/base/src/HeatExchanger.cxx | 9 +++++---- Detectors/ITSMFT/MFT/base/src/Ladder.cxx | 9 +++++---- .../ITSMFT/MFT/base/src/LadderSegmentation.cxx | 9 +++++---- Detectors/ITSMFT/MFT/base/src/MFTBaseLinkDef.h | 9 +++++---- Detectors/ITSMFT/MFT/base/src/MFTBaseParam.cxx | 9 +++++---- Detectors/ITSMFT/MFT/base/src/PCBSupport.cxx | 9 +++++---- Detectors/ITSMFT/MFT/base/src/PatchPanel.cxx | 9 +++++---- .../ITSMFT/MFT/base/src/PowerSupplyUnit.cxx | 9 +++++---- Detectors/ITSMFT/MFT/base/src/Segmentation.cxx | 9 +++++---- Detectors/ITSMFT/MFT/base/src/Support.cxx | 9 +++++---- .../ITSMFT/MFT/base/src/VSegmentation.cxx | 9 +++++---- .../ITSMFT/MFT/calibration/CMakeLists.txt | 13 +++++++------ .../include/MFTCalibration/NoiseCalibrator.h | 9 +++++---- .../MFTCalibration/NoiseCalibratorSpec.h | 9 +++++---- .../MFTCalibration/NoiseSlotCalibrator.h | 9 +++++---- .../calibration/src/MFTCalibrationLinkDef.h | 9 +++++---- .../MFT/calibration/src/NoiseCalibrator.cxx | 9 +++++---- .../calibration/src/NoiseCalibratorSpec.cxx | 9 +++++---- .../calibration/src/NoiseSlotCalibrator.cxx | 9 +++++---- .../testWorkflow/mft-calib-workflow.cxx | 9 +++++---- Detectors/ITSMFT/MFT/macros/CMakeLists.txt | 13 +++++++------ .../ITSMFT/MFT/macros/mapping/CMakeLists.txt | 13 +++++++------ .../MFT/macros/mapping/extractMFTMapping.C | 9 +++++---- .../ITSMFT/MFT/macros/test/CMakeLists.txt | 13 +++++++------ Detectors/ITSMFT/MFT/simulation/CMakeLists.txt | 13 +++++++------ .../include/MFTSimulation/Detector.h | 9 +++++---- .../include/MFTSimulation/DigitizerTask.h | 9 +++++---- .../ITSMFT/MFT/simulation/src/Detector.cxx | 9 +++++---- .../MFT/simulation/src/DigitizerTask.cxx | 9 +++++---- .../MFT/simulation/src/MFTSimulationLinkDef.h | 9 +++++---- .../ITSMFT/MFT/simulation/src/digi2raw.cxx | 9 +++++---- Detectors/ITSMFT/MFT/tracking/CMakeLists.txt | 13 +++++++------ .../MFT/tracking/include/MFTTracking/Cell.h | 9 +++++---- .../MFT/tracking/include/MFTTracking/Cluster.h | 9 +++++---- .../tracking/include/MFTTracking/Constants.h | 9 +++++---- .../MFT/tracking/include/MFTTracking/IOUtils.h | 9 +++++---- .../include/MFTTracking/MFTTrackingParam.h | 9 +++++---- .../MFT/tracking/include/MFTTracking/ROframe.h | 9 +++++---- .../MFT/tracking/include/MFTTracking/Road.h | 9 +++++---- .../MFT/tracking/include/MFTTracking/TrackCA.h | 9 +++++---- .../tracking/include/MFTTracking/TrackFitter.h | 9 +++++---- .../MFT/tracking/include/MFTTracking/Tracker.h | 9 +++++---- .../include/MFTTracking/TrackerConfig.h | 9 +++++---- Detectors/ITSMFT/MFT/tracking/src/Cluster.cxx | 9 +++++---- Detectors/ITSMFT/MFT/tracking/src/IOUtils.cxx | 9 +++++---- .../MFT/tracking/src/MFTTrackingLinkDef.h | 9 +++++---- .../MFT/tracking/src/MFTTrackingParam.cxx | 9 +++++---- Detectors/ITSMFT/MFT/tracking/src/ROframe.cxx | 9 +++++---- .../ITSMFT/MFT/tracking/src/TrackFitter.cxx | 9 +++++---- Detectors/ITSMFT/MFT/tracking/src/Tracker.cxx | 9 +++++---- .../ITSMFT/MFT/tracking/src/TrackerConfig.cxx | 9 +++++---- Detectors/ITSMFT/MFT/workflow/CMakeLists.txt | 13 +++++++------ .../include/MFTWorkflow/ClusterReaderSpec.h | 9 +++++---- .../include/MFTWorkflow/ClusterWriterSpec.h | 9 +++++---- .../include/MFTWorkflow/ClustererSpec.h | 9 +++++---- .../include/MFTWorkflow/RecoWorkflow.h | 9 +++++---- .../include/MFTWorkflow/TrackReaderSpec.h | 9 +++++---- .../include/MFTWorkflow/TrackWriterSpec.h | 9 +++++---- .../workflow/include/MFTWorkflow/TrackerSpec.h | 9 +++++---- .../MFT/workflow/src/ClusterReaderSpec.cxx | 9 +++++---- .../MFT/workflow/src/ClusterWriterSpec.cxx | 9 +++++---- .../ITSMFT/MFT/workflow/src/ClustererSpec.cxx | 9 +++++---- .../ITSMFT/MFT/workflow/src/RecoWorkflow.cxx | 9 +++++---- .../MFT/workflow/src/TrackReaderSpec.cxx | 9 +++++---- .../MFT/workflow/src/TrackWriterSpec.cxx | 9 +++++---- .../ITSMFT/MFT/workflow/src/TrackerSpec.cxx | 9 +++++---- .../src/mft-cluster-reader-workflow.cxx | 9 +++++---- .../MFT/workflow/src/mft-reco-workflow.cxx | 9 +++++---- Detectors/ITSMFT/common/CMakeLists.txt | 13 +++++++------ Detectors/ITSMFT/common/base/CMakeLists.txt | 13 +++++++------ .../base/include/ITSMFTBase/DPLAlpideParam.h | 9 +++++---- .../base/include/ITSMFTBase/GeometryTGeo.h | 9 +++++---- .../include/ITSMFTBase/SegmentationAlpide.h | 9 +++++---- .../ITSMFT/common/base/src/DPLAlpideParam.cxx | 9 +++++---- .../ITSMFT/common/base/src/GeometryTGeo.cxx | 9 +++++---- .../ITSMFT/common/base/src/ITSMFTBaseLinkDef.h | 9 +++++---- .../common/base/src/SegmentationAlpide.cxx | 9 +++++---- .../common/reconstruction/CMakeLists.txt | 13 +++++++------ .../include/ITSMFTReconstruction/AlpideCoder.h | 9 +++++---- .../BuildTopologyDictionary.h | 9 +++++---- .../include/ITSMFTReconstruction/CTFCoder.h | 9 +++++---- .../ITSMFTReconstruction/ChipMappingITS.h | 9 +++++---- .../ITSMFTReconstruction/ChipMappingMFT.h | 9 +++++---- .../include/ITSMFTReconstruction/Clusterer.h | 9 +++++---- .../ITSMFTReconstruction/ClustererParam.h | 9 +++++---- .../ITSMFTReconstruction/DecodingStat.h | 9 +++++---- .../ITSMFTReconstruction/DigitPixelReader.h | 9 +++++---- .../include/ITSMFTReconstruction/GBTLink.h | 9 +++++---- .../include/ITSMFTReconstruction/GBTWord.h | 9 +++++---- .../include/ITSMFTReconstruction/LookUp.h | 9 +++++---- .../include/ITSMFTReconstruction/PayLoadCont.h | 9 +++++---- .../include/ITSMFTReconstruction/PayLoadSG.h | 9 +++++---- .../include/ITSMFTReconstruction/PixelData.h | 9 +++++---- .../include/ITSMFTReconstruction/PixelReader.h | 9 +++++---- .../ITSMFTReconstruction/RUDecodeData.h | 9 +++++---- .../include/ITSMFTReconstruction/RUInfo.h | 9 +++++---- .../ITSMFTReconstruction/RawPixelDecoder.h | 9 +++++---- .../ITSMFTReconstruction/RawPixelReader.h | 9 +++++---- .../TopologyFastSimulation.h | 9 +++++---- .../common/reconstruction/src/AlpideCoder.cxx | 9 +++++---- .../src/BuildTopologyDictionary.cxx | 9 +++++---- .../common/reconstruction/src/CTFCoder.cxx | 9 +++++---- .../reconstruction/src/ChipMappingITS.cxx | 9 +++++---- .../reconstruction/src/ChipMappingMFT.cxx | 9 +++++---- .../common/reconstruction/src/Clusterer.cxx | 9 +++++---- .../reconstruction/src/ClustererParam.cxx | 9 +++++---- .../common/reconstruction/src/DecodingStat.cxx | 9 +++++---- .../reconstruction/src/DigitPixelReader.cxx | 9 +++++---- .../common/reconstruction/src/GBTLink.cxx | 9 +++++---- .../common/reconstruction/src/GBTWord.cxx | 9 +++++---- .../src/ITSMFTReconstructionLinkDef.h | 9 +++++---- .../common/reconstruction/src/LookUp.cxx | 9 +++++---- .../common/reconstruction/src/PayLoadCont.cxx | 9 +++++---- .../common/reconstruction/src/PixelData.cxx | 9 +++++---- .../common/reconstruction/src/RUDecodeData.cxx | 9 +++++---- .../common/reconstruction/src/RUInfo.cxx | 9 +++++---- .../reconstruction/src/RawPixelDecoder.cxx | 9 +++++---- .../src/TopologyFastSimulation.cxx | 9 +++++---- .../ITSMFT/common/simulation/CMakeLists.txt | 13 +++++++------ .../include/ITSMFTSimulation/AlpideChip.h | 9 +++++---- .../ITSMFTSimulation/AlpideSignalTrapezoid.h | 9 +++++---- .../ITSMFTSimulation/AlpideSimResponse.h | 9 +++++---- .../ITSMFTSimulation/ChipDigitsContainer.h | 9 +++++---- .../include/ITSMFTSimulation/ClusterShape.h | 9 +++++---- .../ITSMFTSimulation/DPLDigitizerParam.h | 9 +++++---- .../include/ITSMFTSimulation/DigiParams.h | 9 +++++---- .../include/ITSMFTSimulation/Digitizer.h | 9 +++++---- .../simulation/include/ITSMFTSimulation/Hit.h | 9 +++++---- .../include/ITSMFTSimulation/MC2RawEncoder.h | 9 +++++---- .../include/ITSMFTSimulation/PreDigit.h | 9 +++++---- .../common/simulation/src/AlpideChip.cxx | 9 +++++---- .../simulation/src/AlpideSignalTrapezoid.cxx | 9 +++++---- .../simulation/src/AlpideSimResponse.cxx | 9 +++++---- .../simulation/src/ChipDigitsContainer.cxx | 9 +++++---- .../common/simulation/src/ClusterShape.cxx | 9 +++++---- .../simulation/src/DPLDigitizerParam.cxx | 9 +++++---- .../common/simulation/src/DigiParams.cxx | 9 +++++---- .../ITSMFT/common/simulation/src/Digitizer.cxx | 9 +++++---- Detectors/ITSMFT/common/simulation/src/Hit.cxx | 9 +++++---- .../simulation/src/ITSMFTSimulationLinkDef.h | 9 +++++---- .../common/simulation/src/MC2RawEncoder.cxx | 9 +++++---- .../simulation/test/testAlpideSimResponse.cxx | 9 +++++---- .../ITSMFT/common/workflow/CMakeLists.txt | 13 +++++++------ .../include/ITSMFTWorkflow/ClusterReaderSpec.h | 9 +++++---- .../include/ITSMFTWorkflow/DigitReaderSpec.h | 9 +++++---- .../include/ITSMFTWorkflow/DigitWriterSpec.h | 9 +++++---- .../ITSMFTWorkflow/EntropyDecoderSpec.h | 9 +++++---- .../ITSMFTWorkflow/EntropyEncoderSpec.h | 9 +++++---- .../include/ITSMFTWorkflow/STFDecoderSpec.h | 9 +++++---- .../common/workflow/src/ClusterReaderSpec.cxx | 9 +++++---- .../common/workflow/src/DigitReaderSpec.cxx | 9 +++++---- .../common/workflow/src/DigitWriterSpec.cxx | 9 +++++---- .../common/workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../common/workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- .../common/workflow/src/STFDecoderSpec.cxx | 9 +++++---- .../workflow/src/digit-reader-workflow.cxx | 9 +++++---- .../workflow/src/digit-writer-workflow.cxx | 9 +++++---- .../workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- .../workflow/src/stf-decoder-workflow.cxx | 9 +++++---- Detectors/ITSMFT/test/CMakeLists.txt | 13 +++++++------ .../ITSMFT/test/HitAnalysis/CMakeLists.txt | 13 +++++++------ .../include/HitAnalysis/HitAnalysis.h | 9 +++++---- .../test/HitAnalysis/src/HitAnalysis.cxx | 9 +++++---- .../test/HitAnalysis/src/HitAnalysisLinkDef.h | 9 +++++---- Detectors/MUON/CMakeLists.txt | 13 +++++++------ Detectors/MUON/Common/CMakeLists.txt | 13 +++++++------ Detectors/MUON/Common/src/dcs-ccdb.cxx | 9 +++++---- .../MUON/Common/src/dcs-processor-workflow.cxx | 9 +++++---- .../MUON/Common/src/mch-dcs-sim-workflow.cxx | 9 +++++---- .../MUON/Common/src/mid-dcs-sim-workflow.cxx | 9 +++++---- Detectors/MUON/Common/src/subsysname.h | 9 +++++---- Detectors/MUON/MCH/Base/CMakeLists.txt | 13 +++++++------ .../MCH/Base/include/MCHBase/ClusterBlock.h | 9 +++++---- .../MCH/Base/include/MCHBase/DecoderError.h | 9 +++++---- .../MUON/MCH/Base/include/MCHBase/PreCluster.h | 9 +++++---- .../MUON/MCH/Base/include/MCHBase/TrackBlock.h | 9 +++++---- Detectors/MUON/MCH/Base/src/ClusterBlock.cxx | 9 +++++---- Detectors/MUON/MCH/Base/src/MCHBaseLinkDef.h | 9 +++++---- Detectors/MUON/MCH/Base/src/PreCluster.cxx | 9 +++++---- Detectors/MUON/MCH/Base/src/TrackBlock.cxx | 9 +++++---- Detectors/MUON/MCH/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MCH/CTF/CMakeLists.txt | 13 +++++++------ .../MUON/MCH/CTF/include/MCHCTF/CTFCoder.h | 9 +++++---- .../MUON/MCH/CTF/include/MCHCTF/CTFHelper.h | 9 +++++---- Detectors/MUON/MCH/CTF/src/CTFCoder.cxx | 9 +++++---- Detectors/MUON/MCH/CTF/src/CTFHelper.cxx | 9 +++++---- Detectors/MUON/MCH/Calibration/CMakeLists.txt | 13 +++++++------ .../MCHCalibration/MCHChannelCalibrator.h | 9 +++++---- .../MCHCalibration/PedestalCalibrator.h | 9 +++++---- .../include/MCHCalibration/PedestalDigit.h | 9 +++++---- .../include/MCHCalibration/PedestalProcessor.h | 9 +++++---- .../Calibration/src/MCHCalibrationLinkDef.h | 9 +++++---- .../MCH/Calibration/src/PedestalCalibSpec.h | 9 +++++---- .../MCH/Calibration/src/PedestalCalibrator.cxx | 9 +++++---- .../MUON/MCH/Calibration/src/PedestalDigit.cxx | 9 +++++---- .../MCH/Calibration/src/PedestalProcessor.cxx | 9 +++++---- .../src/pedestal-calib-workflow.cxx | 9 +++++---- .../src/pedestal-decoding-workflow.cxx | 9 +++++---- Detectors/MUON/MCH/Clustering/CMakeLists.txt | 13 +++++++------ .../MCHClustering/ClusterFinderOriginal.h | 9 +++++---- .../include/MCHClustering/ClusterizerParam.h | 9 +++++---- .../Clustering/src/ClusterFinderOriginal.cxx | 9 +++++---- .../MCH/Clustering/src/ClusterOriginal.cxx | 9 +++++---- .../MUON/MCH/Clustering/src/ClusterOriginal.h | 9 +++++---- .../MCH/Clustering/src/ClusterizerParam.cxx | 9 +++++---- .../MCH/Clustering/src/MCHClusteringLinkDef.h | 9 +++++---- .../MCH/Clustering/src/MathiesonOriginal.cxx | 9 +++++---- .../MCH/Clustering/src/MathiesonOriginal.h | 9 +++++---- .../MUON/MCH/Clustering/src/PadOriginal.h | 9 +++++---- Detectors/MUON/MCH/Conditions/CMakeLists.txt | 13 +++++++------ .../include/MCHConditions/DCSNamer.h | 9 +++++---- Detectors/MUON/MCH/Conditions/src/DCSNamer.cxx | 9 +++++---- .../MUON/MCH/Conditions/test/HVAliases.cxx | 9 +++++---- Detectors/MUON/MCH/Conditions/test/HVAliases.h | 9 +++++---- .../MUON/MCH/Conditions/test/LVAliases.cxx | 9 +++++---- Detectors/MUON/MCH/Conditions/test/LVAliases.h | 9 +++++---- .../MUON/MCH/Conditions/test/testDCSNamer.cxx | 9 +++++---- Detectors/MUON/MCH/Contour/CMakeLists.txt | 13 +++++++------ .../MUON/MCH/Contour/include/MCHContour/BBox.h | 9 +++++---- .../MCH/Contour/include/MCHContour/Contour.h | 9 +++++---- .../include/MCHContour/ContourCreator.h | 9 +++++---- .../include/MCHContour/ContourCreator.inl | 9 +++++---- .../MUON/MCH/Contour/include/MCHContour/Edge.h | 9 +++++---- .../MCH/Contour/include/MCHContour/Helper.h | 9 +++++---- .../MCH/Contour/include/MCHContour/Interval.h | 9 +++++---- .../MCH/Contour/include/MCHContour/Polygon.h | 9 +++++---- .../MCH/Contour/include/MCHContour/SVGWriter.h | 9 +++++---- .../Contour/include/MCHContour/SegmentTree.h | 9 +++++---- .../MCH/Contour/include/MCHContour/Vertex.h | 9 +++++---- Detectors/MUON/MCH/Contour/test/BBox.cxx | 9 +++++---- Detectors/MUON/MCH/Contour/test/Contour.cxx | 9 +++++---- .../MUON/MCH/Contour/test/ContourCreator.cxx | 9 +++++---- Detectors/MUON/MCH/Contour/test/Edge.cxx | 9 +++++---- Detectors/MUON/MCH/Contour/test/Interval.cxx | 9 +++++---- Detectors/MUON/MCH/Contour/test/Polygon.cxx | 9 +++++---- .../MUON/MCH/Contour/test/SegmentTree.cxx | 9 +++++---- Detectors/MUON/MCH/Contour/test/Vertex.cxx | 9 +++++---- Detectors/MUON/MCH/DevIO/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MCH/DevIO/Digits/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MCH/DevIO/Digits/DigitD0.h | 9 +++++---- .../MUON/MCH/DevIO/Digits/DigitFileFormat.cxx | 9 +++++---- .../MUON/MCH/DevIO/Digits/DigitFileFormat.h | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/DigitIO.h | 9 +++++---- .../MUON/MCH/DevIO/Digits/DigitIOBaseTask.cxx | 9 +++++---- .../MUON/MCH/DevIO/Digits/DigitIOBaseTask.h | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.cxx | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.h | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.cxx | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.h | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.cxx | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.h | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.cxx | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.h | 9 +++++---- .../MUON/MCH/DevIO/Digits/DigitReader.cxx | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/DigitReader.h | 9 +++++---- .../MUON/MCH/DevIO/Digits/DigitReaderImpl.cxx | 9 +++++---- .../MUON/MCH/DevIO/Digits/DigitReaderImpl.h | 9 +++++---- .../MUON/MCH/DevIO/Digits/DigitWriter.cxx | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/DigitWriter.h | 9 +++++---- .../MUON/MCH/DevIO/Digits/DigitWriterImpl.cxx | 9 +++++---- .../MUON/MCH/DevIO/Digits/DigitWriterImpl.h | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/IO.cxx | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/IO.h | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/IOStruct.h | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/ProgOptions.h | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/TestFileV0.cxx | 9 +++++---- Detectors/MUON/MCH/DevIO/Digits/TestFileV0.h | 9 +++++---- .../MCH/DevIO/Digits/digits-file-dumper.cxx | 9 +++++---- .../Digits/digits-file-reader-workflow.cxx | 9 +++++---- .../MCH/DevIO/Digits/digits-r23-workflow.cxx | 9 +++++---- .../digits-random-generator-workflow.cxx | 9 +++++---- .../DevIO/Digits/digits-writer-workflow.cxx | 9 +++++---- .../MUON/MCH/DevIO/Digits/testDigitIO.cxx | 9 +++++---- .../MUON/MCH/DevIO/Digits/testDigitIOV0.cxx | 9 +++++---- Detectors/MUON/MCH/Geometry/CMakeLists.txt | 13 +++++++------ .../MUON/MCH/Geometry/Creator/CMakeLists.txt | 13 +++++++------ .../include/MCHGeometryCreator/Geometry.h | 9 +++++---- .../MUON/MCH/Geometry/Creator/src/Geometry.cxx | 9 +++++---- .../Creator/src/MCHGeometryCreatorLinkDef.h | 9 +++++---- .../MCH/Geometry/Creator/src/Materials.cxx | 9 +++++---- .../MUON/MCH/Geometry/Creator/src/Materials.h | 9 +++++---- .../Geometry/Creator/src/Station1Geometry.cxx | 9 +++++---- .../Geometry/Creator/src/Station1Geometry.h | 9 +++++---- .../Geometry/Creator/src/Station2Geometry.cxx | 9 +++++---- .../Geometry/Creator/src/Station2Geometry.h | 9 +++++---- .../Creator/src/Station345Geometry.cxx | 9 +++++---- .../Geometry/Creator/src/Station345Geometry.h | 9 +++++---- .../MUON/MCH/Geometry/Test/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MCH/Geometry/Test/Helpers.cxx | 9 +++++---- Detectors/MUON/MCH/Geometry/Test/LinkDef.h | 9 +++++---- .../Test/include/MCHGeometryTest/Helpers.h | 9 +++++---- .../MCH/Geometry/Test/testGeometryCreator.cxx | 9 +++++---- .../Geometry/Test/testGeometryTransformer.cxx | 9 +++++---- .../MCH/Geometry/Transformer/CMakeLists.txt | 13 +++++++------ .../MCHGeometryTransformer/Transformations.h | 9 +++++---- .../MCHGeometryTransformer/VolumePaths.h | 9 +++++---- .../Transformer/src/Transformations.cxx | 9 +++++---- .../Geometry/Transformer/src/VolumePaths.cxx | 9 +++++---- .../Transformer/src/convert-geometry.cxx | 9 +++++---- Detectors/MUON/MCH/Mapping/CMakeLists.txt | 13 +++++++------ .../MUON/MCH/Mapping/Impl3/CMakeLists.txt | 13 +++++++------ .../Impl3/src/CathodeSegmentationCImpl3.cxx | 9 +++++---- .../Impl3/src/CathodeSegmentationCreator.cxx | 9 +++++---- .../Impl3/src/CathodeSegmentationCreator.h | 9 +++++---- .../Impl3/src/CathodeSegmentationImpl3.cxx | 9 +++++---- .../Impl3/src/CathodeSegmentationImpl3.h | 9 +++++---- .../Mapping/Impl3/src/CreateSegmentation.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType0.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType1.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType10.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType11.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType12.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType13.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType14.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType15.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType16.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType17.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType18.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType19.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType2.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType20.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType3.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType4.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType5.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType6.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType7.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType8.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType9.cxx | 9 +++++---- .../Mapping/Impl3/src/GenDetElemId2SegType.cxx | 9 +++++---- .../Mapping/Impl3/src/GenDetElemId2SegType.h | 9 +++++---- .../MUON/MCH/Mapping/Impl3/src/PadGroup.h | 9 +++++---- .../MCH/Mapping/Impl3/src/PadGroupType.cxx | 9 +++++---- .../MUON/MCH/Mapping/Impl3/src/PadGroupType.h | 9 +++++---- Detectors/MUON/MCH/Mapping/Impl3/src/PadSize.h | 9 +++++---- .../MUON/MCH/Mapping/Impl4/CMakeLists.txt | 13 +++++++------ .../Impl4/src/CathodeSegmentationCImpl4.cxx | 9 +++++---- .../Impl4/src/CathodeSegmentationCreator.cxx | 9 +++++---- .../Impl4/src/CathodeSegmentationCreator.h | 9 +++++---- .../Impl4/src/CathodeSegmentationImpl4.cxx | 9 +++++---- .../Impl4/src/CathodeSegmentationImpl4.h | 9 +++++---- .../Mapping/Impl4/src/CreateSegmentation.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType0.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType1.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType10.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType11.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType12.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType13.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType14.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType15.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType16.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType17.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType18.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType19.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType2.cxx | 9 +++++---- ...nCathodeSegmentationCreatorForSegType20.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType3.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType4.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType5.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType6.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType7.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType8.cxx | 9 +++++---- ...enCathodeSegmentationCreatorForSegType9.cxx | 9 +++++---- .../Mapping/Impl4/src/GenDetElemId2SegType.cxx | 9 +++++---- .../Mapping/Impl4/src/GenDetElemId2SegType.h | 9 +++++---- .../MUON/MCH/Mapping/Impl4/src/PadGroup.h | 9 +++++---- .../MCH/Mapping/Impl4/src/PadGroupType.cxx | 9 +++++---- .../MUON/MCH/Mapping/Impl4/src/PadGroupType.h | 9 +++++---- Detectors/MUON/MCH/Mapping/Impl4/src/PadSize.h | 9 +++++---- .../MUON/MCH/Mapping/Interface/CMakeLists.txt | 13 +++++++------ .../MCHMappingInterface/CathodeSegmentation.h | 9 +++++---- .../CathodeSegmentationCInterface.h | 9 +++++---- .../include/MCHMappingInterface/Segmentation.h | 9 +++++---- .../MCHMappingInterface/Segmentation.inl | 9 +++++---- .../MUON/MCH/Mapping/SegContour/CMakeLists.txt | 13 +++++++------ .../CathodeSegmentationContours.h | 9 +++++---- .../CathodeSegmentationSVGWriter.h | 9 +++++---- .../SegmentationContours.h | 9 +++++---- .../src/CathodeSegmentationContours.cxx | 9 +++++---- .../src/CathodeSegmentationSVGWriter.cxx | 9 +++++---- .../Mapping/SegContour/src/SVGSegmentation.cxx | 9 +++++---- .../SegContour/src/SegmentationContours.cxx | 9 +++++---- .../SegContour/src/SegmentationSVGWriter.cxx | 9 +++++---- Detectors/MUON/MCH/Mapping/cli/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MCH/Mapping/cli/cli.cxx | 9 +++++---- .../MUON/MCH/Mapping/cli/export-to-tree.cxx | 9 +++++---- Detectors/MUON/MCH/Mapping/test/CMakeLists.txt | 13 +++++++------ .../test/src/BenchCathodeSegmentation.cxx | 9 +++++---- .../MCH/Mapping/test/src/BenchSegmentation.cxx | 9 +++++---- .../Mapping/test/src/CathodeSegmentation.cxx | 9 +++++---- .../test/src/CathodeSegmentationLong.cxx | 9 +++++---- .../MUON/MCH/Mapping/test/src/InputDocument.h | 9 +++++---- .../MUON/MCH/Mapping/test/src/Segmentation.cxx | 9 +++++---- .../MCH/Mapping/test/src/TestParameters.cxx | 9 +++++---- .../MUON/MCH/Mapping/test/src/TestParameters.h | 9 +++++---- .../Mapping/test/src/generatePadIndices.cxx | 9 +++++---- .../MCH/Mapping/test/src/testPadIndices.cxx | 9 +++++---- .../MUON/MCH/PreClustering/CMakeLists.txt | 13 +++++++------ .../MCHPreClustering/PreClusterFinder.h | 9 +++++---- .../MCH/PreClustering/src/PreClusterFinder.cxx | 9 +++++---- .../src/PreClusterFinderMapping.cxx | 9 +++++---- .../src/PreClusterFinderMapping.h | 9 +++++---- Detectors/MUON/MCH/Raw/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MCH/Raw/Common/CMakeLists.txt | 13 +++++++------ .../Common/include/MCHRawCommon/CoDecParam.h | 9 +++++---- .../Common/include/MCHRawCommon/DataFormats.h | 9 +++++---- .../MCHRawCommon/SampaBunchCrossingCounter.h | 9 +++++---- .../Common/include/MCHRawCommon/SampaCluster.h | 9 +++++---- .../Common/include/MCHRawCommon/SampaHeader.h | 9 +++++---- .../MUON/MCH/Raw/Common/src/CoDecParam.cxx | 9 +++++---- .../MUON/MCH/Raw/Common/src/DataFormats.cxx | 9 +++++---- .../MCH/Raw/Common/src/MCHRawCommonLinkDef.h | 9 +++++---- .../Common/src/SampaBunchCrossingCounter.cxx | 9 +++++---- .../MUON/MCH/Raw/Common/src/SampaCluster.cxx | 9 +++++---- .../MUON/MCH/Raw/Common/src/SampaHeader.cxx | 9 +++++---- .../MUON/MCH/Raw/Common/test/CMakeLists.txt | 13 +++++++------ .../MCH/Raw/Common/test/benchSampaHeader.cxx | 9 +++++---- .../test/testSampaBunchCrossingCounter.cxx | 9 +++++---- .../MCH/Raw/Common/test/testSampaCluster.cxx | 9 +++++---- .../MCH/Raw/Common/test/testSampaHeader.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/Decoder/CMakeLists.txt | 13 +++++++------ .../include/MCHRawDecoder/DataDecoder.h | 9 +++++---- .../MCHRawDecoder/DecodedDataHandlers.h | 9 +++++---- .../Decoder/include/MCHRawDecoder/ErrorCodes.h | 9 +++++---- .../Decoder/include/MCHRawDecoder/OrbitInfo.h | 9 +++++---- .../include/MCHRawDecoder/PageDecoder.h | 9 +++++---- .../Decoder/include/MCHRawDecoder/ROFFinder.h | 9 +++++---- .../MCH/Raw/Decoder/src/BareELinkDecoder.cxx | 9 +++++---- .../MCH/Raw/Decoder/src/BareElinkDecoder.h | 9 +++++---- .../MUON/MCH/Raw/Decoder/src/BareGBTDecoder.h | 9 +++++---- .../MUON/MCH/Raw/Decoder/src/DataDecoder.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/Decoder/src/Debug.h | 9 +++++---- .../MUON/MCH/Raw/Decoder/src/OrbitInfo.cxx | 9 +++++---- .../MUON/MCH/Raw/Decoder/src/PageDecoder.cxx | 9 +++++---- .../MUON/MCH/Raw/Decoder/src/PayloadDecoder.h | 9 +++++---- .../MUON/MCH/Raw/Decoder/src/RDHManip.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/Decoder/src/RDHManip.h | 9 +++++---- .../MUON/MCH/Raw/Decoder/src/ROFFinder.cxx | 9 +++++---- .../Raw/Decoder/src/UserLogicElinkDecoder.cxx | 9 +++++---- .../Raw/Decoder/src/UserLogicElinkDecoder.h | 9 +++++---- .../Raw/Decoder/src/UserLogicEndpointDecoder.h | 9 +++++---- .../Raw/Decoder/src/testBareElinkDecoder.cxx | 9 +++++---- .../Decoder/src/testDigitsTimeComputation.cxx | 9 +++++---- .../MUON/MCH/Raw/Decoder/src/testRDHManip.cxx | 9 +++++---- .../MUON/MCH/Raw/Decoder/src/testROFFinder.cxx | 9 +++++---- .../src/testUserLogicEndpointDecoder.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/CMakeLists.txt | 13 +++++++------ .../ElecMap/include/MCHRawElecMap/DsDetId.h | 9 +++++---- .../ElecMap/include/MCHRawElecMap/DsElecId.h | 9 +++++---- .../ElecMap/include/MCHRawElecMap/FeeLinkId.h | 9 +++++---- .../Raw/ElecMap/include/MCHRawElecMap/Mapper.h | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH10L.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH10R.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH5L.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH5R.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH6L.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH6R.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH7L.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH7R.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH8L.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH8R.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH9L.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/CH9R.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/DsDetId.cxx | 9 +++++---- .../MUON/MCH/Raw/ElecMap/src/DsElecId.cxx | 9 +++++---- .../Raw/ElecMap/src/ElectronicMapperDummy.cxx | 9 +++++---- .../ElecMap/src/ElectronicMapperGenerated.cxx | 9 +++++---- .../ElecMap/src/ElectronicMapperImplHelper.h | 9 +++++---- .../Raw/ElecMap/src/ElectronicMapperString.cxx | 9 +++++---- .../MUON/MCH/Raw/ElecMap/src/FeeLinkId.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/MapCRU.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/MapCRU.h | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/MapFEC.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/MapFEC.h | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/Mapper.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/cli.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/dslist.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/dslist.h | 9 +++++---- Detectors/MUON/MCH/Raw/ElecMap/src/elecmap.py | 9 +++++---- .../MUON/MCH/Raw/ElecMap/src/testDsElecId.cxx | 9 +++++---- .../Raw/ElecMap/src/testElectronicMapper.cxx | 9 +++++---- .../ElecMap/src/testElectronicMapperString.cxx | 9 +++++---- .../MUON/MCH/Raw/ElecMap/src/testFeeLinkId.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/Encoder/CMakeLists.txt | 13 +++++++------ .../MUON/MCH/Raw/Encoder/Digit/CMakeLists.txt | 13 +++++++------ .../MCH/Raw/Encoder/Digit/Digit2ElecMapper.cxx | 9 +++++---- .../Raw/Encoder/Digit/DigitPayloadEncoder.cxx | 9 +++++---- .../MCH/Raw/Encoder/Digit/DigitRawEncoder.cxx | 9 +++++---- .../MCH/Raw/Encoder/Digit/DigitTreeReader.cxx | 9 +++++---- .../MCH/Raw/Encoder/Digit/DigitTreeReader.h | 9 +++++---- .../MCH/Raw/Encoder/Digit/digits-to-json.cxx | 9 +++++---- .../MCH/Raw/Encoder/Digit/digits-to-raw.cxx | 9 +++++---- .../MCHRawEncoderDigit/Digit2ElecMapper.h | 9 +++++---- .../MCHRawEncoderDigit/DigitPayloadEncoder.h | 9 +++++---- .../MCHRawEncoderDigit/DigitRawEncoder.h | 9 +++++---- .../Raw/Encoder/Digit/testDigitTreeReader.cxx | 9 +++++---- .../Raw/Encoder/Payload/BareElinkEncoder.cxx | 9 +++++---- .../MCH/Raw/Encoder/Payload/BareElinkEncoder.h | 9 +++++---- .../Encoder/Payload/BareElinkEncoderMerger.h | 9 +++++---- .../MUON/MCH/Raw/Encoder/Payload/BitSet.cxx | 9 +++++---- .../MUON/MCH/Raw/Encoder/Payload/BitSet.h | 9 +++++---- .../MCH/Raw/Encoder/Payload/CMakeLists.txt | 13 +++++++------ .../MUON/MCH/Raw/Encoder/Payload/DataBlock.cxx | 9 +++++---- .../MCH/Raw/Encoder/Payload/ElinkEncoder.h | 9 +++++---- .../Raw/Encoder/Payload/ElinkEncoderMerger.h | 9 +++++---- .../Raw/Encoder/Payload/EncoderImplHelper.cxx | 9 +++++---- .../Raw/Encoder/Payload/EncoderImplHelper.h | 9 +++++---- .../MUON/MCH/Raw/Encoder/Payload/GBTEncoder.h | 9 +++++---- .../MCH/Raw/Encoder/Payload/PayloadEncoder.cxx | 9 +++++---- .../Raw/Encoder/Payload/PayloadEncoderImpl.h | 9 +++++---- .../Raw/Encoder/Payload/PayloadPaginator.cxx | 9 +++++---- .../Raw/Encoder/Payload/RefBufferCRUBare.cxx | 9 +++++---- .../Encoder/Payload/RefBufferCRUUserLogic.cxx | 9 +++++---- .../Raw/Encoder/Payload/RefBufferGBTBare.cxx | 9 +++++---- .../Encoder/Payload/RefBufferGBTUserLogic.cxx | 9 +++++---- .../Encoder/Payload/UserLogicElinkEncoder.h | 9 +++++---- .../Payload/UserLogicElinkEncoderMerger.h | 9 +++++---- .../MCH/Raw/Encoder/Payload/benchBitSet.cxx | 9 +++++---- .../include/MCHRawEncoderPayload/DataBlock.h | 9 +++++---- .../MCHRawEncoderPayload/PayloadEncoder.h | 9 +++++---- .../MCHRawEncoderPayload/PayloadPaginator.h | 9 +++++---- .../Encoder/Payload/testBareElinkEncoder.cxx | 9 +++++---- .../MCH/Raw/Encoder/Payload/testBitSet.cxx | 9 +++++---- .../Raw/Encoder/Payload/testElinkEncoder.cxx | 9 +++++---- .../MCH/Raw/Encoder/Payload/testGBTEncoder.cxx | 9 +++++---- .../Raw/Encoder/Payload/testPayloadEncoder.cxx | 9 +++++---- .../MUON/MCH/Raw/ImplHelpers/Assertions.h | 9 +++++---- .../MUON/MCH/Raw/ImplHelpers/CMakeLists.txt | 13 +++++++------ .../MUON/MCH/Raw/ImplHelpers/DumpBuffer.h | 9 +++++---- Detectors/MUON/MCH/Raw/ImplHelpers/MakeArray.h | 9 +++++---- .../MUON/MCH/Raw/ImplHelpers/MoveBuffer.h | 9 +++++---- Detectors/MUON/MCH/Raw/ImplHelpers/NofBits.h | 9 +++++---- .../MCH/Raw/ImplHelpers/testMoveBuffer.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/Tools/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MCH/Raw/Tools/rawdump.cxx | 9 +++++---- Detectors/MUON/MCH/Raw/test/CMakeLists.txt | 13 +++++++------ .../MUON/MCH/Raw/test/testClosureCoDec.cxx | 9 +++++---- .../MCH/Raw/test/testClosureCoDecDigit.cxx | 9 +++++---- Detectors/MUON/MCH/Simulation/CMakeLists.txt | 13 +++++++------ .../include/MCHSimulation/DEDigitizer.h | 9 +++++---- .../include/MCHSimulation/Detector.h | 9 +++++---- .../include/MCHSimulation/Digitizer.h | 9 +++++---- .../include/MCHSimulation/DigitizerParam.h | 9 +++++---- .../MCH/Simulation/include/MCHSimulation/Hit.h | 9 +++++---- .../include/MCHSimulation/Response.h | 9 +++++---- .../MUON/MCH/Simulation/src/DEDigitizer.cxx | 9 +++++---- Detectors/MUON/MCH/Simulation/src/Detector.cxx | 9 +++++---- .../MUON/MCH/Simulation/src/Digitizer.cxx | 9 +++++---- .../MUON/MCH/Simulation/src/DigitizerParam.cxx | 9 +++++---- Detectors/MUON/MCH/Simulation/src/Hit.cxx | 9 +++++---- .../MCH/Simulation/src/MCHSimulationLinkDef.h | 9 +++++---- Detectors/MUON/MCH/Simulation/src/Response.cxx | 9 +++++---- Detectors/MUON/MCH/Simulation/src/Stepper.cxx | 9 +++++---- Detectors/MUON/MCH/Simulation/src/Stepper.h | 9 +++++---- .../src/inspect-collision-context.cxx | 9 +++++---- .../MUON/MCH/Simulation/test/CMakeLists.txt | 13 +++++++------ .../MUON/MCH/Simulation/test/DigitMerging.cxx | 9 +++++---- .../MUON/MCH/Simulation/test/DigitMerging.h | 9 +++++---- .../MCH/Simulation/test/benchDigitMerging.cxx | 9 +++++---- .../MCH/Simulation/test/testDigitMerging.cxx | 9 +++++---- .../MUON/MCH/Simulation/test/testDigitizer.cxx | 9 +++++---- .../Simulation/test/testRegularGeometry.cxx | 9 +++++---- .../MUON/MCH/Simulation/test/testResponse.cxx | 9 +++++---- Detectors/MUON/MCH/Tracking/CMakeLists.txt | 13 +++++++------ .../MCH/Tracking/include/MCHTracking/Cluster.h | 9 +++++---- .../MCH/Tracking/include/MCHTracking/Track.h | 9 +++++---- .../Tracking/include/MCHTracking/TrackExtrap.h | 9 +++++---- .../Tracking/include/MCHTracking/TrackFinder.h | 9 +++++---- .../include/MCHTracking/TrackFinderOriginal.h | 9 +++++---- .../Tracking/include/MCHTracking/TrackFitter.h | 9 +++++---- .../Tracking/include/MCHTracking/TrackParam.h | 9 +++++---- .../include/MCHTracking/TrackerParam.h | 9 +++++---- Detectors/MUON/MCH/Tracking/src/Cluster.cxx | 9 +++++---- .../MUON/MCH/Tracking/src/MCHTrackingLinkDef.h | 9 +++++---- Detectors/MUON/MCH/Tracking/src/Track.cxx | 9 +++++---- .../MUON/MCH/Tracking/src/TrackExtrap.cxx | 9 +++++---- .../MUON/MCH/Tracking/src/TrackFinder.cxx | 9 +++++---- .../MCH/Tracking/src/TrackFinderOriginal.cxx | 9 +++++---- .../MUON/MCH/Tracking/src/TrackFitter.cxx | 9 +++++---- Detectors/MUON/MCH/Tracking/src/TrackParam.cxx | 9 +++++---- .../MUON/MCH/Tracking/src/TrackerParam.cxx | 9 +++++---- Detectors/MUON/MCH/Workflow/CMakeLists.txt | 13 +++++++------ .../MCHWorkflow/ClusterFinderOriginalSpec.h | 9 +++++---- .../include/MCHWorkflow/DataDecoderSpec.h | 9 +++++---- .../include/MCHWorkflow/EntropyDecoderSpec.h | 9 +++++---- .../include/MCHWorkflow/PreClusterFinderSpec.h | 9 +++++---- .../Workflow/src/ClusterFinderOriginalSpec.cxx | 9 +++++---- .../MUON/MCH/Workflow/src/DataDecoderSpec.cxx | 9 +++++---- .../MUON/MCH/Workflow/src/DigitReaderSpec.cxx | 9 +++++---- .../MUON/MCH/Workflow/src/DigitReaderSpec.h | 9 +++++---- .../MUON/MCH/Workflow/src/DigitSamplerSpec.cxx | 9 +++++---- .../MUON/MCH/Workflow/src/DigitSamplerSpec.h | 9 +++++---- .../MCH/Workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../MCH/Workflow/src/PreClusterFinderSpec.cxx | 9 +++++---- .../MCH/Workflow/src/PreClusterSinkSpec.cxx | 9 +++++---- .../MUON/MCH/Workflow/src/PreClusterSinkSpec.h | 9 +++++---- .../MCH/Workflow/src/TrackAtVertexSpec.cxx | 9 +++++---- .../MUON/MCH/Workflow/src/TrackAtVertexSpec.h | 9 +++++---- .../Workflow/src/TrackFinderOriginalSpec.cxx | 9 +++++---- .../MCH/Workflow/src/TrackFinderOriginalSpec.h | 9 +++++---- .../MUON/MCH/Workflow/src/TrackFinderSpec.cxx | 9 +++++---- .../MUON/MCH/Workflow/src/TrackFinderSpec.h | 9 +++++---- .../MUON/MCH/Workflow/src/TrackFitterSpec.cxx | 9 +++++---- .../MUON/MCH/Workflow/src/TrackFitterSpec.h | 9 +++++---- .../MUON/MCH/Workflow/src/TrackSamplerSpec.cxx | 9 +++++---- .../MUON/MCH/Workflow/src/TrackSamplerSpec.h | 9 +++++---- .../MUON/MCH/Workflow/src/TrackSinkSpec.cxx | 9 +++++---- .../MUON/MCH/Workflow/src/TrackSinkSpec.h | 9 +++++---- .../MCH/Workflow/src/VertexSamplerSpec.cxx | 9 +++++---- .../MUON/MCH/Workflow/src/VertexSamplerSpec.h | 9 +++++---- .../Workflow/src/clusters-sampler-workflow.cxx | 9 +++++---- .../Workflow/src/clusters-sink-workflow.cxx | 9 +++++---- .../clusters-to-tracks-original-workflow.cxx | 9 +++++---- .../src/clusters-to-tracks-workflow.cxx | 9 +++++---- .../src/clusters-transformer-workflow.cxx | 9 +++++---- .../Workflow/src/cru-page-reader-workflow.cxx | 9 +++++---- .../src/cru-page-to-digits-workflow.cxx | 9 +++++---- .../Workflow/src/digits-reader-workflow.cxx | 9 +++++---- .../MCH/Workflow/src/digits-sink-workflow.cxx | 9 +++++---- .../src/digits-to-preclusters-workflow.cxx | 9 +++++---- .../Workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- .../Workflow/src/preclusters-sink-workflow.cxx | 9 +++++---- ...eclusters-to-clusters-original-workflow.cxx | 9 +++++---- .../MCH/Workflow/src/raw-debug-workflow.cxx | 9 +++++---- .../Workflow/src/raw-to-digits-workflow.cxx | 9 +++++---- .../src/sim-digits-reader-workflow.cxx | 9 +++++---- .../Workflow/src/tracks-sampler-workflow.cxx | 9 +++++---- .../MCH/Workflow/src/tracks-sink-workflow.cxx | 9 +++++---- .../tracks-to-tracks-at-vertex-workflow.cxx | 9 +++++---- .../Workflow/src/tracks-to-tracks-workflow.cxx | 9 +++++---- .../Workflow/src/vertex-sampler-workflow.cxx | 9 +++++---- Detectors/MUON/MID/Base/CMakeLists.txt | 13 +++++++------ .../Base/include/MIDBase/ChamberEfficiency.h | 9 +++++---- .../Base/include/MIDBase/DetectorParameters.h | 9 +++++---- .../Base/include/MIDBase/GeometryParameters.h | 9 +++++---- .../Base/include/MIDBase/GeometryTransformer.h | 9 +++++---- .../MUON/MID/Base/include/MIDBase/Mapping.h | 9 +++++---- .../MUON/MID/Base/include/MIDBase/MpArea.h | 9 +++++---- .../MUON/MID/Base/src/ChamberEfficiency.cxx | 9 +++++---- .../MUON/MID/Base/src/DetectorParameters.cxx | 9 +++++---- .../MUON/MID/Base/src/GeometryParameters.cxx | 9 +++++---- .../MUON/MID/Base/src/GeometryTransformer.cxx | 9 +++++---- Detectors/MUON/MID/Base/src/Mapping.cxx | 9 +++++---- Detectors/MUON/MID/Base/src/MpArea.cxx | 9 +++++---- Detectors/MUON/MID/Base/test/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MID/Base/test/src/Positions.cxx | 9 +++++---- .../MUON/MID/Base/test/src/testMapping.cxx | 9 +++++---- Detectors/MUON/MID/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MID/CTF/CMakeLists.txt | 13 +++++++------ .../MUON/MID/CTF/include/MIDCTF/CTFCoder.h | 9 +++++---- .../MUON/MID/CTF/include/MIDCTF/CTFHelper.h | 9 +++++---- Detectors/MUON/MID/CTF/src/CTFCoder.cxx | 9 +++++---- Detectors/MUON/MID/CTF/src/CTFHelper.cxx | 9 +++++---- Detectors/MUON/MID/Clustering/CMakeLists.txt | 13 +++++++------ .../include/MIDClustering/Clusterizer.h | 9 +++++---- .../include/MIDClustering/PreCluster.h | 9 +++++---- .../include/MIDClustering/PreClusterHelper.h | 9 +++++---- .../include/MIDClustering/PreClusterizer.h | 9 +++++---- .../include/MIDClustering/PreClustersDE.h | 9 +++++---- .../MUON/MID/Clustering/src/Clusterizer.cxx | 9 +++++---- .../MUON/MID/Clustering/src/PreCluster.cxx | 9 +++++---- .../MID/Clustering/src/PreClusterHelper.cxx | 9 +++++---- .../MUON/MID/Clustering/src/PreClusterizer.cxx | 9 +++++---- .../MUON/MID/Clustering/src/PreClustersDE.cxx | 9 +++++---- .../MUON/MID/Clustering/test/CMakeLists.txt | 13 +++++++------ .../MID/Clustering/test/bench_Clusterizer.cxx | 9 +++++---- .../MID/Clustering/test/testClusterizer.cxx | 9 +++++---- Detectors/MUON/MID/Conditions/CMakeLists.txt | 13 +++++++------ .../include/MIDConditions/DCSNamer.h | 9 +++++---- Detectors/MUON/MID/Conditions/src/DCSNamer.cxx | 9 +++++---- .../MUON/MID/Conditions/test/HVAliases.cxx | 9 +++++---- Detectors/MUON/MID/Conditions/test/HVAliases.h | 9 +++++---- .../MUON/MID/Conditions/test/testDCSNamer.cxx | 9 +++++---- Detectors/MUON/MID/QC/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MID/QC/exe/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MID/QC/exe/raw-checker.cxx | 9 +++++---- Detectors/MUON/MID/QC/exe/raw-ul-checker.cxx | 9 +++++---- .../MID/QC/include/MIDQC/GBTRawDataChecker.h | 9 +++++---- .../MUON/MID/QC/include/MIDQC/RawDataChecker.h | 9 +++++---- .../MID/QC/include/MIDQC/UserLogicChecker.h | 9 +++++---- .../MUON/MID/QC/src/GBTRawDataChecker.cxx | 9 +++++---- Detectors/MUON/MID/QC/src/RawDataChecker.cxx | 9 +++++---- Detectors/MUON/MID/QC/src/UserLogicChecker.cxx | 9 +++++---- Detectors/MUON/MID/Raw/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MID/Raw/exe/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MID/Raw/exe/rawdump.cxx | 9 +++++---- .../include/MIDRaw/ColumnDataToLocalBoard.h | 9 +++++---- .../MUON/MID/Raw/include/MIDRaw/CrateMapper.h | 9 +++++---- .../MUON/MID/Raw/include/MIDRaw/CrateMasks.h | 9 +++++---- .../MID/Raw/include/MIDRaw/CrateParameters.h | 9 +++++---- .../Raw/include/MIDRaw/DecodedDataAggregator.h | 9 +++++---- .../MUON/MID/Raw/include/MIDRaw/Decoder.h | 9 +++++---- .../MID/Raw/include/MIDRaw/ELinkDataShaper.h | 9 +++++---- .../MUON/MID/Raw/include/MIDRaw/ELinkDecoder.h | 9 +++++---- .../MUON/MID/Raw/include/MIDRaw/ELinkManager.h | 9 +++++---- .../MID/Raw/include/MIDRaw/ElectronicsDelay.h | 9 +++++---- .../MUON/MID/Raw/include/MIDRaw/Encoder.h | 9 +++++---- .../MUON/MID/Raw/include/MIDRaw/FEEIdConfig.h | 9 +++++---- .../MID/Raw/include/MIDRaw/GBTOutputHandler.h | 9 +++++---- .../Raw/include/MIDRaw/GBTUserLogicEncoder.h | 9 +++++---- .../MUON/MID/Raw/include/MIDRaw/LinkDecoder.h | 9 +++++---- .../MID/Raw/include/MIDRaw/RawFileReader.h | 9 +++++---- Detectors/MUON/MID/Raw/include/MIDRaw/Utils.h | 9 +++++---- .../MID/Raw/src/ColumnDataToLocalBoard.cxx | 9 +++++---- Detectors/MUON/MID/Raw/src/CrateMapper.cxx | 9 +++++---- Detectors/MUON/MID/Raw/src/CrateMasks.cxx | 9 +++++---- .../MUON/MID/Raw/src/DecodedDataAggregator.cxx | 9 +++++---- Detectors/MUON/MID/Raw/src/Decoder.cxx | 9 +++++---- Detectors/MUON/MID/Raw/src/ELinkDataShaper.cxx | 9 +++++---- Detectors/MUON/MID/Raw/src/ELinkDecoder.cxx | 9 +++++---- Detectors/MUON/MID/Raw/src/ELinkManager.cxx | 9 +++++---- .../MUON/MID/Raw/src/ElectronicsDelay.cxx | 9 +++++---- Detectors/MUON/MID/Raw/src/Encoder.cxx | 9 +++++---- Detectors/MUON/MID/Raw/src/FEEIdConfig.cxx | 9 +++++---- .../MUON/MID/Raw/src/GBTOutputHandler.cxx | 9 +++++---- .../MUON/MID/Raw/src/GBTUserLogicEncoder.cxx | 9 +++++---- Detectors/MUON/MID/Raw/src/LinkDecoder.cxx | 9 +++++---- Detectors/MUON/MID/Raw/src/RawFileReader.cxx | 9 +++++---- Detectors/MUON/MID/Raw/test/CMakeLists.txt | 13 +++++++------ Detectors/MUON/MID/Raw/test/bench_Raw.cxx | 9 +++++---- .../MUON/MID/Raw/test/testCrateMapper.cxx | 9 +++++---- Detectors/MUON/MID/Raw/test/testRaw.cxx | 9 +++++---- Detectors/MUON/MID/Simulation/CMakeLists.txt | 13 +++++++------ .../MIDSimulation/ChamberEfficiencyResponse.h | 9 +++++---- .../include/MIDSimulation/ChamberHV.h | 9 +++++---- .../include/MIDSimulation/ChamberResponse.h | 9 +++++---- .../MIDSimulation/ChamberResponseParams.h | 9 +++++---- .../include/MIDSimulation/ClusterLabeler.h | 9 +++++---- .../include/MIDSimulation/ColumnDataMC.h | 9 +++++---- .../include/MIDSimulation/Detector.h | 9 +++++---- .../include/MIDSimulation/Digitizer.h | 9 +++++---- .../include/MIDSimulation/DigitsMerger.h | 9 +++++---- .../include/MIDSimulation/Geometry.h | 9 +++++---- .../MID/Simulation/include/MIDSimulation/Hit.h | 9 +++++---- .../include/MIDSimulation/MCClusterLabel.h | 9 +++++---- .../Simulation/include/MIDSimulation/MCLabel.h | 9 +++++---- .../include/MIDSimulation/PreClusterLabeler.h | 9 +++++---- .../Simulation/include/MIDSimulation/Stepper.h | 9 +++++---- .../include/MIDSimulation/TrackLabeler.h | 9 +++++---- .../src/ChamberEfficiencyResponse.cxx | 9 +++++---- .../MUON/MID/Simulation/src/ChamberHV.cxx | 9 +++++---- .../MID/Simulation/src/ChamberResponse.cxx | 9 +++++---- .../Simulation/src/ChamberResponseParams.cxx | 9 +++++---- .../MUON/MID/Simulation/src/ClusterLabeler.cxx | 9 +++++---- Detectors/MUON/MID/Simulation/src/Detector.cxx | 9 +++++---- .../MUON/MID/Simulation/src/Digitizer.cxx | 9 +++++---- .../MUON/MID/Simulation/src/DigitsMerger.cxx | 9 +++++---- Detectors/MUON/MID/Simulation/src/Geometry.cxx | 9 +++++---- Detectors/MUON/MID/Simulation/src/Hit.cxx | 9 +++++---- .../MUON/MID/Simulation/src/MCClusterLabel.cxx | 9 +++++---- Detectors/MUON/MID/Simulation/src/MCLabel.cxx | 9 +++++---- .../MID/Simulation/src/MIDSimulationLinkDef.h | 9 +++++---- .../MUON/MID/Simulation/src/Materials.cxx | 9 +++++---- Detectors/MUON/MID/Simulation/src/Materials.h | 9 +++++---- .../MID/Simulation/src/PreClusterLabeler.cxx | 9 +++++---- Detectors/MUON/MID/Simulation/src/Stepper.cxx | 9 +++++---- .../MUON/MID/Simulation/src/TrackLabeler.cxx | 9 +++++---- .../MUON/MID/Simulation/test/CMakeLists.txt | 13 +++++++------ .../MUON/MID/Simulation/test/testGeometry.cxx | 9 +++++---- .../MID/Simulation/test/testSimulation.cxx | 9 +++++---- .../MUON/MID/TestingSimTools/CMakeLists.txt | 13 +++++++------ .../include/MIDTestingSimTools/HitFinder.h | 9 +++++---- .../MIDTestingSimTools/TrackGenerator.h | 9 +++++---- .../MUON/MID/TestingSimTools/src/HitFinder.cxx | 9 +++++---- .../MID/TestingSimTools/src/TrackGenerator.cxx | 9 +++++---- Detectors/MUON/MID/Tracking/CMakeLists.txt | 13 +++++++------ .../MID/Tracking/include/MIDTracking/Tracker.h | 9 +++++---- Detectors/MUON/MID/Tracking/src/Tracker.cxx | 9 +++++---- .../MUON/MID/Tracking/test/CMakeLists.txt | 13 +++++++------ .../MUON/MID/Tracking/test/bench_Tracker.cxx | 9 +++++---- .../MUON/MID/Tracking/test/testTracker.cxx | 9 +++++---- Detectors/MUON/MID/Workflow/CMakeLists.txt | 13 +++++++------ .../include/MIDWorkflow/ClusterizerMCSpec.h | 9 +++++---- .../include/MIDWorkflow/ClusterizerSpec.h | 9 +++++---- .../include/MIDWorkflow/DigitReaderSpec.h | 9 +++++---- .../include/MIDWorkflow/EntropyDecoderSpec.h | 9 +++++---- .../include/MIDWorkflow/EntropyEncoderSpec.h | 9 +++++---- .../include/MIDWorkflow/RawAggregatorSpec.h | 9 +++++---- .../include/MIDWorkflow/RawCheckerSpec.h | 9 +++++---- .../include/MIDWorkflow/RawDecoderSpec.h | 9 +++++---- .../include/MIDWorkflow/RawGBTDecoderSpec.h | 9 +++++---- .../include/MIDWorkflow/RawWriterSpec.h | 9 +++++---- .../include/MIDWorkflow/TrackerMCSpec.h | 9 +++++---- .../Workflow/include/MIDWorkflow/TrackerSpec.h | 9 +++++---- .../include/MIDWorkflow/ZeroSuppressionSpec.h | 9 +++++---- .../MID/Workflow/src/ClusterizerMCSpec.cxx | 9 +++++---- .../MUON/MID/Workflow/src/ClusterizerSpec.cxx | 9 +++++---- .../MUON/MID/Workflow/src/DigitReaderSpec.cxx | 9 +++++---- .../MID/Workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../MID/Workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- .../MID/Workflow/src/RawAggregatorSpec.cxx | 9 +++++---- .../MUON/MID/Workflow/src/RawCheckerSpec.cxx | 9 +++++---- .../MUON/MID/Workflow/src/RawDecoderSpec.cxx | 9 +++++---- .../MID/Workflow/src/RawGBTDecoderSpec.cxx | 9 +++++---- .../MUON/MID/Workflow/src/RawWriterSpec.cxx | 9 +++++---- .../MUON/MID/Workflow/src/TrackerMCSpec.cxx | 9 +++++---- .../MUON/MID/Workflow/src/TrackerSpec.cxx | 9 +++++---- .../MID/Workflow/src/ZeroSuppressionSpec.cxx | 9 +++++---- .../Workflow/src/digits-reader-workflow.cxx | 9 +++++---- .../Workflow/src/digits-to-raw-workflow.cxx | 9 +++++---- .../Workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- .../MID/Workflow/src/raw-checker-workflow.cxx | 9 +++++---- .../Workflow/src/raw-to-digits-workflow.cxx | 9 +++++---- .../MUON/MID/Workflow/src/reco-workflow.cxx | 9 +++++---- Detectors/PHOS/CMakeLists.txt | 13 +++++++------ Detectors/PHOS/base/CMakeLists.txt | 13 +++++++------ .../PHOS/base/include/PHOSBase/Geometry.h | 9 +++++---- Detectors/PHOS/base/include/PHOSBase/Hit.h | 9 +++++---- Detectors/PHOS/base/include/PHOSBase/Mapping.h | 9 +++++---- .../PHOS/base/include/PHOSBase/PHOSSimParams.h | 9 +++++---- .../PHOS/base/include/PHOSBase/RCUTrailer.h | 9 +++++---- Detectors/PHOS/base/src/Geometry.cxx | 9 +++++---- Detectors/PHOS/base/src/Hit.cxx | 9 +++++---- Detectors/PHOS/base/src/Mapping.cxx | 9 +++++---- Detectors/PHOS/base/src/PHOSBaseLinkDef.h | 9 +++++---- Detectors/PHOS/base/src/PHOSSimParams.cxx | 9 +++++---- Detectors/PHOS/base/src/RCUTrailer.cxx | 9 +++++---- Detectors/PHOS/calib/CMakeLists.txt | 13 +++++++------ .../calib/include/PHOSCalib/BadChannelMap.h | 9 +++++---- .../include/PHOSCalibWorkflow/ETCalibHistos.h | 9 +++++---- .../PHOSCalibWorkflow/PHOSEnergyCalibDevice.h | 9 +++++---- .../PHOSCalibWorkflow/PHOSEnergyCalibrator.h | 9 +++++---- .../PHOSHGLGRatioCalibDevice.h | 9 +++++---- .../PHOSPedestalCalibDevice.h | 9 +++++---- .../PHOSRunbyrunCalibDevice.h | 9 +++++---- .../PHOSCalibWorkflow/PHOSRunbyrunCalibrator.h | 9 +++++---- .../PHOSCalibWorkflow/PHOSTurnonCalibDevice.h | 9 +++++---- .../PHOSCalibWorkflow/PHOSTurnonCalibrator.h | 9 +++++---- .../include/PHOSCalibWorkflow/RingBuffer.h | 9 +++++---- .../include/PHOSCalibWorkflow/TurnOnHistos.h | 9 +++++---- .../PHOS/calib/src/PHOSBadMapCalibDevice.cxx | 9 +++++---- .../PHOS/calib/src/PHOSCalibWorkflowLinkDef.h | 9 +++++---- .../PHOS/calib/src/PHOSEnergyCalibDevice.cxx | 9 +++++---- .../PHOS/calib/src/PHOSEnergyCalibrator.cxx | 9 +++++---- .../calib/src/PHOSHGLGRatioCalibDevice.cxx | 9 +++++---- .../PHOS/calib/src/PHOSPedestalCalibDevice.cxx | 9 +++++---- .../PHOS/calib/src/PHOSRunbyrunCalibDevice.cxx | 9 +++++---- .../PHOS/calib/src/PHOSRunbyrunCalibrator.cxx | 9 +++++---- .../PHOS/calib/src/PHOSTurnonCalibDevice.cxx | 9 +++++---- .../PHOS/calib/src/PHOSTurnonCalibrator.cxx | 9 +++++---- Detectors/PHOS/calib/src/TurnOnHistos.cxx | 9 +++++---- .../PHOS/calib/src/phos-calib-workflow.cxx | 9 +++++---- Detectors/PHOS/reconstruction/CMakeLists.txt | 15 ++++++++------- .../include/PHOSReconstruction/AltroDecoder.h | 9 +++++---- .../include/PHOSReconstruction/CTFCoder.h | 9 +++++---- .../include/PHOSReconstruction/CTFHelper.h | 9 +++++---- .../include/PHOSReconstruction/CaloRawFitter.h | 9 +++++---- .../PHOSReconstruction/CaloRawFitterGS.h | 9 +++++---- .../include/PHOSReconstruction/Clusterer.h | 9 +++++---- .../include/PHOSReconstruction/RawBuffer.h | 9 +++++---- .../PHOSReconstruction/RawDecodingError.h | 9 +++++---- .../PHOSReconstruction/RawHeaderStream.h | 9 +++++---- .../include/PHOSReconstruction/RawPayload.h | 9 +++++---- .../PHOSReconstruction/RawReaderError.h | 9 +++++---- .../PHOSReconstruction/RawReaderMemory.h | 9 +++++---- .../PHOS/reconstruction/src/AltroDecoder.cxx | 9 +++++---- Detectors/PHOS/reconstruction/src/CTFCoder.cxx | 9 +++++---- .../PHOS/reconstruction/src/CTFHelper.cxx | 9 +++++---- .../PHOS/reconstruction/src/CaloRawFitter.cxx | 9 +++++---- .../reconstruction/src/CaloRawFitterGS.cxx | 9 +++++---- .../PHOS/reconstruction/src/Clusterer.cxx | 9 +++++---- .../src/PHOSReconstructionLinkDef.h | 9 +++++---- .../PHOS/reconstruction/src/RawBuffer.cxx | 9 +++++---- .../reconstruction/src/RawHeaderStream.cxx | 9 +++++---- .../PHOS/reconstruction/src/RawPayload.cxx | 9 +++++---- .../reconstruction/src/RawReaderMemory.cxx | 9 +++++---- Detectors/PHOS/simulation/CMakeLists.txt | 15 ++++++++------- .../include/PHOSSimulation/Detector.h | 9 +++++---- .../include/PHOSSimulation/Digitizer.h | 9 +++++---- .../include/PHOSSimulation/GeometryParams.h | 9 +++++---- .../include/PHOSSimulation/RawWriter.h | 9 +++++---- Detectors/PHOS/simulation/src/Detector.cxx | 9 +++++---- Detectors/PHOS/simulation/src/Digitizer.cxx | 9 +++++---- .../PHOS/simulation/src/GeometryParams.cxx | 9 +++++---- .../simulation/src/PHOSSimulationLinkDef.h | 9 +++++---- Detectors/PHOS/simulation/src/RawCreator.cxx | 9 +++++---- Detectors/PHOS/simulation/src/RawWriter.cxx | 9 +++++---- Detectors/PHOS/testsimulation/CMakeLists.txt | 15 ++++++++------- Detectors/PHOS/workflow/CMakeLists.txt | 9 +++++---- .../include/PHOSWorkflow/CellConverterSpec.h | 9 +++++---- .../include/PHOSWorkflow/ClusterizerSpec.h | 9 +++++---- .../include/PHOSWorkflow/DigitsPrinterSpec.h | 9 +++++---- .../include/PHOSWorkflow/EntropyDecoderSpec.h | 9 +++++---- .../include/PHOSWorkflow/EntropyEncoderSpec.h | 9 +++++---- .../PHOSWorkflow/RawToCellConverterSpec.h | 9 +++++---- .../include/PHOSWorkflow/RawWriterSpec.h | 9 +++++---- .../workflow/include/PHOSWorkflow/ReaderSpec.h | 9 +++++---- .../include/PHOSWorkflow/RecoWorkflow.h | 9 +++++---- .../workflow/include/PHOSWorkflow/WriterSpec.h | 9 +++++---- .../PHOS/workflow/src/CellConverterSpec.cxx | 9 +++++---- .../PHOS/workflow/src/ClusterizerSpec.cxx | 9 +++++---- .../PHOS/workflow/src/DigitsPrinterSpec.cxx | 9 +++++---- .../PHOS/workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../PHOS/workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- .../workflow/src/RawToCellConverterSpec.cxx | 9 +++++---- Detectors/PHOS/workflow/src/RawWriterSpec.cxx | 9 +++++---- Detectors/PHOS/workflow/src/ReaderSpec.cxx | 9 +++++---- Detectors/PHOS/workflow/src/RecoWorkflow.cxx | 9 +++++---- Detectors/PHOS/workflow/src/WriterSpec.cxx | 9 +++++---- .../workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- .../PHOS/workflow/src/phos-reco-workflow.cxx | 9 +++++---- Detectors/Passive/CMakeLists.txt | 13 +++++++------ .../include/DetectorsPassive/Absorber.h | 9 +++++---- .../Passive/include/DetectorsPassive/Cave.h | 9 +++++---- .../include/DetectorsPassive/Compensator.h | 9 +++++---- .../Passive/include/DetectorsPassive/Dipole.h | 9 +++++---- .../include/DetectorsPassive/FrameStructure.h | 9 +++++---- .../Passive/include/DetectorsPassive/Hall.h | 9 +++++---- .../include/DetectorsPassive/HallSimParam.h | 9 +++++---- .../Passive/include/DetectorsPassive/Magnet.h | 9 +++++---- .../include/DetectorsPassive/PassiveBase.h | 9 +++++---- .../include/DetectorsPassive/PassiveContFact.h | 9 +++++---- .../Passive/include/DetectorsPassive/Pipe.h | 9 +++++---- .../Passive/include/DetectorsPassive/Shil.h | 9 +++++---- Detectors/Passive/src/Absorber.cxx | 9 +++++---- Detectors/Passive/src/Cave.cxx | 9 +++++---- Detectors/Passive/src/Compensator.cxx | 9 +++++---- Detectors/Passive/src/Dipole.cxx | 9 +++++---- Detectors/Passive/src/FrameStructure.cxx | 9 +++++---- Detectors/Passive/src/Hall.cxx | 9 +++++---- Detectors/Passive/src/HallSimParam.cxx | 9 +++++---- Detectors/Passive/src/Magnet.cxx | 9 +++++---- Detectors/Passive/src/PassiveBase.cxx | 9 +++++---- Detectors/Passive/src/PassiveContFact.cxx | 9 +++++---- Detectors/Passive/src/PassiveLinkDef.h | 9 +++++---- Detectors/Passive/src/Pipe.cxx | 9 +++++---- Detectors/Passive/src/Shil.cxx | 9 +++++---- Detectors/Raw/CMakeLists.txt | 13 +++++++------ Detectors/Raw/include/DetectorsRaw/HBFUtils.h | 9 +++++---- .../include/DetectorsRaw/HBFUtilsInitializer.h | 9 +++++---- Detectors/Raw/include/DetectorsRaw/RDHUtils.h | 9 +++++---- .../Raw/include/DetectorsRaw/RawFileReader.h | 9 +++++---- .../Raw/include/DetectorsRaw/RawFileWriter.h | 9 +++++---- .../Raw/include/DetectorsRaw/SimpleRawReader.h | 9 +++++---- Detectors/Raw/include/DetectorsRaw/SimpleSTF.h | 9 +++++---- Detectors/Raw/src/DetectorsRawLinkDef.h | 9 +++++---- Detectors/Raw/src/HBFUtils.cxx | 9 +++++---- Detectors/Raw/src/HBFUtilsInitializer.cxx | 9 +++++---- Detectors/Raw/src/RDHUtils.cxx | 9 +++++---- Detectors/Raw/src/RawFileReader.cxx | 9 +++++---- Detectors/Raw/src/RawFileReaderWorkflow.cxx | 9 +++++---- Detectors/Raw/src/RawFileReaderWorkflow.h | 9 +++++---- Detectors/Raw/src/RawFileWriter.cxx | 9 +++++---- Detectors/Raw/src/SimpleRawReader.cxx | 9 +++++---- Detectors/Raw/src/SimpleSTF.cxx | 9 +++++---- Detectors/Raw/src/rawfile-reader-workflow.cxx | 9 +++++---- Detectors/Raw/src/rawfileCheck.cxx | 9 +++++---- Detectors/Raw/src/rawfileSplit.cxx | 9 +++++---- Detectors/Raw/test/testHBFUtils.cxx | 9 +++++---- Detectors/Raw/test/testRawReaderWriter.cxx | 9 +++++---- Detectors/TOF/CMakeLists.txt | 13 +++++++------ Detectors/TOF/base/CMakeLists.txt | 13 +++++++------ Detectors/TOF/base/include/TOFBase/Digit.h | 9 +++++---- Detectors/TOF/base/include/TOFBase/Geo.h | 9 +++++---- Detectors/TOF/base/include/TOFBase/Strip.h | 9 +++++---- .../TOF/base/include/TOFBase/WindowFiller.h | 9 +++++---- Detectors/TOF/base/src/CableLength.cxx | 9 +++++---- Detectors/TOF/base/src/Digit.cxx | 9 +++++---- Detectors/TOF/base/src/Geo.cxx | 9 +++++---- Detectors/TOF/base/src/Mapping.cxx | 9 +++++---- Detectors/TOF/base/src/Strip.cxx | 9 +++++---- Detectors/TOF/base/src/TOFBaseLinkDef.h | 9 +++++---- Detectors/TOF/base/src/WindowFiller.cxx | 9 +++++---- Detectors/TOF/base/test/testTOFIndex.cxx | 9 +++++---- Detectors/TOF/calibration/CMakeLists.txt | 13 +++++++------ .../include/TOFCalibration/CalibTOF.h | 9 +++++---- .../include/TOFCalibration/CalibTOFapi.h | 9 +++++---- .../TOFCalibration/CollectCalibInfoTOF.h | 9 +++++---- .../TOFCalibration/LHCClockCalibrator.h | 9 +++++---- .../include/TOFCalibration/TOFCalibCollector.h | 9 +++++---- .../TOFCalibration/TOFChannelCalibrator.h | 9 +++++---- .../include/TOFCalibration/TOFDCSProcessor.h | 9 +++++---- .../include/TOFCalibration/TOFFEElightConfig.h | 9 +++++---- .../include/TOFCalibration/TOFFEElightReader.h | 9 +++++---- .../TOF/calibration/macros/CMakeLists.txt | 13 +++++++------ .../macros/makeTOFCCDBEntryForDCS.C | 9 +++++---- .../TOF/calibration/macros/readTOFDCSentries.C | 9 +++++---- Detectors/TOF/calibration/src/CalibTOF.cxx | 9 +++++---- Detectors/TOF/calibration/src/CalibTOFapi.cxx | 9 +++++---- .../calibration/src/CollectCalibInfoTOF.cxx | 9 +++++---- .../TOF/calibration/src/LHCClockCalibrator.cxx | 9 +++++---- .../TOF/calibration/src/TOFCalibCollector.cxx | 9 +++++---- .../calibration/src/TOFCalibrationLinkDef.h | 9 +++++---- .../calibration/src/TOFChannelCalibrator.cxx | 9 +++++---- .../TOF/calibration/src/TOFDCSProcessor.cxx | 9 +++++---- .../TOF/calibration/src/TOFFEElightConfig.cxx | 9 +++++---- .../TOF/calibration/src/TOFFEElightReader.cxx | 9 +++++---- .../testWorkflow/DataGeneratorSpec.h | 9 +++++---- .../testWorkflow/LHCClockCalibratorSpec.h | 9 +++++---- .../testWorkflow/TOFCalibCollectorSpec.h | 9 +++++---- .../testWorkflow/TOFCalibCollectorWriterSpec.h | 9 +++++---- .../testWorkflow/TOFChannelCalibratorSpec.h | 9 +++++---- .../testWorkflow/TOFDCSConfigProcessorSpec.h | 9 +++++---- .../testWorkflow/TOFDCSDataProcessorSpec.h | 9 +++++---- .../testWorkflow/data-generator-workflow.cxx | 9 +++++---- .../testWorkflow/lhc-clockphase-workflow.cxx | 9 +++++---- .../testWorkflow/tof-calib-workflow.cxx | 9 +++++---- .../tof-channel-calib-workflow.cxx | 9 +++++---- .../tof-collect-calib-workflow.cxx | 9 +++++---- .../tof-dcs-config-processor-workflow.cxx | 9 +++++---- .../testWorkflow/tof-dcs-data-workflow.cxx | 9 +++++---- .../testWorkflow/tof-dcs-sim-workflow.cxx | 9 +++++---- .../testWorkflow/tof-dummy-ccdb-for-calib.cxx | 9 +++++---- Detectors/TOF/compression/CMakeLists.txt | 13 +++++++------ .../include/TOFCompression/Compressor.h | 9 +++++---- .../include/TOFCompression/CompressorTask.h | 9 +++++---- Detectors/TOF/compression/src/Compressor.cxx | 9 +++++---- .../TOF/compression/src/CompressorTask.cxx | 9 +++++---- .../src/tof-compressed-analysis.cxx | 9 +++++---- .../src/tof-compressed-inspector.cxx | 9 +++++---- .../TOF/compression/src/tof-compressor.cxx | 9 +++++---- Detectors/TOF/prototyping/CMakeLists.txt | 13 +++++++------ Detectors/TOF/prototyping/drawTOFgeometry.C | 9 +++++---- Detectors/TOF/reconstruction/CMakeLists.txt | 13 +++++++------ .../include/TOFReconstruction/CTFCoder.h | 9 +++++---- .../include/TOFReconstruction/Clusterer.h | 9 +++++---- .../include/TOFReconstruction/ClustererTask.h | 9 +++++---- .../TOFReconstruction/CosmicProcessor.h | 9 +++++---- .../include/TOFReconstruction/DataReader.h | 9 +++++---- .../include/TOFReconstruction/Decoder.h | 9 +++++---- .../include/TOFReconstruction/DecoderBase.h | 9 +++++---- .../include/TOFReconstruction/Encoder.h | 9 +++++---- Detectors/TOF/reconstruction/src/CTFCoder.cxx | 9 +++++---- Detectors/TOF/reconstruction/src/Clusterer.cxx | 9 +++++---- .../TOF/reconstruction/src/ClustererTask.cxx | 9 +++++---- .../TOF/reconstruction/src/CosmicProcessor.cxx | 9 +++++---- .../TOF/reconstruction/src/DataReader.cxx | 9 +++++---- Detectors/TOF/reconstruction/src/Decoder.cxx | 9 +++++---- .../TOF/reconstruction/src/DecoderBase.cxx | 9 +++++---- Detectors/TOF/reconstruction/src/Encoder.cxx | 9 +++++---- .../src/TOFReconstructionLinkDef.h | 9 +++++---- Detectors/TOF/simulation/CMakeLists.txt | 13 +++++++------ .../include/TOFSimulation/Detector.h | 9 +++++---- .../include/TOFSimulation/Digitizer.h | 9 +++++---- .../include/TOFSimulation/DigitizerTask.h | 9 +++++---- .../simulation/include/TOFSimulation/MCLabel.h | 9 +++++---- .../include/TOFSimulation/TOFSimParams.h | 9 +++++---- Detectors/TOF/simulation/src/Detector.cxx | 9 +++++---- Detectors/TOF/simulation/src/Digitizer.cxx | 9 +++++---- Detectors/TOF/simulation/src/DigitizerTask.cxx | 9 +++++---- Detectors/TOF/simulation/src/TOFSimParams.cxx | 9 +++++---- .../TOF/simulation/src/TOFSimulationLinkDef.h | 9 +++++---- Detectors/TOF/simulation/src/digi2raw.cxx | 9 +++++---- Detectors/TOF/workflow/CMakeLists.txt | 13 +++++++------ .../TOFWorkflowUtils/CompressedAnalysis.h | 9 +++++---- .../TOFWorkflowUtils/CompressedAnalysisTask.h | 9 +++++---- .../TOFWorkflowUtils/CompressedDecodingTask.h | 9 +++++---- .../TOFWorkflowUtils/CompressedInspectorTask.h | 9 +++++---- .../TOFWorkflowUtils/EntropyDecoderSpec.h | 9 +++++---- .../TOFWorkflowUtils/EntropyEncoderSpec.h | 9 +++++---- .../TOFWorkflowUtils/TOFClusterizerSpec.h | 9 +++++---- .../workflow/src/CompressedAnalysisTask.cxx | 9 +++++---- .../workflow/src/CompressedDecodingTask.cxx | 9 +++++---- .../workflow/src/CompressedInspectorTask.cxx | 9 +++++---- .../TOF/workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../TOF/workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- .../TOF/workflow/src/TOFClusterizerSpec.cxx | 9 +++++---- Detectors/TOF/workflow/src/cluscal-reader.cxx | 9 +++++---- Detectors/TOF/workflow/src/cluster-calib.cxx | 9 +++++---- .../src/cluster-writer-commissioning.cxx | 9 +++++---- .../src/digit-writer-commissioning.cxx | 9 +++++---- .../workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- Detectors/TOF/workflow/src/file-proxy.cxx | 9 +++++---- Detectors/TOF/workflowIO/CMakeLists.txt | 13 +++++++------ .../TOFWorkflowIO/CalibClusReaderSpec.h | 9 +++++---- .../TOFWorkflowIO/CalibInfoReaderSpec.h | 9 +++++---- .../include/TOFWorkflowIO/ClusterReaderSpec.h | 9 +++++---- .../include/TOFWorkflowIO/DigitReaderSpec.h | 9 +++++---- .../TOFWorkflowIO/TOFCalClusInfoWriterSpec.h | 9 +++++---- .../include/TOFWorkflowIO/TOFCalibWriterSpec.h | 9 +++++---- .../TOFWorkflowIO/TOFClusterWriterSpec.h | 9 +++++---- .../TOFClusterWriterSplitterSpec.h | 9 +++++---- .../include/TOFWorkflowIO/TOFDigitWriterSpec.h | 9 +++++---- .../TOFWorkflowIO/TOFDigitWriterSplitterSpec.h | 9 +++++---- .../TOFWorkflowIO/TOFMatchedReaderSpec.h | 9 +++++---- .../TOFWorkflowIO/TOFMatchedWriterSpec.h | 9 +++++---- .../include/TOFWorkflowIO/TOFRawWriterSpec.h | 9 +++++---- .../TOF/workflowIO/src/CalibClusReaderSpec.cxx | 9 +++++---- .../TOF/workflowIO/src/CalibInfoReaderSpec.cxx | 9 +++++---- .../TOF/workflowIO/src/ClusterReaderSpec.cxx | 9 +++++---- .../TOF/workflowIO/src/DigitReaderSpec.cxx | 9 +++++---- .../src/TOFCalClusInfoWriterSpec.cxx | 9 +++++---- .../TOF/workflowIO/src/TOFCalibWriterSpec.cxx | 9 +++++---- .../workflowIO/src/TOFClusterWriterSpec.cxx | 9 +++++---- .../TOF/workflowIO/src/TOFDigitWriterSpec.cxx | 9 +++++---- .../workflowIO/src/TOFMatchedReaderSpec.cxx | 9 +++++---- .../workflowIO/src/TOFMatchedWriterSpec.cxx | 9 +++++---- .../TOF/workflowIO/src/TOFRawWriterSpec.cxx | 9 +++++---- Detectors/TPC/CMakeLists.txt | 13 +++++++------ Detectors/TPC/base/CMakeLists.txt | 13 +++++++------ .../TPC/base/include/TPCBase/CDBInterface.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/CRU.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/CalArray.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/CalDet.h | 9 +++++---- .../base/include/TPCBase/ContainerFactory.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/DigitPos.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/FECInfo.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/Mapper.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/ModelGEM.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/PadInfo.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/PadPos.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/PadROCPos.h | 9 +++++---- .../TPC/base/include/TPCBase/PadRegionInfo.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/PadSecPos.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/Painter.h | 9 +++++---- .../base/include/TPCBase/ParameterDetector.h | 9 +++++---- .../include/TPCBase/ParameterElectronics.h | 9 +++++---- .../TPC/base/include/TPCBase/ParameterGEM.h | 9 +++++---- .../TPC/base/include/TPCBase/ParameterGas.h | 9 +++++---- .../TPC/base/include/TPCBase/PartitionInfo.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/RDHUtils.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/ROC.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/Sector.h | 9 +++++---- Detectors/TPC/base/include/TPCBase/Utils.h | 9 +++++---- .../TPC/base/include/TPCBase/ZeroSuppress.h | 9 +++++---- Detectors/TPC/base/src/CDBInterface.cxx | 9 +++++---- Detectors/TPC/base/src/CRU.cxx | 9 +++++---- Detectors/TPC/base/src/CalArray.cxx | 9 +++++---- Detectors/TPC/base/src/CalDet.cxx | 9 +++++---- Detectors/TPC/base/src/ContainerFactory.cxx | 9 +++++---- Detectors/TPC/base/src/DigitPos.cxx | 9 +++++---- Detectors/TPC/base/src/FECInfo.cxx | 9 +++++---- Detectors/TPC/base/src/Mapper.cxx | 9 +++++---- Detectors/TPC/base/src/ModelGEM.cxx | 9 +++++---- Detectors/TPC/base/src/PadInfo.cxx | 9 +++++---- Detectors/TPC/base/src/PadPos.cxx | 9 +++++---- Detectors/TPC/base/src/PadROCPos.cxx | 9 +++++---- Detectors/TPC/base/src/PadRegionInfo.cxx | 9 +++++---- Detectors/TPC/base/src/PadSecPos.cxx | 9 +++++---- Detectors/TPC/base/src/Painter.cxx | 9 +++++---- Detectors/TPC/base/src/ParameterDetector.cxx | 9 +++++---- .../TPC/base/src/ParameterElectronics.cxx | 9 +++++---- Detectors/TPC/base/src/ParameterGEM.cxx | 9 +++++---- Detectors/TPC/base/src/ParameterGas.cxx | 9 +++++---- Detectors/TPC/base/src/PartitionInfo.cxx | 9 +++++---- Detectors/TPC/base/src/ROC.cxx | 9 +++++---- Detectors/TPC/base/src/Sector.cxx | 9 +++++---- Detectors/TPC/base/src/TPCBaseLinkDef.h | 9 +++++---- Detectors/TPC/base/src/Utils.cxx | 9 +++++---- Detectors/TPC/base/src/ZeroSuppress.cxx | 9 +++++---- Detectors/TPC/base/test/testRDHUtils.cxx | 9 +++++---- Detectors/TPC/base/test/testTPCBase.cxx | 9 +++++---- .../TPC/base/test/testTPCCDBInterface.cxx | 9 +++++---- Detectors/TPC/base/test/testTPCCalDet.cxx | 9 +++++---- Detectors/TPC/base/test/testTPCMapper.cxx | 9 +++++---- Detectors/TPC/base/test/testTPCParameters.cxx | 9 +++++---- Detectors/TPC/calibration/CMakeLists.txt | 13 +++++++------ .../TPC/calibration/SpacePoints/CMakeLists.txt | 13 +++++++------ .../SpacePoints/SpacePointsCalibParam.h | 9 +++++---- .../include/SpacePoints/TrackInterpolation.h | 9 +++++---- .../include/SpacePoints/TrackResiduals.h | 9 +++++---- .../SpacePoints/src/SpacePointCalibLinkDef.h | 9 +++++---- .../SpacePoints/src/SpacePointsCalibParam.cxx | 9 +++++---- .../SpacePoints/src/TrackInterpolation.cxx | 9 +++++---- .../SpacePoints/src/TrackResiduals.cxx | 9 +++++---- .../TPCCalibration/CalibPadGainTracks.h | 9 +++++---- .../include/TPCCalibration/CalibPedestal.h | 9 +++++---- .../TPCCalibration/CalibPedestalParam.h | 9 +++++---- .../include/TPCCalibration/CalibPulser.h | 9 +++++---- .../include/TPCCalibration/CalibPulserParam.h | 9 +++++---- .../include/TPCCalibration/CalibRawBase.h | 9 +++++---- .../include/TPCCalibration/CalibTreeDump.h | 9 +++++---- .../include/TPCCalibration/DigitDump.h | 9 +++++---- .../include/TPCCalibration/DigitDumpParam.h | 9 +++++---- .../include/TPCCalibration/FastHisto.h | 9 +++++---- .../include/TPCCalibration/IDCAverageGroup.h | 9 +++++---- .../include/TPCCalibration/IDCCCDBHelper.h | 9 +++++---- .../include/TPCCalibration/IDCContainer.h | 9 +++++---- .../include/TPCCalibration/IDCFactorization.h | 9 +++++---- .../TPCCalibration/IDCFourierTransform.h | 9 +++++---- .../include/TPCCalibration/IDCGroup.h | 9 +++++---- .../TPCCalibration/IDCGroupHelperRegion.h | 9 +++++---- .../TPCCalibration/IDCGroupHelperSector.h | 9 +++++---- .../TPCCalibration/IDCGroupingParameter.h | 9 +++++---- .../include/TPCCalibration/RobustAverage.h | 9 +++++---- .../macro/comparePedestalsAndNoise.C | 9 +++++---- .../calibration/macro/drawNoiseAndPedestal.C | 9 +++++---- Detectors/TPC/calibration/macro/drawPulser.C | 9 +++++---- Detectors/TPC/calibration/macro/dumpDigits.C | 9 +++++---- .../TPC/calibration/macro/extractGainMap.C | 9 +++++---- .../calibration/macro/mergeNoiseAndPedestal.C | 9 +++++---- .../calibration/macro/preparePedestalFiles.C | 9 +++++---- Detectors/TPC/calibration/macro/runPedestal.C | 9 +++++---- Detectors/TPC/calibration/macro/runPulser.C | 9 +++++---- .../TPC/calibration/src/CalibPadGainTracks.cxx | 9 +++++---- .../TPC/calibration/src/CalibPedestal.cxx | 9 +++++---- .../TPC/calibration/src/CalibPedestalParam.cxx | 9 +++++---- Detectors/TPC/calibration/src/CalibPulser.cxx | 9 +++++---- .../TPC/calibration/src/CalibPulserParam.cxx | 9 +++++---- Detectors/TPC/calibration/src/CalibRawBase.cxx | 9 +++++---- .../TPC/calibration/src/CalibTreeDump.cxx | 9 +++++---- Detectors/TPC/calibration/src/DigitDump.cxx | 9 +++++---- .../TPC/calibration/src/DigitDumpParam.cxx | 9 +++++---- .../TPC/calibration/src/IDCAverageGroup.cxx | 9 +++++---- .../TPC/calibration/src/IDCCCDBHelper.cxx | 9 +++++---- .../TPC/calibration/src/IDCFactorization.cxx | 9 +++++---- .../calibration/src/IDCFourierTransform.cxx | 9 +++++---- Detectors/TPC/calibration/src/IDCGroup.cxx | 9 +++++---- .../calibration/src/IDCGroupHelperRegion.cxx | 9 +++++---- .../calibration/src/IDCGroupingParameter.cxx | 9 +++++---- .../TPC/calibration/src/RobustAverage.cxx | 9 +++++---- .../calibration/src/TPCCalibrationLinkDef.h | 9 +++++---- .../test/testO2TPCIDCFourierTransform.cxx | 9 +++++---- Detectors/TPC/monitor/CMakeLists.txt | 13 +++++++------ .../include/TPCMonitor/SimpleEventDisplay.h | 9 +++++---- Detectors/TPC/monitor/macro/RunCompareMode3.C | 9 +++++---- Detectors/TPC/monitor/macro/RunFindAdcError.C | 9 +++++---- .../TPC/monitor/macro/RunSimpleEventDisplay.C | 9 +++++---- Detectors/TPC/monitor/run/runMonitor.cxx | 9 +++++---- .../TPC/monitor/src/SimpleEventDisplay.cxx | 9 +++++---- Detectors/TPC/monitor/src/TPCMonitorLinkDef.h | 9 +++++---- Detectors/TPC/qc/CMakeLists.txt | 13 +++++++------ Detectors/TPC/qc/include/TPCQC/CalPadWrapper.h | 9 +++++---- Detectors/TPC/qc/include/TPCQC/Clusters.h | 9 +++++---- Detectors/TPC/qc/include/TPCQC/Helpers.h | 9 +++++---- Detectors/TPC/qc/include/TPCQC/PID.h | 9 +++++---- Detectors/TPC/qc/include/TPCQC/TrackCuts.h | 9 +++++---- Detectors/TPC/qc/include/TPCQC/Tracking.h | 9 +++++---- Detectors/TPC/qc/include/TPCQC/Tracks.h | 9 +++++---- Detectors/TPC/qc/macro/runClusters.C | 9 +++++---- Detectors/TPC/qc/macro/runPID.C | 9 +++++---- Detectors/TPC/qc/macro/runTracks.C | 9 +++++---- Detectors/TPC/qc/src/Clusters.cxx | 9 +++++---- Detectors/TPC/qc/src/Helpers.cxx | 9 +++++---- Detectors/TPC/qc/src/PID.cxx | 9 +++++---- Detectors/TPC/qc/src/TPCQCLinkDef.h | 9 +++++---- Detectors/TPC/qc/src/TrackCuts.cxx | 9 +++++---- Detectors/TPC/qc/src/Tracking.cxx | 9 +++++---- Detectors/TPC/qc/src/Tracks.cxx | 9 +++++---- Detectors/TPC/qc/test/test_Clusters.cxx | 9 +++++---- Detectors/TPC/qc/test/test_PID.cxx | 9 +++++---- Detectors/TPC/qc/test/test_TrackCuts.cxx | 9 +++++---- Detectors/TPC/qc/test/test_Tracks.cxx | 9 +++++---- Detectors/TPC/reconstruction/CMakeLists.txt | 13 +++++++------ .../TPCReconstruction/AdcClockMonitor.h | 9 +++++---- .../include/TPCReconstruction/CTFCoder.h | 9 +++++---- .../TPCReconstruction/ClusterContainer.h | 9 +++++---- .../include/TPCReconstruction/Clusterer.h | 9 +++++---- .../include/TPCReconstruction/ClustererTask.h | 9 +++++---- .../DigitalCurrentClusterIntegrator.h | 9 +++++---- .../include/TPCReconstruction/GBTFrame.h | 9 +++++---- .../TPCReconstruction/GBTFrameContainer.h | 9 +++++---- .../include/TPCReconstruction/HalfSAMPAData.h | 9 +++++---- .../TPCReconstruction/HardwareClusterDecoder.h | 9 +++++---- .../include/TPCReconstruction/HwClusterer.h | 9 +++++---- .../TPCReconstruction/HwClustererParam.h | 9 +++++---- .../TPCReconstruction/KrBoxClusterFinder.h | 9 +++++---- .../KrBoxClusterFinderParam.h | 9 +++++---- .../include/TPCReconstruction/KrCluster.h | 9 +++++---- .../TPCReconstruction/RawProcessingHelpers.h | 9 +++++---- .../include/TPCReconstruction/RawReader.h | 9 +++++---- .../include/TPCReconstruction/RawReaderCRU.h | 9 +++++---- .../TPCReconstruction/RawReaderEventSync.h | 9 +++++---- .../TPCReconstruction/SyncPatternMonitor.h | 9 +++++---- .../TPCFastTransformHelperO2.h | 9 +++++---- .../TPCTrackingDigitsPreCheck.h | 9 +++++---- .../TPC/reconstruction/macro/addInclude.C | 9 +++++---- .../macro/createTPCSpaceChargeCorrection.C | 9 +++++---- .../reconstruction/macro/findKrBoxCluster.C | 9 +++++---- .../macro/getTPCTransformationExample.C | 9 +++++---- .../TPC/reconstruction/macro/readClusters.C | 9 +++++---- .../TPC/reconstruction/macro/testRawRead.C | 9 +++++---- .../TPC/reconstruction/run/rawReaderCRU.cxx | 9 +++++---- .../TPC/reconstruction/run/readGBTFrames.cxx | 9 +++++---- .../TPC/reconstruction/run/readRawData.cxx | 9 +++++---- .../TPC/reconstruction/src/AdcClockMonitor.cxx | 9 +++++---- Detectors/TPC/reconstruction/src/CTFCoder.cxx | 9 +++++---- .../TPC/reconstruction/src/ClustererTask.cxx | 9 +++++---- .../src/DigitalCurrentClusterIntegrator.cxx | 9 +++++---- Detectors/TPC/reconstruction/src/GBTFrame.cxx | 9 +++++---- .../reconstruction/src/GBTFrameContainer.cxx | 9 +++++---- .../TPC/reconstruction/src/HalfSAMPAData.cxx | 9 +++++---- .../src/HardwareClusterDecoder.cxx | 9 +++++---- .../TPC/reconstruction/src/HwClusterer.cxx | 9 +++++---- .../reconstruction/src/HwClustererParam.cxx | 9 +++++---- .../reconstruction/src/KrBoxClusterFinder.cxx | 9 +++++---- .../src/KrBoxClusterFinderParam.cxx | 9 +++++---- .../src/RawProcessingHelpers.cxx | 9 +++++---- Detectors/TPC/reconstruction/src/RawReader.cxx | 9 +++++---- .../TPC/reconstruction/src/RawReaderCRU.cxx | 9 +++++---- .../reconstruction/src/RawReaderEventSync.cxx | 9 +++++---- .../reconstruction/src/SyncPatternMonitor.cxx | 9 +++++---- .../src/TPCFastTransformHelperO2.cxx | 9 +++++---- .../src/TPCReconstructionLinkDef.h | 9 +++++---- .../src/TPCTrackingDigitsPreCheck.cxx | 9 +++++---- .../reconstruction/test/testGPUCATracking.cxx | 9 +++++---- .../test/testTPCAdcClockMonitor.cxx | 9 +++++---- .../test/testTPCFastTransform.cxx | 9 +++++---- .../reconstruction/test/testTPCHwClusterer.cxx | 9 +++++---- .../test/testTPCSyncPatternMonitor.cxx | 9 +++++---- Detectors/TPC/simulation/CMakeLists.txt | 13 +++++++------ .../include/TPCSimulation/CommonMode.h | 9 +++++---- .../include/TPCSimulation/Detector.h | 9 +++++---- .../include/TPCSimulation/DigitContainer.h | 9 +++++---- .../include/TPCSimulation/DigitGlobalPad.h | 9 +++++---- .../include/TPCSimulation/DigitMCMetaData.h | 9 +++++---- .../include/TPCSimulation/DigitTime.h | 9 +++++---- .../include/TPCSimulation/Digitizer.h | 9 +++++---- .../include/TPCSimulation/ElectronTransport.h | 9 +++++---- .../include/TPCSimulation/GEMAmplification.h | 9 +++++---- .../simulation/include/TPCSimulation/IDCSim.h | 9 +++++---- .../include/TPCSimulation/PadResponse.h | 9 +++++---- .../simulation/include/TPCSimulation/Point.h | 9 +++++---- .../include/TPCSimulation/SAMPAProcessing.h | 9 +++++---- .../TPC/simulation/macro/laserTrackGenerator.C | 9 +++++---- Detectors/TPC/simulation/macro/readMCtruth.C | 9 +++++---- Detectors/TPC/simulation/src/CommonMode.cxx | 9 +++++---- Detectors/TPC/simulation/src/Detector.cxx | 9 +++++---- .../TPC/simulation/src/DigitContainer.cxx | 9 +++++---- .../TPC/simulation/src/DigitGlobalPad.cxx | 9 +++++---- .../TPC/simulation/src/DigitMCMetaData.cxx | 9 +++++---- Detectors/TPC/simulation/src/DigitTime.cxx | 9 +++++---- Detectors/TPC/simulation/src/Digitizer.cxx | 9 +++++---- .../TPC/simulation/src/ElectronTransport.cxx | 9 +++++---- .../TPC/simulation/src/GEMAmplification.cxx | 9 +++++---- Detectors/TPC/simulation/src/IDCSim.cxx | 9 +++++---- Detectors/TPC/simulation/src/PadResponse.cxx | 9 +++++---- Detectors/TPC/simulation/src/Point.cxx | 9 +++++---- .../TPC/simulation/src/SAMPAProcessing.cxx | 9 +++++---- .../TPC/simulation/src/TPCSimulationLinkDef.h | 9 +++++---- Detectors/TPC/simulation/test/CMakeLists.txt | 13 +++++++------ .../simulation/test/testTPCDigitContainer.cxx | 9 +++++---- .../test/testTPCElectronTransport.cxx | 9 +++++---- .../test/testTPCGEMAmplification.cxx | 9 +++++---- .../simulation/test/testTPCSAMPAProcessing.cxx | 9 +++++---- .../TPC/simulation/test/testTPCSimulation.cxx | 9 +++++---- Detectors/TPC/spacecharge/CMakeLists.txt | 13 +++++++------ .../include/TPCSpaceCharge/DataContainer3D.h | 9 +++++---- .../include/TPCSpaceCharge/PoissonSolver.h | 9 +++++---- .../TPCSpaceCharge/PoissonSolverHelpers.h | 9 +++++---- .../include/TPCSpaceCharge/RegularGrid3D.h | 9 +++++---- .../include/TPCSpaceCharge/SpaceCharge.h | 9 +++++---- .../TPCSpaceCharge/SpaceChargeHelpers.h | 9 +++++---- .../include/TPCSpaceCharge/TriCubic.h | 9 +++++---- .../include/TPCSpaceCharge/Vector.h | 9 +++++---- .../include/TPCSpaceCharge/Vector3D.h | 9 +++++---- .../macro/createResidualDistortionObject.C | 9 +++++---- .../spacecharge/macro/createSCHistosFromHits.C | 9 +++++---- .../TPC/spacecharge/src/PoissonSolver.cxx | 9 +++++---- Detectors/TPC/spacecharge/src/SpaceCharge.cxx | 9 +++++---- .../spacecharge/src/TPCSpacechargeLinkDef.h | 9 +++++---- .../test/testO2TPCPoissonSolver.cxx | 9 +++++---- Detectors/TPC/workflow/CMakeLists.txt | 13 +++++++------ .../TPCWorkflow/CalDetMergerPublisherSpec.h | 9 +++++---- .../TPCWorkflow/CalibProcessingHelper.h | 9 +++++---- .../TPCWorkflow/ClusterDecoderRawSpec.h | 9 +++++---- .../TPCWorkflow/ClusterSharingMapSpec.h | 9 +++++---- .../include/TPCWorkflow/ClustererSpec.h | 9 +++++---- .../include/TPCWorkflow/EntropyDecoderSpec.h | 9 +++++---- .../include/TPCWorkflow/EntropyEncoderSpec.h | 9 +++++---- .../include/TPCWorkflow/KryptonClustererSpec.h | 9 +++++---- .../include/TPCWorkflow/LinkZSToDigitsSpec.h | 9 +++++---- .../include/TPCWorkflow/RawToDigitsSpec.h | 9 +++++---- .../include/TPCWorkflow/RecoWorkflow.h | 9 +++++---- .../TPCWorkflow/TPCAggregateGroupedIDCSpec.h | 9 +++++---- .../TPCWorkflow/TPCAverageGroupIDCSpec.h | 9 +++++---- .../include/TPCWorkflow/TPCCalibPedestalSpec.h | 9 +++++---- .../include/TPCWorkflow/TPCIntegrateIDCSpec.h | 9 +++++---- .../TPC/workflow/include/TPCWorkflow/ZSSpec.h | 9 +++++---- Detectors/TPC/workflow/readers/CMakeLists.txt | 13 +++++++------ .../TPCReaderWorkflow/ClusterReaderSpec.h | 9 +++++---- .../include/TPCReaderWorkflow/PublisherSpec.h | 9 +++++---- .../TPCSectorCompletionPolicy.h | 9 +++++---- .../TPCReaderWorkflow/TrackReaderSpec.h | 9 +++++---- .../workflow/readers/src/ClusterReaderSpec.cxx | 9 +++++---- .../TPC/workflow/readers/src/PublisherSpec.cxx | 9 +++++---- .../workflow/readers/src/TrackReaderSpec.cxx | 9 +++++---- .../workflow/src/CalDetMergerPublisherSpec.cxx | 9 +++++---- .../TPC/workflow/src/CalibProcessingHelper.cxx | 9 +++++---- .../TPC/workflow/src/ChunkedDigitPublisher.cxx | 9 +++++---- .../TPC/workflow/src/ClusterDecoderRawSpec.cxx | 9 +++++---- .../TPC/workflow/src/ClusterSharingMapSpec.cxx | 9 +++++---- Detectors/TPC/workflow/src/ClustererSpec.cxx | 9 +++++---- .../TPC/workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../TPC/workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- .../TPC/workflow/src/FileReaderWorkflow.cxx | 9 +++++---- .../TPC/workflow/src/KryptonClustererSpec.cxx | 9 +++++---- .../TPC/workflow/src/LinkZSToDigitsSpec.cxx | 9 +++++---- Detectors/TPC/workflow/src/RawToDigitsSpec.cxx | 9 +++++---- Detectors/TPC/workflow/src/RecoWorkflow.cxx | 9 +++++---- .../TPC/workflow/src/TrackReaderWorkflow.cxx | 9 +++++---- Detectors/TPC/workflow/src/ZSSpec.cxx | 9 +++++---- .../TPC/workflow/src/convertDigitsToRawZS.cxx | 9 +++++---- .../workflow/src/tpc-aggregate-grouped-idc.cxx | 9 +++++---- .../TPC/workflow/src/tpc-averagegroup-idc.cxx | 9 +++++---- .../TPC/workflow/src/tpc-calib-pedestal.cxx | 9 +++++---- .../TPC/workflow/src/tpc-integrate-idc.cxx | 9 +++++---- .../TPC/workflow/src/tpc-krypton-clusterer.cxx | 9 +++++---- .../src/tpc-raw-to-digits-workflow.cxx | 9 +++++---- .../TPC/workflow/src/tpc-reco-workflow.cxx | 9 +++++---- .../TPC/workflow/test/test_TPCWorkflow.cxx | 9 +++++---- Detectors/TRD/CMakeLists.txt | 13 +++++++------ Detectors/TRD/base/include/TRDBase/CalDet.h | 9 +++++---- .../base/include/TRDBase/CalOnlineGainTables.h | 9 +++++---- Detectors/TRD/base/include/TRDBase/CalPad.h | 9 +++++---- .../TRD/base/include/TRDBase/CalPadStatus.h | 9 +++++---- Detectors/TRD/base/include/TRDBase/CalROC.h | 9 +++++---- .../include/TRDBase/CalSingleChamberStatus.h | 9 +++++---- .../TRD/base/include/TRDBase/Calibrations.h | 9 +++++---- .../base/include/TRDBase/ChamberCalibrations.h | 9 +++++---- .../TRD/base/include/TRDBase/ChamberNoise.h | 9 +++++---- .../TRD/base/include/TRDBase/ChamberStatus.h | 9 +++++---- .../TRD/base/include/TRDBase/CommonParam.h | 9 +++++---- .../TRDBase/DiffAndTimeStructEstimator.h | 9 +++++---- Detectors/TRD/base/include/TRDBase/Digit.h | 9 +++++---- Detectors/TRD/base/include/TRDBase/FeeParam.h | 9 +++++---- Detectors/TRD/base/include/TRDBase/Geometry.h | 9 +++++---- .../TRD/base/include/TRDBase/GeometryBase.h | 9 +++++---- .../TRD/base/include/TRDBase/GeometryFlat.h | 9 +++++---- .../TRD/base/include/TRDBase/LocalGainFactor.h | 9 +++++---- Detectors/TRD/base/include/TRDBase/LocalT0.h | 9 +++++---- .../TRD/base/include/TRDBase/LocalVDrift.h | 9 +++++---- .../TRD/base/include/TRDBase/PadCalibrations.h | 9 +++++---- Detectors/TRD/base/include/TRDBase/PadNoise.h | 9 +++++---- .../TRD/base/include/TRDBase/PadParameters.h | 9 +++++---- Detectors/TRD/base/include/TRDBase/PadPlane.h | 9 +++++---- .../TRD/base/include/TRDBase/PadResponse.h | 9 +++++---- Detectors/TRD/base/include/TRDBase/PadStatus.h | 9 +++++---- Detectors/TRD/base/include/TRDBase/RecoParam.h | 9 +++++---- Detectors/TRD/base/include/TRDBase/SimParam.h | 9 +++++---- Detectors/TRD/base/include/TRDBase/Tracklet.h | 9 +++++---- .../base/include/TRDBase/TrackletTransformer.h | 9 +++++---- Detectors/TRD/base/src/CalDet.cxx | 9 +++++---- Detectors/TRD/base/src/CalOnlineGainTables.cxx | 9 +++++---- Detectors/TRD/base/src/CalPad.cxx | 9 +++++---- Detectors/TRD/base/src/CalPadStatus.cxx | 9 +++++---- Detectors/TRD/base/src/CalROC.cxx | 9 +++++---- .../TRD/base/src/CalSingleChamberStatus.cxx | 9 +++++---- Detectors/TRD/base/src/Calibrations.cxx | 9 +++++---- Detectors/TRD/base/src/ChamberNoise.cxx | 9 +++++---- Detectors/TRD/base/src/ChamberStatus.cxx | 9 +++++---- Detectors/TRD/base/src/CommonParam.cxx | 9 +++++---- .../base/src/DiffAndTimeStructEstimator.cxx | 9 +++++---- Detectors/TRD/base/src/FeeParam.cxx | 9 +++++---- Detectors/TRD/base/src/Geometry.cxx | 9 +++++---- Detectors/TRD/base/src/GeometryBase.cxx | 9 +++++---- Detectors/TRD/base/src/GeometryFlat.cxx | 9 +++++---- Detectors/TRD/base/src/LocalGainFactor.cxx | 9 +++++---- Detectors/TRD/base/src/LocalT0.cxx | 9 +++++---- Detectors/TRD/base/src/LocalVDrift.cxx | 9 +++++---- Detectors/TRD/base/src/PadNoise.cxx | 9 +++++---- Detectors/TRD/base/src/PadPlane.cxx | 9 +++++---- Detectors/TRD/base/src/PadResponse.cxx | 9 +++++---- Detectors/TRD/base/src/PadStatus.cxx | 9 +++++---- Detectors/TRD/base/src/RecoParam.cxx | 9 +++++---- Detectors/TRD/base/src/SimParam.cxx | 9 +++++---- Detectors/TRD/base/src/TRDBaseLinkDef.h | 9 +++++---- Detectors/TRD/base/src/Tracklet.cxx | 9 +++++---- Detectors/TRD/base/src/TrackletTransformer.cxx | 9 +++++---- .../TRD/base/test/testCoordinateTransforms.cxx | 9 +++++---- Detectors/TRD/base/test/testRawData.cxx | 9 +++++---- .../base/test/testTRDDiffusionCoefficient.cxx | 9 +++++---- Detectors/TRD/base/test/testTRDGeometry.cxx | 9 +++++---- Detectors/TRD/calibration/CMakeLists.txt | 15 ++++++++------- .../include/TRDCalibration/CalibratorVdExB.h | 9 +++++---- .../include/TRDCalibration/TrackBasedCalib.h | 9 +++++---- .../TRD/calibration/src/CalibratorVdExB.cxx | 9 +++++---- .../calibration/src/TRDCalibrationLinkDef.h | 9 +++++---- .../TRD/calibration/src/TrackBasedCalib.cxx | 9 +++++---- Detectors/TRD/macros/CMakeLists.txt | 13 +++++++------ Detectors/TRD/macros/CheckCCDBvalues.C | 9 +++++---- Detectors/TRD/macros/CheckDigits.C | 9 +++++---- Detectors/TRD/macros/CheckHits.C | 9 +++++---- Detectors/TRD/reconstruction/CMakeLists.txt | 15 ++++++++------- .../include/TRDReconstruction/CTFCoder.h | 9 +++++---- .../include/TRDReconstruction/CTFHelper.h | 9 +++++---- .../TRDReconstruction/CompressedRawReader.h | 9 +++++---- .../TRDReconstruction/ConfigEventParser.h | 9 +++++---- .../TRDReconstruction/CruCompressorTask.h | 9 +++++---- .../include/TRDReconstruction/CruRawReader.h | 9 +++++---- .../include/TRDReconstruction/DataReaderTask.h | 9 +++++---- .../include/TRDReconstruction/DigitsParser.h | 9 +++++---- .../TRDReconstruction/TrackletsParser.h | 9 +++++---- Detectors/TRD/reconstruction/src/CTFCoder.cxx | 9 +++++---- Detectors/TRD/reconstruction/src/CTFHelper.cxx | 9 +++++---- .../reconstruction/src/CompressedRawReader.cxx | 9 +++++---- .../TRD/reconstruction/src/CruCompressor.cxx | 9 +++++---- .../reconstruction/src/CruCompressorTask.cxx | 9 +++++---- .../TRD/reconstruction/src/CruRawReader.cxx | 9 +++++---- .../TRD/reconstruction/src/DataReader.cxx | 9 +++++---- .../TRD/reconstruction/src/DataReaderTask.cxx | 9 +++++---- .../TRD/reconstruction/src/DigitsParser.cxx | 9 +++++---- .../src/TRDReconstructionLinkDef.h | 9 +++++---- .../TRD/reconstruction/src/TrackletsParser.cxx | 9 +++++---- Detectors/TRD/simulation/CMakeLists.txt | 13 +++++++------ .../include/TRDSimulation/Detector.h | 9 +++++---- .../include/TRDSimulation/Digitizer.h | 9 +++++---- .../include/TRDSimulation/PileupTool.h | 9 +++++---- .../include/TRDSimulation/TRDSimParams.h | 9 +++++---- .../simulation/include/TRDSimulation/TRsim.h | 9 +++++---- .../include/TRDSimulation/Trap2CRU.h | 9 +++++---- .../include/TRDSimulation/TrapConfig.h | 9 +++++---- .../include/TRDSimulation/TrapConfigHandler.h | 9 +++++---- .../include/TRDSimulation/TrapSimulator.h | 9 +++++---- Detectors/TRD/simulation/src/Detector.cxx | 9 +++++---- Detectors/TRD/simulation/src/Digitizer.cxx | 9 +++++---- Detectors/TRD/simulation/src/PileupTool.cxx | 9 +++++---- Detectors/TRD/simulation/src/TRDSimParams.cxx | 9 +++++---- .../TRD/simulation/src/TRDSimulationLinkDef.h | 9 +++++---- Detectors/TRD/simulation/src/TRsim.cxx | 9 +++++---- Detectors/TRD/simulation/src/Trap2CRU.cxx | 9 +++++---- Detectors/TRD/simulation/src/TrapConfig.cxx | 9 +++++---- .../TRD/simulation/src/TrapConfigHandler.cxx | 9 +++++---- Detectors/TRD/simulation/src/TrapSimulator.cxx | 9 +++++---- Detectors/TRD/simulation/src/trap2raw.cxx | 9 +++++---- .../TRD/simulation/test/testPileupTool.cxx | 9 +++++---- Detectors/TRD/workflow/CMakeLists.txt | 13 +++++++------ .../include/TRDWorkflow/EntropyDecoderSpec.h | 9 +++++---- .../include/TRDWorkflow/EntropyEncoderSpec.h | 9 +++++---- .../include/TRDWorkflow/TRDDigitizerSpec.h | 9 +++++---- .../TRDWorkflow/TRDGlobalTrackingSpec.h | 9 +++++---- .../include/TRDWorkflow/TRDTrackingWorkflow.h | 9 +++++---- .../TRDWorkflow/TRDTrackletTransformerSpec.h | 9 +++++---- .../include/TRDWorkflow/TRDTrapSimulatorSpec.h | 9 +++++---- .../include/TRDWorkflow/TrackBasedCalibSpec.h | 9 +++++---- .../include/TRDWorkflow/VdAndExBCalibSpec.h | 9 +++++---- Detectors/TRD/workflow/io/CMakeLists.txt | 13 +++++++------ .../include/TRDWorkflowIO/TRDCalibReaderSpec.h | 9 +++++---- .../include/TRDWorkflowIO/TRDCalibWriterSpec.h | 9 +++++---- .../TRDCalibratedTrackletWriterSpec.h | 9 +++++---- .../include/TRDWorkflowIO/TRDDigitReaderSpec.h | 9 +++++---- .../include/TRDWorkflowIO/TRDDigitWriterSpec.h | 9 +++++---- .../include/TRDWorkflowIO/TRDTrackReaderSpec.h | 9 +++++---- .../include/TRDWorkflowIO/TRDTrackWriterSpec.h | 9 +++++---- .../TRDWorkflowIO/TRDTrackletReaderSpec.h | 9 +++++---- .../TRDWorkflowIO/TRDTrackletWriterSpec.h | 9 +++++---- .../TRDWorkflowIO/TRDTrapRawWriterSpec.h | 9 +++++---- .../TRD/workflow/io/src/TRDCalibReaderSpec.cxx | 9 +++++---- .../TRD/workflow/io/src/TRDCalibWriterSpec.cxx | 9 +++++---- .../io/src/TRDCalibratedTrackletWriterSpec.cxx | 9 +++++---- .../TRD/workflow/io/src/TRDDigitReaderSpec.cxx | 9 +++++---- .../TRD/workflow/io/src/TRDDigitWriterSpec.cxx | 9 +++++---- .../TRD/workflow/io/src/TRDTrackReaderSpec.cxx | 9 +++++---- .../TRD/workflow/io/src/TRDTrackWriterSpec.cxx | 9 +++++---- .../workflow/io/src/TRDTrackletReaderSpec.cxx | 9 +++++---- .../workflow/io/src/TRDTrackletWriterSpec.cxx | 9 +++++---- .../workflow/io/src/TRDTrapRawWriterSpec.cxx | 9 +++++---- .../io/src/trd-track-reader-workflow.cxx | 9 +++++---- .../TRD/workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../TRD/workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- .../TRD/workflow/src/TRDDigitizerSpec.cxx | 9 +++++---- .../TRD/workflow/src/TRDGlobalTrackingSpec.cxx | 9 +++++---- .../TRD/workflow/src/TRDTrackingWorkflow.cxx | 9 +++++---- .../src/TRDTrackletTransformerSpec.cxx | 9 +++++---- .../src/TRDTrackletTransformerWorkflow.cxx | 9 +++++---- .../TRD/workflow/src/TRDTrapSimulatorSpec.cxx | 9 +++++---- .../workflow/src/TRDTrapSimulatorWorkFlow.cxx | 9 +++++---- .../TRD/workflow/src/TRDWorkflowLinkDef.h | 9 +++++---- .../TRD/workflow/src/TrackBasedCalibSpec.cxx | 9 +++++---- .../workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- .../TRD/workflow/src/trd-calib-workflow.cxx | 9 +++++---- .../TRD/workflow/src/trd-tracking-workflow.cxx | 9 +++++---- Detectors/Upgrades/ALICE3/AOD/CMakeLists.txt | 13 +++++++------ .../include/UpgradesAODUtils/Run2LikeAO2D.h | 9 +++++---- .../Upgrades/ALICE3/AOD/src/Run2LikeAO2D.cxx | 9 +++++---- .../ALICE3/AOD/src/UpgradesAODUtilsLinkDef.h | 9 +++++---- Detectors/Upgrades/ALICE3/CMakeLists.txt | 13 +++++++------ Detectors/Upgrades/ALICE3/FT3/CMakeLists.txt | 13 +++++++------ .../Upgrades/ALICE3/FT3/base/CMakeLists.txt | 13 +++++++------ .../FT3/base/include/FT3Base/GeometryTGeo.h | 9 +++++---- .../ALICE3/FT3/base/src/FT3BaseLinkDef.h | 9 +++++---- .../ALICE3/FT3/base/src/GeometryTGeo.cxx | 9 +++++---- .../ALICE3/FT3/simulation/CMakeLists.txt | 13 +++++++------ .../include/FT3Simulation/Detector.h | 9 +++++---- .../include/FT3Simulation/FT3Layer.h | 9 +++++---- .../ALICE3/FT3/simulation/src/Detector.cxx | 9 +++++---- .../ALICE3/FT3/simulation/src/FT3Layer.cxx | 9 +++++---- .../FT3/simulation/src/FT3SimulationLinkDef.h | 9 +++++---- .../Upgrades/ALICE3/Passive/CMakeLists.txt | 13 +++++++------ .../Alice3DetectorsPassive/PassiveBase.h | 9 +++++---- .../include/Alice3DetectorsPassive/Pipe.h | 9 +++++---- .../ALICE3/Passive/src/PassiveBase.cxx | 9 +++++---- .../ALICE3/Passive/src/PassiveLinkDef.h | 9 +++++---- Detectors/Upgrades/ALICE3/Passive/src/Pipe.cxx | 9 +++++---- Detectors/Upgrades/ALICE3/TRK/CMakeLists.txt | 13 +++++++------ .../Upgrades/ALICE3/TRK/base/CMakeLists.txt | 13 +++++++------ .../TRK/base/include/TRKBase/GeometryTGeo.h | 9 +++++---- .../include/TRKBase/MisalignmentParameter.h | 9 +++++---- .../ALICE3/TRK/base/src/GeometryTGeo.cxx | 9 +++++---- .../TRK/base/src/MisalignmentParameter.cxx | 9 +++++---- .../ALICE3/TRK/base/src/TRKBaseLinkDef.h | 9 +++++---- .../Upgrades/ALICE3/TRK/macros/CMakeLists.txt | 13 +++++++------ .../ALICE3/TRK/macros/test/CMakeLists.txt | 13 +++++++------ .../ALICE3/TRK/simulation/CMakeLists.txt | 13 +++++++------ .../include/TRKSimulation/Detector.h | 9 +++++---- .../include/TRKSimulation/V11Geometry.h | 9 +++++---- .../simulation/include/TRKSimulation/V1Layer.h | 9 +++++---- .../simulation/include/TRKSimulation/V3Layer.h | 9 +++++---- .../include/TRKSimulation/V3Services.h | 9 +++++---- .../ALICE3/TRK/simulation/src/Detector.cxx | 9 +++++---- .../TRK/simulation/src/TRKSimulationLinkDef.h | 9 +++++---- .../ALICE3/TRK/simulation/src/V11Geometry.cxx | 9 +++++---- .../ALICE3/TRK/simulation/src/V1Layer.cxx | 9 +++++---- .../ALICE3/TRK/simulation/src/V3Layer.cxx | 9 +++++---- .../ALICE3/TRK/simulation/src/V3Services.cxx | 9 +++++---- Detectors/Upgrades/CMakeLists.txt | 13 +++++++------ Detectors/Upgrades/IT3/CMakeLists.txt | 13 +++++++------ Detectors/Upgrades/IT3/base/CMakeLists.txt | 13 +++++++------ .../IT3/base/include/ITS3Base/GeometryTGeo.h | 9 +++++---- .../include/ITS3Base/MisalignmentParameter.h | 9 +++++---- .../include/ITS3Base/SegmentationSuperAlpide.h | 9 +++++---- .../Upgrades/IT3/base/src/GeometryTGeo.cxx | 9 +++++---- .../Upgrades/IT3/base/src/ITS3BaseLinkDef.h | 9 +++++---- .../IT3/base/src/MisalignmentParameter.cxx | 9 +++++---- .../IT3/base/src/SegmentationSuperAlpide.cxx | 9 +++++---- Detectors/Upgrades/IT3/macros/CMakeLists.txt | 13 +++++++------ .../Upgrades/IT3/macros/test/CMakeLists.txt | 13 +++++++------ .../Upgrades/IT3/reconstruction/CMakeLists.txt | 13 +++++++------ .../include/ITS3Reconstruction/Clusterer.h | 9 +++++---- .../ITS3Reconstruction/TopologyDictionary.h | 9 +++++---- .../IT3/reconstruction/src/Clusterer.cxx | 9 +++++---- .../src/ITS3ReconstructionLinkDef.h | 9 +++++---- .../reconstruction/src/TopologyDictionary.cxx | 9 +++++---- .../Upgrades/IT3/simulation/CMakeLists.txt | 13 +++++++------ .../include/ITS3Simulation/Detector.h | 9 +++++---- .../include/ITS3Simulation/Digitizer.h | 9 +++++---- .../include/ITS3Simulation/V11Geometry.h | 9 +++++---- .../include/ITS3Simulation/V3Layer.h | 9 +++++---- .../include/ITS3Simulation/V3Services.h | 9 +++++---- .../Upgrades/IT3/simulation/src/Detector.cxx | 9 +++++---- .../Upgrades/IT3/simulation/src/Digitizer.cxx | 9 +++++---- .../IT3/simulation/src/ITS3SimulationLinkDef.h | 9 +++++---- .../IT3/simulation/src/V11Geometry.cxx | 9 +++++---- .../Upgrades/IT3/simulation/src/V3Layer.cxx | 9 +++++---- .../Upgrades/IT3/simulation/src/V3Services.cxx | 9 +++++---- Detectors/Upgrades/IT3/workflow/CMakeLists.txt | 13 +++++++------ .../include/ITS3Workflow/ClusterReaderSpec.h | 9 +++++---- .../include/ITS3Workflow/ClusterWriterSpec.h | 9 +++++---- .../ITS3Workflow/ClusterWriterWorkflow.h | 9 +++++---- .../include/ITS3Workflow/ClustererSpec.h | 9 +++++---- .../include/ITS3Workflow/DigitReaderSpec.h | 9 +++++---- .../include/ITS3Workflow/DigitWriterSpec.h | 9 +++++---- .../include/ITS3Workflow/RecoWorkflow.h | 9 +++++---- .../IT3/workflow/src/ClusterReaderSpec.cxx | 9 +++++---- .../IT3/workflow/src/ClusterWriterSpec.cxx | 9 +++++---- .../IT3/workflow/src/ClusterWriterWorkflow.cxx | 9 +++++---- .../IT3/workflow/src/ClustererSpec.cxx | 9 +++++---- .../IT3/workflow/src/DigitReaderSpec.cxx | 9 +++++---- .../IT3/workflow/src/DigitWriterSpec.cxx | 9 +++++---- .../Upgrades/IT3/workflow/src/RecoWorkflow.cxx | 9 +++++---- .../IT3/workflow/src/digit-reader-workflow.cxx | 9 +++++---- .../IT3/workflow/src/digit-writer-workflow.cxx | 9 +++++---- .../IT3/workflow/src/its3-reco-workflow.cxx | 9 +++++---- Detectors/Vertexing/CMakeLists.txt | 13 +++++++------ .../include/DetectorsVertexing/DCAFitterN.h | 9 +++++---- .../include/DetectorsVertexing/HelixHelper.h | 9 +++++---- .../include/DetectorsVertexing/PVertexer.h | 9 +++++---- .../DetectorsVertexing/PVertexerHelpers.h | 9 +++++---- .../DetectorsVertexing/PVertexerParams.h | 9 +++++---- .../DetectorsVertexing/SVertexHypothesis.h | 9 +++++---- .../include/DetectorsVertexing/SVertexer.h | 9 +++++---- .../DetectorsVertexing/SVertexerParams.h | 9 +++++---- .../DetectorsVertexing/VertexTrackMatcher.h | 9 +++++---- Detectors/Vertexing/src/DCAFitterN.cxx | 9 +++++---- .../Vertexing/src/DetectorsVertexingLinkDef.h | 9 +++++---- Detectors/Vertexing/src/PVertexer.cxx | 9 +++++---- Detectors/Vertexing/src/PVertexerHelpers.cxx | 9 +++++---- Detectors/Vertexing/src/PVertexerParams.cxx | 9 +++++---- Detectors/Vertexing/src/SVertexHypothesis.cxx | 9 +++++---- Detectors/Vertexing/src/SVertexer.cxx | 9 +++++---- Detectors/Vertexing/src/SVertexerParams.cxx | 9 +++++---- Detectors/Vertexing/src/VertexTrackMatcher.cxx | 9 +++++---- Detectors/Vertexing/test/testDCAFitterN.cxx | 9 +++++---- Detectors/ZDC/CMakeLists.txt | 13 +++++++------ Detectors/ZDC/base/CMakeLists.txt | 13 +++++++------ Detectors/ZDC/base/include/ZDCBase/Constants.h | 9 +++++---- Detectors/ZDC/base/include/ZDCBase/Geometry.h | 9 +++++---- .../ZDC/base/include/ZDCBase/ModuleConfig.h | 9 +++++---- Detectors/ZDC/base/src/Geometry.cxx | 9 +++++---- Detectors/ZDC/base/src/ModuleConfig.cxx | 9 +++++---- Detectors/ZDC/base/src/ZDCBaseLinkDef.h | 9 +++++---- Detectors/ZDC/macro/CMakeLists.txt | 13 +++++++------ Detectors/ZDC/macro/CreateModuleConfig.C | 9 +++++---- Detectors/ZDC/macro/CreateSimCondition.C | 9 +++++---- Detectors/ZDC/raw/CMakeLists.txt | 13 +++++++------ Detectors/ZDC/raw/include/ZDCRaw/DumpRaw.h | 9 +++++---- .../ZDC/raw/include/ZDCRaw/RawReaderZDC.h | 9 +++++---- Detectors/ZDC/raw/src/DumpRaw.cxx | 9 +++++---- Detectors/ZDC/raw/src/RawReaderZDC.cxx | 9 +++++---- Detectors/ZDC/raw/src/ZDCRawLinkDef.h | 9 +++++---- Detectors/ZDC/raw/src/raw-parser.cxx | 9 +++++---- Detectors/ZDC/reconstruction/CMakeLists.txt | 13 +++++++------ .../include/ZDCReconstruction/CTFCoder.h | 9 +++++---- .../include/ZDCReconstruction/CTFHelper.h | 9 +++++---- Detectors/ZDC/reconstruction/src/CTFCoder.cxx | 9 +++++---- Detectors/ZDC/reconstruction/src/CTFHelper.cxx | 9 +++++---- .../src/ZDCReconstructionLinkDef.h | 9 +++++---- Detectors/ZDC/simulation/CMakeLists.txt | 13 +++++++------ .../include/ZDCSimulation/Detector.h | 9 +++++---- .../include/ZDCSimulation/Digitizer.h | 9 +++++---- .../include/ZDCSimulation/Digits2Raw.h | 9 +++++---- .../include/ZDCSimulation/SimCondition.h | 9 +++++---- .../ZDCSimulation/SpatialPhotonResponse.h | 9 +++++---- .../include/ZDCSimulation/ZDCSimParam.h | 9 +++++---- Detectors/ZDC/simulation/src/Detector.cxx | 9 +++++---- Detectors/ZDC/simulation/src/Digitizer.cxx | 9 +++++---- Detectors/ZDC/simulation/src/Digits2Raw.cxx | 9 +++++---- Detectors/ZDC/simulation/src/SimCondition.cxx | 9 +++++---- .../simulation/src/SpatialPhotonResponse.cxx | 9 +++++---- Detectors/ZDC/simulation/src/ZDCSimParam.cxx | 9 +++++---- .../ZDC/simulation/src/ZDCSimulationLinkDef.h | 9 +++++---- Detectors/ZDC/simulation/src/digi2raw.cxx | 9 +++++---- Detectors/ZDC/workflow/CMakeLists.txt | 13 +++++++------ .../include/ZDCWorkflow/DigitReaderSpec.h | 9 +++++---- .../include/ZDCWorkflow/EntropyDecoderSpec.h | 9 +++++---- .../include/ZDCWorkflow/EntropyEncoderSpec.h | 9 +++++---- .../include/ZDCWorkflow/ZDCDataReaderDPLSpec.h | 9 +++++---- .../ZDCWorkflow/ZDCDigitWriterDPLSpec.h | 9 +++++---- Detectors/ZDC/workflow/src/DigitReaderSpec.cxx | 9 +++++---- .../ZDC/workflow/src/EntropyDecoderSpec.cxx | 9 +++++---- .../ZDC/workflow/src/EntropyEncoderSpec.cxx | 9 +++++---- .../ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx | 9 +++++---- .../ZDC/workflow/src/ZDCDigitWriterDPLSpec.cxx | 9 +++++---- .../workflow/src/entropy-encoder-workflow.cxx | 9 +++++---- .../ZDC/workflow/src/o2-zdc-raw2digits.cxx | 9 +++++---- Detectors/gconfig/CMakeLists.txt | 13 +++++++------ .../gconfig/include/SimSetup/FlukaParam.h | 9 +++++---- .../SimSetup/GlobalProcessCutSimParam.h | 9 +++++---- Detectors/gconfig/include/SimSetup/SimSetup.h | 9 +++++---- Detectors/gconfig/src/FlukaConfig.cxx | 9 +++++---- Detectors/gconfig/src/FlukaParam.cxx | 9 +++++---- Detectors/gconfig/src/G3Config.cxx | 9 +++++---- Detectors/gconfig/src/G4Config.cxx | 9 +++++---- Detectors/gconfig/src/GConfLinkDef.h | 9 +++++---- .../gconfig/src/GlobalProcessCutSimParam.cxx | 9 +++++---- Detectors/gconfig/src/SetCuts.cxx | 9 +++++---- Detectors/gconfig/src/SetCuts.h | 9 +++++---- Detectors/gconfig/src/SimSetup.cxx | 9 +++++---- EventVisualisation/Base/CMakeLists.txt | 13 +++++++------ .../ConfigurationManager.h | 9 +++++---- .../EventVisualisationBase/DataInterpreter.h | 9 +++++---- .../EventVisualisationBase/DataReader.h | 9 +++++---- .../EventVisualisationBase/DataSource.h | 9 +++++---- .../EventVisualisationBase/DataSourceOffline.h | 9 +++++---- .../EventVisualisationBase/DataSourceOnline.h | 9 +++++---- .../EventVisualisationBase/FileWatcher.h | 9 +++++---- .../EventVisualisationBase/GeometryManager.h | 9 +++++---- .../VisualisationConstants.h | 9 +++++---- .../Base/src/ConfigurationManager.cxx | 9 +++++---- .../Base/src/DataInterpreter.cxx | 9 +++++---- EventVisualisation/Base/src/DataReader.cxx | 9 +++++---- .../Base/src/DataSourceOffline.cxx | 9 +++++---- .../Base/src/DataSourceOnline.cxx | 9 +++++---- EventVisualisation/Base/src/FileWatcher.cxx | 9 +++++---- .../Base/src/GeometryManager.cxx | 9 +++++---- EventVisualisation/CMakeLists.txt | 13 +++++++------ .../DataConverter/CMakeLists.txt | 13 +++++++------ .../ConversionConstants.h | 9 +++++---- .../VisualisationCluster.h | 9 +++++---- .../VisualisationEvent.h | 9 +++++---- .../VisualisationTrack.h | 9 +++++---- .../DataConverter/src/VisualisationCluster.cxx | 9 +++++---- .../DataConverter/src/VisualisationEvent.cxx | 9 +++++---- .../DataConverter/src/VisualisationTrack.cxx | 9 +++++---- EventVisualisation/Detectors/CMakeLists.txt | 13 +++++++------ .../DataInterpreterITS.h | 9 +++++---- .../DataInterpreterTPC.h | 9 +++++---- .../DataInterpreterVSD.h | 9 +++++---- .../DataReaderITS.h | 9 +++++---- .../DataReaderJSON.h | 9 +++++---- .../DataReaderTPC.h | 9 +++++---- .../DataReaderVSD.h | 9 +++++---- .../Detectors/src/DataInterpreterITS.cxx | 9 +++++---- .../Detectors/src/DataInterpreterTPC.cxx | 9 +++++---- .../Detectors/src/DataInterpreterVSD.cxx | 9 +++++---- .../Detectors/src/DataReaderITS.cxx | 9 +++++---- .../Detectors/src/DataReaderJSON.cxx | 9 +++++---- .../Detectors/src/DataReaderTPC.cxx | 9 +++++---- .../Detectors/src/DataReaderVSD.cxx | 9 +++++---- EventVisualisation/View/CMakeLists.txt | 13 +++++++------ .../EventVisualisationView/EventManager.h | 9 +++++---- .../EventVisualisationView/EventManagerFrame.h | 9 +++++---- .../EventVisualisationView/Initializer.h | 9 +++++---- .../include/EventVisualisationView/MultiView.h | 9 +++++---- .../include/EventVisualisationView/Options.h | 9 +++++---- EventVisualisation/View/src/EventManager.cxx | 9 +++++---- .../View/src/EventManagerFrame.cxx | 9 +++++---- .../View/src/EventVisualisationViewLinkDef.h | 9 +++++---- EventVisualisation/View/src/Initializer.cxx | 9 +++++---- EventVisualisation/View/src/MultiView.cxx | 9 +++++---- EventVisualisation/View/src/Options.cxx | 9 +++++---- EventVisualisation/View/src/main.cxx | 9 +++++---- EventVisualisation/Workflow/CMakeLists.txt | 13 +++++++------ .../include/EveWorkflow/FileProducer.h | 9 +++++---- .../include/EveWorkflow/O2DPLDisplay.h | 9 +++++---- .../Workflow/src/FileProducer.cxx | 9 +++++---- .../Workflow/src/O2DPLDisplay.cxx | 9 +++++---- Examples/CMakeLists.txt | 13 +++++++------ Examples/Ex1/CMakeLists.txt | 13 +++++++------ Examples/Ex1/include/Ex1/A.h | 9 +++++---- Examples/Ex1/src/A.cxx | 9 +++++---- Examples/Ex1/src/B.cxx | 9 +++++---- Examples/Ex1/src/B.h | 9 +++++---- Examples/Ex2/CMakeLists.txt | 13 +++++++------ Examples/Ex2/include/Ex2/A.h | 9 +++++---- Examples/Ex2/src/A.cxx | 9 +++++---- Examples/Ex2/src/B.cxx | 9 +++++---- Examples/Ex2/src/B.h | 9 +++++---- Examples/Ex2/src/Ex2LinkDef.h | 9 +++++---- Examples/Ex3/CMakeLists.txt | 13 +++++++------ Examples/Ex3/include/Ex3/A.h | 9 +++++---- Examples/Ex3/src/A.cxx | 9 +++++---- Examples/Ex3/src/B.cxx | 9 +++++---- Examples/Ex3/src/B.h | 9 +++++---- Examples/Ex3/src/Ex3LinkDef.h | 9 +++++---- Examples/Ex3/src/run.cxx | 9 +++++---- Examples/Ex4/CMakeLists.txt | 13 +++++++------ Examples/Ex4/include/Ex4/A.h | 9 +++++---- Examples/Ex4/src/A.cxx | 9 +++++---- Examples/Ex4/src/B.cxx | 9 +++++---- Examples/Ex4/src/B.h | 9 +++++---- Examples/Ex4/src/Ex4LinkDef.h | 9 +++++---- Examples/Ex4/src/run.cxx | 9 +++++---- Examples/Ex4/test/test1.cxx | 9 +++++---- Examples/Ex4/test/test2.cxx | 9 +++++---- Examples/Ex5/CMakeLists.txt | 13 +++++++------ Examples/Ex5/src/run.cxx | 9 +++++---- Framework/AnalysisSupport/CMakeLists.txt | 13 +++++++------ .../src/AODJAlienReaderHelpers.cxx | 9 +++++---- .../src/AODJAlienReaderHelpers.h | 9 +++++---- Framework/AnalysisSupport/src/Plugin.cxx | 9 +++++---- Framework/CMakeLists.txt | 13 +++++++------ Framework/Core/CMakeLists.txt | 13 +++++++------ .../Core/include/Framework/AODReaderHelpers.h | 9 +++++---- Framework/Core/include/Framework/ASoA.h | 9 +++++---- Framework/Core/include/Framework/ASoAHelpers.h | 9 +++++---- .../Core/include/Framework/AlgorithmSpec.h | 9 +++++---- .../Core/include/Framework/AnalysisDataModel.h | 9 +++++---- .../Core/include/Framework/AnalysisHelpers.h | 9 +++++---- .../Core/include/Framework/AnalysisTask.h | 9 +++++---- Framework/Core/include/Framework/Array2D.h | 9 +++++---- .../Core/include/Framework/ArrowContext.h | 9 +++++---- Framework/Core/include/Framework/ArrowTypes.h | 9 +++++---- Framework/Core/include/Framework/BasicOps.h | 9 +++++---- .../include/Framework/BoostOptionsRetriever.h | 9 +++++---- .../Core/include/Framework/CCDBParamSpec.h | 9 +++++---- .../Core/include/Framework/CallbackRegistry.h | 9 +++++---- .../Core/include/Framework/CallbackService.h | 9 +++++---- .../Framework/ChannelConfigurationPolicy.h | 9 +++++---- .../ChannelConfigurationPolicyHelpers.h | 9 +++++---- Framework/Core/include/Framework/ChannelInfo.h | 9 +++++---- .../Core/include/Framework/ChannelMatching.h | 9 +++++---- Framework/Core/include/Framework/ChannelSpec.h | 9 +++++---- Framework/Core/include/Framework/CommandInfo.h | 9 +++++---- .../include/Framework/CommonDataProcessors.h | 9 +++++---- .../include/Framework/CommonMessageBackends.h | 9 +++++---- .../Core/include/Framework/CommonServices.h | 9 +++++---- .../Core/include/Framework/CompletionPolicy.h | 9 +++++---- .../Framework/CompletionPolicyHelpers.h | 9 +++++---- .../Framework/ComputingQuotaEvaluator.h | 9 +++++---- .../include/Framework/ComputingQuotaOffer.h | 9 +++++---- .../Core/include/Framework/ComputingResource.h | 9 +++++---- .../include/Framework/ConcreteDataMatcher.h | 9 +++++---- .../Core/include/Framework/ConfigContext.h | 9 +++++---- .../include/Framework/ConfigParamRegistry.h | 9 +++++---- .../Core/include/Framework/ConfigParamSpec.h | 9 +++++---- .../Core/include/Framework/ConfigParamStore.h | 9 +++++---- .../include/Framework/ConfigParamsHelper.h | 9 +++++---- .../Core/include/Framework/Configurable.h | 9 +++++---- .../include/Framework/ConfigurableHelpers.h | 9 +++++---- .../Core/include/Framework/ConfigurableKinds.h | 9 +++++---- .../Core/include/Framework/ControlService.h | 9 +++++---- .../Framework/CustomWorkflowTerminationHook.h | 9 +++++---- .../Core/include/Framework/DanglingContext.h | 9 +++++---- .../Core/include/Framework/DataAllocator.h | 9 +++++---- Framework/Core/include/Framework/DataChunk.h | 9 +++++---- .../include/Framework/DataDescriptorMatcher.h | 9 +++++---- .../Framework/DataDescriptorMatcher.inc | 9 +++++---- .../Framework/DataDescriptorQueryBuilder.h | 9 +++++---- .../Core/include/Framework/DataInputDirector.h | 9 +++++---- .../Core/include/Framework/DataMatcherWalker.h | 9 +++++---- .../include/Framework/DataOutputDirector.h | 9 +++++---- .../include/Framework/DataProcessingDevice.h | 9 +++++---- .../include/Framework/DataProcessingHeader.h | 9 +++++---- .../include/Framework/DataProcessingStats.h | 9 +++++---- .../Core/include/Framework/DataProcessor.h | 9 +++++---- .../Core/include/Framework/DataProcessorInfo.h | 9 +++++---- .../include/Framework/DataProcessorLabel.h | 9 +++++---- .../Core/include/Framework/DataProcessorSpec.h | 9 +++++---- Framework/Core/include/Framework/DataRef.h | 9 +++++---- .../Core/include/Framework/DataRefUtils.h | 9 +++++---- Framework/Core/include/Framework/DataRelayer.h | 9 +++++---- .../Core/include/Framework/DataSpecUtils.h | 9 +++++---- .../Core/include/Framework/DataTakingContext.h | 9 +++++---- Framework/Core/include/Framework/DataTypes.h | 9 +++++---- Framework/Core/include/Framework/DebugGUI.h | 9 +++++---- .../Core/include/Framework/DeviceConfigInfo.h | 9 +++++---- .../Core/include/Framework/DeviceControl.h | 9 +++++---- .../Core/include/Framework/DeviceController.h | 9 +++++---- .../Core/include/Framework/DeviceExecution.h | 9 +++++---- Framework/Core/include/Framework/DeviceInfo.h | 9 +++++---- .../include/Framework/DeviceMetricsHelper.h | 9 +++++---- .../Core/include/Framework/DeviceMetricsInfo.h | 9 +++++---- Framework/Core/include/Framework/DeviceSpec.h | 9 +++++---- Framework/Core/include/Framework/DeviceState.h | 9 +++++---- .../Core/include/Framework/DevicesManager.h | 9 +++++---- .../Core/include/Framework/DispatchControl.h | 9 +++++---- .../Core/include/Framework/DispatchPolicy.h | 9 +++++---- .../Core/include/Framework/DriverClient.h | 9 +++++---- .../Core/include/Framework/DriverControl.h | 9 +++++---- Framework/Core/include/Framework/DriverInfo.h | 9 +++++---- .../include/Framework/EndOfStreamContext.h | 9 +++++---- .../Core/include/Framework/ErrorContext.h | 9 +++++---- .../Core/include/Framework/ExpirationHandler.h | 9 +++++---- Framework/Core/include/Framework/Expressions.h | 9 +++++---- .../Framework/ExternalFairMQDeviceProxy.h | 9 +++++---- .../Core/include/Framework/FairMQDeviceProxy.h | 9 +++++---- .../include/Framework/FairOptionsRetriever.h | 9 +++++---- .../Core/include/Framework/ForwardRoute.h | 9 +++++---- .../Core/include/Framework/FreePortFinder.h | 9 +++++---- .../Core/include/Framework/HistogramRegistry.h | 9 +++++---- .../Core/include/Framework/HistogramSpec.h | 9 +++++---- Framework/Core/include/Framework/InitContext.h | 9 +++++---- Framework/Core/include/Framework/InputRecord.h | 9 +++++---- .../Core/include/Framework/InputRecordWalker.h | 9 +++++---- Framework/Core/include/Framework/InputRoute.h | 9 +++++---- Framework/Core/include/Framework/InputSpan.h | 9 +++++---- Framework/Core/include/Framework/InputSpec.h | 9 +++++---- Framework/Core/include/Framework/Kernels.h | 9 +++++---- Framework/Core/include/Framework/Lifetime.h | 9 +++++---- .../Core/include/Framework/LifetimeHelpers.h | 9 +++++---- .../include/Framework/LocalRootFileService.h | 9 +++++---- .../Core/include/Framework/LogParsingHelpers.h | 9 +++++---- .../Core/include/Framework/MessageContext.h | 9 +++++---- Framework/Core/include/Framework/MessageSet.h | 9 +++++---- .../Core/include/Framework/Metric2DViewIndex.h | 9 +++++---- Framework/Core/include/Framework/Monitoring.h | 9 +++++---- .../Core/include/Framework/O2ControlLabels.h | 9 +++++---- Framework/Core/include/Framework/Output.h | 9 +++++---- .../Core/include/Framework/OutputObjHeader.h | 9 +++++---- Framework/Core/include/Framework/OutputRef.h | 9 +++++---- Framework/Core/include/Framework/OutputRoute.h | 9 +++++---- Framework/Core/include/Framework/OutputSpec.h | 9 +++++---- .../Core/include/Framework/ParallelContext.h | 9 +++++---- .../Core/include/Framework/ParamRetriever.h | 9 +++++---- Framework/Core/include/Framework/PartRef.h | 9 +++++---- Framework/Core/include/Framework/Plugins.h | 9 +++++---- .../Core/include/Framework/ProcessingContext.h | 9 +++++---- Framework/Core/include/Framework/RCombinedDS.h | 9 +++++---- .../Core/include/Framework/RawBufferContext.h | 9 +++++---- .../Core/include/Framework/RawDeviceService.h | 9 +++++---- .../Core/include/Framework/ReadoutAdapter.h | 9 +++++---- .../Core/include/Framework/ResourcePolicy.h | 9 +++++---- .../include/Framework/ResourcePolicyHelpers.h | 9 +++++---- .../include/Framework/RootAnalysisHelpers.h | 9 +++++---- .../include/Framework/RootConfigParamHelpers.h | 9 +++++---- .../Core/include/Framework/RootFileService.h | 9 +++++---- .../Framework/RootSerializationSupport.h | 9 +++++---- .../Framework/RootTableBuilderHelpers.h | 9 +++++---- .../Core/include/Framework/RoutingIndices.h | 9 +++++---- .../include/Framework/RunningWorkflowInfo.h | 9 +++++---- .../include/Framework/SerializationMethods.h | 9 +++++---- .../Core/include/Framework/ServiceHandle.h | 9 +++++---- .../Core/include/Framework/ServiceRegistry.h | 9 +++++---- .../include/Framework/ServiceRegistryHelpers.h | 9 +++++---- Framework/Core/include/Framework/ServiceSpec.h | 9 +++++---- .../include/Framework/SimpleOptionsRetriever.h | 9 +++++---- .../include/Framework/SimpleRawDeviceService.h | 9 +++++---- .../Core/include/Framework/SourceInfoHeader.h | 9 +++++---- Framework/Core/include/Framework/StepTHn.h | 9 +++++---- .../Core/include/Framework/StringContext.h | 9 +++++---- .../Core/include/Framework/StringHelpers.h | 9 +++++---- .../include/Framework/TMessageSerializer.h | 9 +++++---- .../Core/include/Framework/TableBuilder.h | 9 +++++---- .../Core/include/Framework/TableConsumer.h | 9 +++++---- .../Core/include/Framework/TableTreeHelpers.h | 9 +++++---- Framework/Core/include/Framework/Task.h | 9 +++++---- .../Core/include/Framework/TerminationPolicy.h | 9 +++++---- .../Core/include/Framework/TimesliceIndex.h | 9 +++++---- .../Core/include/Framework/TimesliceIndex.inc | 9 +++++---- Framework/Core/include/Framework/TimingInfo.h | 9 +++++---- .../Core/include/Framework/TopologyPolicy.h | 9 +++++---- Framework/Core/include/Framework/TypeTraits.h | 9 +++++---- Framework/Core/include/Framework/Variant.h | 9 +++++---- .../include/Framework/VariantJSONHelpers.h | 9 +++++---- .../Framework/VariantPropertyTreeHelpers.h | 9 +++++---- .../include/Framework/VariantStringHelpers.h | 9 +++++---- .../Framework/WorkflowCustomizationHelpers.h | 9 +++++---- .../Core/include/Framework/WorkflowSpec.h | 9 +++++---- .../Core/include/Framework/runDataProcessing.h | 9 +++++---- Framework/Core/src/AODReaderHelpers.cxx | 9 +++++---- Framework/Core/src/ASoA.cxx | 9 +++++---- Framework/Core/src/AnalysisDataModel.cxx | 9 +++++---- .../Core/src/AnalysisDataModelHelpers.cxx | 9 +++++---- Framework/Core/src/AnalysisDataModelHelpers.h | 9 +++++---- Framework/Core/src/AnalysisHelpers.cxx | 9 +++++---- Framework/Core/src/AnalysisManagers.h | 9 +++++---- Framework/Core/src/Array2D.cxx | 9 +++++---- Framework/Core/src/ArrowDebugHelpers.h | 9 +++++---- Framework/Core/src/ArrowSupport.cxx | 9 +++++---- Framework/Core/src/ArrowSupport.h | 9 +++++---- Framework/Core/src/Base64.cxx | 9 +++++---- Framework/Core/src/Base64.h | 9 +++++---- Framework/Core/src/BoostOptionsRetriever.cxx | 9 +++++---- .../Core/src/ChannelConfigurationPolicy.cxx | 9 +++++---- .../src/ChannelConfigurationPolicyHelpers.cxx | 9 +++++---- Framework/Core/src/ChannelMatching.cxx | 9 +++++---- Framework/Core/src/ChannelSpecHelpers.cxx | 9 +++++---- Framework/Core/src/ChannelSpecHelpers.h | 9 +++++---- Framework/Core/src/CommandInfo.cxx | 9 +++++---- Framework/Core/src/CommonDataProcessors.cxx | 9 +++++---- Framework/Core/src/CommonMessageBackends.cxx | 9 +++++---- .../Core/src/CommonMessageBackendsHelpers.h | 9 +++++---- Framework/Core/src/CommonServices.cxx | 9 +++++---- Framework/Core/src/CompletionPolicy.cxx | 9 +++++---- Framework/Core/src/CompletionPolicyHelpers.cxx | 9 +++++---- Framework/Core/src/ComputingQuotaEvaluator.cxx | 9 +++++---- .../Core/src/ComputingResourceHelpers.cxx | 9 +++++---- Framework/Core/src/ComputingResourceHelpers.h | 9 +++++---- Framework/Core/src/ConfigContext.cxx | 9 +++++---- Framework/Core/src/ConfigParamStore.cxx | 9 +++++---- Framework/Core/src/ConfigParamsHelper.cxx | 9 +++++---- .../Core/src/ConfigurationOptionsRetriever.cxx | 9 +++++---- .../Core/src/ConfigurationOptionsRetriever.h | 9 +++++---- Framework/Core/src/ControlService.cxx | 9 +++++---- Framework/Core/src/ControlServiceHelpers.cxx | 9 +++++---- Framework/Core/src/ControlServiceHelpers.h | 9 +++++---- Framework/Core/src/DDSConfigHelpers.cxx | 9 +++++---- Framework/Core/src/DDSConfigHelpers.h | 9 +++++---- Framework/Core/src/DPLMonitoringBackend.cxx | 9 +++++---- Framework/Core/src/DPLMonitoringBackend.h | 9 +++++---- Framework/Core/src/DPLWebSocket.cxx | 9 +++++---- Framework/Core/src/DPLWebSocket.h | 9 +++++---- Framework/Core/src/DataAllocator.cxx | 9 +++++---- Framework/Core/src/DataDescriptorMatcher.cxx | 9 +++++---- .../Core/src/DataDescriptorQueryBuilder.cxx | 9 +++++---- Framework/Core/src/DataInputDirector.cxx | 9 +++++---- Framework/Core/src/DataOutputDirector.cxx | 9 +++++---- Framework/Core/src/DataProcessingDevice.cxx | 9 +++++---- Framework/Core/src/DataProcessingHeader.cxx | 9 +++++---- Framework/Core/src/DataProcessingHelpers.cxx | 9 +++++---- Framework/Core/src/DataProcessingHelpers.h | 9 +++++---- Framework/Core/src/DataProcessingStatus.h | 9 +++++---- Framework/Core/src/DataProcessor.cxx | 9 +++++---- Framework/Core/src/DataRelayer.cxx | 9 +++++---- Framework/Core/src/DataRelayerHelpers.cxx | 9 +++++---- Framework/Core/src/DataRelayerHelpers.h | 9 +++++---- Framework/Core/src/DataSpecUtils.cxx | 9 +++++---- Framework/Core/src/DeviceConfigInfo.cxx | 9 +++++---- Framework/Core/src/DeviceController.cxx | 9 +++++---- Framework/Core/src/DeviceMetricsHelper.cxx | 9 +++++---- Framework/Core/src/DeviceMetricsInfo.cxx | 9 +++++---- Framework/Core/src/DeviceSpec.cxx | 9 +++++---- Framework/Core/src/DeviceSpecHelpers.cxx | 9 +++++---- Framework/Core/src/DeviceSpecHelpers.h | 9 +++++---- Framework/Core/src/DevicesManager.cxx | 9 +++++---- Framework/Core/src/DispatchPolicy.cxx | 9 +++++---- Framework/Core/src/DriverClient.cxx | 9 +++++---- Framework/Core/src/DriverClientContext.h | 9 +++++---- Framework/Core/src/DriverControl.cxx | 9 +++++---- Framework/Core/src/DriverInfo.cxx | 9 +++++---- Framework/Core/src/DriverServerContext.h | 9 +++++---- Framework/Core/src/ExpressionHelpers.h | 9 +++++---- Framework/Core/src/Expressions.cxx | 9 +++++---- .../Core/src/ExternalFairMQDeviceProxy.cxx | 9 +++++---- Framework/Core/src/FairMQDeviceProxy.cxx | 9 +++++---- Framework/Core/src/FairMQResizableBuffer.cxx | 9 +++++---- Framework/Core/src/FairMQResizableBuffer.h | 9 +++++---- Framework/Core/src/FairOptionsRetriever.cxx | 9 +++++---- Framework/Core/src/FreePortFinder.cxx | 9 +++++---- Framework/Core/src/GraphvizHelpers.cxx | 9 +++++---- Framework/Core/src/GraphvizHelpers.h | 9 +++++---- Framework/Core/src/HTTPParser.cxx | 9 +++++---- Framework/Core/src/HTTPParser.h | 9 +++++---- Framework/Core/src/HistogramRegistry.cxx | 9 +++++---- Framework/Core/src/HistogramSpec.cxx | 9 +++++---- Framework/Core/src/InputRecord.cxx | 9 +++++---- Framework/Core/src/InputSpan.cxx | 9 +++++---- Framework/Core/src/InputSpec.cxx | 9 +++++---- Framework/Core/src/LifetimeHelpers.cxx | 9 +++++---- Framework/Core/src/LocalRootFileService.cxx | 9 +++++---- Framework/Core/src/LogParsingHelpers.cxx | 9 +++++---- Framework/Core/src/MessageContext.cxx | 9 +++++---- Framework/Core/src/Metric2DViewIndex.cxx | 9 +++++---- Framework/Core/src/O2ControlHelpers.cxx | 9 +++++---- Framework/Core/src/O2ControlHelpers.h | 9 +++++---- Framework/Core/src/O2ControlLabels.cxx | 9 +++++---- Framework/Core/src/OutputSpec.cxx | 9 +++++---- Framework/Core/src/PropertyTreeHelpers.cxx | 9 +++++---- Framework/Core/src/PropertyTreeHelpers.h | 9 +++++---- Framework/Core/src/RCombinedDS.cxx | 9 +++++---- Framework/Core/src/RawBufferContext.cxx | 9 +++++---- Framework/Core/src/ReadoutAdapter.cxx | 9 +++++---- Framework/Core/src/ResourceManager.h | 9 +++++---- Framework/Core/src/ResourcePolicy.cxx | 9 +++++---- Framework/Core/src/ResourcePolicyHelpers.cxx | 9 +++++---- .../Core/src/ResourcesMonitoringHelper.cxx | 9 +++++---- Framework/Core/src/ResourcesMonitoringHelper.h | 9 +++++---- Framework/Core/src/RootConfigParamHelpers.cxx | 9 +++++---- Framework/Core/src/ScopedExit.h | 9 +++++---- Framework/Core/src/ServiceRegistry.cxx | 9 +++++---- Framework/Core/src/SimpleOptionsRetriever.cxx | 9 +++++---- Framework/Core/src/SimpleRawDeviceService.cxx | 9 +++++---- Framework/Core/src/SimpleResourceManager.cxx | 9 +++++---- Framework/Core/src/SimpleResourceManager.h | 9 +++++---- Framework/Core/src/SourceInfoHeader.cxx | 9 +++++---- Framework/Core/src/StepTHn.cxx | 9 +++++---- Framework/Core/src/StreamOperators.cxx | 9 +++++---- Framework/Core/src/StringContext.cxx | 9 +++++---- Framework/Core/src/TMessageSerializer.cxx | 9 +++++---- Framework/Core/src/TableBuilder.cxx | 9 +++++---- Framework/Core/src/TableConsumer.cxx | 9 +++++---- Framework/Core/src/TableTreeHelpers.cxx | 9 +++++---- Framework/Core/src/Task.cxx | 9 +++++---- Framework/Core/src/TextDriverClient.cxx | 9 +++++---- Framework/Core/src/TextDriverClient.h | 9 +++++---- Framework/Core/src/TopologyPolicy.cxx | 9 +++++---- Framework/Core/src/Variant.cxx | 9 +++++---- Framework/Core/src/WSDriverClient.cxx | 9 +++++---- Framework/Core/src/WSDriverClient.h | 9 +++++---- .../Core/src/WorkflowCustomizationHelpers.cxx | 9 +++++---- Framework/Core/src/WorkflowHelpers.cxx | 9 +++++---- Framework/Core/src/WorkflowHelpers.h | 9 +++++---- .../Core/src/WorkflowSerializationHelpers.cxx | 9 +++++---- .../Core/src/WorkflowSerializationHelpers.h | 9 +++++---- Framework/Core/src/WorkflowSpec.cxx | 9 +++++---- Framework/Core/src/dplRun.cxx | 9 +++++---- Framework/Core/src/o2NullSink.cxx | 9 +++++---- Framework/Core/src/runDataProcessing.cxx | 9 +++++---- Framework/Core/src/verifyAODFile.cxx | 9 +++++---- Framework/Core/test/FrameworkCoreTestLinkDef.h | 9 +++++---- Framework/Core/test/Mocking.h | 9 +++++---- Framework/Core/test/TestClasses.cxx | 9 +++++---- Framework/Core/test/TestClasses.h | 9 +++++---- Framework/Core/test/benchmark_ASoA.cxx | 9 +++++---- Framework/Core/test/benchmark_ASoAHelpers.cxx | 9 +++++---- .../test/benchmark_DataDescriptorMatcher.cxx | 9 +++++---- Framework/Core/test/benchmark_DataRelayer.cxx | 9 +++++---- .../Core/test/benchmark_DeviceMetricsInfo.cxx | 9 +++++---- .../benchmark_ExternalFairMQDeviceProxies.cxx | 9 +++++---- .../Core/test/benchmark_GandivaExpressions.cxx | 9 +++++---- .../Core/test/benchmark_HistogramRegistry.cxx | 9 +++++---- Framework/Core/test/benchmark_InputRecord.cxx | 9 +++++---- Framework/Core/test/benchmark_TableBuilder.cxx | 9 +++++---- Framework/Core/test/benchmark_TableToTree.cxx | 9 +++++---- Framework/Core/test/benchmark_TreeToTable.cxx | 9 +++++---- .../Core/test/benchmark_WorkflowHelpers.cxx | 9 +++++---- Framework/Core/test/test_ASoA.cxx | 9 +++++---- Framework/Core/test/test_ASoAHelpers.cxx | 9 +++++---- Framework/Core/test/test_AlgorithmSpec.cxx | 9 +++++---- Framework/Core/test/test_AnalysisDataModel.cxx | 9 +++++---- Framework/Core/test/test_AnalysisTask.cxx | 9 +++++---- .../Core/test/test_BoostOptionsRetriever.cxx | 9 +++++---- .../test/test_BoostSerializedProcessing.cxx | 9 +++++---- Framework/Core/test/test_CCDBFetcher.cxx | 9 +++++---- Framework/Core/test/test_CallbackRegistry.cxx | 9 +++++---- Framework/Core/test/test_CallbackService.cxx | 9 +++++---- .../Core/test/test_ChannelSpecHelpers.cxx | 9 +++++---- Framework/Core/test/test_CheckTypes.cxx | 9 +++++---- Framework/Core/test/test_CompletionPolicy.cxx | 9 +++++---- .../test/test_ComputingResourceHelpers.cxx | 9 +++++---- .../Core/test/test_ConfigParamRegistry.cxx | 9 +++++---- Framework/Core/test/test_ConfigParamStore.cxx | 9 +++++---- .../test_ConfigurationOptionsRetriever.cxx | 9 +++++---- Framework/Core/test/test_DanglingInputs.cxx | 9 +++++---- Framework/Core/test/test_DanglingOutputs.cxx | 9 +++++---- Framework/Core/test/test_DataAllocator.cxx | 9 +++++---- .../Core/test/test_DataDescriptorMatcher.cxx | 9 +++++---- Framework/Core/test/test_DataInputDirector.cxx | 9 +++++---- .../Core/test/test_DataOutputDirector.cxx | 9 +++++---- Framework/Core/test/test_DataProcessorSpec.cxx | 9 +++++---- Framework/Core/test/test_DataRefUtils.cxx | 9 +++++---- Framework/Core/test/test_DataRelayer.cxx | 9 +++++---- Framework/Core/test/test_DeviceConfigInfo.cxx | 9 +++++---- Framework/Core/test/test_DeviceMetricsInfo.cxx | 9 +++++---- Framework/Core/test/test_DeviceSpec.cxx | 9 +++++---- Framework/Core/test/test_DeviceSpecHelpers.cxx | 9 +++++---- Framework/Core/test/test_Expressions.cxx | 9 +++++---- .../test/test_ExternalFairMQDeviceProxy.cxx | 9 +++++---- .../test/test_ExternalFairMQDeviceWorkflow.cxx | 9 +++++---- Framework/Core/test/test_FairMQ.cxx | 9 +++++---- .../Core/test/test_FairMQOptionsRetriever.cxx | 9 +++++---- .../Core/test/test_FairMQResizableBuffer.cxx | 9 +++++---- Framework/Core/test/test_Forwarding.cxx | 9 +++++---- .../Core/test/test_FrameworkDataFlowToDDS.cxx | 9 +++++---- .../test/test_FrameworkDataFlowToO2Control.cxx | 9 +++++---- Framework/Core/test/test_GenericSource.cxx | 9 +++++---- Framework/Core/test/test_Graphviz.cxx | 9 +++++---- Framework/Core/test/test_GroupSlicer.cxx | 9 +++++---- Framework/Core/test/test_HTTPParser.cxx | 9 +++++---- Framework/Core/test/test_HelperMacros.h | 9 +++++---- Framework/Core/test/test_HistogramRegistry.cxx | 9 +++++---- Framework/Core/test/test_IndexBuilder.cxx | 9 +++++---- Framework/Core/test/test_InfoLogger.cxx | 9 +++++---- Framework/Core/test/test_InputRecord.cxx | 9 +++++---- Framework/Core/test/test_InputRecordWalker.cxx | 9 +++++---- Framework/Core/test/test_InputSpan.cxx | 9 +++++---- Framework/Core/test/test_InputSpec.cxx | 9 +++++---- Framework/Core/test/test_Kernels.cxx | 9 +++++---- Framework/Core/test/test_LogParsingHelpers.cxx | 9 +++++---- Framework/Core/test/test_Parallel.cxx | 9 +++++---- Framework/Core/test/test_ParallelPipeline.cxx | 9 +++++---- Framework/Core/test/test_ParallelProducer.cxx | 9 +++++---- Framework/Core/test/test_ProcessorOptions.cxx | 9 +++++---- Framework/Core/test/test_PtrHelpers.cxx | 9 +++++---- .../test/test_RegionInfoCallbackService.cxx | 9 +++++---- Framework/Core/test/test_Root2ArrowTable.cxx | 9 +++++---- .../Core/test/test_RootConfigParamHelpers.cxx | 9 +++++---- Framework/Core/test/test_Services.cxx | 9 +++++---- Framework/Core/test/test_SimpleCondition.cxx | 9 +++++---- .../test/test_SimpleDataProcessingDevice01.cxx | 9 +++++---- .../test/test_SimpleRDataFrameProcessing.cxx | 9 +++++---- .../test/test_SimpleStatefulProcessing01.cxx | 9 +++++---- .../Core/test/test_SimpleStringProcessing.cxx | 9 +++++---- Framework/Core/test/test_SimpleTimer.cxx | 9 +++++---- Framework/Core/test/test_SimpleWildcard.cxx | 9 +++++---- Framework/Core/test/test_SimpleWildcard02.cxx | 9 +++++---- Framework/Core/test/test_SingleDataSource.cxx | 9 +++++---- Framework/Core/test/test_SlowConsumer.cxx | 9 +++++---- .../Core/test/test_StaggeringWorkflow.cxx | 9 +++++---- Framework/Core/test/test_StringHelpers.cxx | 9 +++++---- .../Core/test/test_SuppressionGenerator.cxx | 9 +++++---- .../Core/test/test_TMessageSerializer.cxx | 9 +++++---- Framework/Core/test/test_TableBuilder.cxx | 9 +++++---- Framework/Core/test/test_Task.cxx | 9 +++++---- .../Core/test/test_TimeParallelPipelining.cxx | 9 +++++---- Framework/Core/test/test_TimePipeline.cxx | 9 +++++---- Framework/Core/test/test_TimesliceIndex.cxx | 9 +++++---- Framework/Core/test/test_TreeToTable.cxx | 9 +++++---- Framework/Core/test/test_TypeTraits.cxx | 9 +++++---- Framework/Core/test/test_Variants.cxx | 9 +++++---- Framework/Core/test/test_WorkflowHelpers.cxx | 9 +++++---- .../Core/test/test_WorkflowSerialization.cxx | 9 +++++---- Framework/Core/test/unittest_DataSpecUtils.cxx | 9 +++++---- .../test/unittest_SimpleOptionsRetriever.cxx | 9 +++++---- Framework/Foundation/3rdparty/CMakeLists.txt | 13 +++++++------ Framework/Foundation/CMakeLists.txt | 13 +++++++------ .../Foundation/include/Framework/CheckTypes.h | 9 +++++---- .../include/Framework/CompilerBuiltins.h | 9 +++++---- .../include/Framework/FunctionalHelpers.h | 9 +++++---- Framework/Foundation/include/Framework/Pack.h | 9 +++++---- .../include/Framework/RuntimeError.h | 9 +++++---- .../Foundation/include/Framework/Signpost.h | 9 +++++---- .../include/Framework/StructToTuple.h | 9 +++++---- .../Foundation/include/Framework/Tracing.h | 9 +++++---- .../Foundation/include/Framework/Traits.h | 9 +++++---- .../include/Framework/TypeIdHelpers.h | 9 +++++---- .../include/Framework/VariantHelpers.h | 9 +++++---- Framework/Foundation/src/RuntimeError.cxx | 9 +++++---- Framework/Foundation/src/Traits.cxx | 9 +++++---- .../Foundation/test/test_CompilerBuiltins.cxx | 9 +++++---- .../Foundation/test/test_FunctionalHelpers.cxx | 9 +++++---- .../Foundation/test/test_RuntimeError.cxx | 9 +++++---- Framework/Foundation/test/test_Signpost.cxx | 9 +++++---- .../Foundation/test/test_StructToTuple.cxx | 9 +++++---- Framework/Foundation/test/test_Traits.cxx | 9 +++++---- Framework/GUISupport/CMakeLists.txt | 13 +++++++------ .../src/FrameworkGUIDataRelayerUsage.cxx | 9 +++++---- .../src/FrameworkGUIDataRelayerUsage.h | 9 +++++---- .../GUISupport/src/FrameworkGUIDebugger.cxx | 9 +++++---- .../GUISupport/src/FrameworkGUIDebugger.h | 9 +++++---- .../src/FrameworkGUIDeviceInspector.cxx | 9 +++++---- .../src/FrameworkGUIDeviceInspector.h | 9 +++++---- .../src/FrameworkGUIDevicesGraph.cxx | 9 +++++---- .../GUISupport/src/FrameworkGUIDevicesGraph.h | 9 +++++---- Framework/GUISupport/src/FrameworkGUIState.h | 9 +++++---- Framework/GUISupport/src/NoDebugGUI.h | 9 +++++---- Framework/GUISupport/src/PaletteHelpers.cxx | 9 +++++---- Framework/GUISupport/src/PaletteHelpers.h | 9 +++++---- Framework/GUISupport/src/Plugin.cxx | 9 +++++---- Framework/GUISupport/test/test_CustomGUIGL.cxx | 9 +++++---- .../GUISupport/test/test_CustomGUISokol.cxx | 9 +++++---- .../GUISupport/test/test_SimpleTracksED.cxx | 9 +++++---- Framework/Logger/CMakeLists.txt | 13 +++++++------ Framework/Logger/include/Framework/Logger.h | 9 +++++---- Framework/Logger/test/unittest_Logger.cxx | 9 +++++---- Framework/TestWorkflows/CMakeLists.txt | 13 +++++++------ Framework/TestWorkflows/src/dummy.cxx | 9 +++++---- .../TestWorkflows/src/flpQualification.cxx | 9 +++++---- .../src/o2AnalysisTaskExample.cxx | 9 +++++---- Framework/TestWorkflows/src/o2D0Analysis.cxx | 9 +++++---- .../TestWorkflows/src/o2DataQueryWorkflow.cxx | 9 +++++---- .../TestWorkflows/src/o2DiamondWorkflow.cxx | 9 +++++---- .../TestWorkflows/src/o2DummyWorkflow.cxx | 9 +++++---- .../src/o2OutputWildcardWorkflow.cxx | 9 +++++---- .../TestWorkflows/src/o2ParallelWorkflow.cxx | 9 +++++---- Framework/TestWorkflows/src/o2SimpleSink.cxx | 9 +++++---- Framework/TestWorkflows/src/o2SimpleSource.cxx | 9 +++++---- .../src/o2SimpleTracksAnalysis.cxx | 9 +++++---- .../src/o2SyncReconstructionDummy.cxx | 9 +++++---- .../TestWorkflows/src/o2_sim_its_ALP3.cxx | 9 +++++---- Framework/TestWorkflows/src/o2_sim_its_ALP3.h | 9 +++++---- Framework/TestWorkflows/src/o2_sim_tpc.cxx | 9 +++++---- Framework/TestWorkflows/src/o2_sim_tpc.h | 9 +++++---- .../src/test_CCDBFetchToTimeframe.cxx | 9 +++++---- .../src/test_CompletionPolicies.cxx | 9 +++++---- .../src/test_RawDeviceInjector.cxx | 9 +++++---- .../TestWorkflows/src/test_o2ITSCluserizer.cxx | 9 +++++---- .../src/test_o2RootMessageWorkflow.cxx | 9 +++++---- .../TestWorkflows/src/test_o2TPCSimulation.cxx | 9 +++++---- Framework/TestWorkflows/src/tof-dummy-ccdb.cxx | 9 +++++---- .../TestWorkflows/test/test_MakeDPLObjects.cxx | 9 +++++---- Framework/Utils/CMakeLists.txt | 13 +++++++------ .../Utils/include/DPLUtils/DPLRawParser.h | 9 +++++---- .../include/DPLUtils/MakeRootTreeWriterSpec.h | 9 +++++---- Framework/Utils/include/DPLUtils/RawParser.h | 9 +++++---- .../Utils/include/DPLUtils/RootTreeReader.h | 9 +++++---- .../Utils/include/DPLUtils/RootTreeWriter.h | 9 +++++---- Framework/Utils/include/DPLUtils/Utils.h | 9 +++++---- Framework/Utils/src/DPLBroadcaster.cxx | 9 +++++---- Framework/Utils/src/DPLGatherer.cxx | 9 +++++---- Framework/Utils/src/DPLMerger.cxx | 9 +++++---- Framework/Utils/src/DPLRouter.cxx | 9 +++++---- Framework/Utils/src/RawParser.cxx | 9 +++++---- Framework/Utils/src/Utils.cxx | 9 +++++---- Framework/Utils/src/dpl-output-proxy.cxx | 9 +++++---- Framework/Utils/src/raw-parser.cxx | 9 +++++---- Framework/Utils/src/raw-proxy.cxx | 9 +++++---- Framework/Utils/test/DPLBroadcasterMerger.cxx | 9 +++++---- Framework/Utils/test/DPLBroadcasterMerger.h | 9 +++++---- Framework/Utils/test/DPLOutputTest.cxx | 9 +++++---- Framework/Utils/test/DPLOutputTest.h | 9 +++++---- Framework/Utils/test/benchmark_RawParser.cxx | 9 +++++---- .../Utils/test/test_DPLBroadcasterMerger.cxx | 9 +++++---- Framework/Utils/test/test_DPLOutputTest.cxx | 9 +++++---- Framework/Utils/test/test_DPLRawParser.cxx | 9 +++++---- Framework/Utils/test/test_RawParser.cxx | 9 +++++---- Framework/Utils/test/test_RootTreeReader.cxx | 9 +++++---- Framework/Utils/test/test_RootTreeWriter.cxx | 9 +++++---- .../Utils/test/test_RootTreeWriterWorkflow.cxx | 9 +++++---- GPU/CMakeLists.txt | 13 +++++++------ GPU/Common/CMakeLists.txt | 13 +++++++------ GPU/Common/GPUCommonAlgorithm.h | 9 +++++---- GPU/Common/GPUCommonAlgorithmThrust.h | 9 +++++---- GPU/Common/GPUCommonArray.h | 9 +++++---- GPU/Common/GPUCommonDef.h | 9 +++++---- GPU/Common/GPUCommonDefAPI.h | 9 +++++---- GPU/Common/GPUCommonDefSettings.h | 9 +++++---- GPU/Common/GPUCommonLogger.h | 9 +++++---- GPU/Common/GPUCommonMath.h | 9 +++++---- GPU/Common/GPUCommonRtypes.h | 9 +++++---- GPU/Common/GPUCommonTransform3D.h | 9 +++++---- GPU/Common/GPUCommonTypeTraits.h | 9 +++++---- GPU/Common/GPUROOTCartesianFwd.h | 9 +++++---- GPU/Common/GPUROOTSMatrixFwd.h | 9 +++++---- GPU/Common/test/testGPUsortCUDA.cu | 9 +++++---- GPU/GPUTracking/Base/GPUConstantMem.h | 9 +++++---- GPU/GPUTracking/Base/GPUGeneralKernels.cxx | 9 +++++---- GPU/GPUTracking/Base/GPUGeneralKernels.h | 9 +++++---- GPU/GPUTracking/Base/GPUKernelDebugOutput.cxx | 9 +++++---- GPU/GPUTracking/Base/GPUKernelDebugOutput.h | 9 +++++---- GPU/GPUTracking/Base/GPUMemoryResource.cxx | 9 +++++---- GPU/GPUTracking/Base/GPUMemoryResource.h | 9 +++++---- GPU/GPUTracking/Base/GPUParam.cxx | 9 +++++---- GPU/GPUTracking/Base/GPUParam.h | 9 +++++---- GPU/GPUTracking/Base/GPUParam.inc | 9 +++++---- GPU/GPUTracking/Base/GPUParamRTC.h | 9 +++++---- GPU/GPUTracking/Base/GPUProcessor.cxx | 9 +++++---- GPU/GPUTracking/Base/GPUProcessor.h | 9 +++++---- GPU/GPUTracking/Base/GPUReconstruction.cxx | 9 +++++---- GPU/GPUTracking/Base/GPUReconstruction.h | 9 +++++---- GPU/GPUTracking/Base/GPUReconstructionCPU.cxx | 9 +++++---- GPU/GPUTracking/Base/GPUReconstructionCPU.h | 9 +++++---- .../Base/GPUReconstructionConvert.cxx | 9 +++++---- .../Base/GPUReconstructionConvert.h | 9 +++++---- .../Base/GPUReconstructionDeviceBase.cxx | 9 +++++---- .../Base/GPUReconstructionDeviceBase.h | 9 +++++---- .../Base/GPUReconstructionHelpers.h | 9 +++++---- .../Base/GPUReconstructionIncludes.h | 9 +++++---- .../Base/GPUReconstructionIncludesDevice.h | 9 +++++---- .../Base/GPUReconstructionIncludesITS.h | 9 +++++---- .../Base/GPUReconstructionKernelMacros.h | 9 +++++---- .../Base/GPUReconstructionKernels.h | 9 +++++---- .../Base/GPUReconstructionTimeframe.cxx | 9 +++++---- .../Base/GPUReconstructionTimeframe.h | 9 +++++---- GPU/GPUTracking/Base/cuda/CMakeLists.txt | 13 +++++++------ GPU/GPUTracking/Base/cuda/CUDAThrustHelpers.h | 9 +++++---- .../Base/cuda/GPUReconstructionCUDA.cu | 9 +++++---- .../Base/cuda/GPUReconstructionCUDA.h | 9 +++++---- .../Base/cuda/GPUReconstructionCUDADef.h | 9 +++++---- .../Base/cuda/GPUReconstructionCUDAGenRTC.cu | 9 +++++---- .../Base/cuda/GPUReconstructionCUDAIncludes.h | 9 +++++---- .../Base/cuda/GPUReconstructionCUDAInternals.h | 9 +++++---- .../Base/cuda/GPUReconstructionCUDAKernels.cu | 9 +++++---- .../Base/cuda/GPUReconstructionCUDArtc.cu | 9 +++++---- GPU/GPUTracking/Base/hip/CMakeLists.txt | 13 +++++++------ .../Base/hip/GPUReconstructionHIP.h | 9 +++++---- .../Base/hip/GPUReconstructionHIP.hip.cxx | 9 +++++---- .../Base/hip/GPUReconstructionHIPIncludes.h | 9 +++++---- .../Base/hip/GPUReconstructionHIPInternals.h | 9 +++++---- GPU/GPUTracking/Base/hip/HIPThrustHelpers.h | 9 +++++---- .../Base/hip/test/testGPUsortHIP.hip.cxx | 9 +++++---- .../Base/opencl-common/CMakeLists.txt | 13 +++++++------ .../Base/opencl-common/GPUReconstructionOCL.cl | 9 +++++---- .../opencl-common/GPUReconstructionOCL.cxx | 9 +++++---- .../Base/opencl-common/GPUReconstructionOCL.h | 9 +++++---- .../GPUReconstructionOCLInternals.h | 9 +++++---- GPU/GPUTracking/Base/opencl/CMakeLists.txt | 13 +++++++------ .../Base/opencl/GPUReconstructionOCL1.cxx | 9 +++++---- .../Base/opencl/GPUReconstructionOCL1.h | 9 +++++---- .../opencl/GPUReconstructionOCL1Internals.h | 9 +++++---- GPU/GPUTracking/Base/opencl2/CMakeLists.txt | 13 +++++++------ .../Base/opencl2/GPUReconstructionOCL2.cxx | 9 +++++---- .../Base/opencl2/GPUReconstructionOCL2.h | 9 +++++---- .../opencl2/GPUReconstructionOCL2Internals.h | 9 +++++---- GPU/GPUTracking/Benchmark/CMakeLists.txt | 13 +++++++------ GPU/GPUTracking/Benchmark/standalone.cxx | 9 +++++---- GPU/GPUTracking/CMakeLists.txt | 13 +++++++------ .../AliHLTTPCClusterStatComponent.cxx | 9 +++++---- .../AliHLTTPCClusterStatComponent.h | 9 +++++---- .../DataCompression/GPUTPCClusterRejection.h | 9 +++++---- .../GPUTPCClusterStatistics.cxx | 9 +++++---- .../DataCompression/GPUTPCClusterStatistics.h | 9 +++++---- .../DataCompression/GPUTPCCompression.cxx | 9 +++++---- .../DataCompression/GPUTPCCompression.h | 9 +++++---- .../GPUTPCCompressionKernels.cxx | 9 +++++---- .../DataCompression/GPUTPCCompressionKernels.h | 9 +++++---- .../GPUTPCCompressionTrackModel.cxx | 9 +++++---- .../GPUTPCCompressionTrackModel.h | 9 +++++---- .../DataCompression/TPCClusterDecompressor.cxx | 9 +++++---- .../DataCompression/TPCClusterDecompressor.h | 9 +++++---- ...tandalone-cluster-dump-entropy-analysed.cxx | 9 +++++---- GPU/GPUTracking/DataTypes/GPUDataTypes.cxx | 9 +++++---- GPU/GPUTracking/DataTypes/GPUDataTypes.h | 9 +++++---- GPU/GPUTracking/DataTypes/GPUHostDataTypes.h | 9 +++++---- .../DataTypes/GPUMemorySizeScalers.cxx | 9 +++++---- .../DataTypes/GPUMemorySizeScalers.h | 9 +++++---- GPU/GPUTracking/DataTypes/GPUO2DataTypes.h | 9 +++++---- GPU/GPUTracking/DataTypes/GPUO2FakeClasses.h | 9 +++++---- GPU/GPUTracking/DataTypes/GPUOutputControl.h | 9 +++++---- GPU/GPUTracking/DataTypes/GPUSettings.h | 9 +++++---- GPU/GPUTracking/DataTypes/GPUTRDDef.h | 9 +++++---- .../DataTypes/GPUTRDInterfaceO2Track.h | 9 +++++---- GPU/GPUTracking/DataTypes/GPUTRDO2BaseTrack.h | 9 +++++---- GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx | 9 +++++---- GPU/GPUTracking/DataTypes/GPUTRDTrack.h | 9 +++++---- GPU/GPUTracking/DataTypes/GPUTRDTrackO2.cxx | 9 +++++---- GPU/GPUTracking/DataTypes/GPUdEdxInfo.h | 9 +++++---- GPU/GPUTracking/DataTypes/TPCPadGainCalib.cxx | 9 +++++---- GPU/GPUTracking/DataTypes/TPCPadGainCalib.h | 9 +++++---- .../DataTypes/TPCdEdxCalibrationSplines.cxx | 9 +++++---- .../DataTypes/TPCdEdxCalibrationSplines.h | 9 +++++---- GPU/GPUTracking/Debug/GPUROOTDump.h | 9 +++++---- GPU/GPUTracking/Debug/GPUROOTDumpCore.cxx | 9 +++++---- GPU/GPUTracking/Debug/GPUROOTDumpCore.h | 9 +++++---- GPU/GPUTracking/Definitions/GPUDef.h | 9 +++++---- .../Definitions/GPUDefConstantsAndSettings.h | 9 +++++---- .../Definitions/GPUDefGPUParameters.h | 9 +++++---- GPU/GPUTracking/Definitions/GPUDefMacros.h | 9 +++++---- .../Definitions/GPUDefOpenCL12Templates.h | 9 +++++---- GPU/GPUTracking/Definitions/GPULogging.h | 9 +++++---- GPU/GPUTracking/Definitions/GPUSettingsList.h | 9 +++++---- .../Definitions/clusterFinderDefs.h | 9 +++++---- GPU/GPUTracking/GPUTrackingLinkDef_AliRoot.h | 9 +++++---- GPU/GPUTracking/GPUTrackingLinkDef_O2.h | 9 +++++---- .../Global/AliHLTGPUDumpComponent.cxx | 9 +++++---- .../Global/AliHLTGPUDumpComponent.h | 9 +++++---- GPU/GPUTracking/Global/GPUChain.cxx | 9 +++++---- GPU/GPUTracking/Global/GPUChain.h | 9 +++++---- GPU/GPUTracking/Global/GPUChainITS.cxx | 9 +++++---- GPU/GPUTracking/Global/GPUChainITS.h | 9 +++++---- GPU/GPUTracking/Global/GPUChainTracking.cxx | 9 +++++---- GPU/GPUTracking/Global/GPUChainTracking.h | 9 +++++---- .../Global/GPUChainTrackingClusterizer.cxx | 9 +++++---- .../Global/GPUChainTrackingCompression.cxx | 9 +++++---- .../GPUChainTrackingDebugAndProfiling.cxx | 9 +++++---- GPU/GPUTracking/Global/GPUChainTrackingDefs.h | 9 +++++---- GPU/GPUTracking/Global/GPUChainTrackingIO.cxx | 9 +++++---- .../Global/GPUChainTrackingMerger.cxx | 9 +++++---- .../Global/GPUChainTrackingRefit.cxx | 9 +++++---- .../Global/GPUChainTrackingSliceTracker.cxx | 9 +++++---- GPU/GPUTracking/Global/GPUChainTrackingTRD.cxx | 9 +++++---- .../Global/GPUChainTrackingTransformation.cxx | 9 +++++---- GPU/GPUTracking/Global/GPUErrorCodes.h | 9 +++++---- GPU/GPUTracking/Global/GPUErrors.cxx | 9 +++++---- GPU/GPUTracking/Global/GPUErrors.h | 9 +++++---- .../Global/GPUTrackingInputProvider.cxx | 9 +++++---- .../Global/GPUTrackingInputProvider.h | 9 +++++---- .../HLTHeaders/AliHLTTPCClusterMCData.h | 9 +++++---- .../HLTHeaders/AliHLTTPCRawCluster.h | 9 +++++---- GPU/GPUTracking/ITS/GPUITSFitter.cxx | 9 +++++---- GPU/GPUTracking/ITS/GPUITSFitter.h | 9 +++++---- GPU/GPUTracking/ITS/GPUITSFitterKernels.cxx | 9 +++++---- GPU/GPUTracking/ITS/GPUITSFitterKernels.h | 9 +++++---- GPU/GPUTracking/ITS/GPUITSTrack.h | 9 +++++---- GPU/GPUTracking/Interface/CMakeLists.txt | 13 +++++++------ GPU/GPUTracking/Interface/GPUO2Interface.cxx | 9 +++++---- GPU/GPUTracking/Interface/GPUO2Interface.h | 9 +++++---- .../GPUO2InterfaceConfigurableParam.cxx | 9 +++++---- .../GPUO2InterfaceConfigurableParam.h | 9 +++++---- .../Interface/GPUO2InterfaceConfiguration.cxx | 9 +++++---- .../Interface/GPUO2InterfaceConfiguration.h | 9 +++++---- .../Interface/GPUO2InterfaceDisplay.cxx | 9 +++++---- .../Interface/GPUO2InterfaceDisplay.h | 9 +++++---- .../Interface/GPUO2InterfaceLinkDef.h | 9 +++++---- GPU/GPUTracking/Interface/GPUO2InterfaceQA.cxx | 9 +++++---- GPU/GPUTracking/Interface/GPUO2InterfaceQA.h | 9 +++++---- .../Interface/GPUO2InterfaceRefit.cxx | 9 +++++---- .../Interface/GPUO2InterfaceRefit.h | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMBorderTrack.h | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMMergedTrack.h | 9 +++++---- .../Merger/GPUTPCGMMergedTrackHit.h | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMMerger.cxx | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMMerger.h | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMMergerDump.cxx | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMMergerGPU.cxx | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMMergerGPU.h | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMMergerTypes.h | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMO2Output.cxx | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMO2Output.h | 9 +++++---- .../Merger/GPUTPCGMOfflineStatisticalErrors.h | 9 +++++---- .../Merger/GPUTPCGMPhysicalTrackModel.cxx | 9 +++++---- .../Merger/GPUTPCGMPhysicalTrackModel.h | 9 +++++---- .../Merger/GPUTPCGMPolynomialField.cxx | 9 +++++---- .../Merger/GPUTPCGMPolynomialField.h | 9 +++++---- .../Merger/GPUTPCGMPolynomialFieldManager.cxx | 9 +++++---- .../Merger/GPUTPCGMPolynomialFieldManager.h | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMPropagator.cxx | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMPropagator.h | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMSliceTrack.cxx | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMSliceTrack.h | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMTrackParam.cxx | 9 +++++---- GPU/GPUTracking/Merger/GPUTPCGMTrackParam.h | 9 +++++---- .../Merger/GPUTPCGMTracksToTPCSeeds.cxx | 9 +++++---- .../Merger/GPUTPCGMTracksToTPCSeeds.h | 9 +++++---- .../Merger/GPUTPCGlobalMergerComponent.cxx | 9 +++++---- .../Merger/GPUTPCGlobalMergerComponent.h | 9 +++++---- GPU/GPUTracking/Refit/GPUTrackParamConvert.h | 9 +++++---- GPU/GPUTracking/Refit/GPUTrackingRefit.cxx | 9 +++++---- GPU/GPUTracking/Refit/GPUTrackingRefit.h | 9 +++++---- .../Refit/GPUTrackingRefitKernel.cxx | 9 +++++---- GPU/GPUTracking/Refit/GPUTrackingRefitKernel.h | 9 +++++---- .../SliceTracker/GPUTPCBaseTrackParam.h | 9 +++++---- .../SliceTracker/GPUTPCClusterData.h | 9 +++++---- .../SliceTracker/GPUTPCCreateSliceData.cxx | 9 +++++---- .../SliceTracker/GPUTPCCreateSliceData.h | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCDef.h | 9 +++++---- .../SliceTracker/GPUTPCDefinitions.h | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCGeometry.h | 9 +++++---- .../SliceTracker/GPUTPCGlobalTracking.cxx | 9 +++++---- .../SliceTracker/GPUTPCGlobalTracking.h | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCGrid.cxx | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCGrid.h | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCHit.h | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCHitId.h | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCMCInfo.h | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCMCPoint.cxx | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCMCPoint.h | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCMCTrack.cxx | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCMCTrack.h | 9 +++++---- .../SliceTracker/GPUTPCNeighboursCleaner.cxx | 9 +++++---- .../SliceTracker/GPUTPCNeighboursCleaner.h | 9 +++++---- .../SliceTracker/GPUTPCNeighboursFinder.cxx | 9 +++++---- .../SliceTracker/GPUTPCNeighboursFinder.h | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCRow.cxx | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCRow.h | 9 +++++---- .../SliceTracker/GPUTPCSliceData.cxx | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCSliceData.h | 9 +++++---- .../SliceTracker/GPUTPCSliceOutCluster.h | 9 +++++---- .../SliceTracker/GPUTPCSliceOutput.cxx | 9 +++++---- .../SliceTracker/GPUTPCSliceOutput.h | 9 +++++---- .../SliceTracker/GPUTPCStartHitsFinder.cxx | 9 +++++---- .../SliceTracker/GPUTPCStartHitsFinder.h | 9 +++++---- .../SliceTracker/GPUTPCStartHitsSorter.cxx | 9 +++++---- .../SliceTracker/GPUTPCStartHitsSorter.h | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCTrack.cxx | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCTrack.h | 9 +++++---- .../SliceTracker/GPUTPCTrackLinearisation.h | 9 +++++---- .../SliceTracker/GPUTPCTrackParam.cxx | 9 +++++---- .../SliceTracker/GPUTPCTrackParam.h | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCTracker.cxx | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCTracker.h | 9 +++++---- .../SliceTracker/GPUTPCTrackerComponent.cxx | 9 +++++---- .../SliceTracker/GPUTPCTrackerComponent.h | 9 +++++---- .../SliceTracker/GPUTPCTrackerDump.cxx | 9 +++++---- GPU/GPUTracking/SliceTracker/GPUTPCTracklet.h | 9 +++++---- .../SliceTracker/GPUTPCTrackletConstructor.cxx | 9 +++++---- .../SliceTracker/GPUTPCTrackletConstructor.h | 9 +++++---- .../SliceTracker/GPUTPCTrackletSelector.cxx | 9 +++++---- .../SliceTracker/GPUTPCTrackletSelector.h | 9 +++++---- GPU/GPUTracking/Standalone/CMakeLists.txt | 13 +++++++------ GPU/GPUTracking/TPCClusterFinder/Array2D.h | 9 +++++---- GPU/GPUTracking/TPCClusterFinder/CfConsts.h | 9 +++++---- GPU/GPUTracking/TPCClusterFinder/CfFragment.h | 9 +++++---- GPU/GPUTracking/TPCClusterFinder/CfUtils.h | 9 +++++---- GPU/GPUTracking/TPCClusterFinder/ChargePos.h | 9 +++++---- .../TPCClusterFinder/ClusterAccumulator.cxx | 9 +++++---- .../TPCClusterFinder/ClusterAccumulator.h | 9 +++++---- .../TPCClusterFinder/GPUTPCCFChainContext.h | 9 +++++---- .../GPUTPCCFChargeMapFiller.cxx | 9 +++++---- .../TPCClusterFinder/GPUTPCCFChargeMapFiller.h | 9 +++++---- .../GPUTPCCFCheckPadBaseline.cxx | 9 +++++---- .../GPUTPCCFCheckPadBaseline.h | 9 +++++---- .../TPCClusterFinder/GPUTPCCFClusterizer.cxx | 9 +++++---- .../TPCClusterFinder/GPUTPCCFClusterizer.h | 9 +++++---- .../TPCClusterFinder/GPUTPCCFDecodeZS.cxx | 9 +++++---- .../TPCClusterFinder/GPUTPCCFDecodeZS.h | 9 +++++---- .../TPCClusterFinder/GPUTPCCFDeconvolution.cxx | 9 +++++---- .../TPCClusterFinder/GPUTPCCFDeconvolution.h | 9 +++++---- .../TPCClusterFinder/GPUTPCCFGather.cxx | 9 +++++---- .../TPCClusterFinder/GPUTPCCFGather.h | 9 +++++---- .../GPUTPCCFMCLabelFlattener.cxx | 9 +++++---- .../GPUTPCCFMCLabelFlattener.h | 9 +++++---- .../GPUTPCCFNoiseSuppression.cxx | 9 +++++---- .../GPUTPCCFNoiseSuppression.h | 9 +++++---- .../TPCClusterFinder/GPUTPCCFPeakFinder.cxx | 9 +++++---- .../TPCClusterFinder/GPUTPCCFPeakFinder.h | 9 +++++---- .../GPUTPCCFStreamCompaction.cxx | 9 +++++---- .../GPUTPCCFStreamCompaction.h | 9 +++++---- .../TPCClusterFinder/GPUTPCClusterFinder.cxx | 9 +++++---- .../TPCClusterFinder/GPUTPCClusterFinder.h | 9 +++++---- .../GPUTPCClusterFinderDump.cxx | 9 +++++---- .../GPUTPCClusterFinderKernels.h | 9 +++++---- .../TPCClusterFinder/MCLabelAccumulator.cxx | 9 +++++---- .../TPCClusterFinder/MCLabelAccumulator.h | 9 +++++---- .../TPCClusterFinder/PackedCharge.h | 9 +++++---- GPU/GPUTracking/TPCConvert/GPUTPCConvert.cxx | 9 +++++---- GPU/GPUTracking/TPCConvert/GPUTPCConvert.h | 9 +++++---- GPU/GPUTracking/TPCConvert/GPUTPCConvertImpl.h | 9 +++++---- .../TPCConvert/GPUTPCConvertKernel.cxx | 9 +++++---- .../TPCConvert/GPUTPCConvertKernel.h | 9 +++++---- GPU/GPUTracking/TRDTracking/GPUTRDGeometry.h | 9 +++++---- GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h | 9 +++++---- GPU/GPUTracking/TRDTracking/GPUTRDSpacePoint.h | 9 +++++---- GPU/GPUTracking/TRDTracking/GPUTRDTrackData.h | 9 +++++---- GPU/GPUTracking/TRDTracking/GPUTRDTrackPoint.h | 9 +++++---- GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx | 9 +++++---- GPU/GPUTracking/TRDTracking/GPUTRDTracker.h | 9 +++++---- .../TRDTracking/GPUTRDTrackerComponent.cxx | 9 +++++---- .../TRDTracking/GPUTRDTrackerComponent.h | 9 +++++---- .../TRDTracking/GPUTRDTrackerDebug.h | 9 +++++---- .../TRDTracking/GPUTRDTrackerKernels.cxx | 9 +++++---- .../TRDTracking/GPUTRDTrackerKernels.h | 9 +++++---- .../TRDTracking/GPUTRDTrackletLabels.h | 9 +++++---- .../GPUTRDTrackletReaderComponent.cxx | 9 +++++---- .../GPUTRDTrackletReaderComponent.h | 9 +++++---- .../TRDTracking/GPUTRDTrackletWord.cxx | 9 +++++---- .../TRDTracking/GPUTRDTrackletWord.h | 9 +++++---- .../TRDTracking/macros/checkDbgOutput.C | 9 +++++---- GPU/GPUTracking/dEdx/GPUdEdx.cxx | 9 +++++---- GPU/GPUTracking/dEdx/GPUdEdx.h | 9 +++++---- GPU/GPUTracking/display/GPUDisplay.cxx | 9 +++++---- GPU/GPUTracking/display/GPUDisplay.h | 9 +++++---- GPU/GPUTracking/display/GPUDisplayBackend.cxx | 9 +++++---- GPU/GPUTracking/display/GPUDisplayBackend.h | 9 +++++---- .../display/GPUDisplayBackendGlfw.cxx | 9 +++++---- .../display/GPUDisplayBackendGlfw.h | 9 +++++---- .../display/GPUDisplayBackendGlut.cxx | 9 +++++---- .../display/GPUDisplayBackendGlut.h | 9 +++++---- .../display/GPUDisplayBackendNone.cxx | 9 +++++---- .../display/GPUDisplayBackendNone.h | 9 +++++---- .../display/GPUDisplayBackendWindows.cxx | 9 +++++---- .../display/GPUDisplayBackendWindows.h | 9 +++++---- .../display/GPUDisplayBackendX11.cxx | 9 +++++---- GPU/GPUTracking/display/GPUDisplayBackendX11.h | 9 +++++---- GPU/GPUTracking/display/GPUDisplayExt.h | 9 +++++---- .../display/GPUDisplayInterpolation.cxx | 9 +++++---- GPU/GPUTracking/display/GPUDisplayKeys.cxx | 9 +++++---- .../display/GPUDisplayQuaternion.cxx | 9 +++++---- GPU/GPUTracking/display/GPUDisplayShaders.h | 9 +++++---- GPU/GPUTracking/display/bitmapfile.h | 9 +++++---- .../oldFiles/AliHLT3DTrackParam.cxx | 9 +++++---- GPU/GPUTracking/oldFiles/AliHLT3DTrackParam.h | 9 +++++---- .../oldFiles/GPUTPCGMOfflineFitter.cxx | 9 +++++---- .../oldFiles/GPUTPCGMOfflineFitter.h | 9 +++++---- GPU/GPUTracking/qa/GPUQA.cxx | 9 +++++---- GPU/GPUTracking/qa/GPUQA.h | 9 +++++---- GPU/GPUTracking/qa/GPUQAHelper.h | 9 +++++---- GPU/GPUTracking/qa/genEvents.cxx | 9 +++++---- GPU/GPUTracking/qa/genEvents.h | 9 +++++---- GPU/GPUTracking/qconfigoptions.h | 9 +++++---- GPU/GPUTracking/utils/EmptyFile.cxx | 9 +++++---- GPU/GPUTracking/utils/bitfield.h | 9 +++++---- GPU/GPUTracking/utils/linux_helpers.h | 9 +++++---- .../utils/makefile_opencl_compiler.cxx | 9 +++++---- .../utils/opencl_compiler_structs.h | 9 +++++---- GPU/GPUTracking/utils/opencl_obtain_program.h | 9 +++++---- .../utils/pthread_mutex_win32_wrapper.h | 9 +++++---- GPU/GPUTracking/utils/qconfig.cxx | 9 +++++---- GPU/GPUTracking/utils/qconfig.h | 9 +++++---- GPU/GPUTracking/utils/qconfig_helpers.h | 9 +++++---- GPU/GPUTracking/utils/qconfigrtc.h | 9 +++++---- GPU/GPUTracking/utils/qmaths_helpers.h | 9 +++++---- GPU/GPUTracking/utils/qsem.cxx | 9 +++++---- GPU/GPUTracking/utils/qsem.h | 9 +++++---- GPU/GPUTracking/utils/strtag.h | 9 +++++---- GPU/GPUTracking/utils/threadserver.cxx | 9 +++++---- GPU/GPUTracking/utils/threadserver.h | 9 +++++---- GPU/GPUTracking/utils/timer.cxx | 9 +++++---- GPU/GPUTracking/utils/timer.h | 9 +++++---- GPU/GPUTracking/utils/vecpod.h | 9 +++++---- GPU/TPCFastTransformation/CMakeLists.txt | 13 +++++++------ GPU/TPCFastTransformation/ChebyshevFit1D.cxx | 9 +++++---- GPU/TPCFastTransformation/ChebyshevFit1D.h | 9 +++++---- GPU/TPCFastTransformation/Spline.cxx | 9 +++++---- GPU/TPCFastTransformation/Spline.h | 9 +++++---- GPU/TPCFastTransformation/Spline1D.cxx | 9 +++++---- GPU/TPCFastTransformation/Spline1D.h | 9 +++++---- GPU/TPCFastTransformation/Spline1DHelper.cxx | 9 +++++---- GPU/TPCFastTransformation/Spline1DHelper.h | 9 +++++---- GPU/TPCFastTransformation/Spline1DSpec.cxx | 9 +++++---- GPU/TPCFastTransformation/Spline1DSpec.h | 9 +++++---- GPU/TPCFastTransformation/Spline2D.cxx | 9 +++++---- GPU/TPCFastTransformation/Spline2D.h | 9 +++++---- GPU/TPCFastTransformation/Spline2DHelper.cxx | 9 +++++---- GPU/TPCFastTransformation/Spline2DHelper.h | 9 +++++---- GPU/TPCFastTransformation/Spline2DSpec.cxx | 9 +++++---- GPU/TPCFastTransformation/Spline2DSpec.h | 9 +++++---- GPU/TPCFastTransformation/SplineHelper.cxx | 9 +++++---- GPU/TPCFastTransformation/SplineHelper.h | 9 +++++---- GPU/TPCFastTransformation/SplineSpec.cxx | 9 +++++---- GPU/TPCFastTransformation/SplineSpec.h | 9 +++++---- GPU/TPCFastTransformation/SplineUtil.h | 9 +++++---- .../TPCFastSpaceChargeCorrection.cxx | 9 +++++---- .../TPCFastSpaceChargeCorrection.h | 9 +++++---- GPU/TPCFastTransformation/TPCFastTransform.cxx | 9 +++++---- GPU/TPCFastTransformation/TPCFastTransform.h | 9 +++++---- .../TPCFastTransformGeo.cxx | 9 +++++---- .../TPCFastTransformGeo.h | 9 +++++---- .../TPCFastTransformManager.cxx | 9 +++++---- .../TPCFastTransformManager.h | 9 +++++---- .../TPCFastTransformQA.cxx | 9 +++++---- GPU/TPCFastTransformation/TPCFastTransformQA.h | 9 +++++---- .../TPCFastTransformationLinkDef_AliRoot.h | 9 +++++---- .../TPCFastTransformationLinkDef_O2.h | 9 +++++---- .../generateTPCDistortionNTupleAliRoot.C | 9 +++++---- .../devtools/IrregularSpline1D.cxx | 9 +++++---- .../devtools/IrregularSpline1D.h | 9 +++++---- .../devtools/IrregularSpline2D3D.cxx | 9 +++++---- .../devtools/IrregularSpline2D3D.h | 9 +++++---- .../devtools/IrregularSpline2D3DCalibrator.cxx | 9 +++++---- .../devtools/IrregularSpline2D3DCalibrator.h | 9 +++++---- .../IrregularSpline2D3DCalibratorTest.C | 9 +++++---- .../devtools/IrregularSpline2D3DTest.C | 9 +++++---- .../devtools/RegularSpline1D.h | 9 +++++---- .../devtools/RegularSpline1DTest.C | 9 +++++---- .../devtools/SemiregularSpline2D3D.cxx | 9 +++++---- .../devtools/SemiregularSpline2D3D.h | 9 +++++---- .../devtools/SemiregularSpline2D3DTest.C | 9 +++++---- .../macro/generateTPCCorrectionNTuple.C | 9 +++++---- GPU/TPCFastTransformation/test/testSplines.cxx | 9 +++++---- GPU/Utils/CMakeLists.txt | 13 +++++++------ GPU/Utils/FlatObject.h | 9 +++++---- GPU/Utils/GPUCommonBitSet.h | 9 +++++---- GPU/Utils/GPUUtilsLinkDef.h | 9 +++++---- GPU/Workflow/CMakeLists.txt | 13 +++++++------ GPU/Workflow/helper/CMakeLists.txt | 13 +++++++------ .../GPUWorkflowHelper/GPUWorkflowHelper.h | 9 +++++---- GPU/Workflow/helper/src/GPUWorkflowHelper.cxx | 9 +++++---- .../include/GPUWorkflow/GPUWorkflowSpec.h | 9 +++++---- .../include/GPUWorkflow/O2GPUDPLDisplay.h | 9 +++++---- GPU/Workflow/src/GPUWorkflowSpec.cxx | 9 +++++---- GPU/Workflow/src/O2GPUDPLDisplay.cxx | 9 +++++---- GPU/Workflow/src/gpu-reco-workflow.cxx | 9 +++++---- Generators/CMakeLists.txt | 13 +++++++------ Generators/include/Generators/BoxGunParam.h | 9 +++++---- Generators/include/Generators/DecayerPythia8.h | 9 +++++---- .../include/Generators/DecayerPythia8Param.h | 9 +++++---- .../include/Generators/GenCosmicsParam.h | 9 +++++---- Generators/include/Generators/Generator.h | 9 +++++---- .../Generators/GeneratorExternalParam.h | 9 +++++---- .../include/Generators/GeneratorFactory.h | 9 +++++---- .../include/Generators/GeneratorFromFile.h | 9 +++++---- .../Generators/GeneratorFromO2KineParam.h | 9 +++++---- Generators/include/Generators/GeneratorHepMC.h | 9 +++++---- .../include/Generators/GeneratorHepMCParam.h | 9 +++++---- .../include/Generators/GeneratorPythia6.h | 9 +++++---- .../include/Generators/GeneratorPythia6Param.h | 9 +++++---- .../include/Generators/GeneratorPythia8.h | 9 +++++---- .../include/Generators/GeneratorPythia8Param.h | 9 +++++---- .../include/Generators/GeneratorTGenerator.h | 9 +++++---- .../Generators/InteractionDiamondParam.h | 9 +++++---- Generators/include/Generators/PDG.h | 9 +++++---- .../include/Generators/PrimaryGenerator.h | 9 +++++---- Generators/include/Generators/QEDGenParam.h | 9 +++++---- Generators/include/Generators/Trigger.h | 9 +++++---- .../include/Generators/TriggerExternalParam.h | 9 +++++---- .../include/Generators/TriggerParticle.h | 9 +++++---- .../include/Generators/TriggerParticleParam.h | 9 +++++---- Generators/share/external/GenCosmics.C | 9 +++++---- Generators/share/external/GenCosmicsLoader.C | 9 +++++---- Generators/share/external/QEDLoader.C | 9 +++++---- Generators/share/external/QEDepem.C | 9 +++++---- Generators/src/BoxGunParam.cxx | 9 +++++---- Generators/src/DecayerPythia8.cxx | 9 +++++---- Generators/src/DecayerPythia8Param.cxx | 9 +++++---- Generators/src/GenCosmicsParam.cxx | 9 +++++---- Generators/src/Generator.cxx | 9 +++++---- Generators/src/GeneratorExternalParam.cxx | 9 +++++---- Generators/src/GeneratorFactory.cxx | 9 +++++---- Generators/src/GeneratorFromFile.cxx | 9 +++++---- Generators/src/GeneratorFromO2KineParam.cxx | 9 +++++---- Generators/src/GeneratorHepMC.cxx | 9 +++++---- Generators/src/GeneratorHepMCParam.cxx | 9 +++++---- Generators/src/GeneratorPythia6.cxx | 9 +++++---- Generators/src/GeneratorPythia6Param.cxx | 9 +++++---- Generators/src/GeneratorPythia8.cxx | 9 +++++---- Generators/src/GeneratorPythia8Param.cxx | 9 +++++---- Generators/src/GeneratorTGenerator.cxx | 9 +++++---- Generators/src/GeneratorsLinkDef.h | 9 +++++---- Generators/src/InteractionDiamondParam.cxx | 9 +++++---- Generators/src/PDG.cxx | 9 +++++---- Generators/src/PrimaryGenerator.cxx | 9 +++++---- Generators/src/QEDGenParam.cxx | 9 +++++---- Generators/src/Trigger.cxx | 9 +++++---- Generators/src/TriggerExternalParam.cxx | 9 +++++---- Generators/src/TriggerParticle.cxx | 9 +++++---- Generators/src/TriggerParticleParam.cxx | 9 +++++---- Steer/CMakeLists.txt | 13 +++++++------ Steer/DigitizerWorkflow/CMakeLists.txt | 13 +++++++------ .../DigitizerWorkflow/src/CPVDigitWriterSpec.h | 9 +++++---- .../DigitizerWorkflow/src/CPVDigitizerSpec.cxx | 9 +++++---- Steer/DigitizerWorkflow/src/CPVDigitizerSpec.h | 9 +++++---- .../DigitizerWorkflow/src/CTPDigitizerSpec.cxx | 9 +++++---- Steer/DigitizerWorkflow/src/CTPDigitizerSpec.h | 9 +++++---- .../src/EMCALDigitWriterSpec.cxx | 9 +++++---- .../src/EMCALDigitWriterSpec.h | 9 +++++---- .../src/EMCALDigitizerSpec.cxx | 9 +++++---- .../DigitizerWorkflow/src/EMCALDigitizerSpec.h | 9 +++++---- .../DigitizerWorkflow/src/FDDDigitizerSpec.cxx | 9 +++++---- Steer/DigitizerWorkflow/src/FDDDigitizerSpec.h | 9 +++++---- .../DigitizerWorkflow/src/FT0DigitWriterSpec.h | 9 +++++---- .../DigitizerWorkflow/src/FT0DigitizerSpec.cxx | 9 +++++---- Steer/DigitizerWorkflow/src/FT0DigitizerSpec.h | 9 +++++---- .../DigitizerWorkflow/src/FV0DigitWriterSpec.h | 9 +++++---- .../DigitizerWorkflow/src/FV0DigitizerSpec.cxx | 9 +++++---- Steer/DigitizerWorkflow/src/FV0DigitizerSpec.h | 9 +++++---- Steer/DigitizerWorkflow/src/GRPUpdaterSpec.cxx | 9 +++++---- Steer/DigitizerWorkflow/src/GRPUpdaterSpec.h | 9 +++++---- .../src/HMPIDDigitWriterSpec.h | 9 +++++---- .../src/HMPIDDigitizerSpec.cxx | 9 +++++---- .../DigitizerWorkflow/src/HMPIDDigitizerSpec.h | 9 +++++---- .../src/ITS3DigitizerSpec.cxx | 9 +++++---- .../DigitizerWorkflow/src/ITS3DigitizerSpec.h | 9 +++++---- .../src/ITSMFTDigitizerSpec.cxx | 9 +++++---- .../src/ITSMFTDigitizerSpec.h | 9 +++++---- .../DigitizerWorkflow/src/MCHDigitWriterSpec.h | 9 +++++---- .../DigitizerWorkflow/src/MCHDigitizerSpec.cxx | 9 +++++---- Steer/DigitizerWorkflow/src/MCHDigitizerSpec.h | 9 +++++---- .../DigitizerWorkflow/src/MCTruthReaderSpec.h | 9 +++++---- .../src/MCTruthSourceSpec.cxx | 9 +++++---- .../DigitizerWorkflow/src/MCTruthSourceSpec.h | 9 +++++---- .../src/MCTruthTestWorkflow.cxx | 9 +++++---- .../src/MCTruthWriterSpec.cxx | 9 +++++---- .../DigitizerWorkflow/src/MCTruthWriterSpec.h | 9 +++++---- .../DigitizerWorkflow/src/MIDDigitWriterSpec.h | 9 +++++---- .../DigitizerWorkflow/src/MIDDigitizerSpec.cxx | 9 +++++---- Steer/DigitizerWorkflow/src/MIDDigitizerSpec.h | 9 +++++---- .../src/PHOSDigitWriterSpec.h | 9 +++++---- .../src/PHOSDigitizerSpec.cxx | 9 +++++---- .../DigitizerWorkflow/src/PHOSDigitizerSpec.h | 9 +++++---- Steer/DigitizerWorkflow/src/SimReaderSpec.cxx | 9 +++++---- Steer/DigitizerWorkflow/src/SimReaderSpec.h | 9 +++++---- .../src/SimpleDigitizerWorkflow.cxx | 9 +++++---- .../DigitizerWorkflow/src/TOFDigitizerSpec.cxx | 9 +++++---- Steer/DigitizerWorkflow/src/TOFDigitizerSpec.h | 9 +++++---- .../src/TPCDigitRootWriterSpec.cxx | 9 +++++---- .../src/TPCDigitRootWriterSpec.h | 9 +++++---- .../DigitizerWorkflow/src/TPCDigitizerSpec.cxx | 9 +++++---- Steer/DigitizerWorkflow/src/TPCDigitizerSpec.h | 9 +++++---- .../DigitizerWorkflow/src/ZDCDigitizerSpec.cxx | 9 +++++---- Steer/DigitizerWorkflow/src/ZDCDigitizerSpec.h | 9 +++++---- Steer/include/Steer/HitProcessingManager.h | 9 +++++---- Steer/include/Steer/InteractionSampler.h | 9 +++++---- Steer/include/Steer/MCKinematicsReader.h | 9 +++++---- Steer/include/Steer/O2MCApplication.h | 9 +++++---- Steer/include/Steer/O2MCApplicationBase.h | 9 +++++---- Steer/include/Steer/O2RunSim.h | 9 +++++---- Steer/src/HitProcessingManager.cxx | 9 +++++---- Steer/src/InteractionSampler.cxx | 9 +++++---- Steer/src/MCKinematicsReader.cxx | 9 +++++---- Steer/src/O2MCApplication.cxx | 9 +++++---- Steer/src/SteerLinkDef.h | 9 +++++---- Steer/test/testHitProcessingManager.cxx | 9 +++++---- Steer/test/testInteractionSampler.cxx | 9 +++++---- Utilities/CMakeLists.txt | 13 +++++++------ Utilities/DataCompression/CMakeLists.txt | 13 +++++++------ .../DataCompression/CodingModelDispatcher.h | 9 +++++---- .../include/DataCompression/DataDeflater.h | 9 +++++---- .../include/DataCompression/HuffmanCodec.h | 9 +++++---- .../TruncatedPrecisionConverter.h | 9 +++++---- .../include/DataCompression/dc_primitives.h | 9 +++++---- .../DataCompression/runtime_container.h | 9 +++++---- Utilities/DataCompression/test/DataGenerator.h | 9 +++++---- Utilities/DataCompression/test/Fifo.h | 9 +++++---- .../DataCompression/test/test_DataDeflater.cxx | 9 +++++---- .../test/test_DataGenerator.cxx | 9 +++++---- Utilities/DataCompression/test/test_Fifo.cxx | 9 +++++---- .../DataCompression/test/test_HuffmanCodec.cxx | 9 +++++---- .../test/test_dc_primitives.cxx | 9 +++++---- .../tpccluster_parameter_model.h | 9 +++++---- Utilities/DataSampling/CMakeLists.txt | 13 +++++++------ .../include/DataSampling/DataSampling.h | 9 +++++---- .../DataSampling/DataSamplingCondition.h | 9 +++++---- .../DataSamplingConditionFactory.h | 9 +++++---- .../include/DataSampling/DataSamplingHeader.h | 9 +++++---- .../include/DataSampling/DataSamplingPolicy.h | 9 +++++---- .../DataSampling/DataSamplingReadoutAdapter.h | 9 +++++---- .../include/DataSampling/Dispatcher.h | 9 +++++---- Utilities/DataSampling/src/DataSampling.cxx | 9 +++++---- .../src/DataSamplingConditionCustom.cxx | 9 +++++---- .../src/DataSamplingConditionFactory.cxx | 9 +++++---- .../src/DataSamplingConditionNConsecutive.cxx | 9 +++++---- .../src/DataSamplingConditionPayloadSize.cxx | 9 +++++---- .../src/DataSamplingConditionRandom.cxx | 9 +++++---- .../DataSampling/src/DataSamplingHeader.cxx | 9 +++++---- .../DataSampling/src/DataSamplingPolicy.cxx | 9 +++++---- .../src/DataSamplingReadoutAdapter.cxx | 9 +++++---- Utilities/DataSampling/src/Dispatcher.cxx | 9 +++++---- .../src/dataSamplingStandalone.cxx | 9 +++++---- .../test/dataSamplingBenchmark.cxx | 9 +++++---- .../DataSampling/test/dataSamplingParallel.cxx | 9 +++++---- .../test/dataSamplingPodAndRoot.cxx | 9 +++++---- .../test/dataSamplingTimePipeline.cxx | 9 +++++---- .../DataSampling/test/test_DataSampling.cxx | 9 +++++---- .../test/test_DataSamplingCondition.cxx | 9 +++++---- .../test/test_DataSamplingHeader.cxx | 9 +++++---- .../test/test_DataSamplingPolicy.cxx | 9 +++++---- Utilities/MCStepLogger/CMakeLists.txt | 13 +++++++------ Utilities/Mergers/CMakeLists.txt | 13 +++++++------ .../include/Mergers/CustomMergeableObject.h | 9 +++++---- .../include/Mergers/CustomMergeableTObject.h | 9 +++++---- .../include/Mergers/FullHistoryMerger.h | 9 +++++---- .../include/Mergers/IntegratingMerger.h | 9 +++++---- Utilities/Mergers/include/Mergers/LinkDef.h | 9 +++++---- .../Mergers/include/Mergers/MergeInterface.h | 9 +++++---- .../Mergers/include/Mergers/MergerAlgorithm.h | 9 +++++---- .../Mergers/include/Mergers/MergerBuilder.h | 9 +++++---- .../Mergers/include/Mergers/MergerConfig.h | 9 +++++---- .../Mergers/MergerInfrastructureBuilder.h | 9 +++++---- .../Mergers/include/Mergers/ObjectStore.h | 9 +++++---- Utilities/Mergers/src/FullHistoryMerger.cxx | 9 +++++---- Utilities/Mergers/src/IntegratingMerger.cxx | 9 +++++---- Utilities/Mergers/src/MergerAlgorithm.cxx | 9 +++++---- Utilities/Mergers/src/MergerBuilder.cxx | 9 +++++---- .../src/MergerInfrastructureBuilder.cxx | 9 +++++---- Utilities/Mergers/src/ObjectStore.cxx | 9 +++++---- .../Mergers/src/mergersTopologyExample.cxx | 9 +++++---- .../Mergers/test/benchmark_FullVsDiff.cxx | 9 +++++---- .../test/benchmark_MergingCollections.cxx | 9 +++++---- .../Mergers/test/benchmark_Miscellaneous.cxx | 9 +++++---- Utilities/Mergers/test/benchmark_Types.cxx | 9 +++++---- Utilities/Mergers/test/emptyLoopBenchmark.cxx | 9 +++++---- .../Mergers/test/mergersBenchmarkTopology.cxx | 9 +++++---- .../Mergers/test/multinodeBenchmarkMergers.cxx | 9 +++++---- .../test/multinodeBenchmarkProducers.cxx | 9 +++++---- Utilities/Mergers/test/test_Algorithm.cxx | 9 +++++---- .../test/test_InfrastructureBuilder.cxx | 9 +++++---- Utilities/Mergers/test/test_ObjectStore.cxx | 9 +++++---- Utilities/PCG/CMakeLists.txt | 13 +++++++------ Utilities/Tools/CMakeLists.txt | 13 +++++++------ Utilities/Tools/cpulimit/CMakeLists.txt | 13 +++++++------ Utilities/Tools/jobutils.sh | 13 +++++++------ Utilities/rANS/CMakeLists.txt | 13 +++++++------ .../benchmarks/bench_ransCombinedIterator.cxx | 9 +++++---- Utilities/rANS/include/rANS/Decoder.h | 9 +++++---- Utilities/rANS/include/rANS/DedupDecoder.h | 9 +++++---- Utilities/rANS/include/rANS/DedupEncoder.h | 9 +++++---- Utilities/rANS/include/rANS/Encoder.h | 9 +++++---- Utilities/rANS/include/rANS/FrequencyTable.h | 9 +++++---- Utilities/rANS/include/rANS/LiteralDecoder.h | 9 +++++---- Utilities/rANS/include/rANS/LiteralEncoder.h | 9 +++++---- Utilities/rANS/include/rANS/internal/Decoder.h | 9 +++++---- .../rANS/include/rANS/internal/DecoderBase.h | 9 +++++---- .../rANS/include/rANS/internal/DecoderSymbol.h | 9 +++++---- Utilities/rANS/include/rANS/internal/Encoder.h | 9 +++++---- .../rANS/include/rANS/internal/EncoderBase.h | 9 +++++---- .../rANS/include/rANS/internal/EncoderSymbol.h | 9 +++++---- .../rANS/internal/ReverseSymbolLookupTable.h | 9 +++++---- .../include/rANS/internal/SymbolStatistics.h | 9 +++++---- .../rANS/include/rANS/internal/SymbolTable.h | 9 +++++---- Utilities/rANS/include/rANS/internal/helper.h | 9 +++++---- Utilities/rANS/include/rANS/rans.h | 9 +++++---- Utilities/rANS/include/rANS/utils.h | 9 +++++---- Utilities/rANS/include/rANS/utils/iterators.h | 9 +++++---- Utilities/rANS/run/bin-encode-decode.cxx | 9 +++++---- Utilities/rANS/src/FrequencyTable.cxx | 9 +++++---- Utilities/rANS/src/SymbolStatistics.cxx | 9 +++++---- Utilities/rANS/test/test_ransEncodeDecode.cxx | 9 +++++---- .../rANS/test/test_ransFrequencyTable.cxx | 9 +++++---- Utilities/rANS/test/test_ransIterators.cxx | 9 +++++---- .../test/test_ransReverseSymbolLookupTable.cxx | 9 +++++---- .../rANS/test/test_ransSymbolStatistics.cxx | 9 +++++---- Utilities/rANS/test/test_ransSymbolTable.cxx | 9 +++++---- cmake/AddRootDictionary.cmake | 13 +++++++------ cmake/O2AddExecutable.cmake | 13 +++++++------ cmake/O2AddHeaderOnlyLibrary.cmake | 13 +++++++------ cmake/O2AddLibrary.cmake | 13 +++++++------ cmake/O2AddTest.cmake | 13 +++++++------ cmake/O2AddTestRootMacro.cmake | 13 +++++++------ cmake/O2AddTestWrapper.cmake | 13 +++++++------ cmake/O2AddWorkflow.cmake | 13 +++++++------ cmake/O2BuildSanityChecks.cmake | 13 +++++++------ cmake/O2CheckCXXFeatures.cmake | 13 +++++++------ cmake/O2DataFile.cmake | 13 +++++++------ cmake/O2DefineOptions.cmake | 13 +++++++------ cmake/O2DefineOutputPaths.cmake | 13 +++++++------ cmake/O2DefineRPATH.cmake | 13 +++++++------ cmake/O2DumpTargetProperties.cmake | 13 +++++++------ cmake/O2GetListOfMacros.cmake | 13 +++++++------ cmake/O2NameTarget.cmake | 13 +++++++------ cmake/O2ReportNonTestedMacros.cmake | 13 +++++++------ cmake/O2RootMacroExclusionList.cmake | 13 +++++++------ cmake/O2SetROOTPCMDependencies.cmake | 13 +++++++------ cmake/O2TargetManPage.cmake | 13 +++++++------ cmake/O2TargetRootDictionary.cmake | 13 +++++++------ .../cxx14-test-aggregate-initialization.cxx | 9 +++++---- cmake/checks/cxx14-test-binary-literals.cxx | 9 +++++---- cmake/checks/cxx14-test-generic-lambda.cxx | 9 +++++---- cmake/checks/cxx14-test-make_unique.cxx | 9 +++++---- .../cxx14-test-user-defined-literals.cxx | 9 +++++---- config/CMakeLists.txt | 13 +++++++------ dependencies/CMakeLists.txt | 13 +++++++------ dependencies/FindAliRoot.cmake | 13 +++++++------ dependencies/FindFairRoot.cmake | 13 +++++++------ dependencies/FindFastJet.cmake | 13 +++++++------ dependencies/FindFlukaVMC.cmake | 13 +++++++------ dependencies/FindGLFW.cmake | 13 +++++++------ dependencies/FindGeant3.cmake | 13 +++++++------ dependencies/FindGeant4.cmake | 13 +++++++------ dependencies/FindGeant4VMC.cmake | 13 +++++++------ dependencies/FindHepMC.cmake | 13 +++++++------ dependencies/FindHepMC3.cmake | 13 +++++++------ dependencies/FindJAliEnROOT.cmake | 13 +++++++------ dependencies/FindO2GPU.cmake | 13 +++++++------ dependencies/FindO2arrow.cmake | 13 +++++++------ dependencies/FindRapidJSON.cmake | 13 +++++++------ dependencies/FindVGM.cmake | 13 +++++++------ dependencies/Findpythia.cmake | 13 +++++++------ dependencies/Findpythia6.cmake | 13 +++++++------ dependencies/O2CompileFlags.cmake | 13 +++++++------ dependencies/O2Dependencies.cmake | 13 +++++++------ dependencies/O2SimulationDependencies.cmake | 13 +++++++------ dependencies/O2TestsAdapter.cmake | 13 +++++++------ doc/CMakeLists.txt | 13 +++++++------ macro/CMakeLists.txt | 13 +++++++------ macro/build_geometry.C | 9 +++++---- macro/compareTOFClusters.C | 9 +++++---- macro/compareTOFDigits.C | 9 +++++---- macro/migrateSimFiles.C | 9 +++++---- macro/o2sim.C | 9 +++++---- macro/runTPCRefit.C | 9 +++++---- macro/run_calib_tof.C | 9 +++++---- macro/run_clus_tof.C | 9 +++++---- macro/run_cmp2digit_tof.C | 9 +++++---- macro/run_collect_calib_tof.C | 9 +++++---- macro/run_digi2raw_tof.C | 9 +++++---- macro/run_match_tof.C | 9 +++++---- packaging/CMakeLists.txt | 13 +++++++------ packaging/O2Config.cmake | 13 +++++++------ prodtests/CMakeLists.txt | 13 +++++++------ run/CMakeLists.txt | 13 +++++++------ run/O2HitMerger.h | 9 +++++---- run/O2HitMergerRunner.cxx | 9 +++++---- run/O2PrimaryServerDevice.h | 9 +++++---- run/O2PrimaryServerDeviceRunner.cxx | 9 +++++---- run/O2SimDevice.h | 9 +++++---- run/O2SimDeviceRunner.cxx | 9 +++++---- run/PrimaryServerState.h | 9 +++++---- run/SimPublishChannelHelper.h | 9 +++++---- run/checkStack.cxx | 9 +++++---- run/o2-sim-client.py | 10 ++++++---- run/o2sim.cxx | 9 +++++---- run/o2sim_parallel.cxx | 9 +++++---- tests/CMakeLists.txt | 13 +++++++------ tests/O2SetupTesting.cmake | 13 +++++++------ version/O2Version.cxx.in | 9 +++++---- version/O2Version.h | 9 +++++---- version/O2Version.h.in | 9 +++++---- 4869 files changed, 25142 insertions(+), 20269 deletions(-) mode change 100755 => 100644 Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitterGamma2.h mode change 100755 => 100644 Detectors/EMCAL/reconstruction/src/CaloRawFitterGamma2.cxx mode change 100755 => 100644 Detectors/EMCAL/workflow/include/EMCALWorkflow/AnalysisClusterSpec.h mode change 100755 => 100644 Detectors/EMCAL/workflow/src/AnalysisClusterSpec.cxx mode change 100755 => 100644 Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaHeader.h diff --git a/Algorithm/CMakeLists.txt b/Algorithm/CMakeLists.txt index f4eb38fe1989a..b245562c7cc93 100644 --- a/Algorithm/CMakeLists.txt +++ b/Algorithm/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_header_only_library(Algorithm INTERFACE_LINK_LIBRARIES O2::Headers) diff --git a/Algorithm/include/Algorithm/BitstreamReader.h b/Algorithm/include/Algorithm/BitstreamReader.h index 24df5966bfdd7..0a112183ab5ef 100644 --- a/Algorithm/include/Algorithm/BitstreamReader.h +++ b/Algorithm/include/Algorithm/BitstreamReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/include/Algorithm/FlattenRestore.h b/Algorithm/include/Algorithm/FlattenRestore.h index 83f071ff437c9..a039a897a191c 100644 --- a/Algorithm/include/Algorithm/FlattenRestore.h +++ b/Algorithm/include/Algorithm/FlattenRestore.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/include/Algorithm/HeaderStack.h b/Algorithm/include/Algorithm/HeaderStack.h index 1af452d51d2b6..a5029228969ef 100644 --- a/Algorithm/include/Algorithm/HeaderStack.h +++ b/Algorithm/include/Algorithm/HeaderStack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/include/Algorithm/O2FormatParser.h b/Algorithm/include/Algorithm/O2FormatParser.h index a75d98ae43025..d0d820391a331 100644 --- a/Algorithm/include/Algorithm/O2FormatParser.h +++ b/Algorithm/include/Algorithm/O2FormatParser.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/include/Algorithm/PageParser.h b/Algorithm/include/Algorithm/PageParser.h index 9fde7d473173a..df1033d7711ea 100644 --- a/Algorithm/include/Algorithm/PageParser.h +++ b/Algorithm/include/Algorithm/PageParser.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/include/Algorithm/Parser.h b/Algorithm/include/Algorithm/Parser.h index 43ec4daa90aec..a2a7468621b4c 100644 --- a/Algorithm/include/Algorithm/Parser.h +++ b/Algorithm/include/Algorithm/Parser.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/include/Algorithm/RangeTokenizer.h b/Algorithm/include/Algorithm/RangeTokenizer.h index 38c481792ff5e..e256794ea53e8 100644 --- a/Algorithm/include/Algorithm/RangeTokenizer.h +++ b/Algorithm/include/Algorithm/RangeTokenizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/include/Algorithm/TableView.h b/Algorithm/include/Algorithm/TableView.h index c0584c9d01fb7..36980e64d1bc9 100644 --- a/Algorithm/include/Algorithm/TableView.h +++ b/Algorithm/include/Algorithm/TableView.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/include/Algorithm/mpl_tools.h b/Algorithm/include/Algorithm/mpl_tools.h index fb549b335ec64..19566ac036a44 100644 --- a/Algorithm/include/Algorithm/mpl_tools.h +++ b/Algorithm/include/Algorithm/mpl_tools.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/test/StaticSequenceAllocator.h b/Algorithm/test/StaticSequenceAllocator.h index 3b4b3ba04754b..8a684159afdb9 100644 --- a/Algorithm/test/StaticSequenceAllocator.h +++ b/Algorithm/test/StaticSequenceAllocator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/test/headerstack.cxx b/Algorithm/test/headerstack.cxx index 103b5d5e1e5ae..62d877763a63b 100644 --- a/Algorithm/test/headerstack.cxx +++ b/Algorithm/test/headerstack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/test/o2formatparser.cxx b/Algorithm/test/o2formatparser.cxx index a5ce2e10c3e0c..2896631ebc5b8 100644 --- a/Algorithm/test/o2formatparser.cxx +++ b/Algorithm/test/o2formatparser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/test/pageparser.cxx b/Algorithm/test/pageparser.cxx index a7b03ecb36816..14b24c670cfd6 100644 --- a/Algorithm/test/pageparser.cxx +++ b/Algorithm/test/pageparser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/test/parser.cxx b/Algorithm/test/parser.cxx index e8d962716f656..f4f7fefe3aace 100644 --- a/Algorithm/test/parser.cxx +++ b/Algorithm/test/parser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/test/tableview.cxx b/Algorithm/test/tableview.cxx index ae497da46943e..c303d531b541e 100644 --- a/Algorithm/test/tableview.cxx +++ b/Algorithm/test/tableview.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/test/test_BitstreamReader.cxx b/Algorithm/test/test_BitstreamReader.cxx index d47cd13edd54d..41e3b47f5f276 100644 --- a/Algorithm/test/test_BitstreamReader.cxx +++ b/Algorithm/test/test_BitstreamReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/test/test_FlattenRestore.cxx b/Algorithm/test/test_FlattenRestore.cxx index 311b03c355322..98f5f30393e41 100644 --- a/Algorithm/test/test_FlattenRestore.cxx +++ b/Algorithm/test/test_FlattenRestore.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/test/test_RangeTokenizer.cxx b/Algorithm/test/test_RangeTokenizer.cxx index e0032dd92aa0a..2583b52159b5f 100644 --- a/Algorithm/test/test_RangeTokenizer.cxx +++ b/Algorithm/test/test_RangeTokenizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Algorithm/test/test_mpl_tools.cxx b/Algorithm/test/test_mpl_tools.cxx index 422445af1205d..e3f1b640b7ca1 100644 --- a/Algorithm/test/test_mpl_tools.cxx +++ b/Algorithm/test/test_mpl_tools.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/ALICE3/CMakeLists.txt b/Analysis/ALICE3/CMakeLists.txt index 6927ce6bfc4ac..41a841e9e7a80 100644 --- a/Analysis/ALICE3/CMakeLists.txt +++ b/Analysis/ALICE3/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_header_only_library(ALICE3Analysis) diff --git a/Analysis/ALICE3/include/ALICE3Analysis/RICH.h b/Analysis/ALICE3/include/ALICE3Analysis/RICH.h index ce2b08296b145..5175cd4bea345 100644 --- a/Analysis/ALICE3/include/ALICE3Analysis/RICH.h +++ b/Analysis/ALICE3/include/ALICE3Analysis/RICH.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/ALICE3/src/alice3-pidTOF.cxx b/Analysis/ALICE3/src/alice3-pidTOF.cxx index d22d741ec9646..dcef475887f99 100644 --- a/Analysis/ALICE3/src/alice3-pidTOF.cxx +++ b/Analysis/ALICE3/src/alice3-pidTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/ALICE3/src/alice3-qa-multiplicity.cxx b/Analysis/ALICE3/src/alice3-qa-multiplicity.cxx index 8ccda89c5b4b6..aef46fc9cf90f 100644 --- a/Analysis/ALICE3/src/alice3-qa-multiplicity.cxx +++ b/Analysis/ALICE3/src/alice3-qa-multiplicity.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/ALICE3/src/alice3-trackextension.cxx b/Analysis/ALICE3/src/alice3-trackextension.cxx index 624061378ea4e..a89def7f32c1c 100644 --- a/Analysis/ALICE3/src/alice3-trackextension.cxx +++ b/Analysis/ALICE3/src/alice3-trackextension.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/ALICE3/src/alice3-trackselection.cxx b/Analysis/ALICE3/src/alice3-trackselection.cxx index c16bc4d82d42b..5c7594cd077b8 100644 --- a/Analysis/ALICE3/src/alice3-trackselection.cxx +++ b/Analysis/ALICE3/src/alice3-trackselection.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/ALICE3/src/pidRICHqa.cxx b/Analysis/ALICE3/src/pidRICHqa.cxx index 22f8ff9043371..4e5e3a3218a4c 100644 --- a/Analysis/ALICE3/src/pidRICHqa.cxx +++ b/Analysis/ALICE3/src/pidRICHqa.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/CMakeLists.txt b/Analysis/CMakeLists.txt index bbca46e0aca02..897ac9209ebd2 100644 --- a/Analysis/CMakeLists.txt +++ b/Analysis/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Core) add_subdirectory(DataModel) diff --git a/Analysis/Core/CMakeLists.txt b/Analysis/Core/CMakeLists.txt index 64830f46c09a3..dc26de0a8a35c 100644 --- a/Analysis/Core/CMakeLists.txt +++ b/Analysis/Core/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(AnalysisCore SOURCES src/CorrelationContainer.cxx diff --git a/Analysis/Core/include/AnalysisCore/CorrelationContainer.h b/Analysis/Core/include/AnalysisCore/CorrelationContainer.h index 91094cfb667fd..1368b6c460929 100644 --- a/Analysis/Core/include/AnalysisCore/CorrelationContainer.h +++ b/Analysis/Core/include/AnalysisCore/CorrelationContainer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/include/AnalysisCore/HFConfigurables.h b/Analysis/Core/include/AnalysisCore/HFConfigurables.h index 88458bccd3ca3..0854734164271 100644 --- a/Analysis/Core/include/AnalysisCore/HFConfigurables.h +++ b/Analysis/Core/include/AnalysisCore/HFConfigurables.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/include/AnalysisCore/HFSelectorCuts.h b/Analysis/Core/include/AnalysisCore/HFSelectorCuts.h index 3178b80853b4e..9460a8e555586 100644 --- a/Analysis/Core/include/AnalysisCore/HFSelectorCuts.h +++ b/Analysis/Core/include/AnalysisCore/HFSelectorCuts.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/include/AnalysisCore/JetFinder.h b/Analysis/Core/include/AnalysisCore/JetFinder.h index 0caed1e18b525..8b22e5d87b9bc 100644 --- a/Analysis/Core/include/AnalysisCore/JetFinder.h +++ b/Analysis/Core/include/AnalysisCore/JetFinder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/include/AnalysisCore/MC.h b/Analysis/Core/include/AnalysisCore/MC.h index aa400966f5d69..16122faf65238 100644 --- a/Analysis/Core/include/AnalysisCore/MC.h +++ b/Analysis/Core/include/AnalysisCore/MC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/include/AnalysisCore/PairCuts.h b/Analysis/Core/include/AnalysisCore/PairCuts.h index 2f7838c0e14d4..90e26d601654c 100644 --- a/Analysis/Core/include/AnalysisCore/PairCuts.h +++ b/Analysis/Core/include/AnalysisCore/PairCuts.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/include/AnalysisCore/RecoDecay.h b/Analysis/Core/include/AnalysisCore/RecoDecay.h index 369f2dae6ca24..b5b5ea6668bb8 100644 --- a/Analysis/Core/include/AnalysisCore/RecoDecay.h +++ b/Analysis/Core/include/AnalysisCore/RecoDecay.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/include/AnalysisCore/TrackSelection.h b/Analysis/Core/include/AnalysisCore/TrackSelection.h index 90898661be216..a9bf055be2697 100644 --- a/Analysis/Core/include/AnalysisCore/TrackSelection.h +++ b/Analysis/Core/include/AnalysisCore/TrackSelection.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/include/AnalysisCore/TrackSelectionDefaults.h b/Analysis/Core/include/AnalysisCore/TrackSelectionDefaults.h index 5c3a1f7de2688..907963e24a43f 100644 --- a/Analysis/Core/include/AnalysisCore/TrackSelectionDefaults.h +++ b/Analysis/Core/include/AnalysisCore/TrackSelectionDefaults.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/include/AnalysisCore/TrackSelectorPID.h b/Analysis/Core/include/AnalysisCore/TrackSelectorPID.h index 1c9cf29269dcf..3eda33cd74708 100644 --- a/Analysis/Core/include/AnalysisCore/TrackSelectorPID.h +++ b/Analysis/Core/include/AnalysisCore/TrackSelectorPID.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/include/AnalysisCore/TriggerAliases.h b/Analysis/Core/include/AnalysisCore/TriggerAliases.h index 3771e927f11a6..01f7716ea6c6b 100644 --- a/Analysis/Core/include/AnalysisCore/TriggerAliases.h +++ b/Analysis/Core/include/AnalysisCore/TriggerAliases.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/include/AnalysisCore/trackUtilities.h b/Analysis/Core/include/AnalysisCore/trackUtilities.h index 0017cb1d5cce9..22531c27c9702 100644 --- a/Analysis/Core/include/AnalysisCore/trackUtilities.h +++ b/Analysis/Core/include/AnalysisCore/trackUtilities.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/src/AODMerger.cxx b/Analysis/Core/src/AODMerger.cxx index 13d71784753d2..0cbd8149e29d1 100644 --- a/Analysis/Core/src/AODMerger.cxx +++ b/Analysis/Core/src/AODMerger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/src/AnalysisCoreLinkDef.h b/Analysis/Core/src/AnalysisCoreLinkDef.h index 18e2437504797..c6e5e04248a2d 100644 --- a/Analysis/Core/src/AnalysisCoreLinkDef.h +++ b/Analysis/Core/src/AnalysisCoreLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/src/AnalysisJetsLinkDef.h b/Analysis/Core/src/AnalysisJetsLinkDef.h index 8de8bce16da64..770d1611d117d 100644 --- a/Analysis/Core/src/AnalysisJetsLinkDef.h +++ b/Analysis/Core/src/AnalysisJetsLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/src/CorrelationContainer.cxx b/Analysis/Core/src/CorrelationContainer.cxx index 49a468e1e0728..1ba22a12e35dd 100644 --- a/Analysis/Core/src/CorrelationContainer.cxx +++ b/Analysis/Core/src/CorrelationContainer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/src/HFConfigurables.cxx b/Analysis/Core/src/HFConfigurables.cxx index f1d9351c26563..aaa49d5afb8df 100644 --- a/Analysis/Core/src/HFConfigurables.cxx +++ b/Analysis/Core/src/HFConfigurables.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/src/JetFinder.cxx b/Analysis/Core/src/JetFinder.cxx index 46f5efcf68316..10d9f978b34c2 100644 --- a/Analysis/Core/src/JetFinder.cxx +++ b/Analysis/Core/src/JetFinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/src/TrackSelection.cxx b/Analysis/Core/src/TrackSelection.cxx index 70128b43ed68c..a3e3a04e909e6 100644 --- a/Analysis/Core/src/TrackSelection.cxx +++ b/Analysis/Core/src/TrackSelection.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Core/src/TriggerAliases.cxx b/Analysis/Core/src/TriggerAliases.cxx index 85e10392daf68..607778785c3a2 100644 --- a/Analysis/Core/src/TriggerAliases.cxx +++ b/Analysis/Core/src/TriggerAliases.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/CMakeLists.txt b/Analysis/DataModel/CMakeLists.txt index 7a50640d969d7..a6c1974b2a5be 100644 --- a/Analysis/DataModel/CMakeLists.txt +++ b/Analysis/DataModel/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(AnalysisDataModel SOURCES src/ParamBase.cxx diff --git a/Analysis/DataModel/include/AnalysisDataModel/CFDerived.h b/Analysis/DataModel/include/AnalysisDataModel/CFDerived.h index 1acf6243c1e27..aab929dca7e70 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/CFDerived.h +++ b/Analysis/DataModel/include/AnalysisDataModel/CFDerived.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/Centrality.h b/Analysis/DataModel/include/AnalysisDataModel/Centrality.h index 3bdb9aadf7726..c347243277c32 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/Centrality.h +++ b/Analysis/DataModel/include/AnalysisDataModel/Centrality.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/EMCALClusters.h b/Analysis/DataModel/include/AnalysisDataModel/EMCALClusters.h index fa3c89470dc7f..71062b9005c5d 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/EMCALClusters.h +++ b/Analysis/DataModel/include/AnalysisDataModel/EMCALClusters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/EventSelection.h b/Analysis/DataModel/include/AnalysisDataModel/EventSelection.h index 78c88a3d460b5..6e654bb5851b4 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/EventSelection.h +++ b/Analysis/DataModel/include/AnalysisDataModel/EventSelection.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/HFCandidateSelectionTables.h b/Analysis/DataModel/include/AnalysisDataModel/HFCandidateSelectionTables.h index 50c5057e30ca8..284646648de2a 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/HFCandidateSelectionTables.h +++ b/Analysis/DataModel/include/AnalysisDataModel/HFCandidateSelectionTables.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/HFSecondaryVertex.h b/Analysis/DataModel/include/AnalysisDataModel/HFSecondaryVertex.h index 5a7f2f9c0926f..6614b667f54dc 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/HFSecondaryVertex.h +++ b/Analysis/DataModel/include/AnalysisDataModel/HFSecondaryVertex.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/Jet.h b/Analysis/DataModel/include/AnalysisDataModel/Jet.h index a27351a27d5e6..a4cad9962cce0 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/Jet.h +++ b/Analysis/DataModel/include/AnalysisDataModel/Jet.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/Multiplicity.h b/Analysis/DataModel/include/AnalysisDataModel/Multiplicity.h index e9644cdbc5d7f..0dcfae4685060 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/Multiplicity.h +++ b/Analysis/DataModel/include/AnalysisDataModel/Multiplicity.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/PID/BetheBloch.h b/Analysis/DataModel/include/AnalysisDataModel/PID/BetheBloch.h index 889929080201c..9f1b57245d53d 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/PID/BetheBloch.h +++ b/Analysis/DataModel/include/AnalysisDataModel/PID/BetheBloch.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/PID/DetectorResponse.h b/Analysis/DataModel/include/AnalysisDataModel/PID/DetectorResponse.h index bf4fd80b3bb49..a7bbb69d6e678 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/PID/DetectorResponse.h +++ b/Analysis/DataModel/include/AnalysisDataModel/PID/DetectorResponse.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/PID/PIDResponse.h b/Analysis/DataModel/include/AnalysisDataModel/PID/PIDResponse.h index 1e853dcffd89f..fafe6fc389f72 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/PID/PIDResponse.h +++ b/Analysis/DataModel/include/AnalysisDataModel/PID/PIDResponse.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/PID/PIDTOF.h b/Analysis/DataModel/include/AnalysisDataModel/PID/PIDTOF.h index ed4f5a22c0fa0..7afb0975fc890 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/PID/PIDTOF.h +++ b/Analysis/DataModel/include/AnalysisDataModel/PID/PIDTOF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/PID/PIDTPC.h b/Analysis/DataModel/include/AnalysisDataModel/PID/PIDTPC.h index be73f5ab4f08b..6fdb9f1e3fd7c 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/PID/PIDTPC.h +++ b/Analysis/DataModel/include/AnalysisDataModel/PID/PIDTPC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/PID/ParamBase.h b/Analysis/DataModel/include/AnalysisDataModel/PID/ParamBase.h index bc9f33bc4aee0..9468896c69afb 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/PID/ParamBase.h +++ b/Analysis/DataModel/include/AnalysisDataModel/PID/ParamBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/PID/TOFReso.h b/Analysis/DataModel/include/AnalysisDataModel/PID/TOFReso.h index cef242d63b183..26e90610b88e4 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/PID/TOFReso.h +++ b/Analysis/DataModel/include/AnalysisDataModel/PID/TOFReso.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/PID/TOFResoALICE3.h b/Analysis/DataModel/include/AnalysisDataModel/PID/TOFResoALICE3.h index c5727eb891e24..d6870aac585b7 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/PID/TOFResoALICE3.h +++ b/Analysis/DataModel/include/AnalysisDataModel/PID/TOFResoALICE3.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/PID/TPCReso.h b/Analysis/DataModel/include/AnalysisDataModel/PID/TPCReso.h index 09fb7525ffbf4..8e6b43f311dcc 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/PID/TPCReso.h +++ b/Analysis/DataModel/include/AnalysisDataModel/PID/TPCReso.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/ReducedInfoTables.h b/Analysis/DataModel/include/AnalysisDataModel/ReducedInfoTables.h index d2eaa17b04c0b..6cfa8a79a71f9 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/ReducedInfoTables.h +++ b/Analysis/DataModel/include/AnalysisDataModel/ReducedInfoTables.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/StrangenessTables.h b/Analysis/DataModel/include/AnalysisDataModel/StrangenessTables.h index d71b1c3e33256..977161d5f7b4c 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/StrangenessTables.h +++ b/Analysis/DataModel/include/AnalysisDataModel/StrangenessTables.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/include/AnalysisDataModel/TrackSelectionTables.h b/Analysis/DataModel/include/AnalysisDataModel/TrackSelectionTables.h index fb8362b575353..58f8546fdbea5 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/TrackSelectionTables.h +++ b/Analysis/DataModel/include/AnalysisDataModel/TrackSelectionTables.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/src/AnalysisDataModelLinkDef.h b/Analysis/DataModel/src/AnalysisDataModelLinkDef.h index f92bacdbb0538..77b7ae468800d 100644 --- a/Analysis/DataModel/src/AnalysisDataModelLinkDef.h +++ b/Analysis/DataModel/src/AnalysisDataModelLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/src/ParamBase.cxx b/Analysis/DataModel/src/ParamBase.cxx index b17e83f1e0f45..2013db4c70f8e 100644 --- a/Analysis/DataModel/src/ParamBase.cxx +++ b/Analysis/DataModel/src/ParamBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/src/aodDataModelGraph.cxx b/Analysis/DataModel/src/aodDataModelGraph.cxx index 890cae2b4114d..f1dd6512406b9 100644 --- a/Analysis/DataModel/src/aodDataModelGraph.cxx +++ b/Analysis/DataModel/src/aodDataModelGraph.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/src/handleParamTOFReso.cxx b/Analysis/DataModel/src/handleParamTOFReso.cxx index 91e7aa4f892b4..7191ca7c820ca 100644 --- a/Analysis/DataModel/src/handleParamTOFReso.cxx +++ b/Analysis/DataModel/src/handleParamTOFReso.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/src/handleParamTOFResoALICE3.cxx b/Analysis/DataModel/src/handleParamTOFResoALICE3.cxx index dbf5054de8935..4280e557eab9c 100644 --- a/Analysis/DataModel/src/handleParamTOFResoALICE3.cxx +++ b/Analysis/DataModel/src/handleParamTOFResoALICE3.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/DataModel/src/handleParamTPCBetheBloch.cxx b/Analysis/DataModel/src/handleParamTPCBetheBloch.cxx index f0bddf71eb675..275a14a851205 100644 --- a/Analysis/DataModel/src/handleParamTPCBetheBloch.cxx +++ b/Analysis/DataModel/src/handleParamTPCBetheBloch.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/EventFiltering/CMakeLists.txt b/Analysis/EventFiltering/CMakeLists.txt index 0ea39e1eed1d9..2733cba71f407 100644 --- a/Analysis/EventFiltering/CMakeLists.txt +++ b/Analysis/EventFiltering/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(EventFiltering SOURCES centralEventFilterProcessor.cxx diff --git a/Analysis/EventFiltering/PWGUD/CutHolderLinkDef.h b/Analysis/EventFiltering/PWGUD/CutHolderLinkDef.h index d113650becb24..cf1d5357eab77 100644 --- a/Analysis/EventFiltering/PWGUD/CutHolderLinkDef.h +++ b/Analysis/EventFiltering/PWGUD/CutHolderLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/EventFiltering/PWGUD/cutHolder.cxx b/Analysis/EventFiltering/PWGUD/cutHolder.cxx index c1494dafe9b79..4f9b2fc6d5498 100644 --- a/Analysis/EventFiltering/PWGUD/cutHolder.cxx +++ b/Analysis/EventFiltering/PWGUD/cutHolder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/EventFiltering/PWGUD/cutHolder.h b/Analysis/EventFiltering/PWGUD/cutHolder.h index e69c45d68a92d..ca3edb9fe3485 100644 --- a/Analysis/EventFiltering/PWGUD/cutHolder.h +++ b/Analysis/EventFiltering/PWGUD/cutHolder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/EventFiltering/PWGUD/diffractionFilter.cxx b/Analysis/EventFiltering/PWGUD/diffractionFilter.cxx index 361b9b2571808..9172e0cd1f330 100644 --- a/Analysis/EventFiltering/PWGUD/diffractionFilter.cxx +++ b/Analysis/EventFiltering/PWGUD/diffractionFilter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/EventFiltering/PWGUD/diffractionSelectors.h b/Analysis/EventFiltering/PWGUD/diffractionSelectors.h index bb79c5646da08..a96f325dc45ed 100644 --- a/Analysis/EventFiltering/PWGUD/diffractionSelectors.h +++ b/Analysis/EventFiltering/PWGUD/diffractionSelectors.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/EventFiltering/cefp.cxx b/Analysis/EventFiltering/cefp.cxx index 2f9abbfc3850f..981f439fc97e7 100644 --- a/Analysis/EventFiltering/cefp.cxx +++ b/Analysis/EventFiltering/cefp.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/EventFiltering/centralEventFilterProcessor.cxx b/Analysis/EventFiltering/centralEventFilterProcessor.cxx index 867bbc4a1ccfa..e6a51af87c506 100644 --- a/Analysis/EventFiltering/centralEventFilterProcessor.cxx +++ b/Analysis/EventFiltering/centralEventFilterProcessor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/EventFiltering/centralEventFilterProcessor.h b/Analysis/EventFiltering/centralEventFilterProcessor.h index ad2e671902099..0e23c4f31bd56 100644 --- a/Analysis/EventFiltering/centralEventFilterProcessor.h +++ b/Analysis/EventFiltering/centralEventFilterProcessor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/EventFiltering/filterTables.h b/Analysis/EventFiltering/filterTables.h index c4f425e540da7..a05dc7b41d488 100644 --- a/Analysis/EventFiltering/filterTables.h +++ b/Analysis/EventFiltering/filterTables.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/EventFiltering/nucleiFilter.cxx b/Analysis/EventFiltering/nucleiFilter.cxx index 30620808d9879..34b158bf0751e 100644 --- a/Analysis/EventFiltering/nucleiFilter.cxx +++ b/Analysis/EventFiltering/nucleiFilter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/PWGDQ/CMakeLists.txt b/Analysis/PWGDQ/CMakeLists.txt index 033506c26a23e..93d038118a008 100644 --- a/Analysis/PWGDQ/CMakeLists.txt +++ b/Analysis/PWGDQ/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(PWGDQCore SOURCES src/VarManager.cxx diff --git a/Analysis/PWGDQ/include/PWGDQCore/AnalysisCompositeCut.h b/Analysis/PWGDQ/include/PWGDQCore/AnalysisCompositeCut.h index 5da1b34dd5811..aba8fe8679dfa 100644 --- a/Analysis/PWGDQ/include/PWGDQCore/AnalysisCompositeCut.h +++ b/Analysis/PWGDQ/include/PWGDQCore/AnalysisCompositeCut.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/PWGDQ/include/PWGDQCore/AnalysisCut.h b/Analysis/PWGDQ/include/PWGDQCore/AnalysisCut.h index d094e0d6cffe8..a1a7dfe7461c1 100644 --- a/Analysis/PWGDQ/include/PWGDQCore/AnalysisCut.h +++ b/Analysis/PWGDQ/include/PWGDQCore/AnalysisCut.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/PWGDQ/include/PWGDQCore/CutsLibrary.h b/Analysis/PWGDQ/include/PWGDQCore/CutsLibrary.h index 401cc01a0ef3a..db6575323bcaf 100644 --- a/Analysis/PWGDQ/include/PWGDQCore/CutsLibrary.h +++ b/Analysis/PWGDQ/include/PWGDQCore/CutsLibrary.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/PWGDQ/include/PWGDQCore/HistogramManager.h b/Analysis/PWGDQ/include/PWGDQCore/HistogramManager.h index 893b5cc755132..5cab7d78d6e69 100644 --- a/Analysis/PWGDQ/include/PWGDQCore/HistogramManager.h +++ b/Analysis/PWGDQ/include/PWGDQCore/HistogramManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/PWGDQ/include/PWGDQCore/HistogramsLibrary.h b/Analysis/PWGDQ/include/PWGDQCore/HistogramsLibrary.h index 45c770ad3c4a6..c7d453c41acd5 100644 --- a/Analysis/PWGDQ/include/PWGDQCore/HistogramsLibrary.h +++ b/Analysis/PWGDQ/include/PWGDQCore/HistogramsLibrary.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/PWGDQ/include/PWGDQCore/VarManager.h b/Analysis/PWGDQ/include/PWGDQCore/VarManager.h index 1285678ca6197..3590ff1908425 100644 --- a/Analysis/PWGDQ/include/PWGDQCore/VarManager.h +++ b/Analysis/PWGDQ/include/PWGDQCore/VarManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/PWGDQ/src/AnalysisCompositeCut.cxx b/Analysis/PWGDQ/src/AnalysisCompositeCut.cxx index 160131d9c74f0..c6cce7276087a 100644 --- a/Analysis/PWGDQ/src/AnalysisCompositeCut.cxx +++ b/Analysis/PWGDQ/src/AnalysisCompositeCut.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/PWGDQ/src/AnalysisCut.cxx b/Analysis/PWGDQ/src/AnalysisCut.cxx index e6ba9a44abada..5c7dfdb82c316 100644 --- a/Analysis/PWGDQ/src/AnalysisCut.cxx +++ b/Analysis/PWGDQ/src/AnalysisCut.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/PWGDQ/src/HistogramManager.cxx b/Analysis/PWGDQ/src/HistogramManager.cxx index eaef3413f6f41..b1656b6010b05 100644 --- a/Analysis/PWGDQ/src/HistogramManager.cxx +++ b/Analysis/PWGDQ/src/HistogramManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/PWGDQ/src/PWGDQCoreLinkDef.h b/Analysis/PWGDQ/src/PWGDQCoreLinkDef.h index 170a8b7a38bab..003cac1d6316e 100644 --- a/Analysis/PWGDQ/src/PWGDQCoreLinkDef.h +++ b/Analysis/PWGDQ/src/PWGDQCoreLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/PWGDQ/src/VarManager.cxx b/Analysis/PWGDQ/src/VarManager.cxx index 460bc05af4226..46220b68dc27b 100644 --- a/Analysis/PWGDQ/src/VarManager.cxx +++ b/Analysis/PWGDQ/src/VarManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Scripts/update_ccdb.py b/Analysis/Scripts/update_ccdb.py index a3cd525175908..a1253ed59e7cf 100755 --- a/Analysis/Scripts/update_ccdb.py +++ b/Analysis/Scripts/update_ccdb.py @@ -1,10 +1,11 @@ #!/usr/bin/env python3 -# Copyright CERN and copyright holders of ALICE O2. This software is -# distributed under the terms of the GNU General Public License v3 (GPL -# Version 3), copied verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities # granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/CMakeLists.txt b/Analysis/Tasks/CMakeLists.txt index 670cf0734859b..a0593f0228745 100644 --- a/Analysis/Tasks/CMakeLists.txt +++ b/Analysis/Tasks/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(PWGCF) add_subdirectory(PWGPP) diff --git a/Analysis/Tasks/PID/CMakeLists.txt b/Analysis/Tasks/PID/CMakeLists.txt index ebf707c5baf4f..f2d340757c47e 100644 --- a/Analysis/Tasks/PID/CMakeLists.txt +++ b/Analysis/Tasks/PID/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # TOF diff --git a/Analysis/Tasks/PID/pidTOF.cxx b/Analysis/Tasks/PID/pidTOF.cxx index afb8e5ed5d7fa..4257cfbcf557f 100644 --- a/Analysis/Tasks/PID/pidTOF.cxx +++ b/Analysis/Tasks/PID/pidTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PID/pidTOFFull.cxx b/Analysis/Tasks/PID/pidTOFFull.cxx index 7a67db69b5080..231e2113cba29 100644 --- a/Analysis/Tasks/PID/pidTOFFull.cxx +++ b/Analysis/Tasks/PID/pidTOFFull.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PID/pidTOFbeta.cxx b/Analysis/Tasks/PID/pidTOFbeta.cxx index 504868f104b0b..3266d76806a2f 100644 --- a/Analysis/Tasks/PID/pidTOFbeta.cxx +++ b/Analysis/Tasks/PID/pidTOFbeta.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PID/pidTPC.cxx b/Analysis/Tasks/PID/pidTPC.cxx index 6a1b090e5a95e..dcb1347c943a4 100644 --- a/Analysis/Tasks/PID/pidTPC.cxx +++ b/Analysis/Tasks/PID/pidTPC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PID/pidTPCFull.cxx b/Analysis/Tasks/PID/pidTPCFull.cxx index f9ef0c5f78738..daddb92a39f7e 100644 --- a/Analysis/Tasks/PID/pidTPCFull.cxx +++ b/Analysis/Tasks/PID/pidTPCFull.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PID/qaHMPID.cxx b/Analysis/Tasks/PID/qaHMPID.cxx index 554da99a27884..f8a4a50498937 100644 --- a/Analysis/Tasks/PID/qaHMPID.cxx +++ b/Analysis/Tasks/PID/qaHMPID.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PID/qaTOFMC.cxx b/Analysis/Tasks/PID/qaTOFMC.cxx index 715b5f598376c..822d08641dba6 100644 --- a/Analysis/Tasks/PID/qaTOFMC.cxx +++ b/Analysis/Tasks/PID/qaTOFMC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/AnalysisConfigurableCuts.cxx b/Analysis/Tasks/PWGCF/AnalysisConfigurableCuts.cxx index e0f9ff79899eb..185d725c87c07 100644 --- a/Analysis/Tasks/PWGCF/AnalysisConfigurableCuts.cxx +++ b/Analysis/Tasks/PWGCF/AnalysisConfigurableCuts.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/AnalysisConfigurableCuts.h b/Analysis/Tasks/PWGCF/AnalysisConfigurableCuts.h index 9c916039f9542..ad4dd3fd2da34 100644 --- a/Analysis/Tasks/PWGCF/AnalysisConfigurableCuts.h +++ b/Analysis/Tasks/PWGCF/AnalysisConfigurableCuts.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/CMakeLists.txt b/Analysis/Tasks/PWGCF/CMakeLists.txt index 281645fea0ba3..2edc3ff407a0d 100644 --- a/Analysis/Tasks/PWGCF/CMakeLists.txt +++ b/Analysis/Tasks/PWGCF/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(FemtoDream) diff --git a/Analysis/Tasks/PWGCF/FemtoDream/CMakeLists.txt b/Analysis/Tasks/PWGCF/FemtoDream/CMakeLists.txt index b43ac9b399aee..8aaae56e02cf7 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/CMakeLists.txt +++ b/Analysis/Tasks/PWGCF/FemtoDream/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_dpl_workflow(femtodream-producer SOURCES femtoDreamProducerTask.cxx diff --git a/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx index a6601922ebd00..c2ca713ee0471 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx +++ b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDerived.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDerived.h index 69d7f0579927a..b0055dd562da0 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDerived.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDerived.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamCollisionSelection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamCollisionSelection.h index 0d7a5224b2b69..5a41ea2f4a98b 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamCollisionSelection.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamCollisionSelection.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamObjectSelection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamObjectSelection.h index fbb0e138a0d36..ee33a3c8c51d3 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamObjectSelection.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamObjectSelection.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamSelection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamSelection.h index de60119a031eb..1da330a726a8c 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamSelection.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamSelection.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h index 1cfdef29a5ae0..53fe85facfc65 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/PWGCFCoreLinkDef.h b/Analysis/Tasks/PWGCF/PWGCFCoreLinkDef.h index 9a46f9dc8e5da..c49cdb7395d84 100644 --- a/Analysis/Tasks/PWGCF/PWGCFCoreLinkDef.h +++ b/Analysis/Tasks/PWGCF/PWGCFCoreLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/correlations.cxx b/Analysis/Tasks/PWGCF/correlations.cxx index 5c1992684dd85..fef559b423f3a 100644 --- a/Analysis/Tasks/PWGCF/correlations.cxx +++ b/Analysis/Tasks/PWGCF/correlations.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/correlationsFiltered.cxx b/Analysis/Tasks/PWGCF/correlationsFiltered.cxx index e84b818d138d3..4038b091302bd 100644 --- a/Analysis/Tasks/PWGCF/correlationsFiltered.cxx +++ b/Analysis/Tasks/PWGCF/correlationsFiltered.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/dptdptcorrelations.cxx b/Analysis/Tasks/PWGCF/dptdptcorrelations.cxx index 70f39f4b17894..2a9ef3e03da13 100644 --- a/Analysis/Tasks/PWGCF/dptdptcorrelations.cxx +++ b/Analysis/Tasks/PWGCF/dptdptcorrelations.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGCF/filterCF.cxx b/Analysis/Tasks/PWGCF/filterCF.cxx index 75d95686c68c6..1dec22e24f0b3 100644 --- a/Analysis/Tasks/PWGCF/filterCF.cxx +++ b/Analysis/Tasks/PWGCF/filterCF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGDQ/CMakeLists.txt b/Analysis/Tasks/PWGDQ/CMakeLists.txt index f5e3aab0713e9..2c47b9ab3c6cb 100644 --- a/Analysis/Tasks/PWGDQ/CMakeLists.txt +++ b/Analysis/Tasks/PWGDQ/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_dpl_workflow(table-maker SOURCES tableMaker.cxx diff --git a/Analysis/Tasks/PWGDQ/dileptonEE.cxx b/Analysis/Tasks/PWGDQ/dileptonEE.cxx index 63fc5a52b34ed..d7bb0254d4157 100644 --- a/Analysis/Tasks/PWGDQ/dileptonEE.cxx +++ b/Analysis/Tasks/PWGDQ/dileptonEE.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGDQ/dileptonMuMu.cxx b/Analysis/Tasks/PWGDQ/dileptonMuMu.cxx index c3b98acfa3fe4..4e80808c47acc 100644 --- a/Analysis/Tasks/PWGDQ/dileptonMuMu.cxx +++ b/Analysis/Tasks/PWGDQ/dileptonMuMu.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGDQ/filterPP.cxx b/Analysis/Tasks/PWGDQ/filterPP.cxx index ad47d3d934bc3..60fa3efd2132d 100644 --- a/Analysis/Tasks/PWGDQ/filterPP.cxx +++ b/Analysis/Tasks/PWGDQ/filterPP.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGDQ/tableMaker.cxx b/Analysis/Tasks/PWGDQ/tableMaker.cxx index 4eedf6e3ad71c..b1d22e396c496 100644 --- a/Analysis/Tasks/PWGDQ/tableMaker.cxx +++ b/Analysis/Tasks/PWGDQ/tableMaker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGDQ/tableMaker_PbPb.cxx b/Analysis/Tasks/PWGDQ/tableMaker_PbPb.cxx index e6a6ec2b69048..7bfaed3f731b3 100644 --- a/Analysis/Tasks/PWGDQ/tableMaker_PbPb.cxx +++ b/Analysis/Tasks/PWGDQ/tableMaker_PbPb.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGDQ/tableReader.cxx b/Analysis/Tasks/PWGDQ/tableReader.cxx index 4e79c511960a1..0276b631cc343 100644 --- a/Analysis/Tasks/PWGDQ/tableReader.cxx +++ b/Analysis/Tasks/PWGDQ/tableReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGDQ/v0selector.cxx b/Analysis/Tasks/PWGDQ/v0selector.cxx index 5c594968cfd44..aaaf3acb358e6 100644 --- a/Analysis/Tasks/PWGDQ/v0selector.cxx +++ b/Analysis/Tasks/PWGDQ/v0selector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/CMakeLists.txt b/Analysis/Tasks/PWGHF/CMakeLists.txt index 545de475c7fdd..3af51a5d77c50 100644 --- a/Analysis/Tasks/PWGHF/CMakeLists.txt +++ b/Analysis/Tasks/PWGHF/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_dpl_workflow(hf-track-index-skims-creator SOURCES HFTrackIndexSkimsCreator.cxx diff --git a/Analysis/Tasks/PWGHF/HFCandidateCreator2Prong.cxx b/Analysis/Tasks/PWGHF/HFCandidateCreator2Prong.cxx index 6249f1a8148f9..0715698e2733e 100644 --- a/Analysis/Tasks/PWGHF/HFCandidateCreator2Prong.cxx +++ b/Analysis/Tasks/PWGHF/HFCandidateCreator2Prong.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFCandidateCreator3Prong.cxx b/Analysis/Tasks/PWGHF/HFCandidateCreator3Prong.cxx index 3a0b7f491b2ed..0a0a3ade42814 100644 --- a/Analysis/Tasks/PWGHF/HFCandidateCreator3Prong.cxx +++ b/Analysis/Tasks/PWGHF/HFCandidateCreator3Prong.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFCandidateCreatorCascade.cxx b/Analysis/Tasks/PWGHF/HFCandidateCreatorCascade.cxx index 951de55a845f2..6f700926061cd 100644 --- a/Analysis/Tasks/PWGHF/HFCandidateCreatorCascade.cxx +++ b/Analysis/Tasks/PWGHF/HFCandidateCreatorCascade.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx index 814b313bfad26..d9a82e67e80eb 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx index 59e9d359353ee..8f5b3a46c8a72 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFD0CandidateSelector.cxx b/Analysis/Tasks/PWGHF/HFD0CandidateSelector.cxx index c680783f9289a..fb7a002a1b3f9 100644 --- a/Analysis/Tasks/PWGHF/HFD0CandidateSelector.cxx +++ b/Analysis/Tasks/PWGHF/HFD0CandidateSelector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFDplusToPiKPiCandidateSelector.cxx b/Analysis/Tasks/PWGHF/HFDplusToPiKPiCandidateSelector.cxx index 41ce2de0c324f..633970e2c037b 100644 --- a/Analysis/Tasks/PWGHF/HFDplusToPiKPiCandidateSelector.cxx +++ b/Analysis/Tasks/PWGHF/HFDplusToPiKPiCandidateSelector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFJpsiToEECandidateSelector.cxx b/Analysis/Tasks/PWGHF/HFJpsiToEECandidateSelector.cxx index 13afe1ffe232d..ee6346c92507b 100644 --- a/Analysis/Tasks/PWGHF/HFJpsiToEECandidateSelector.cxx +++ b/Analysis/Tasks/PWGHF/HFJpsiToEECandidateSelector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFLcCandidateSelector.cxx b/Analysis/Tasks/PWGHF/HFLcCandidateSelector.cxx index 6a7b268506f90..20d20babf13bd 100644 --- a/Analysis/Tasks/PWGHF/HFLcCandidateSelector.cxx +++ b/Analysis/Tasks/PWGHF/HFLcCandidateSelector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFLcK0sPCandidateSelector.cxx b/Analysis/Tasks/PWGHF/HFLcK0sPCandidateSelector.cxx index b7b80669065e0..9c6783a4afd86 100644 --- a/Analysis/Tasks/PWGHF/HFLcK0sPCandidateSelector.cxx +++ b/Analysis/Tasks/PWGHF/HFLcK0sPCandidateSelector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFMCValidation.cxx b/Analysis/Tasks/PWGHF/HFMCValidation.cxx index 5c1ed48bf699e..f698ae6ce3d66 100644 --- a/Analysis/Tasks/PWGHF/HFMCValidation.cxx +++ b/Analysis/Tasks/PWGHF/HFMCValidation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx b/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx index e1b8fde2d57f6..c6fc5932987a5 100644 --- a/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx +++ b/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFTreeCreatorD0ToKPi.cxx b/Analysis/Tasks/PWGHF/HFTreeCreatorD0ToKPi.cxx index c2cad6d88d7a5..21478ef4afa90 100644 --- a/Analysis/Tasks/PWGHF/HFTreeCreatorD0ToKPi.cxx +++ b/Analysis/Tasks/PWGHF/HFTreeCreatorD0ToKPi.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFTreeCreatorLcToPKPi.cxx b/Analysis/Tasks/PWGHF/HFTreeCreatorLcToPKPi.cxx index 64a412e4ff189..ede5253ec695b 100644 --- a/Analysis/Tasks/PWGHF/HFTreeCreatorLcToPKPi.cxx +++ b/Analysis/Tasks/PWGHF/HFTreeCreatorLcToPKPi.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/HFXicToPKPiCandidateSelector.cxx b/Analysis/Tasks/PWGHF/HFXicToPKPiCandidateSelector.cxx index 8d38d47fa50d0..c2e6eb3c08f78 100644 --- a/Analysis/Tasks/PWGHF/HFXicToPKPiCandidateSelector.cxx +++ b/Analysis/Tasks/PWGHF/HFXicToPKPiCandidateSelector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/taskBPlus.cxx b/Analysis/Tasks/PWGHF/taskBPlus.cxx index b943b4b2a8949..e19da644d833d 100644 --- a/Analysis/Tasks/PWGHF/taskBPlus.cxx +++ b/Analysis/Tasks/PWGHF/taskBPlus.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/taskCorrelationDDbar.cxx b/Analysis/Tasks/PWGHF/taskCorrelationDDbar.cxx index 43c30396d7f27..3291b8d7ebd4a 100644 --- a/Analysis/Tasks/PWGHF/taskCorrelationDDbar.cxx +++ b/Analysis/Tasks/PWGHF/taskCorrelationDDbar.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/taskD0.cxx b/Analysis/Tasks/PWGHF/taskD0.cxx index 2867c71ec15a8..6cb7aa047680f 100644 --- a/Analysis/Tasks/PWGHF/taskD0.cxx +++ b/Analysis/Tasks/PWGHF/taskD0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/taskDPlus.cxx b/Analysis/Tasks/PWGHF/taskDPlus.cxx index 979671bdbecb2..9aca122330b3e 100644 --- a/Analysis/Tasks/PWGHF/taskDPlus.cxx +++ b/Analysis/Tasks/PWGHF/taskDPlus.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/taskJpsi.cxx b/Analysis/Tasks/PWGHF/taskJpsi.cxx index 524a4903842ef..c7434e554c0c1 100644 --- a/Analysis/Tasks/PWGHF/taskJpsi.cxx +++ b/Analysis/Tasks/PWGHF/taskJpsi.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/taskLc.cxx b/Analysis/Tasks/PWGHF/taskLc.cxx index 212ae25586c01..e7e9e0a68f6d7 100644 --- a/Analysis/Tasks/PWGHF/taskLc.cxx +++ b/Analysis/Tasks/PWGHF/taskLc.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/taskLcK0sP.cxx b/Analysis/Tasks/PWGHF/taskLcK0sP.cxx index 9e261cbba924d..ac26d0734ec92 100644 --- a/Analysis/Tasks/PWGHF/taskLcK0sP.cxx +++ b/Analysis/Tasks/PWGHF/taskLcK0sP.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/taskX.cxx b/Analysis/Tasks/PWGHF/taskX.cxx index 32a5cc095f748..64de1cb9f7db5 100644 --- a/Analysis/Tasks/PWGHF/taskX.cxx +++ b/Analysis/Tasks/PWGHF/taskX.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGHF/taskXic.cxx b/Analysis/Tasks/PWGHF/taskXic.cxx index b98824465f1ec..b3bfa08a0aacc 100644 --- a/Analysis/Tasks/PWGHF/taskXic.cxx +++ b/Analysis/Tasks/PWGHF/taskXic.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGJE/CMakeLists.txt b/Analysis/Tasks/PWGJE/CMakeLists.txt index d0afc844d3375..d17b04a194f50 100644 --- a/Analysis/Tasks/PWGJE/CMakeLists.txt +++ b/Analysis/Tasks/PWGJE/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. if(FastJet_FOUND) diff --git a/Analysis/Tasks/PWGJE/jetfinder.cxx b/Analysis/Tasks/PWGJE/jetfinder.cxx index 5b750b3d89849..dc91747082814 100644 --- a/Analysis/Tasks/PWGJE/jetfinder.cxx +++ b/Analysis/Tasks/PWGJE/jetfinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGJE/jetfinderhadronrecoil.cxx b/Analysis/Tasks/PWGJE/jetfinderhadronrecoil.cxx index 5a0b26af183fb..99ea768c903fc 100644 --- a/Analysis/Tasks/PWGJE/jetfinderhadronrecoil.cxx +++ b/Analysis/Tasks/PWGJE/jetfinderhadronrecoil.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGJE/jetfinderhf.cxx b/Analysis/Tasks/PWGJE/jetfinderhf.cxx index 7b947a3136632..2a11b3af401c4 100644 --- a/Analysis/Tasks/PWGJE/jetfinderhf.cxx +++ b/Analysis/Tasks/PWGJE/jetfinderhf.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGJE/jetskimming.cxx b/Analysis/Tasks/PWGJE/jetskimming.cxx index 41395a6fd87ff..796e7f4c997b0 100644 --- a/Analysis/Tasks/PWGJE/jetskimming.cxx +++ b/Analysis/Tasks/PWGJE/jetskimming.cxx @@ -1,18 +1,20 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGJE/jetsubstructure.cxx b/Analysis/Tasks/PWGJE/jetsubstructure.cxx index 355612d4d3c9c..4213603acbaba 100644 --- a/Analysis/Tasks/PWGJE/jetsubstructure.cxx +++ b/Analysis/Tasks/PWGJE/jetsubstructure.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/CMakeLists.txt b/Analysis/Tasks/PWGLF/CMakeLists.txt index 3718fc9e2d8be..6a98714c539e1 100644 --- a/Analysis/Tasks/PWGLF/CMakeLists.txt +++ b/Analysis/Tasks/PWGLF/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_dpl_workflow(mc-spectra-efficiency SOURCES mcspectraefficiency.cxx diff --git a/Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx b/Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx index fb79e9f65a7e6..b527167fb828f 100644 --- a/Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx +++ b/Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/cascadeanalysis.cxx b/Analysis/Tasks/PWGLF/cascadeanalysis.cxx index c497ab7e0307e..e1cf517c630cd 100644 --- a/Analysis/Tasks/PWGLF/cascadeanalysis.cxx +++ b/Analysis/Tasks/PWGLF/cascadeanalysis.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/cascadebuilder.cxx b/Analysis/Tasks/PWGLF/cascadebuilder.cxx index 0392ef840421c..2241fc5386454 100644 --- a/Analysis/Tasks/PWGLF/cascadebuilder.cxx +++ b/Analysis/Tasks/PWGLF/cascadebuilder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/cascadefinder.cxx b/Analysis/Tasks/PWGLF/cascadefinder.cxx index ef71e110dfa79..db41bbce78132 100644 --- a/Analysis/Tasks/PWGLF/cascadefinder.cxx +++ b/Analysis/Tasks/PWGLF/cascadefinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/lambdakzeroanalysis.cxx b/Analysis/Tasks/PWGLF/lambdakzeroanalysis.cxx index 7fec167dfbd7c..d32e089cdce68 100644 --- a/Analysis/Tasks/PWGLF/lambdakzeroanalysis.cxx +++ b/Analysis/Tasks/PWGLF/lambdakzeroanalysis.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/lambdakzerobuilder.cxx b/Analysis/Tasks/PWGLF/lambdakzerobuilder.cxx index c71af8da32fda..7e10025424364 100644 --- a/Analysis/Tasks/PWGLF/lambdakzerobuilder.cxx +++ b/Analysis/Tasks/PWGLF/lambdakzerobuilder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/lambdakzerofinder.cxx b/Analysis/Tasks/PWGLF/lambdakzerofinder.cxx index 0c4ceb9eef4c1..2d4d4bb027b1b 100644 --- a/Analysis/Tasks/PWGLF/lambdakzerofinder.cxx +++ b/Analysis/Tasks/PWGLF/lambdakzerofinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/mcspectraefficiency.cxx b/Analysis/Tasks/PWGLF/mcspectraefficiency.cxx index a78de542108bd..61ba5440064f6 100644 --- a/Analysis/Tasks/PWGLF/mcspectraefficiency.cxx +++ b/Analysis/Tasks/PWGLF/mcspectraefficiency.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/raacharged.cxx b/Analysis/Tasks/PWGLF/raacharged.cxx index ab58c85dbc43a..ff45140956b5e 100644 --- a/Analysis/Tasks/PWGLF/raacharged.cxx +++ b/Analysis/Tasks/PWGLF/raacharged.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/spectraTOF.cxx b/Analysis/Tasks/PWGLF/spectraTOF.cxx index 1d19181b3acd2..68f3cade5bc29 100644 --- a/Analysis/Tasks/PWGLF/spectraTOF.cxx +++ b/Analysis/Tasks/PWGLF/spectraTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/spectraTOFtiny.cxx b/Analysis/Tasks/PWGLF/spectraTOFtiny.cxx index 6616dd97e4bf7..3467fc93d3a31 100644 --- a/Analysis/Tasks/PWGLF/spectraTOFtiny.cxx +++ b/Analysis/Tasks/PWGLF/spectraTOFtiny.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/spectraTPC.cxx b/Analysis/Tasks/PWGLF/spectraTPC.cxx index 6d81d578b280a..233c762a3f46f 100644 --- a/Analysis/Tasks/PWGLF/spectraTPC.cxx +++ b/Analysis/Tasks/PWGLF/spectraTPC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/spectraTPCPiKaPr.cxx b/Analysis/Tasks/PWGLF/spectraTPCPiKaPr.cxx index 2cd34a84b84df..6e332b74f4db9 100644 --- a/Analysis/Tasks/PWGLF/spectraTPCPiKaPr.cxx +++ b/Analysis/Tasks/PWGLF/spectraTPCPiKaPr.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/spectraTPCtiny.cxx b/Analysis/Tasks/PWGLF/spectraTPCtiny.cxx index a0ca6daa975ad..dc4c96c2b24e7 100644 --- a/Analysis/Tasks/PWGLF/spectraTPCtiny.cxx +++ b/Analysis/Tasks/PWGLF/spectraTPCtiny.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/spectraTPCtinyPiKaPr.cxx b/Analysis/Tasks/PWGLF/spectraTPCtinyPiKaPr.cxx index 9840bcd5791b0..fa8c23cf150bc 100644 --- a/Analysis/Tasks/PWGLF/spectraTPCtinyPiKaPr.cxx +++ b/Analysis/Tasks/PWGLF/spectraTPCtinyPiKaPr.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGLF/trackchecks.cxx b/Analysis/Tasks/PWGLF/trackchecks.cxx index 0cd1e7cc9796c..14341d7013d25 100644 --- a/Analysis/Tasks/PWGLF/trackchecks.cxx +++ b/Analysis/Tasks/PWGLF/trackchecks.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGMM/CMakeLists.txt b/Analysis/Tasks/PWGMM/CMakeLists.txt index b0a6b6fadcc0f..2a104c08f8f36 100644 --- a/Analysis/Tasks/PWGMM/CMakeLists.txt +++ b/Analysis/Tasks/PWGMM/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_dpl_workflow(dNdetaRun2Tracklets-analysis SOURCES dNdetaRun2Tracklets.cxx diff --git a/Analysis/Tasks/PWGMM/dNdetaRun2Tracklets.cxx b/Analysis/Tasks/PWGMM/dNdetaRun2Tracklets.cxx index 05b31e32a841c..1a6a728ea782a 100644 --- a/Analysis/Tasks/PWGMM/dNdetaRun2Tracklets.cxx +++ b/Analysis/Tasks/PWGMM/dNdetaRun2Tracklets.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGPP/qaEfficiency.cxx b/Analysis/Tasks/PWGPP/qaEfficiency.cxx index c872660d57bbd..47eb3eaf70d9b 100644 --- a/Analysis/Tasks/PWGPP/qaEfficiency.cxx +++ b/Analysis/Tasks/PWGPP/qaEfficiency.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGPP/qaEventTrack.cxx b/Analysis/Tasks/PWGPP/qaEventTrack.cxx index 349ae36885660..8f637a4eca97e 100644 --- a/Analysis/Tasks/PWGPP/qaEventTrack.cxx +++ b/Analysis/Tasks/PWGPP/qaEventTrack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGUD/CMakeLists.txt b/Analysis/Tasks/PWGUD/CMakeLists.txt index f1fe1bcbd88b4..9efc029ef87d0 100644 --- a/Analysis/Tasks/PWGUD/CMakeLists.txt +++ b/Analysis/Tasks/PWGUD/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_dpl_workflow(upc SOURCES upcAnalysis.cxx diff --git a/Analysis/Tasks/PWGUD/upcAnalysis.cxx b/Analysis/Tasks/PWGUD/upcAnalysis.cxx index c8005d72db3fa..6de5eba04aebb 100644 --- a/Analysis/Tasks/PWGUD/upcAnalysis.cxx +++ b/Analysis/Tasks/PWGUD/upcAnalysis.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGUD/upcForward.cxx b/Analysis/Tasks/PWGUD/upcForward.cxx index 4c378f63477d3..0b925f3c5a88e 100644 --- a/Analysis/Tasks/PWGUD/upcForward.cxx +++ b/Analysis/Tasks/PWGUD/upcForward.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/CMakeLists.txt b/Analysis/Tasks/SkimmingTutorials/CMakeLists.txt index 8d5da7a26c695..eb11f273bd204 100644 --- a/Analysis/Tasks/SkimmingTutorials/CMakeLists.txt +++ b/Analysis/Tasks/SkimmingTutorials/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_dpl_workflow(tpcspectra-task-skim-reference diff --git a/Analysis/Tasks/SkimmingTutorials/DataModel/JEDerived.h b/Analysis/Tasks/SkimmingTutorials/DataModel/JEDerived.h index f53d11ab2504f..20a8b3d076eb0 100644 --- a/Analysis/Tasks/SkimmingTutorials/DataModel/JEDerived.h +++ b/Analysis/Tasks/SkimmingTutorials/DataModel/JEDerived.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/DataModel/LFDerived.h b/Analysis/Tasks/SkimmingTutorials/DataModel/LFDerived.h index fc939e85dc942..c89e0da53238e 100644 --- a/Analysis/Tasks/SkimmingTutorials/DataModel/LFDerived.h +++ b/Analysis/Tasks/SkimmingTutorials/DataModel/LFDerived.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/DataModel/UDDerived.h b/Analysis/Tasks/SkimmingTutorials/DataModel/UDDerived.h index 5c29949f01be3..8a8a2b6984e00 100644 --- a/Analysis/Tasks/SkimmingTutorials/DataModel/UDDerived.h +++ b/Analysis/Tasks/SkimmingTutorials/DataModel/UDDerived.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/jetProvider.cxx b/Analysis/Tasks/SkimmingTutorials/jetProvider.cxx index 45231901f02e4..e67bdd9638e78 100644 --- a/Analysis/Tasks/SkimmingTutorials/jetProvider.cxx +++ b/Analysis/Tasks/SkimmingTutorials/jetProvider.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/jetSpectraAnalyser.cxx b/Analysis/Tasks/SkimmingTutorials/jetSpectraAnalyser.cxx index e962b2bb40e96..72af633027093 100644 --- a/Analysis/Tasks/SkimmingTutorials/jetSpectraAnalyser.cxx +++ b/Analysis/Tasks/SkimmingTutorials/jetSpectraAnalyser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/jetSpectraReference.cxx b/Analysis/Tasks/SkimmingTutorials/jetSpectraReference.cxx index 6799bff4a3ad8..7a1985d03d3c3 100644 --- a/Analysis/Tasks/SkimmingTutorials/jetSpectraReference.cxx +++ b/Analysis/Tasks/SkimmingTutorials/jetSpectraReference.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/spectraNucleiAnalyser.cxx b/Analysis/Tasks/SkimmingTutorials/spectraNucleiAnalyser.cxx index 8ebdc8e80d9a5..4fc024fab81f4 100644 --- a/Analysis/Tasks/SkimmingTutorials/spectraNucleiAnalyser.cxx +++ b/Analysis/Tasks/SkimmingTutorials/spectraNucleiAnalyser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/spectraNucleiProvider.cxx b/Analysis/Tasks/SkimmingTutorials/spectraNucleiProvider.cxx index 7453ae1f627e8..dc6241beb69e8 100644 --- a/Analysis/Tasks/SkimmingTutorials/spectraNucleiProvider.cxx +++ b/Analysis/Tasks/SkimmingTutorials/spectraNucleiProvider.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/spectraNucleiReference.cxx b/Analysis/Tasks/SkimmingTutorials/spectraNucleiReference.cxx index b160970609dd5..14358ffeb1c4f 100644 --- a/Analysis/Tasks/SkimmingTutorials/spectraNucleiReference.cxx +++ b/Analysis/Tasks/SkimmingTutorials/spectraNucleiReference.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/spectraTPCAnalyser.cxx b/Analysis/Tasks/SkimmingTutorials/spectraTPCAnalyser.cxx index 94357a7db25b8..e41a6bf23fe32 100644 --- a/Analysis/Tasks/SkimmingTutorials/spectraTPCAnalyser.cxx +++ b/Analysis/Tasks/SkimmingTutorials/spectraTPCAnalyser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/spectraTPCProvider.cxx b/Analysis/Tasks/SkimmingTutorials/spectraTPCProvider.cxx index f95f7a1b8de6e..500e74a118f4a 100644 --- a/Analysis/Tasks/SkimmingTutorials/spectraTPCProvider.cxx +++ b/Analysis/Tasks/SkimmingTutorials/spectraTPCProvider.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/spectraTPCReference.cxx b/Analysis/Tasks/SkimmingTutorials/spectraTPCReference.cxx index 79a99ccd41d59..764cb788d644f 100644 --- a/Analysis/Tasks/SkimmingTutorials/spectraTPCReference.cxx +++ b/Analysis/Tasks/SkimmingTutorials/spectraTPCReference.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/spectraUPCAnalyser.cxx b/Analysis/Tasks/SkimmingTutorials/spectraUPCAnalyser.cxx index c5825be1d31c8..4bbe8e04ecbf2 100644 --- a/Analysis/Tasks/SkimmingTutorials/spectraUPCAnalyser.cxx +++ b/Analysis/Tasks/SkimmingTutorials/spectraUPCAnalyser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/spectraUPCProvider.cxx b/Analysis/Tasks/SkimmingTutorials/spectraUPCProvider.cxx index b9ecb63c3b485..5b9ad16c3fe90 100644 --- a/Analysis/Tasks/SkimmingTutorials/spectraUPCProvider.cxx +++ b/Analysis/Tasks/SkimmingTutorials/spectraUPCProvider.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/SkimmingTutorials/spectraUPCReference.cxx b/Analysis/Tasks/SkimmingTutorials/spectraUPCReference.cxx index e7246e98bdd4b..4a7fbe0f87bc0 100644 --- a/Analysis/Tasks/SkimmingTutorials/spectraUPCReference.cxx +++ b/Analysis/Tasks/SkimmingTutorials/spectraUPCReference.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/Utils/CMakeLists.txt b/Analysis/Tasks/Utils/CMakeLists.txt index c8e0adfb43e32..ffa4303656824 100644 --- a/Analysis/Tasks/Utils/CMakeLists.txt +++ b/Analysis/Tasks/Utils/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_header_only_library(AnalysisTasksUtils) diff --git a/Analysis/Tasks/Utils/include/AnalysisTasksUtils/UtilsDebugLcK0Sp.h b/Analysis/Tasks/Utils/include/AnalysisTasksUtils/UtilsDebugLcK0Sp.h index 03758fd2d59bf..b234b396b3129 100644 --- a/Analysis/Tasks/Utils/include/AnalysisTasksUtils/UtilsDebugLcK0Sp.h +++ b/Analysis/Tasks/Utils/include/AnalysisTasksUtils/UtilsDebugLcK0Sp.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/centralityQa.cxx b/Analysis/Tasks/centralityQa.cxx index 6ec555e24b850..0579455d57c88 100644 --- a/Analysis/Tasks/centralityQa.cxx +++ b/Analysis/Tasks/centralityQa.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/centralityTable.cxx b/Analysis/Tasks/centralityTable.cxx index f10272d23246c..e2de52f9e6dd6 100644 --- a/Analysis/Tasks/centralityTable.cxx +++ b/Analysis/Tasks/centralityTable.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/emcalCorrectionTask.cxx b/Analysis/Tasks/emcalCorrectionTask.cxx index 937bff586ba73..d5480de722dcb 100644 --- a/Analysis/Tasks/emcalCorrectionTask.cxx +++ b/Analysis/Tasks/emcalCorrectionTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/eventSelection.cxx b/Analysis/Tasks/eventSelection.cxx index e48edaa64d858..7592d795f9937 100644 --- a/Analysis/Tasks/eventSelection.cxx +++ b/Analysis/Tasks/eventSelection.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/eventSelectionQa.cxx b/Analysis/Tasks/eventSelectionQa.cxx index 8a913425458c6..c728495d1ae6e 100644 --- a/Analysis/Tasks/eventSelectionQa.cxx +++ b/Analysis/Tasks/eventSelectionQa.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/multiplicityQa.cxx b/Analysis/Tasks/multiplicityQa.cxx index 5da02b61a8d77..4bb0f383d36fb 100644 --- a/Analysis/Tasks/multiplicityQa.cxx +++ b/Analysis/Tasks/multiplicityQa.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/multiplicityTable.cxx b/Analysis/Tasks/multiplicityTable.cxx index 4643221f6c73a..9b6138bbb558a 100644 --- a/Analysis/Tasks/multiplicityTable.cxx +++ b/Analysis/Tasks/multiplicityTable.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/timestamp.cxx b/Analysis/Tasks/timestamp.cxx index 0d04769978165..fc8933c46b4ad 100644 --- a/Analysis/Tasks/timestamp.cxx +++ b/Analysis/Tasks/timestamp.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/trackextension.cxx b/Analysis/Tasks/trackextension.cxx index 3cb5e87cf6bc4..c084ebee76818 100644 --- a/Analysis/Tasks/trackextension.cxx +++ b/Analysis/Tasks/trackextension.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/trackqa.cxx b/Analysis/Tasks/trackqa.cxx index b9c3642e64d11..b10fa91269051 100644 --- a/Analysis/Tasks/trackqa.cxx +++ b/Analysis/Tasks/trackqa.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/trackselection.cxx b/Analysis/Tasks/trackselection.cxx index 804fce41b11e4..9aab62e7a7bb4 100644 --- a/Analysis/Tasks/trackselection.cxx +++ b/Analysis/Tasks/trackselection.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/validation.cxx b/Analysis/Tasks/validation.cxx index ba83f6ff86fb3..4cd25693ff5d1 100644 --- a/Analysis/Tasks/validation.cxx +++ b/Analysis/Tasks/validation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/weakDecayIndices.cxx b/Analysis/Tasks/weakDecayIndices.cxx index fd22b592ea075..38e673bd8745a 100644 --- a/Analysis/Tasks/weakDecayIndices.cxx +++ b/Analysis/Tasks/weakDecayIndices.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/CMakeLists.txt b/Analysis/Tutorials/CMakeLists.txt index 7939baaf53a8f..3bc60f6219bdc 100644 --- a/Analysis/Tutorials/CMakeLists.txt +++ b/Analysis/Tutorials/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # FIXME Is this one supposed to be a header only library (in which case the .h # to be installed should be in include/TestWorkflows) or not a library at all ? diff --git a/Analysis/Tutorials/include/Analysis/configurableCut.h b/Analysis/Tutorials/include/Analysis/configurableCut.h index 55be646f6a8a6..5a081038ee482 100644 --- a/Analysis/Tutorials/include/Analysis/configurableCut.h +++ b/Analysis/Tutorials/include/Analysis/configurableCut.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/ConfigurableCutLinkDef.h b/Analysis/Tutorials/src/ConfigurableCutLinkDef.h index 4ad2560c106b7..f2667e6b6cc23 100644 --- a/Analysis/Tutorials/src/ConfigurableCutLinkDef.h +++ b/Analysis/Tutorials/src/ConfigurableCutLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/ZDCVZeroIteration.cxx b/Analysis/Tutorials/src/ZDCVZeroIteration.cxx index f6ef441d92bdd..18828199e03d0 100644 --- a/Analysis/Tutorials/src/ZDCVZeroIteration.cxx +++ b/Analysis/Tutorials/src/ZDCVZeroIteration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/aodreader.cxx b/Analysis/Tutorials/src/aodreader.cxx index 142ec25e02e91..ceacbf0a6578e 100644 --- a/Analysis/Tutorials/src/aodreader.cxx +++ b/Analysis/Tutorials/src/aodreader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/aodwriter.cxx b/Analysis/Tutorials/src/aodwriter.cxx index 2b41fff8fd0b0..0afc839396040 100644 --- a/Analysis/Tutorials/src/aodwriter.cxx +++ b/Analysis/Tutorials/src/aodwriter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/associatedExample.cxx b/Analysis/Tutorials/src/associatedExample.cxx index 4cb8c5c235f4a..8ca857f242cb6 100644 --- a/Analysis/Tutorials/src/associatedExample.cxx +++ b/Analysis/Tutorials/src/associatedExample.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/ccdbaccess.cxx b/Analysis/Tutorials/src/ccdbaccess.cxx index 5e0c44b6c0a53..afa5c9d4d52e3 100644 --- a/Analysis/Tutorials/src/ccdbaccess.cxx +++ b/Analysis/Tutorials/src/ccdbaccess.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/collisionTracksIteration.cxx b/Analysis/Tutorials/src/collisionTracksIteration.cxx index 6a81e29ba78dc..a2261504d3b76 100644 --- a/Analysis/Tutorials/src/collisionTracksIteration.cxx +++ b/Analysis/Tutorials/src/collisionTracksIteration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/compatibleBCs.cxx b/Analysis/Tutorials/src/compatibleBCs.cxx index 89503dce5aafe..46b44398d6970 100644 --- a/Analysis/Tutorials/src/compatibleBCs.cxx +++ b/Analysis/Tutorials/src/compatibleBCs.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/configurableCut.cxx b/Analysis/Tutorials/src/configurableCut.cxx index dc3b4b4fe928c..bb009d2f772fb 100644 --- a/Analysis/Tutorials/src/configurableCut.cxx +++ b/Analysis/Tutorials/src/configurableCut.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/configurableObjects.cxx b/Analysis/Tutorials/src/configurableObjects.cxx index 530d8ec01119c..025e4ccf77dbb 100644 --- a/Analysis/Tutorials/src/configurableObjects.cxx +++ b/Analysis/Tutorials/src/configurableObjects.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/dynamicColumns.cxx b/Analysis/Tutorials/src/dynamicColumns.cxx index 2cba73b3d7bd4..48de150b04205 100644 --- a/Analysis/Tutorials/src/dynamicColumns.cxx +++ b/Analysis/Tutorials/src/dynamicColumns.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/efficiencyGlobal.cxx b/Analysis/Tutorials/src/efficiencyGlobal.cxx index 1591e83cba997..e181788650b28 100644 --- a/Analysis/Tutorials/src/efficiencyGlobal.cxx +++ b/Analysis/Tutorials/src/efficiencyGlobal.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/efficiencyPerRun.cxx b/Analysis/Tutorials/src/efficiencyPerRun.cxx index 8ceb3222d5c2d..c2fa7a887cafa 100644 --- a/Analysis/Tutorials/src/efficiencyPerRun.cxx +++ b/Analysis/Tutorials/src/efficiencyPerRun.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/eventMixing.cxx b/Analysis/Tutorials/src/eventMixing.cxx index c5f54590b16be..a2d665ac5b6d9 100644 --- a/Analysis/Tutorials/src/eventMixing.cxx +++ b/Analysis/Tutorials/src/eventMixing.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/extendedColumns.cxx b/Analysis/Tutorials/src/extendedColumns.cxx index 67f967e1acf46..25ed84b898cf1 100644 --- a/Analysis/Tutorials/src/extendedColumns.cxx +++ b/Analysis/Tutorials/src/extendedColumns.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/extendedTables.cxx b/Analysis/Tutorials/src/extendedTables.cxx index 03f6ce92ef0d8..91f611ffeb19c 100644 --- a/Analysis/Tutorials/src/extendedTables.cxx +++ b/Analysis/Tutorials/src/extendedTables.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/filters.cxx b/Analysis/Tutorials/src/filters.cxx index 1720c2455baa6..e50ee78c2ea1d 100644 --- a/Analysis/Tutorials/src/filters.cxx +++ b/Analysis/Tutorials/src/filters.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/fullTrackIteration.cxx b/Analysis/Tutorials/src/fullTrackIteration.cxx index 66bed574804bc..0b8384722ef38 100644 --- a/Analysis/Tutorials/src/fullTrackIteration.cxx +++ b/Analysis/Tutorials/src/fullTrackIteration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/histogramRegistry.cxx b/Analysis/Tutorials/src/histogramRegistry.cxx index 0ff53f142b7a4..b35467ff80c3c 100644 --- a/Analysis/Tutorials/src/histogramRegistry.cxx +++ b/Analysis/Tutorials/src/histogramRegistry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/histogramTrackSelection.cxx b/Analysis/Tutorials/src/histogramTrackSelection.cxx index 7292043cc5420..1bb224f59914b 100644 --- a/Analysis/Tutorials/src/histogramTrackSelection.cxx +++ b/Analysis/Tutorials/src/histogramTrackSelection.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/histograms.cxx b/Analysis/Tutorials/src/histograms.cxx index 444c8ce060222..53e1891b5be2f 100644 --- a/Analysis/Tutorials/src/histograms.cxx +++ b/Analysis/Tutorials/src/histograms.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/histogramsFullTracks.cxx b/Analysis/Tutorials/src/histogramsFullTracks.cxx index 7750ae2b91a0f..a69d1af822f6e 100644 --- a/Analysis/Tutorials/src/histogramsFullTracks.cxx +++ b/Analysis/Tutorials/src/histogramsFullTracks.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/jetAnalysis.cxx b/Analysis/Tutorials/src/jetAnalysis.cxx index d77a0aa9e353f..15543075ed903 100644 --- a/Analysis/Tutorials/src/jetAnalysis.cxx +++ b/Analysis/Tutorials/src/jetAnalysis.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/mcHistograms.cxx b/Analysis/Tutorials/src/mcHistograms.cxx index 7eba16b450043..888da88568793 100644 --- a/Analysis/Tutorials/src/mcHistograms.cxx +++ b/Analysis/Tutorials/src/mcHistograms.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/multiProcess.cxx b/Analysis/Tutorials/src/multiProcess.cxx index 524f7f66ded81..5e5709d7e55f7 100644 --- a/Analysis/Tutorials/src/multiProcess.cxx +++ b/Analysis/Tutorials/src/multiProcess.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/multiplicityEventTrackSelection.cxx b/Analysis/Tutorials/src/multiplicityEventTrackSelection.cxx index ad89191495ac1..8dddfe283d612 100644 --- a/Analysis/Tutorials/src/multiplicityEventTrackSelection.cxx +++ b/Analysis/Tutorials/src/multiplicityEventTrackSelection.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/muonIteration.cxx b/Analysis/Tutorials/src/muonIteration.cxx index a619a05b5cd07..aa0b6da8f6539 100644 --- a/Analysis/Tutorials/src/muonIteration.cxx +++ b/Analysis/Tutorials/src/muonIteration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/newCollections.cxx b/Analysis/Tutorials/src/newCollections.cxx index 78e56f37a549b..d4c794a981657 100644 --- a/Analysis/Tutorials/src/newCollections.cxx +++ b/Analysis/Tutorials/src/newCollections.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/outputs.cxx b/Analysis/Tutorials/src/outputs.cxx index 1cad832117287..c1c10b90ef072 100644 --- a/Analysis/Tutorials/src/outputs.cxx +++ b/Analysis/Tutorials/src/outputs.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/partitions.cxx b/Analysis/Tutorials/src/partitions.cxx index d6f9bc904f82b..bf5b77e32e4fc 100644 --- a/Analysis/Tutorials/src/partitions.cxx +++ b/Analysis/Tutorials/src/partitions.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/schemaEvolution.cxx b/Analysis/Tutorials/src/schemaEvolution.cxx index 76198b790f03f..a15fcba6ddada 100644 --- a/Analysis/Tutorials/src/schemaEvolution.cxx +++ b/Analysis/Tutorials/src/schemaEvolution.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/tableIOin.cxx b/Analysis/Tutorials/src/tableIOin.cxx index 718ba36f6fcd7..12a93e749d0c7 100644 --- a/Analysis/Tutorials/src/tableIOin.cxx +++ b/Analysis/Tutorials/src/tableIOin.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/tableIOout.cxx b/Analysis/Tutorials/src/tableIOout.cxx index 85852a1e86647..403740755d9a3 100644 --- a/Analysis/Tutorials/src/tableIOout.cxx +++ b/Analysis/Tutorials/src/tableIOout.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/trackCollectionIteration.cxx b/Analysis/Tutorials/src/trackCollectionIteration.cxx index d3af886e449d3..f9e50b035b836 100644 --- a/Analysis/Tutorials/src/trackCollectionIteration.cxx +++ b/Analysis/Tutorials/src/trackCollectionIteration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/trackIteration.cxx b/Analysis/Tutorials/src/trackIteration.cxx index 5fec3bbcb337f..064415cce2c4f 100644 --- a/Analysis/Tutorials/src/trackIteration.cxx +++ b/Analysis/Tutorials/src/trackIteration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/tracksCombinations.cxx b/Analysis/Tutorials/src/tracksCombinations.cxx index c85144b977fab..c2810bc9eb0a2 100644 --- a/Analysis/Tutorials/src/tracksCombinations.cxx +++ b/Analysis/Tutorials/src/tracksCombinations.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tutorials/src/weakDecayIteration.cxx b/Analysis/Tutorials/src/weakDecayIteration.cxx index 7274ef5775826..c4cd4e2686380 100644 --- a/Analysis/Tutorials/src/weakDecayIteration.cxx +++ b/Analysis/Tutorials/src/weakDecayIteration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/CMakeLists.txt b/CCDB/CMakeLists.txt index a91a3aa31347e..d1d178c221750 100644 --- a/CCDB/CMakeLists.txt +++ b/CCDB/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(CCDB SOURCES src/CcdbApi.cxx diff --git a/CCDB/include/CCDB/BasicCCDBManager.h b/CCDB/include/CCDB/BasicCCDBManager.h index 3c281adbea0b2..28d74191d013f 100644 --- a/CCDB/include/CCDB/BasicCCDBManager.h +++ b/CCDB/include/CCDB/BasicCCDBManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/include/CCDB/CCDBQuery.h b/CCDB/include/CCDB/CCDBQuery.h index f2848c6a0e556..3b94b9576c261 100644 --- a/CCDB/include/CCDB/CCDBQuery.h +++ b/CCDB/include/CCDB/CCDBQuery.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/include/CCDB/CCDBTimeStampUtils.h b/CCDB/include/CCDB/CCDBTimeStampUtils.h index 358901d91a95e..e61dcf072d076 100644 --- a/CCDB/include/CCDB/CCDBTimeStampUtils.h +++ b/CCDB/include/CCDB/CCDBTimeStampUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/include/CCDB/CcdbApi.h b/CCDB/include/CCDB/CcdbApi.h index 2d5bb9969b266..6838e5041757e 100644 --- a/CCDB/include/CCDB/CcdbApi.h +++ b/CCDB/include/CCDB/CcdbApi.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/include/CCDB/CcdbObjectInfo.h b/CCDB/include/CCDB/CcdbObjectInfo.h index 2dced89d769b8..fd5540bace02a 100644 --- a/CCDB/include/CCDB/CcdbObjectInfo.h +++ b/CCDB/include/CCDB/CcdbObjectInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/include/CCDB/IdPath.h b/CCDB/include/CCDB/IdPath.h index dd9544bcb8e9c..f8dd555bc3275 100644 --- a/CCDB/include/CCDB/IdPath.h +++ b/CCDB/include/CCDB/IdPath.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/include/CCDB/TObjectWrapper.h b/CCDB/include/CCDB/TObjectWrapper.h index 3c11cee3ae44f..10f463d1fbb17 100644 --- a/CCDB/include/CCDB/TObjectWrapper.h +++ b/CCDB/include/CCDB/TObjectWrapper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/src/BasicCCDBManager.cxx b/CCDB/src/BasicCCDBManager.cxx index 442e8920c0ed1..d4731d376cc65 100644 --- a/CCDB/src/BasicCCDBManager.cxx +++ b/CCDB/src/BasicCCDBManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/src/CCDBLinkDef.h b/CCDB/src/CCDBLinkDef.h index 1a71710b00bd8..f04d9f0a7fdd5 100644 --- a/CCDB/src/CCDBLinkDef.h +++ b/CCDB/src/CCDBLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/src/CCDBQuery.cxx b/CCDB/src/CCDBQuery.cxx index 8320e4ea3b6d5..d608870c97ba3 100644 --- a/CCDB/src/CCDBQuery.cxx +++ b/CCDB/src/CCDBQuery.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/src/CCDBTimeStampUtils.cxx b/CCDB/src/CCDBTimeStampUtils.cxx index 69809e77ac524..993eb1f2065bd 100644 --- a/CCDB/src/CCDBTimeStampUtils.cxx +++ b/CCDB/src/CCDBTimeStampUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/src/CcdbApi.cxx b/CCDB/src/CcdbApi.cxx index 4fb98c45331a5..284d9f02d614a 100644 --- a/CCDB/src/CcdbApi.cxx +++ b/CCDB/src/CcdbApi.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/src/DownloadCCDBFile.cxx b/CCDB/src/DownloadCCDBFile.cxx index 7df14bfe6b3f9..21d966d5209fe 100644 --- a/CCDB/src/DownloadCCDBFile.cxx +++ b/CCDB/src/DownloadCCDBFile.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/src/IdPath.cxx b/CCDB/src/IdPath.cxx index 8a838cedc3157..d27ee7249d215 100644 --- a/CCDB/src/IdPath.cxx +++ b/CCDB/src/IdPath.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/src/InspectCCDBFile.cxx b/CCDB/src/InspectCCDBFile.cxx index 78f76257e35bc..46dc5d0706bab 100644 --- a/CCDB/src/InspectCCDBFile.cxx +++ b/CCDB/src/InspectCCDBFile.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/src/UploadTool.cxx b/CCDB/src/UploadTool.cxx index 2e62ec28ce278..3b3e7aedcb4de 100644 --- a/CCDB/src/UploadTool.cxx +++ b/CCDB/src/UploadTool.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/test/testBasicCCDBManager.cxx b/CCDB/test/testBasicCCDBManager.cxx index 3a49d56172c7f..e91f4e6ac4545 100644 --- a/CCDB/test/testBasicCCDBManager.cxx +++ b/CCDB/test/testBasicCCDBManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/test/testCcdbApi.cxx b/CCDB/test/testCcdbApi.cxx index 7845f1f10bc8d..b9ffe59c19500 100644 --- a/CCDB/test/testCcdbApi.cxx +++ b/CCDB/test/testCcdbApi.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CCDB/test/testCcdbApi_alien.cxx b/CCDB/test/testCcdbApi_alien.cxx index b97b477aa9248..35d91baf42b56 100644 --- a/CCDB/test/testCcdbApi_alien.cxx +++ b/CCDB/test/testCcdbApi_alien.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/CMakeLists.txt b/CMakeLists.txt index b3a1f00835fc7..db655d9504dad 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # Preamble diff --git a/Common/CMakeLists.txt b/Common/CMakeLists.txt index af6a678c979a3..bfb4a24ff3bc9 100644 --- a/Common/CMakeLists.txt +++ b/Common/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Constants) add_subdirectory(MathUtils) diff --git a/Common/Constants/CMakeLists.txt b/Common/Constants/CMakeLists.txt index 40fd739c7ecf1..ced8bb7895f95 100644 --- a/Common/Constants/CMakeLists.txt +++ b/Common/Constants/CMakeLists.txt @@ -1,11 +1,12 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_header_only_library(CommonConstants) diff --git a/Common/Constants/include/CommonConstants/GeomConstants.h b/Common/Constants/include/CommonConstants/GeomConstants.h index 44912e0fc7247..760862384b0f5 100644 --- a/Common/Constants/include/CommonConstants/GeomConstants.h +++ b/Common/Constants/include/CommonConstants/GeomConstants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Constants/include/CommonConstants/LHCConstants.h b/Common/Constants/include/CommonConstants/LHCConstants.h index f8dbc978cb374..c97e8c023f4a0 100644 --- a/Common/Constants/include/CommonConstants/LHCConstants.h +++ b/Common/Constants/include/CommonConstants/LHCConstants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Constants/include/CommonConstants/MathConstants.h b/Common/Constants/include/CommonConstants/MathConstants.h index 30c1a7cf436bf..5c3f2ecea6b99 100644 --- a/Common/Constants/include/CommonConstants/MathConstants.h +++ b/Common/Constants/include/CommonConstants/MathConstants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Constants/include/CommonConstants/PhysicsConstants.h b/Common/Constants/include/CommonConstants/PhysicsConstants.h index 30be4bb0e7012..4a80c238e391f 100644 --- a/Common/Constants/include/CommonConstants/PhysicsConstants.h +++ b/Common/Constants/include/CommonConstants/PhysicsConstants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Constants/include/CommonConstants/Triggers.h b/Common/Constants/include/CommonConstants/Triggers.h index 4b5bb49e94040..1c5702dd3b584 100644 --- a/Common/Constants/include/CommonConstants/Triggers.h +++ b/Common/Constants/include/CommonConstants/Triggers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/CMakeLists.txt b/Common/Field/CMakeLists.txt index 6687f10d7daec..5531132eb9a59 100644 --- a/Common/Field/CMakeLists.txt +++ b/Common/Field/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(Field SOURCES src/MagFieldContFact.cxx diff --git a/Common/Field/include/Field/MagFieldContFact.h b/Common/Field/include/Field/MagFieldContFact.h index ca9db4e19fad8..7cfdae740e657 100644 --- a/Common/Field/include/Field/MagFieldContFact.h +++ b/Common/Field/include/Field/MagFieldContFact.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/include/Field/MagFieldFact.h b/Common/Field/include/Field/MagFieldFact.h index d34877b70a28d..bc0b548c36a85 100644 --- a/Common/Field/include/Field/MagFieldFact.h +++ b/Common/Field/include/Field/MagFieldFact.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/include/Field/MagFieldFast.h b/Common/Field/include/Field/MagFieldFast.h index f942804bdc787..2590a7b38807b 100644 --- a/Common/Field/include/Field/MagFieldFast.h +++ b/Common/Field/include/Field/MagFieldFast.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/include/Field/MagFieldParam.h b/Common/Field/include/Field/MagFieldParam.h index 37b3f0a0e99ac..166a8e7296dcc 100644 --- a/Common/Field/include/Field/MagFieldParam.h +++ b/Common/Field/include/Field/MagFieldParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/include/Field/MagneticField.h b/Common/Field/include/Field/MagneticField.h index 7f86a53285597..c065397031e22 100644 --- a/Common/Field/include/Field/MagneticField.h +++ b/Common/Field/include/Field/MagneticField.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/include/Field/MagneticWrapperChebyshev.h b/Common/Field/include/Field/MagneticWrapperChebyshev.h index 4f3bd67fc6df0..2e7dea8ab2aad 100644 --- a/Common/Field/include/Field/MagneticWrapperChebyshev.h +++ b/Common/Field/include/Field/MagneticWrapperChebyshev.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/src/FieldLinkDef.h b/Common/Field/src/FieldLinkDef.h index 71f16d0a29f8b..737a73180af76 100644 --- a/Common/Field/src/FieldLinkDef.h +++ b/Common/Field/src/FieldLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/src/MagFieldContFact.cxx b/Common/Field/src/MagFieldContFact.cxx index f280101c20943..bc347adc392af 100644 --- a/Common/Field/src/MagFieldContFact.cxx +++ b/Common/Field/src/MagFieldContFact.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/src/MagFieldFact.cxx b/Common/Field/src/MagFieldFact.cxx index 6f5cfe565382b..a3547987a0766 100644 --- a/Common/Field/src/MagFieldFact.cxx +++ b/Common/Field/src/MagFieldFact.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/src/MagFieldFast.cxx b/Common/Field/src/MagFieldFast.cxx index 9518de8f57e1d..4d8d1f08e595f 100644 --- a/Common/Field/src/MagFieldFast.cxx +++ b/Common/Field/src/MagFieldFast.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/src/MagFieldParam.cxx b/Common/Field/src/MagFieldParam.cxx index dd7fb68978c7f..9af35904c38e7 100644 --- a/Common/Field/src/MagFieldParam.cxx +++ b/Common/Field/src/MagFieldParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/src/MagneticField.cxx b/Common/Field/src/MagneticField.cxx index 9ba45a285eefa..7034365367d0a 100644 --- a/Common/Field/src/MagneticField.cxx +++ b/Common/Field/src/MagneticField.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/src/MagneticWrapperChebyshev.cxx b/Common/Field/src/MagneticWrapperChebyshev.cxx index db73f2bf7ce45..56442ae8d5fe2 100644 --- a/Common/Field/src/MagneticWrapperChebyshev.cxx +++ b/Common/Field/src/MagneticWrapperChebyshev.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Field/test/testMagneticField.cxx b/Common/Field/test/testMagneticField.cxx index 7a1935d9fb0a1..f5b5dbad8eb2d 100644 --- a/Common/Field/test/testMagneticField.cxx +++ b/Common/Field/test/testMagneticField.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/CMakeLists.txt b/Common/MathUtils/CMakeLists.txt index 386ee0ef43525..5b24fcfcdf7c3 100644 --- a/Common/MathUtils/CMakeLists.txt +++ b/Common/MathUtils/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( MathUtils diff --git a/Common/MathUtils/include/MathUtils/CachingTF1.h b/Common/MathUtils/include/MathUtils/CachingTF1.h index 4c3b64915b250..1ab656b7fa92e 100644 --- a/Common/MathUtils/include/MathUtils/CachingTF1.h +++ b/Common/MathUtils/include/MathUtils/CachingTF1.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/Cartesian.h b/Common/MathUtils/include/MathUtils/Cartesian.h index 1308c0bd496eb..14509def6efb1 100644 --- a/Common/MathUtils/include/MathUtils/Cartesian.h +++ b/Common/MathUtils/include/MathUtils/Cartesian.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/CartesianGPU.h b/Common/MathUtils/include/MathUtils/CartesianGPU.h index 4ec08e51bc6c2..dbde12d7e9ea9 100644 --- a/Common/MathUtils/include/MathUtils/CartesianGPU.h +++ b/Common/MathUtils/include/MathUtils/CartesianGPU.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/Chebyshev3D.h b/Common/MathUtils/include/MathUtils/Chebyshev3D.h index 7fcbd52f0e18f..3ffdf3abc328f 100644 --- a/Common/MathUtils/include/MathUtils/Chebyshev3D.h +++ b/Common/MathUtils/include/MathUtils/Chebyshev3D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/Chebyshev3DCalc.h b/Common/MathUtils/include/MathUtils/Chebyshev3DCalc.h index 6696f7be41852..0db2ec49ef752 100644 --- a/Common/MathUtils/include/MathUtils/Chebyshev3DCalc.h +++ b/Common/MathUtils/include/MathUtils/Chebyshev3DCalc.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/Primitive2D.h b/Common/MathUtils/include/MathUtils/Primitive2D.h index 1d69fda1f8710..052926d111594 100644 --- a/Common/MathUtils/include/MathUtils/Primitive2D.h +++ b/Common/MathUtils/include/MathUtils/Primitive2D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/RandomRing.h b/Common/MathUtils/include/MathUtils/RandomRing.h index a603e611ee492..59825f0a0ce09 100644 --- a/Common/MathUtils/include/MathUtils/RandomRing.h +++ b/Common/MathUtils/include/MathUtils/RandomRing.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/SMatrixGPU.h b/Common/MathUtils/include/MathUtils/SMatrixGPU.h index bbadb828b6804..2faaf118d1daa 100644 --- a/Common/MathUtils/include/MathUtils/SMatrixGPU.h +++ b/Common/MathUtils/include/MathUtils/SMatrixGPU.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/Utils.h b/Common/MathUtils/include/MathUtils/Utils.h index 097eb8769cd38..618d3e379f6d2 100644 --- a/Common/MathUtils/include/MathUtils/Utils.h +++ b/Common/MathUtils/include/MathUtils/Utils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/detail/Bracket.h b/Common/MathUtils/include/MathUtils/detail/Bracket.h index 076e9d17d4407..c52de5a0e15c4 100644 --- a/Common/MathUtils/include/MathUtils/detail/Bracket.h +++ b/Common/MathUtils/include/MathUtils/detail/Bracket.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/detail/CircleXY.h b/Common/MathUtils/include/MathUtils/detail/CircleXY.h index cf740b455441c..3a626dde0e872 100644 --- a/Common/MathUtils/include/MathUtils/detail/CircleXY.h +++ b/Common/MathUtils/include/MathUtils/detail/CircleXY.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/detail/IntervalXY.h b/Common/MathUtils/include/MathUtils/detail/IntervalXY.h index 2a65634ff0778..892868ed562b2 100644 --- a/Common/MathUtils/include/MathUtils/detail/IntervalXY.h +++ b/Common/MathUtils/include/MathUtils/detail/IntervalXY.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/detail/StatAccumulator.h b/Common/MathUtils/include/MathUtils/detail/StatAccumulator.h index 5ec3781de0d6d..50a09804da6ed 100644 --- a/Common/MathUtils/include/MathUtils/detail/StatAccumulator.h +++ b/Common/MathUtils/include/MathUtils/detail/StatAccumulator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/detail/TypeTruncation.h b/Common/MathUtils/include/MathUtils/detail/TypeTruncation.h index 18a8419b6e035..9df6073f5de59 100644 --- a/Common/MathUtils/include/MathUtils/detail/TypeTruncation.h +++ b/Common/MathUtils/include/MathUtils/detail/TypeTruncation.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/detail/basicMath.h b/Common/MathUtils/include/MathUtils/detail/basicMath.h index 76a09863bc206..5dd66182e47d8 100644 --- a/Common/MathUtils/include/MathUtils/detail/basicMath.h +++ b/Common/MathUtils/include/MathUtils/detail/basicMath.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/detail/bitOps.h b/Common/MathUtils/include/MathUtils/detail/bitOps.h index e3ddc6afda020..a5f0fdc98ee77 100644 --- a/Common/MathUtils/include/MathUtils/detail/bitOps.h +++ b/Common/MathUtils/include/MathUtils/detail/bitOps.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/detail/trigonometric.h b/Common/MathUtils/include/MathUtils/detail/trigonometric.h index fab60be56efa9..d624ca5c6bd67 100644 --- a/Common/MathUtils/include/MathUtils/detail/trigonometric.h +++ b/Common/MathUtils/include/MathUtils/detail/trigonometric.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/include/MathUtils/fit.h b/Common/MathUtils/include/MathUtils/fit.h index ea7cc626ba0af..3d15f6c4c91c8 100644 --- a/Common/MathUtils/include/MathUtils/fit.h +++ b/Common/MathUtils/include/MathUtils/fit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/src/CachingTF1.cxx b/Common/MathUtils/src/CachingTF1.cxx index 1d3957a476bf2..faacbff755c4a 100644 --- a/Common/MathUtils/src/CachingTF1.cxx +++ b/Common/MathUtils/src/CachingTF1.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/src/Cartesian.cxx b/Common/MathUtils/src/Cartesian.cxx index fc6e950f115bb..da7bad9035b7d 100644 --- a/Common/MathUtils/src/Cartesian.cxx +++ b/Common/MathUtils/src/Cartesian.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/src/Chebyshev3D.cxx b/Common/MathUtils/src/Chebyshev3D.cxx index 2fd984640b6af..10e0d228b2496 100644 --- a/Common/MathUtils/src/Chebyshev3D.cxx +++ b/Common/MathUtils/src/Chebyshev3D.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/src/Chebyshev3DCalc.cxx b/Common/MathUtils/src/Chebyshev3DCalc.cxx index d9de88e2b61f9..7a402215a1cf3 100644 --- a/Common/MathUtils/src/Chebyshev3DCalc.cxx +++ b/Common/MathUtils/src/Chebyshev3DCalc.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/src/MathUtilsLinkDef.h b/Common/MathUtils/src/MathUtilsLinkDef.h index 59f6deb11b8e0..a0aa954172e27 100644 --- a/Common/MathUtils/src/MathUtilsLinkDef.h +++ b/Common/MathUtils/src/MathUtilsLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/test/testCachingTF1.cxx b/Common/MathUtils/test/testCachingTF1.cxx index adab3ef589ca5..a947128e4cada 100644 --- a/Common/MathUtils/test/testCachingTF1.cxx +++ b/Common/MathUtils/test/testCachingTF1.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/test/testCartesian.cxx b/Common/MathUtils/test/testCartesian.cxx index da17623d5fdc3..ec04c34670fc3 100644 --- a/Common/MathUtils/test/testCartesian.cxx +++ b/Common/MathUtils/test/testCartesian.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/MathUtils/test/testUtils.cxx b/Common/MathUtils/test/testUtils.cxx index 4bf03b94f8322..56199d5bce0ab 100644 --- a/Common/MathUtils/test/testUtils.cxx +++ b/Common/MathUtils/test/testUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/CMakeLists.txt b/Common/SimConfig/CMakeLists.txt index d34dfed37fc69..3b7071f728603 100644 --- a/Common/SimConfig/CMakeLists.txt +++ b/Common/SimConfig/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(SimConfig SOURCES src/SimConfig.cxx diff --git a/Common/SimConfig/include/SimConfig/DigiParams.h b/Common/SimConfig/include/SimConfig/DigiParams.h index 112c57d80782a..5602e88012cab 100644 --- a/Common/SimConfig/include/SimConfig/DigiParams.h +++ b/Common/SimConfig/include/SimConfig/DigiParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/include/SimConfig/G4Params.h b/Common/SimConfig/include/SimConfig/G4Params.h index 0d6ee14106dcd..16547a685c6d4 100644 --- a/Common/SimConfig/include/SimConfig/G4Params.h +++ b/Common/SimConfig/include/SimConfig/G4Params.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/include/SimConfig/SimConfig.h b/Common/SimConfig/include/SimConfig/SimConfig.h index fc5dedca3e62d..74d328796a1c7 100644 --- a/Common/SimConfig/include/SimConfig/SimConfig.h +++ b/Common/SimConfig/include/SimConfig/SimConfig.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/include/SimConfig/SimCutParams.h b/Common/SimConfig/include/SimConfig/SimCutParams.h index 2d3fa66c54261..10a3b06ee23e4 100644 --- a/Common/SimConfig/include/SimConfig/SimCutParams.h +++ b/Common/SimConfig/include/SimConfig/SimCutParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/include/SimConfig/SimUserDecay.h b/Common/SimConfig/include/SimConfig/SimUserDecay.h index e1c2587b96413..cb145e0726335 100644 --- a/Common/SimConfig/include/SimConfig/SimUserDecay.h +++ b/Common/SimConfig/include/SimConfig/SimUserDecay.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/src/DigiParams.cxx b/Common/SimConfig/src/DigiParams.cxx index 6f85a746f645b..a9e70071eb8f0 100644 --- a/Common/SimConfig/src/DigiParams.cxx +++ b/Common/SimConfig/src/DigiParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/src/G4Params.cxx b/Common/SimConfig/src/G4Params.cxx index 74175dd34a276..5c5fe26751cd3 100644 --- a/Common/SimConfig/src/G4Params.cxx +++ b/Common/SimConfig/src/G4Params.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/src/SimConfig.cxx b/Common/SimConfig/src/SimConfig.cxx index 22f6328ad06f6..868cb93a8d854 100644 --- a/Common/SimConfig/src/SimConfig.cxx +++ b/Common/SimConfig/src/SimConfig.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/src/SimConfigLinkDef.h b/Common/SimConfig/src/SimConfigLinkDef.h index bdc11be9af563..4bc4f4a7483b0 100644 --- a/Common/SimConfig/src/SimConfigLinkDef.h +++ b/Common/SimConfig/src/SimConfigLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/src/SimCutParams.cxx b/Common/SimConfig/src/SimCutParams.cxx index 6a62be51909ca..7729186af70b8 100644 --- a/Common/SimConfig/src/SimCutParams.cxx +++ b/Common/SimConfig/src/SimCutParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/src/SimUserDecay.cxx b/Common/SimConfig/src/SimUserDecay.cxx index 557f04a878dd6..1652729d15516 100644 --- a/Common/SimConfig/src/SimUserDecay.cxx +++ b/Common/SimConfig/src/SimUserDecay.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/test/TestConfig.cxx b/Common/SimConfig/test/TestConfig.cxx index 8605c6f6283a6..da7e780722497 100644 --- a/Common/SimConfig/test/TestConfig.cxx +++ b/Common/SimConfig/test/TestConfig.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/test/TestConfigurableParam.cxx b/Common/SimConfig/test/TestConfigurableParam.cxx index 1206295d0b7a7..7d099e54c5e1a 100644 --- a/Common/SimConfig/test/TestConfigurableParam.cxx +++ b/Common/SimConfig/test/TestConfigurableParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/SimConfig/test/testSimCutParam.cxx b/Common/SimConfig/test/testSimCutParam.cxx index 944617a59246f..6b850414e6ed9 100644 --- a/Common/SimConfig/test/testSimCutParam.cxx +++ b/Common/SimConfig/test/testSimCutParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Types/CMakeLists.txt b/Common/Types/CMakeLists.txt index fa0bb8740f714..4dd6ad56e2458 100644 --- a/Common/Types/CMakeLists.txt +++ b/Common/Types/CMakeLists.txt @@ -1,11 +1,12 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_header_only_library(CommonTypes) diff --git a/Common/Types/include/CommonTypes/Units.h b/Common/Types/include/CommonTypes/Units.h index d8e9bffe483a5..9fdb0180081fd 100644 --- a/Common/Types/include/CommonTypes/Units.h +++ b/Common/Types/include/CommonTypes/Units.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/CMakeLists.txt b/Common/Utils/CMakeLists.txt index 89515bf075749..29b08d0b9b459 100644 --- a/Common/Utils/CMakeLists.txt +++ b/Common/Utils/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(CommonUtils SOURCES src/TreeStream.cxx src/TreeStreamRedirector.cxx diff --git a/Common/Utils/include/CommonUtils/BoostHistogramUtils.h b/Common/Utils/include/CommonUtils/BoostHistogramUtils.h index 0a36a35e1ff62..d0f17ba20dfe4 100644 --- a/Common/Utils/include/CommonUtils/BoostHistogramUtils.h +++ b/Common/Utils/include/CommonUtils/BoostHistogramUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/BoostSerializer.h b/Common/Utils/include/CommonUtils/BoostSerializer.h index b1fd3dbb1cd2e..4c388a3daa8cc 100644 --- a/Common/Utils/include/CommonUtils/BoostSerializer.h +++ b/Common/Utils/include/CommonUtils/BoostSerializer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/CompStream.h b/Common/Utils/include/CommonUtils/CompStream.h index 7c2e704db3101..7bea9f40b6f3b 100644 --- a/Common/Utils/include/CommonUtils/CompStream.h +++ b/Common/Utils/include/CommonUtils/CompStream.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/ConfigurableParam.h b/Common/Utils/include/CommonUtils/ConfigurableParam.h index 6567927609acb..f37ca4b8fb67f 100644 --- a/Common/Utils/include/CommonUtils/ConfigurableParam.h +++ b/Common/Utils/include/CommonUtils/ConfigurableParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/ConfigurableParamHelper.h b/Common/Utils/include/CommonUtils/ConfigurableParamHelper.h index fd8d7dea04ea3..a30d7faae7be7 100644 --- a/Common/Utils/include/CommonUtils/ConfigurableParamHelper.h +++ b/Common/Utils/include/CommonUtils/ConfigurableParamHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/ConfigurationMacroHelper.h b/Common/Utils/include/CommonUtils/ConfigurationMacroHelper.h index 58bc912a9990f..333efe01a9f5f 100644 --- a/Common/Utils/include/CommonUtils/ConfigurationMacroHelper.h +++ b/Common/Utils/include/CommonUtils/ConfigurationMacroHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/FileSystemUtils.h b/Common/Utils/include/CommonUtils/FileSystemUtils.h index aeb0bf4b6aefb..6de418448b14e 100644 --- a/Common/Utils/include/CommonUtils/FileSystemUtils.h +++ b/Common/Utils/include/CommonUtils/FileSystemUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/KeyValParam.h b/Common/Utils/include/CommonUtils/KeyValParam.h index 173d53fc523ce..11820be28b6f4 100644 --- a/Common/Utils/include/CommonUtils/KeyValParam.h +++ b/Common/Utils/include/CommonUtils/KeyValParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/MemFileHelper.h b/Common/Utils/include/CommonUtils/MemFileHelper.h index 60afd2cd5107a..fa7c61954a065 100644 --- a/Common/Utils/include/CommonUtils/MemFileHelper.h +++ b/Common/Utils/include/CommonUtils/MemFileHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/RngHelper.h b/Common/Utils/include/CommonUtils/RngHelper.h index 25d01f3e445cc..162554138ad19 100644 --- a/Common/Utils/include/CommonUtils/RngHelper.h +++ b/Common/Utils/include/CommonUtils/RngHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/RootChain.h b/Common/Utils/include/CommonUtils/RootChain.h index 8e1887e966d8f..6dde8e3f422b9 100644 --- a/Common/Utils/include/CommonUtils/RootChain.h +++ b/Common/Utils/include/CommonUtils/RootChain.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/RootSerializableKeyValueStore.h b/Common/Utils/include/CommonUtils/RootSerializableKeyValueStore.h index eac288878acf0..80545997af159 100644 --- a/Common/Utils/include/CommonUtils/RootSerializableKeyValueStore.h +++ b/Common/Utils/include/CommonUtils/RootSerializableKeyValueStore.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/ShmAllocator.h b/Common/Utils/include/CommonUtils/ShmAllocator.h index fbc3b62b77721..77841ecb025dc 100644 --- a/Common/Utils/include/CommonUtils/ShmAllocator.h +++ b/Common/Utils/include/CommonUtils/ShmAllocator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/ShmManager.h b/Common/Utils/include/CommonUtils/ShmManager.h index 72308780bff16..06dba283fec82 100644 --- a/Common/Utils/include/CommonUtils/ShmManager.h +++ b/Common/Utils/include/CommonUtils/ShmManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/StringUtils.h b/Common/Utils/include/CommonUtils/StringUtils.h index 9e88bd084e733..d47d3c8ae1ae2 100644 --- a/Common/Utils/include/CommonUtils/StringUtils.h +++ b/Common/Utils/include/CommonUtils/StringUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/TreeStream.h b/Common/Utils/include/CommonUtils/TreeStream.h index 6882176632d57..a5adeec810865 100644 --- a/Common/Utils/include/CommonUtils/TreeStream.h +++ b/Common/Utils/include/CommonUtils/TreeStream.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/TreeStreamRedirector.h b/Common/Utils/include/CommonUtils/TreeStreamRedirector.h index 75b3eeabf6e76..8199009df400d 100644 --- a/Common/Utils/include/CommonUtils/TreeStreamRedirector.h +++ b/Common/Utils/include/CommonUtils/TreeStreamRedirector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/include/CommonUtils/ValueMonitor.h b/Common/Utils/include/CommonUtils/ValueMonitor.h index c2168918d534f..ed7d314595773 100644 --- a/Common/Utils/include/CommonUtils/ValueMonitor.h +++ b/Common/Utils/include/CommonUtils/ValueMonitor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/CommonUtilsLinkDef.h b/Common/Utils/src/CommonUtilsLinkDef.h index 108512e47ac86..2d9ed74abb485 100644 --- a/Common/Utils/src/CommonUtilsLinkDef.h +++ b/Common/Utils/src/CommonUtilsLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/CompStream.cxx b/Common/Utils/src/CompStream.cxx index 8a39dc037a019..f40f3327364f3 100644 --- a/Common/Utils/src/CompStream.cxx +++ b/Common/Utils/src/CompStream.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/ConfigurableParam.cxx b/Common/Utils/src/ConfigurableParam.cxx index a1fe2db4ad961..e7a8fa4b40568 100644 --- a/Common/Utils/src/ConfigurableParam.cxx +++ b/Common/Utils/src/ConfigurableParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/ConfigurableParamHelper.cxx b/Common/Utils/src/ConfigurableParamHelper.cxx index cd693b755727a..3c90681c368df 100644 --- a/Common/Utils/src/ConfigurableParamHelper.cxx +++ b/Common/Utils/src/ConfigurableParamHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/FileSystemUtils.cxx b/Common/Utils/src/FileSystemUtils.cxx index 632a6f49457fb..e060f98d01702 100644 --- a/Common/Utils/src/FileSystemUtils.cxx +++ b/Common/Utils/src/FileSystemUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/KeyValParam.cxx b/Common/Utils/src/KeyValParam.cxx index 5e42b85591c42..103d823e57710 100644 --- a/Common/Utils/src/KeyValParam.cxx +++ b/Common/Utils/src/KeyValParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/RootChain.cxx b/Common/Utils/src/RootChain.cxx index 02b1af002e702..fb34f173b35d6 100644 --- a/Common/Utils/src/RootChain.cxx +++ b/Common/Utils/src/RootChain.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/RootSerializableKeyValueStore.cxx b/Common/Utils/src/RootSerializableKeyValueStore.cxx index 3292142747b03..7bc424300674e 100644 --- a/Common/Utils/src/RootSerializableKeyValueStore.cxx +++ b/Common/Utils/src/RootSerializableKeyValueStore.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/ShmManager.cxx b/Common/Utils/src/ShmManager.cxx index 7f0d9acc96f13..46bae37c3d5aa 100644 --- a/Common/Utils/src/ShmManager.cxx +++ b/Common/Utils/src/ShmManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/StringUtils.cxx b/Common/Utils/src/StringUtils.cxx index 4838fb8bccc32..9e96cad77d880 100644 --- a/Common/Utils/src/StringUtils.cxx +++ b/Common/Utils/src/StringUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/TreeMergerTool.cxx b/Common/Utils/src/TreeMergerTool.cxx index 1d6f4c187fcd1..d0501804184c5 100644 --- a/Common/Utils/src/TreeMergerTool.cxx +++ b/Common/Utils/src/TreeMergerTool.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/TreeStream.cxx b/Common/Utils/src/TreeStream.cxx index 24171ff647ad3..deebc4d3edb9f 100644 --- a/Common/Utils/src/TreeStream.cxx +++ b/Common/Utils/src/TreeStream.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/TreeStreamRedirector.cxx b/Common/Utils/src/TreeStreamRedirector.cxx index 6218c0998ce3d..86e0eb5a37552 100644 --- a/Common/Utils/src/TreeStreamRedirector.cxx +++ b/Common/Utils/src/TreeStreamRedirector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/src/ValueMonitor.cxx b/Common/Utils/src/ValueMonitor.cxx index 4f918feef381b..6e3351e0933fa 100644 --- a/Common/Utils/src/ValueMonitor.cxx +++ b/Common/Utils/src/ValueMonitor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/test/testBoostSerializer.cxx b/Common/Utils/test/testBoostSerializer.cxx index ef862c9341b79..520bc7dda8b08 100644 --- a/Common/Utils/test/testBoostSerializer.cxx +++ b/Common/Utils/test/testBoostSerializer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/test/testCompStream.cxx b/Common/Utils/test/testCompStream.cxx index 04e74779cc99a..095320213bae1 100644 --- a/Common/Utils/test/testCompStream.cxx +++ b/Common/Utils/test/testCompStream.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/test/testMemFileHelper.cxx b/Common/Utils/test/testMemFileHelper.cxx index f04cb287166bf..2a55d67b9884a 100644 --- a/Common/Utils/test/testMemFileHelper.cxx +++ b/Common/Utils/test/testMemFileHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/test/testRootSerializableKeyValueStore.cxx b/Common/Utils/test/testRootSerializableKeyValueStore.cxx index 3629a9e360db0..8e1de1c4d6d52 100644 --- a/Common/Utils/test/testRootSerializableKeyValueStore.cxx +++ b/Common/Utils/test/testRootSerializableKeyValueStore.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/test/testTreeStream.cxx b/Common/Utils/test/testTreeStream.cxx index d9a857ff091f6..af35d75ae3cd3 100644 --- a/Common/Utils/test/testTreeStream.cxx +++ b/Common/Utils/test/testTreeStream.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Common/Utils/test/testValueMonitor.cxx b/Common/Utils/test/testValueMonitor.cxx index 111893e3e7e50..7541ff9003874 100644 --- a/Common/Utils/test/testValueMonitor.cxx +++ b/Common/Utils/test/testValueMonitor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Calibration/CMakeLists.txt b/DataFormats/Calibration/CMakeLists.txt index c63199a6e02b8..189b613f12095 100644 --- a/DataFormats/Calibration/CMakeLists.txt +++ b/DataFormats/Calibration/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsCalibration SOURCES src/MeanVertexObject.cxx) diff --git a/DataFormats/Calibration/include/DataFormatsCalibration/MeanVertexObject.h b/DataFormats/Calibration/include/DataFormatsCalibration/MeanVertexObject.h index 245cdcb2fed24..2b13ccebda12d 100644 --- a/DataFormats/Calibration/include/DataFormatsCalibration/MeanVertexObject.h +++ b/DataFormats/Calibration/include/DataFormatsCalibration/MeanVertexObject.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Calibration/src/DataFormatsCalibrationLinkDef.h b/DataFormats/Calibration/src/DataFormatsCalibrationLinkDef.h index f364ef185a8dc..fa8a44a2f12fd 100644 --- a/DataFormats/Calibration/src/DataFormatsCalibrationLinkDef.h +++ b/DataFormats/Calibration/src/DataFormatsCalibrationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Calibration/src/MeanVertexObject.cxx b/DataFormats/Calibration/src/MeanVertexObject.cxx index c76593ac7908a..3a08d8eba108a 100644 --- a/DataFormats/Calibration/src/MeanVertexObject.cxx +++ b/DataFormats/Calibration/src/MeanVertexObject.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CMakeLists.txt b/DataFormats/Detectors/CMakeLists.txt index fe92c670431d4..eb70795467708 100644 --- a/DataFormats/Detectors/CMakeLists.txt +++ b/DataFormats/Detectors/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # @brief cmake setup for the DataFormats module of AliceO2 diff --git a/DataFormats/Detectors/CPV/CMakeLists.txt b/DataFormats/Detectors/CPV/CMakeLists.txt index 5194406785adf..ee401c54b88fe 100644 --- a/DataFormats/Detectors/CPV/CMakeLists.txt +++ b/DataFormats/Detectors/CPV/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsCPV SOURCES src/CPVBlockHeader.cxx diff --git a/DataFormats/Detectors/CPV/include/DataFormatsCPV/BadChannelMap.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/BadChannelMap.h index f8cde9be80a55..71a1d68438117 100644 --- a/DataFormats/Detectors/CPV/include/DataFormatsCPV/BadChannelMap.h +++ b/DataFormats/Detectors/CPV/include/DataFormatsCPV/BadChannelMap.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/include/DataFormatsCPV/CPVBlockHeader.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/CPVBlockHeader.h index 102c50a1a6754..826ccc917b063 100644 --- a/DataFormats/Detectors/CPV/include/DataFormatsCPV/CPVBlockHeader.h +++ b/DataFormats/Detectors/CPV/include/DataFormatsCPV/CPVBlockHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/include/DataFormatsCPV/CTF.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/CTF.h index 55ed73bd7895a..eb171e7e60fb1 100644 --- a/DataFormats/Detectors/CPV/include/DataFormatsCPV/CTF.h +++ b/DataFormats/Detectors/CPV/include/DataFormatsCPV/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/include/DataFormatsCPV/CalibParams.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/CalibParams.h index 5ef59307bac8b..c089abf334546 100644 --- a/DataFormats/Detectors/CPV/include/DataFormatsCPV/CalibParams.h +++ b/DataFormats/Detectors/CPV/include/DataFormatsCPV/CalibParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/include/DataFormatsCPV/Cluster.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/Cluster.h index 803a19576f7cd..6a2fe019ce4c8 100644 --- a/DataFormats/Detectors/CPV/include/DataFormatsCPV/Cluster.h +++ b/DataFormats/Detectors/CPV/include/DataFormatsCPV/Cluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/include/DataFormatsCPV/Digit.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/Digit.h index fef5313b10292..f11ccff9c869d 100644 --- a/DataFormats/Detectors/CPV/include/DataFormatsCPV/Digit.h +++ b/DataFormats/Detectors/CPV/include/DataFormatsCPV/Digit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/include/DataFormatsCPV/Hit.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/Hit.h index 4e7e7febba883..a9ed2c20ec5d6 100644 --- a/DataFormats/Detectors/CPV/include/DataFormatsCPV/Hit.h +++ b/DataFormats/Detectors/CPV/include/DataFormatsCPV/Hit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/include/DataFormatsCPV/Pedestals.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/Pedestals.h index 911f03054c2db..6fc47f0c5b05f 100644 --- a/DataFormats/Detectors/CPV/include/DataFormatsCPV/Pedestals.h +++ b/DataFormats/Detectors/CPV/include/DataFormatsCPV/Pedestals.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/include/DataFormatsCPV/RawFormats.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/RawFormats.h index 335b7baf506ed..4eff5684930a4 100644 --- a/DataFormats/Detectors/CPV/include/DataFormatsCPV/RawFormats.h +++ b/DataFormats/Detectors/CPV/include/DataFormatsCPV/RawFormats.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/include/DataFormatsCPV/TriggerRecord.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/TriggerRecord.h index 7310498e6d921..d08cebd1a6e07 100644 --- a/DataFormats/Detectors/CPV/include/DataFormatsCPV/TriggerRecord.h +++ b/DataFormats/Detectors/CPV/include/DataFormatsCPV/TriggerRecord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/src/BadChannelMap.cxx b/DataFormats/Detectors/CPV/src/BadChannelMap.cxx index db1e6c991e5c2..bb8a8cc79414a 100644 --- a/DataFormats/Detectors/CPV/src/BadChannelMap.cxx +++ b/DataFormats/Detectors/CPV/src/BadChannelMap.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/src/CPVBlockHeader.cxx b/DataFormats/Detectors/CPV/src/CPVBlockHeader.cxx index fd86dd60d15ea..12de54989fe74 100644 --- a/DataFormats/Detectors/CPV/src/CPVBlockHeader.cxx +++ b/DataFormats/Detectors/CPV/src/CPVBlockHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/src/CTF.cxx b/DataFormats/Detectors/CPV/src/CTF.cxx index cd082fe17df8e..14dcad0db9fb4 100644 --- a/DataFormats/Detectors/CPV/src/CTF.cxx +++ b/DataFormats/Detectors/CPV/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/src/CalibParams.cxx b/DataFormats/Detectors/CPV/src/CalibParams.cxx index 10fd818fd7eb6..bf9cd5e1739b1 100644 --- a/DataFormats/Detectors/CPV/src/CalibParams.cxx +++ b/DataFormats/Detectors/CPV/src/CalibParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/src/Cluster.cxx b/DataFormats/Detectors/CPV/src/Cluster.cxx index fc2b2f2f19021..eeeae9998d181 100644 --- a/DataFormats/Detectors/CPV/src/Cluster.cxx +++ b/DataFormats/Detectors/CPV/src/Cluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/src/DataFormatsCPVLinkDef.h b/DataFormats/Detectors/CPV/src/DataFormatsCPVLinkDef.h index 80918b6c9e30f..253c21db079a0 100644 --- a/DataFormats/Detectors/CPV/src/DataFormatsCPVLinkDef.h +++ b/DataFormats/Detectors/CPV/src/DataFormatsCPVLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/src/Digit.cxx b/DataFormats/Detectors/CPV/src/Digit.cxx index 21e6b3ad58857..8694187cd5ca1 100644 --- a/DataFormats/Detectors/CPV/src/Digit.cxx +++ b/DataFormats/Detectors/CPV/src/Digit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/src/Hit.cxx b/DataFormats/Detectors/CPV/src/Hit.cxx index 4762b13c7525c..480470be75b90 100644 --- a/DataFormats/Detectors/CPV/src/Hit.cxx +++ b/DataFormats/Detectors/CPV/src/Hit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/src/Pedestals.cxx b/DataFormats/Detectors/CPV/src/Pedestals.cxx index c16c11722e636..676ffa36fffa4 100644 --- a/DataFormats/Detectors/CPV/src/Pedestals.cxx +++ b/DataFormats/Detectors/CPV/src/Pedestals.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CPV/src/TriggerRecord.cxx b/DataFormats/Detectors/CPV/src/TriggerRecord.cxx index a1eb865dc0e7b..e816afe01d10f 100644 --- a/DataFormats/Detectors/CPV/src/TriggerRecord.cxx +++ b/DataFormats/Detectors/CPV/src/TriggerRecord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CTP/CMakeLists.txt b/DataFormats/Detectors/CTP/CMakeLists.txt index 3fd7f106a9386..e48c1e4aeb28f 100644 --- a/DataFormats/Detectors/CTP/CMakeLists.txt +++ b/DataFormats/Detectors/CTP/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsCTP SOURCES src/Digits.cxx diff --git a/DataFormats/Detectors/CTP/include/DataFormatsCTP/Configuration.h b/DataFormats/Detectors/CTP/include/DataFormatsCTP/Configuration.h index 6880cd9f6bae1..1def89cfede30 100644 --- a/DataFormats/Detectors/CTP/include/DataFormatsCTP/Configuration.h +++ b/DataFormats/Detectors/CTP/include/DataFormatsCTP/Configuration.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CTP/include/DataFormatsCTP/Digits.h b/DataFormats/Detectors/CTP/include/DataFormatsCTP/Digits.h index 846a4512effb1..5b5a707df15ef 100644 --- a/DataFormats/Detectors/CTP/include/DataFormatsCTP/Digits.h +++ b/DataFormats/Detectors/CTP/include/DataFormatsCTP/Digits.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CTP/src/Configuration.cxx b/DataFormats/Detectors/CTP/src/Configuration.cxx index b50c6477057ec..539196c8705ad 100644 --- a/DataFormats/Detectors/CTP/src/Configuration.cxx +++ b/DataFormats/Detectors/CTP/src/Configuration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CTP/src/DataFormatsCTPLinkDef.h b/DataFormats/Detectors/CTP/src/DataFormatsCTPLinkDef.h index 96c13210669db..f745c41f11b56 100644 --- a/DataFormats/Detectors/CTP/src/DataFormatsCTPLinkDef.h +++ b/DataFormats/Detectors/CTP/src/DataFormatsCTPLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/CTP/src/Digits.cxx b/DataFormats/Detectors/CTP/src/Digits.cxx index 3fc2aaf7c45ea..a278934fa5f18 100644 --- a/DataFormats/Detectors/CTP/src/Digits.cxx +++ b/DataFormats/Detectors/CTP/src/Digits.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/CMakeLists.txt b/DataFormats/Detectors/Common/CMakeLists.txt index 2bc9cc90236c5..47134fdb903ad 100644 --- a/DataFormats/Detectors/Common/CMakeLists.txt +++ b/DataFormats/Detectors/Common/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DetectorsCommonDataFormats SOURCES src/DetID.cxx src/AlignParam.cxx src/DetMatrixCache.cxx diff --git a/DataFormats/Detectors/Common/UpgradesStatus.h.in b/DataFormats/Detectors/Common/UpgradesStatus.h.in index 1b360e304d37d..94e8070c72409 100644 --- a/DataFormats/Detectors/Common/UpgradesStatus.h.in +++ b/DataFormats/Detectors/Common/UpgradesStatus.h.in @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/AlignParam.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/AlignParam.h index b328c528cae35..a6939fc7b430d 100644 --- a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/AlignParam.h +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/AlignParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/CTFHeader.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/CTFHeader.h index dfb8d4e123ab9..385ef667309b1 100644 --- a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/CTFHeader.h +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/CTFHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/DetID.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/DetID.h index fdb7c9a8c1a76..f88871bebb0ae 100644 --- a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/DetID.h +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/DetID.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/DetMatrixCache.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/DetMatrixCache.h index 38b10f1febcf3..6558572a46fe9 100644 --- a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/DetMatrixCache.h +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/DetMatrixCache.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h index 516534fd68a5d..102394aa7c5ee 100644 --- a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/NameConf.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/NameConf.h index 5940a06688859..3291b52b0f552 100644 --- a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/NameConf.h +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/NameConf.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/SimTraits.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/SimTraits.h index 0bf0e5b87e158..523d4e06ee94c 100644 --- a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/SimTraits.h +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/SimTraits.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/UpgradesStatus.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/UpgradesStatus.h index c7c0520c6ef0c..b8e28831502bc 100644 --- a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/UpgradesStatus.h +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/UpgradesStatus.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/src/AlignParam.cxx b/DataFormats/Detectors/Common/src/AlignParam.cxx index 6dc78a1682444..9ca5defe900fc 100644 --- a/DataFormats/Detectors/Common/src/AlignParam.cxx +++ b/DataFormats/Detectors/Common/src/AlignParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/src/CTFHeader.cxx b/DataFormats/Detectors/Common/src/CTFHeader.cxx index 695c41385b035..03e28555d72a1 100644 --- a/DataFormats/Detectors/Common/src/CTFHeader.cxx +++ b/DataFormats/Detectors/Common/src/CTFHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/src/DetID.cxx b/DataFormats/Detectors/Common/src/DetID.cxx index 0523b5c83fa88..356d6e78fea5c 100644 --- a/DataFormats/Detectors/Common/src/DetID.cxx +++ b/DataFormats/Detectors/Common/src/DetID.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/src/DetMatrixCache.cxx b/DataFormats/Detectors/Common/src/DetMatrixCache.cxx index 387603bc74160..873ad4d94a093 100644 --- a/DataFormats/Detectors/Common/src/DetMatrixCache.cxx +++ b/DataFormats/Detectors/Common/src/DetMatrixCache.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/src/DetectorsCommonDataFormatsLinkDef.h b/DataFormats/Detectors/Common/src/DetectorsCommonDataFormatsLinkDef.h index f3927c76fcffc..2b252a85bc914 100644 --- a/DataFormats/Detectors/Common/src/DetectorsCommonDataFormatsLinkDef.h +++ b/DataFormats/Detectors/Common/src/DetectorsCommonDataFormatsLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/src/EncodedBlocks.cxx b/DataFormats/Detectors/Common/src/EncodedBlocks.cxx index 5320210d1e1ba..361d7e0b0635e 100644 --- a/DataFormats/Detectors/Common/src/EncodedBlocks.cxx +++ b/DataFormats/Detectors/Common/src/EncodedBlocks.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/src/NameConf.cxx b/DataFormats/Detectors/Common/src/NameConf.cxx index c7872f53b721c..0a409e1747482 100644 --- a/DataFormats/Detectors/Common/src/NameConf.cxx +++ b/DataFormats/Detectors/Common/src/NameConf.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Common/test/testDetID.cxx b/DataFormats/Detectors/Common/test/testDetID.cxx index f307b346e9be8..3ebcb344032f9 100644 --- a/DataFormats/Detectors/Common/test/testDetID.cxx +++ b/DataFormats/Detectors/Common/test/testDetID.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/CMakeLists.txt b/DataFormats/Detectors/EMCAL/CMakeLists.txt index 389ae7631e4fe..6e18044fb0b87 100644 --- a/DataFormats/Detectors/EMCAL/CMakeLists.txt +++ b/DataFormats/Detectors/EMCAL/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsEMCAL SOURCES src/EMCALBlockHeader.cxx diff --git a/DataFormats/Detectors/EMCAL/doxymodules.h b/DataFormats/Detectors/EMCAL/doxymodules.h index 6bd7566fb7215..ed9087569f8c7 100644 --- a/DataFormats/Detectors/EMCAL/doxymodules.h +++ b/DataFormats/Detectors/EMCAL/doxymodules.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/AnalysisCluster.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/AnalysisCluster.h index eb65775919cba..52c1fa39d0be2 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/AnalysisCluster.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/AnalysisCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/CTF.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/CTF.h index 283c98d52bed2..b337646c740cd 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/CTF.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Cell.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Cell.h index a9872a9039bd2..a3a67b88dd389 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Cell.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Cell.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Cluster.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Cluster.h index e3359cf127b33..f6e99983c3b83 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Cluster.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Cluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Constants.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Constants.h index b538c3a34fd58..065e3da897965 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Constants.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Constants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Digit.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Digit.h index 9f8ee1b67e44c..13afd1ca1a2f4 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Digit.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/Digit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EMCALBlockHeader.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EMCALBlockHeader.h index 0019cd22e758d..dbbb65b783315 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EMCALBlockHeader.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EMCALBlockHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EMCALChannelData.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EMCALChannelData.h index c4e1655b2b9d1..3c014d37e6f9e 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EMCALChannelData.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EMCALChannelData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/ErrorTypeFEE.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/ErrorTypeFEE.h index 9155787529e98..a22b43501316f 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/ErrorTypeFEE.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/ErrorTypeFEE.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EventData.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EventData.h index 35f8ace46fdfd..1d6f961911947 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EventData.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EventData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EventHandler.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EventHandler.h index f510f48915705..d39330f65363d 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EventHandler.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/EventHandler.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/MCLabel.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/MCLabel.h index cb3bbf0f17aa2..ff851b2692edb 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/MCLabel.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/MCLabel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/TriggerRecord.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/TriggerRecord.h index 6f3c59dcf5f85..67dc02a960744 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/TriggerRecord.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/TriggerRecord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/src/AnalysisCluster.cxx b/DataFormats/Detectors/EMCAL/src/AnalysisCluster.cxx index c106ad0ab646d..45108d1e739c2 100644 --- a/DataFormats/Detectors/EMCAL/src/AnalysisCluster.cxx +++ b/DataFormats/Detectors/EMCAL/src/AnalysisCluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/src/CTF.cxx b/DataFormats/Detectors/EMCAL/src/CTF.cxx index 1f9b440e65ec2..1a897026f2e38 100644 --- a/DataFormats/Detectors/EMCAL/src/CTF.cxx +++ b/DataFormats/Detectors/EMCAL/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/src/Cell.cxx b/DataFormats/Detectors/EMCAL/src/Cell.cxx index b02533111c925..daf6b0103e43d 100644 --- a/DataFormats/Detectors/EMCAL/src/Cell.cxx +++ b/DataFormats/Detectors/EMCAL/src/Cell.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/src/Cluster.cxx b/DataFormats/Detectors/EMCAL/src/Cluster.cxx index cf6961d5829f9..4b9dc713b9b65 100644 --- a/DataFormats/Detectors/EMCAL/src/Cluster.cxx +++ b/DataFormats/Detectors/EMCAL/src/Cluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/src/Constants.cxx b/DataFormats/Detectors/EMCAL/src/Constants.cxx index 620daf91e5d6d..0b9230ff07dbb 100644 --- a/DataFormats/Detectors/EMCAL/src/Constants.cxx +++ b/DataFormats/Detectors/EMCAL/src/Constants.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/src/DataFormatsEMCALLinkDef.h b/DataFormats/Detectors/EMCAL/src/DataFormatsEMCALLinkDef.h index 96ce9f3222f43..801a6ea6dbc96 100644 --- a/DataFormats/Detectors/EMCAL/src/DataFormatsEMCALLinkDef.h +++ b/DataFormats/Detectors/EMCAL/src/DataFormatsEMCALLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/src/Digit.cxx b/DataFormats/Detectors/EMCAL/src/Digit.cxx index e25d5082b1d8f..bd7d429aff308 100644 --- a/DataFormats/Detectors/EMCAL/src/Digit.cxx +++ b/DataFormats/Detectors/EMCAL/src/Digit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/src/EMCALBlockHeader.cxx b/DataFormats/Detectors/EMCAL/src/EMCALBlockHeader.cxx index fd4d53a32eda8..6747c21eaad7f 100644 --- a/DataFormats/Detectors/EMCAL/src/EMCALBlockHeader.cxx +++ b/DataFormats/Detectors/EMCAL/src/EMCALBlockHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/src/EMCALChannelData.cxx b/DataFormats/Detectors/EMCAL/src/EMCALChannelData.cxx index d17ba6446d7cb..8affa29259f7a 100644 --- a/DataFormats/Detectors/EMCAL/src/EMCALChannelData.cxx +++ b/DataFormats/Detectors/EMCAL/src/EMCALChannelData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/src/ErrorTypeFEE.cxx b/DataFormats/Detectors/EMCAL/src/ErrorTypeFEE.cxx index e4fc35cb17fd8..45c1f94f7be09 100644 --- a/DataFormats/Detectors/EMCAL/src/ErrorTypeFEE.cxx +++ b/DataFormats/Detectors/EMCAL/src/ErrorTypeFEE.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/src/EventHandler.cxx b/DataFormats/Detectors/EMCAL/src/EventHandler.cxx index ab3f809f5ff73..978a56ed01ae7 100644 --- a/DataFormats/Detectors/EMCAL/src/EventHandler.cxx +++ b/DataFormats/Detectors/EMCAL/src/EventHandler.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/src/TriggerRecord.cxx b/DataFormats/Detectors/EMCAL/src/TriggerRecord.cxx index 50cfdafe69694..ab35a382212a4 100644 --- a/DataFormats/Detectors/EMCAL/src/TriggerRecord.cxx +++ b/DataFormats/Detectors/EMCAL/src/TriggerRecord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/EMCAL/test/testCell.cxx b/DataFormats/Detectors/EMCAL/test/testCell.cxx index f98f0166066be..92fe8c04df768 100644 --- a/DataFormats/Detectors/EMCAL/test/testCell.cxx +++ b/DataFormats/Detectors/EMCAL/test/testCell.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/CMakeLists.txt b/DataFormats/Detectors/FIT/CMakeLists.txt index 54dcfaf3a5cfc..5facb351c3c45 100644 --- a/DataFormats/Detectors/FIT/CMakeLists.txt +++ b/DataFormats/Detectors/FIT/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(FDD) add_subdirectory(FT0) diff --git a/DataFormats/Detectors/FIT/FDD/CMakeLists.txt b/DataFormats/Detectors/FIT/FDD/CMakeLists.txt index d58ca650e5a42..7ef1229e5595e 100644 --- a/DataFormats/Detectors/FIT/FDD/CMakeLists.txt +++ b/DataFormats/Detectors/FIT/FDD/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsFDD SOURCES src/RawEventData.cxx diff --git a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/CTF.h b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/CTF.h index a199319242fa0..e1fa4856fbe29 100644 --- a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/CTF.h +++ b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/ChannelData.h b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/ChannelData.h index eb717535a471c..055bd1879b9c8 100644 --- a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/ChannelData.h +++ b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/ChannelData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/Digit.h b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/Digit.h index ca26fc1494d91..1c9f417b9d79f 100644 --- a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/Digit.h +++ b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/Digit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/Hit.h b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/Hit.h index d1cff06d612ee..8354a8923b9b4 100644 --- a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/Hit.h +++ b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/Hit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/LookUpTable.h b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/LookUpTable.h index 502d434925e44..156003f74198e 100644 --- a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/LookUpTable.h +++ b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/LookUpTable.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/MCLabel.h b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/MCLabel.h index 181a7f25e9175..22a5360797d1e 100644 --- a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/MCLabel.h +++ b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/MCLabel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/RawEventData.h b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/RawEventData.h index 27a9d5d3b1089..cda571ca96fc8 100644 --- a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/RawEventData.h +++ b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/RawEventData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/RecPoint.h b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/RecPoint.h index 90cb33caffb81..6865e1ad95c7d 100644 --- a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/RecPoint.h +++ b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/RecPoint.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FDD/src/CTF.cxx b/DataFormats/Detectors/FIT/FDD/src/CTF.cxx index 24724cce55852..1e0a90d15f71a 100644 --- a/DataFormats/Detectors/FIT/FDD/src/CTF.cxx +++ b/DataFormats/Detectors/FIT/FDD/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FDD/src/DataFormatsFDDLinkDef.h b/DataFormats/Detectors/FIT/FDD/src/DataFormatsFDDLinkDef.h index 9342e20a82182..3db4a915939b2 100644 --- a/DataFormats/Detectors/FIT/FDD/src/DataFormatsFDDLinkDef.h +++ b/DataFormats/Detectors/FIT/FDD/src/DataFormatsFDDLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FDD/src/RawEventData.cxx b/DataFormats/Detectors/FIT/FDD/src/RawEventData.cxx index 1c4be4a7b5768..f2f82e18eadbc 100644 --- a/DataFormats/Detectors/FIT/FDD/src/RawEventData.cxx +++ b/DataFormats/Detectors/FIT/FDD/src/RawEventData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/CMakeLists.txt b/DataFormats/Detectors/FIT/FT0/CMakeLists.txt index 54e4987deeb4c..a7cc62c75e546 100644 --- a/DataFormats/Detectors/FIT/FT0/CMakeLists.txt +++ b/DataFormats/Detectors/FIT/FT0/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsFT0 SOURCES src/Digit.cxx diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/CTF.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/CTF.h index ace9363f9b872..eab9ccd608135 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/CTF.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/ChannelData.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/ChannelData.h index 2d166210dd287..8bc47f8335e3a 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/ChannelData.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/ChannelData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/Digit.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/Digit.h index d923afc6d3452..f06a9b5bf01bb 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/Digit.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/Digit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/DigitsTemp.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/DigitsTemp.h index b7577ea8c00da..30bb1ce483bb7 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/DigitsTemp.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/DigitsTemp.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/HitType.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/HitType.h index b0ecbe521d505..6654561ee33a0 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/HitType.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/HitType.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/LookUpTable.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/LookUpTable.h index 11054571c1661..6bc5646bf1325 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/LookUpTable.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/LookUpTable.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/MCLabel.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/MCLabel.h index ade298338db1f..713a31371a361 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/MCLabel.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/MCLabel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/RawEventData.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/RawEventData.h index 69726e31ee3f2..fb9f84f32c118 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/RawEventData.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/RawEventData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/RecPoints.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/RecPoints.h index 27358c66afc33..593bfef360040 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/RecPoints.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/RecPoints.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/src/CTF.cxx b/DataFormats/Detectors/FIT/FT0/src/CTF.cxx index 7a8b5818d1d9f..52a565f60e1b2 100644 --- a/DataFormats/Detectors/FIT/FT0/src/CTF.cxx +++ b/DataFormats/Detectors/FIT/FT0/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/src/ChannelData.cxx b/DataFormats/Detectors/FIT/FT0/src/ChannelData.cxx index 66fd3515c2c69..449d12ff42e69 100644 --- a/DataFormats/Detectors/FIT/FT0/src/ChannelData.cxx +++ b/DataFormats/Detectors/FIT/FT0/src/ChannelData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/src/DataFormatsFT0LinkDef.h b/DataFormats/Detectors/FIT/FT0/src/DataFormatsFT0LinkDef.h index 48639e042a34b..983e351addda6 100644 --- a/DataFormats/Detectors/FIT/FT0/src/DataFormatsFT0LinkDef.h +++ b/DataFormats/Detectors/FIT/FT0/src/DataFormatsFT0LinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/src/Digit.cxx b/DataFormats/Detectors/FIT/FT0/src/Digit.cxx index 50716c1f110fc..42a650513f1a3 100644 --- a/DataFormats/Detectors/FIT/FT0/src/Digit.cxx +++ b/DataFormats/Detectors/FIT/FT0/src/Digit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/src/DigitsTemp.cxx b/DataFormats/Detectors/FIT/FT0/src/DigitsTemp.cxx index 10baf8fe41dc1..f27d81a83fe68 100644 --- a/DataFormats/Detectors/FIT/FT0/src/DigitsTemp.cxx +++ b/DataFormats/Detectors/FIT/FT0/src/DigitsTemp.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/src/RawEventData.cxx b/DataFormats/Detectors/FIT/FT0/src/RawEventData.cxx index 158ad3d6be338..a88b517791f7b 100644 --- a/DataFormats/Detectors/FIT/FT0/src/RawEventData.cxx +++ b/DataFormats/Detectors/FIT/FT0/src/RawEventData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FT0/src/RecPoints.cxx b/DataFormats/Detectors/FIT/FT0/src/RecPoints.cxx index 3248114dc7a4a..f580d0dd1ea8c 100644 --- a/DataFormats/Detectors/FIT/FT0/src/RecPoints.cxx +++ b/DataFormats/Detectors/FIT/FT0/src/RecPoints.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/CMakeLists.txt b/DataFormats/Detectors/FIT/FV0/CMakeLists.txt index 943acd6f13c0c..ac647159b6ee0 100644 --- a/DataFormats/Detectors/FIT/FV0/CMakeLists.txt +++ b/DataFormats/Detectors/FIT/FV0/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsFV0 SOURCES src/Hit.cxx diff --git a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/BCData.h b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/BCData.h index 74258b316b081..4ca9cbc3f1cf0 100644 --- a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/BCData.h +++ b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/BCData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/CTF.h b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/CTF.h index d2c7be2fb6d4d..a114557cea296 100644 --- a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/CTF.h +++ b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/ChannelData.h b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/ChannelData.h index 4baed3b8b88a1..32513f4b776e8 100644 --- a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/ChannelData.h +++ b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/ChannelData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/Hit.h b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/Hit.h index d15d8af19f7cc..4570caaa90a3e 100644 --- a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/Hit.h +++ b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/Hit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/LookUpTable.h b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/LookUpTable.h index b9b59be0b27a5..34c0cbf7227ab 100644 --- a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/LookUpTable.h +++ b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/LookUpTable.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/MCLabel.h b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/MCLabel.h index 1a89cfba5f514..c770634ce7297 100644 --- a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/MCLabel.h +++ b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/MCLabel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/RawEventData.h b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/RawEventData.h index 66ab9540020ea..ca61cd6aeab61 100644 --- a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/RawEventData.h +++ b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/RawEventData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/src/BCData.cxx b/DataFormats/Detectors/FIT/FV0/src/BCData.cxx index 68b569ed8cc0e..cbf0f46ad3581 100644 --- a/DataFormats/Detectors/FIT/FV0/src/BCData.cxx +++ b/DataFormats/Detectors/FIT/FV0/src/BCData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/src/CTF.cxx b/DataFormats/Detectors/FIT/FV0/src/CTF.cxx index 8b85884c7e091..8d5cdeda5919b 100644 --- a/DataFormats/Detectors/FIT/FV0/src/CTF.cxx +++ b/DataFormats/Detectors/FIT/FV0/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/src/ChannelData.cxx b/DataFormats/Detectors/FIT/FV0/src/ChannelData.cxx index f775c623406db..987b13c2208a4 100644 --- a/DataFormats/Detectors/FIT/FV0/src/ChannelData.cxx +++ b/DataFormats/Detectors/FIT/FV0/src/ChannelData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/src/DataFormatsFV0LinkDef.h b/DataFormats/Detectors/FIT/FV0/src/DataFormatsFV0LinkDef.h index d18628bb2219b..c64360d48b838 100644 --- a/DataFormats/Detectors/FIT/FV0/src/DataFormatsFV0LinkDef.h +++ b/DataFormats/Detectors/FIT/FV0/src/DataFormatsFV0LinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/src/Hit.cxx b/DataFormats/Detectors/FIT/FV0/src/Hit.cxx index 71270816c14f7..23b11573e5552 100644 --- a/DataFormats/Detectors/FIT/FV0/src/Hit.cxx +++ b/DataFormats/Detectors/FIT/FV0/src/Hit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/FV0/src/RawEventData.cxx b/DataFormats/Detectors/FIT/FV0/src/RawEventData.cxx index 6268fa690d0fd..530e6f2bc1275 100644 --- a/DataFormats/Detectors/FIT/FV0/src/RawEventData.cxx +++ b/DataFormats/Detectors/FIT/FV0/src/RawEventData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/GlobalTracking/CMakeLists.txt b/DataFormats/Detectors/GlobalTracking/CMakeLists.txt index 42c10aae3c8b1..b98f1185df9ce 100644 --- a/DataFormats/Detectors/GlobalTracking/CMakeLists.txt +++ b/DataFormats/Detectors/GlobalTracking/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( DataFormatsGlobalTracking diff --git a/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainer.h b/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainer.h index fc6b8970ceada..b4970f385c6ed 100644 --- a/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainer.h +++ b/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainerCreateTracksVariadic.h b/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainerCreateTracksVariadic.h index f5194bec8b660..a11b4b59c4228 100644 --- a/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainerCreateTracksVariadic.h +++ b/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainerCreateTracksVariadic.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx b/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx index 487b7bdfb625a..71da3cfceae4a 100644 --- a/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx +++ b/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/HMPID/CMakeLists.txt b/DataFormats/Detectors/HMPID/CMakeLists.txt index 9479d9163efb5..4e89c789c9407 100644 --- a/DataFormats/Detectors/HMPID/CMakeLists.txt +++ b/DataFormats/Detectors/HMPID/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsHMP SOURCES src/Digit.cxx diff --git a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/CTF.h b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/CTF.h index 1c538edc540c5..724ce563cb469 100644 --- a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/CTF.h +++ b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Cluster.h b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Cluster.h index b33cb3b2e01f4..05d5fdb741dbd 100644 --- a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Cluster.h +++ b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Cluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/DataFormat.h b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/DataFormat.h index 7ca8a8f17e7d5..cf9362ce80604 100644 --- a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/DataFormat.h +++ b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/DataFormat.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Digit.h b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Digit.h index 759793af67c75..926d5e9b7e1b6 100644 --- a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Digit.h +++ b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Digit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Hit.h b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Hit.h index f049c98d30af8..c607f22cdab8f 100644 --- a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Hit.h +++ b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Hit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Trigger.h b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Trigger.h index e0f59fad6d511..09eaa6a431c0b 100644 --- a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Trigger.h +++ b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Trigger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/HMPID/src/CTF.cxx b/DataFormats/Detectors/HMPID/src/CTF.cxx index 3a7628fecad8b..e4ca24b724387 100644 --- a/DataFormats/Detectors/HMPID/src/CTF.cxx +++ b/DataFormats/Detectors/HMPID/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/HMPID/src/Cluster.cxx b/DataFormats/Detectors/HMPID/src/Cluster.cxx index 96862940d0e34..56276549e9861 100644 --- a/DataFormats/Detectors/HMPID/src/Cluster.cxx +++ b/DataFormats/Detectors/HMPID/src/Cluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/HMPID/src/DataFormatsHMPLinkDef.h b/DataFormats/Detectors/HMPID/src/DataFormatsHMPLinkDef.h index 0990cbcc8f78d..3f247ae067ce8 100644 --- a/DataFormats/Detectors/HMPID/src/DataFormatsHMPLinkDef.h +++ b/DataFormats/Detectors/HMPID/src/DataFormatsHMPLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/HMPID/src/Digit.cxx b/DataFormats/Detectors/HMPID/src/Digit.cxx index 96a95ca56458e..a654ea611ab7b 100644 --- a/DataFormats/Detectors/HMPID/src/Digit.cxx +++ b/DataFormats/Detectors/HMPID/src/Digit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/HMPID/src/Trigger.cxx b/DataFormats/Detectors/HMPID/src/Trigger.cxx index 78d5aeab9f756..81f819d4ab88b 100644 --- a/DataFormats/Detectors/HMPID/src/Trigger.cxx +++ b/DataFormats/Detectors/HMPID/src/Trigger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/CMakeLists.txt b/DataFormats/Detectors/ITSMFT/CMakeLists.txt index d6150e3efce80..60adadd6778b4 100644 --- a/DataFormats/Detectors/ITSMFT/CMakeLists.txt +++ b/DataFormats/Detectors/ITSMFT/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(common) add_subdirectory(ITS) diff --git a/DataFormats/Detectors/ITSMFT/IT3/CMakeLists.txt b/DataFormats/Detectors/ITSMFT/IT3/CMakeLists.txt index 76205d852f18c..944ca48df1191 100644 --- a/DataFormats/Detectors/ITSMFT/IT3/CMakeLists.txt +++ b/DataFormats/Detectors/ITSMFT/IT3/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsITS3 SOURCES src/CompCluster.cxx) diff --git a/DataFormats/Detectors/ITSMFT/IT3/include/DataFormatsITS3/CompCluster.h b/DataFormats/Detectors/ITSMFT/IT3/include/DataFormatsITS3/CompCluster.h index 0f6d4477c9622..03da492fd56c4 100644 --- a/DataFormats/Detectors/ITSMFT/IT3/include/DataFormatsITS3/CompCluster.h +++ b/DataFormats/Detectors/ITSMFT/IT3/include/DataFormatsITS3/CompCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/IT3/src/CompCluster.cxx b/DataFormats/Detectors/ITSMFT/IT3/src/CompCluster.cxx index a3e556de47803..046a27be92919 100644 --- a/DataFormats/Detectors/ITSMFT/IT3/src/CompCluster.cxx +++ b/DataFormats/Detectors/ITSMFT/IT3/src/CompCluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/IT3/src/ITS3DataFormatsLinkDef.h b/DataFormats/Detectors/ITSMFT/IT3/src/ITS3DataFormatsLinkDef.h index 07c10809f64ff..c139171540f18 100644 --- a/DataFormats/Detectors/ITSMFT/IT3/src/ITS3DataFormatsLinkDef.h +++ b/DataFormats/Detectors/ITSMFT/IT3/src/ITS3DataFormatsLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/ITS/CMakeLists.txt b/DataFormats/Detectors/ITSMFT/ITS/CMakeLists.txt index a52a870fb3c6d..5a353881e27ba 100644 --- a/DataFormats/Detectors/ITSMFT/ITS/CMakeLists.txt +++ b/DataFormats/Detectors/ITSMFT/ITS/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsITS SOURCES src/TrackITS.cxx diff --git a/DataFormats/Detectors/ITSMFT/ITS/include/DataFormatsITS/TrackITS.h b/DataFormats/Detectors/ITSMFT/ITS/include/DataFormatsITS/TrackITS.h index a2b774d75071e..d4eb494d4dfa4 100644 --- a/DataFormats/Detectors/ITSMFT/ITS/include/DataFormatsITS/TrackITS.h +++ b/DataFormats/Detectors/ITSMFT/ITS/include/DataFormatsITS/TrackITS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/ITS/src/DataFormatsITSLinkDef.h b/DataFormats/Detectors/ITSMFT/ITS/src/DataFormatsITSLinkDef.h index c1489bc241a58..91a71847148fb 100644 --- a/DataFormats/Detectors/ITSMFT/ITS/src/DataFormatsITSLinkDef.h +++ b/DataFormats/Detectors/ITSMFT/ITS/src/DataFormatsITSLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/ITS/src/TrackITS.cxx b/DataFormats/Detectors/ITSMFT/ITS/src/TrackITS.cxx index 9ab6eba05f784..9b2d3563b45a9 100644 --- a/DataFormats/Detectors/ITSMFT/ITS/src/TrackITS.cxx +++ b/DataFormats/Detectors/ITSMFT/ITS/src/TrackITS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/MFT/CMakeLists.txt b/DataFormats/Detectors/ITSMFT/MFT/CMakeLists.txt index 7be046505dbac..db2f801c90ccf 100644 --- a/DataFormats/Detectors/ITSMFT/MFT/CMakeLists.txt +++ b/DataFormats/Detectors/ITSMFT/MFT/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsMFT SOURCES src/TrackMFT.cxx diff --git a/DataFormats/Detectors/ITSMFT/MFT/include/DataFormatsMFT/TrackMFT.h b/DataFormats/Detectors/ITSMFT/MFT/include/DataFormatsMFT/TrackMFT.h index bcd6cd04b77f5..44ca978fafb2a 100644 --- a/DataFormats/Detectors/ITSMFT/MFT/include/DataFormatsMFT/TrackMFT.h +++ b/DataFormats/Detectors/ITSMFT/MFT/include/DataFormatsMFT/TrackMFT.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/MFT/src/DataFormatsMFTLinkDef.h b/DataFormats/Detectors/ITSMFT/MFT/src/DataFormatsMFTLinkDef.h index 18d57d82ca120..6f9e96d2f6e0b 100644 --- a/DataFormats/Detectors/ITSMFT/MFT/src/DataFormatsMFTLinkDef.h +++ b/DataFormats/Detectors/ITSMFT/MFT/src/DataFormatsMFTLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/MFT/src/TrackMFT.cxx b/DataFormats/Detectors/ITSMFT/MFT/src/TrackMFT.cxx index 814329b02e3f3..42fa3bb3af10d 100644 --- a/DataFormats/Detectors/ITSMFT/MFT/src/TrackMFT.cxx +++ b/DataFormats/Detectors/ITSMFT/MFT/src/TrackMFT.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/CMakeLists.txt b/DataFormats/Detectors/ITSMFT/common/CMakeLists.txt index e4a86b305c7a4..ab1c9015c4eff 100644 --- a/DataFormats/Detectors/ITSMFT/common/CMakeLists.txt +++ b/DataFormats/Detectors/ITSMFT/common/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsITSMFT SOURCES src/ROFRecord.cxx diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/CTF.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/CTF.h index 6002ca330189a..920be59182e84 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/CTF.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/Cluster.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/Cluster.h index ad8e844236533..afbdce035d825 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/Cluster.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/Cluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/ClusterPattern.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/ClusterPattern.h index 3769e28ddf762..06da92d90d2dd 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/ClusterPattern.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/ClusterPattern.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/ClusterTopology.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/ClusterTopology.h index f25dab5768854..f7280d4def010 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/ClusterTopology.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/ClusterTopology.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/CompCluster.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/CompCluster.h index 6edf2aea3801f..772a9ae12a81a 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/CompCluster.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/CompCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/Digit.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/Digit.h index 8d3ed17cf45ae..61dd63b143733 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/Digit.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/Digit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/GBTCalibData.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/GBTCalibData.h index 6a0758cdc09fe..c0964c3eb4742 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/GBTCalibData.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/GBTCalibData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h index a1dce48c10fa4..d250627a22a35 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/NoiseMap.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/ROFRecord.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/ROFRecord.h index 9568b2abca15f..1f7ac73d0a131 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/ROFRecord.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/ROFRecord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/TopologyDictionary.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/TopologyDictionary.h index 8668075dc4302..f46bcf9d33d7f 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/TopologyDictionary.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/TopologyDictionary.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/src/CTF.cxx b/DataFormats/Detectors/ITSMFT/common/src/CTF.cxx index ca27e08bf31fe..279778ff26376 100644 --- a/DataFormats/Detectors/ITSMFT/common/src/CTF.cxx +++ b/DataFormats/Detectors/ITSMFT/common/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/src/Cluster.cxx b/DataFormats/Detectors/ITSMFT/common/src/Cluster.cxx index bbbb7e7139185..968081aca8528 100644 --- a/DataFormats/Detectors/ITSMFT/common/src/Cluster.cxx +++ b/DataFormats/Detectors/ITSMFT/common/src/Cluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/src/ClusterPattern.cxx b/DataFormats/Detectors/ITSMFT/common/src/ClusterPattern.cxx index b7a531f8d2665..2224fe59b2793 100644 --- a/DataFormats/Detectors/ITSMFT/common/src/ClusterPattern.cxx +++ b/DataFormats/Detectors/ITSMFT/common/src/ClusterPattern.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/src/ClusterTopology.cxx b/DataFormats/Detectors/ITSMFT/common/src/ClusterTopology.cxx index 8e7ece08643a5..39b44cacc5731 100644 --- a/DataFormats/Detectors/ITSMFT/common/src/ClusterTopology.cxx +++ b/DataFormats/Detectors/ITSMFT/common/src/ClusterTopology.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/src/CompCluster.cxx b/DataFormats/Detectors/ITSMFT/common/src/CompCluster.cxx index b6028ca2cf9f2..95ecd73f6e9d5 100644 --- a/DataFormats/Detectors/ITSMFT/common/src/CompCluster.cxx +++ b/DataFormats/Detectors/ITSMFT/common/src/CompCluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/src/Digit.cxx b/DataFormats/Detectors/ITSMFT/common/src/Digit.cxx index 278d91671784a..304a2dc3ae058 100644 --- a/DataFormats/Detectors/ITSMFT/common/src/Digit.cxx +++ b/DataFormats/Detectors/ITSMFT/common/src/Digit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/src/ITSMFTDataFormatsLinkDef.h b/DataFormats/Detectors/ITSMFT/common/src/ITSMFTDataFormatsLinkDef.h index b5623437f2db6..aecdead1851f0 100644 --- a/DataFormats/Detectors/ITSMFT/common/src/ITSMFTDataFormatsLinkDef.h +++ b/DataFormats/Detectors/ITSMFT/common/src/ITSMFTDataFormatsLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/src/NoiseMap.cxx b/DataFormats/Detectors/ITSMFT/common/src/NoiseMap.cxx index 0a8ed555964a1..428d87db5e04f 100644 --- a/DataFormats/Detectors/ITSMFT/common/src/NoiseMap.cxx +++ b/DataFormats/Detectors/ITSMFT/common/src/NoiseMap.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/src/ROFRecord.cxx b/DataFormats/Detectors/ITSMFT/common/src/ROFRecord.cxx index ddcd6bcc782d4..fcc86ac7e7dca 100644 --- a/DataFormats/Detectors/ITSMFT/common/src/ROFRecord.cxx +++ b/DataFormats/Detectors/ITSMFT/common/src/ROFRecord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/src/TopologyDictionary.cxx b/DataFormats/Detectors/ITSMFT/common/src/TopologyDictionary.cxx index 7a6cb413d671c..70c24bcfbaeab 100644 --- a/DataFormats/Detectors/ITSMFT/common/src/TopologyDictionary.cxx +++ b/DataFormats/Detectors/ITSMFT/common/src/TopologyDictionary.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ITSMFT/common/test/test_Cluster.cxx b/DataFormats/Detectors/ITSMFT/common/test/test_Cluster.cxx index 01f05a54017e6..7b1e49661931e 100644 --- a/DataFormats/Detectors/ITSMFT/common/test/test_Cluster.cxx +++ b/DataFormats/Detectors/ITSMFT/common/test/test_Cluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/CMakeLists.txt b/DataFormats/Detectors/MUON/CMakeLists.txt index 497e1d502f36f..934d24d5de4cf 100644 --- a/DataFormats/Detectors/MUON/CMakeLists.txt +++ b/DataFormats/Detectors/MUON/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(MID) add_subdirectory(MCH) diff --git a/DataFormats/Detectors/MUON/MCH/CMakeLists.txt b/DataFormats/Detectors/MUON/MCH/CMakeLists.txt index 31f318c7f564c..20af4857d3589 100644 --- a/DataFormats/Detectors/MUON/MCH/CMakeLists.txt +++ b/DataFormats/Detectors/MUON/MCH/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsMCH SOURCES src/TrackMCH.cxx src/Digit.cxx diff --git a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/CTF.h b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/CTF.h index c707f4c14e9b8..d07794d3ecc2d 100644 --- a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/CTF.h +++ b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/Digit.h b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/Digit.h index 5820cc79591c9..1a5e8d4fe2112 100644 --- a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/Digit.h +++ b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/Digit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/DsChannelGroup.h b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/DsChannelGroup.h index 7010f8d459568..d6dd6c3d60128 100644 --- a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/DsChannelGroup.h +++ b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/DsChannelGroup.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/ROFRecord.h b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/ROFRecord.h index 87cbb6f280308..f3bc7c7f9fc80 100644 --- a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/ROFRecord.h +++ b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/ROFRecord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/TrackMCH.h b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/TrackMCH.h index becd8805e93f7..36f7c3bbec48e 100644 --- a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/TrackMCH.h +++ b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/TrackMCH.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MCH/src/CTF.cxx b/DataFormats/Detectors/MUON/MCH/src/CTF.cxx index d22806fa87bcf..70c048e16384b 100644 --- a/DataFormats/Detectors/MUON/MCH/src/CTF.cxx +++ b/DataFormats/Detectors/MUON/MCH/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MCH/src/DataFormatsMCHLinkDef.h b/DataFormats/Detectors/MUON/MCH/src/DataFormatsMCHLinkDef.h index e181c9c4ab18e..7a1199793364a 100644 --- a/DataFormats/Detectors/MUON/MCH/src/DataFormatsMCHLinkDef.h +++ b/DataFormats/Detectors/MUON/MCH/src/DataFormatsMCHLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MCH/src/Digit.cxx b/DataFormats/Detectors/MUON/MCH/src/Digit.cxx index e8599a854a37c..459500f9bfa8e 100644 --- a/DataFormats/Detectors/MUON/MCH/src/Digit.cxx +++ b/DataFormats/Detectors/MUON/MCH/src/Digit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MCH/src/ROFRecord.cxx b/DataFormats/Detectors/MUON/MCH/src/ROFRecord.cxx index a869fe4d166bd..2b66b7f9825c7 100644 --- a/DataFormats/Detectors/MUON/MCH/src/ROFRecord.cxx +++ b/DataFormats/Detectors/MUON/MCH/src/ROFRecord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MCH/src/TrackMCH.cxx b/DataFormats/Detectors/MUON/MCH/src/TrackMCH.cxx index 80ef07470b556..b0d904d9793bc 100644 --- a/DataFormats/Detectors/MUON/MCH/src/TrackMCH.cxx +++ b/DataFormats/Detectors/MUON/MCH/src/TrackMCH.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MCH/src/convert-bad-channels.cxx b/DataFormats/Detectors/MUON/MCH/src/convert-bad-channels.cxx index a66c437ad7efe..75adc0961bbaa 100644 --- a/DataFormats/Detectors/MUON/MCH/src/convert-bad-channels.cxx +++ b/DataFormats/Detectors/MUON/MCH/src/convert-bad-channels.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MCH/src/testDigit.cxx b/DataFormats/Detectors/MUON/MCH/src/testDigit.cxx index 83fe732561931..6a0c1d916d1ce 100644 --- a/DataFormats/Detectors/MUON/MCH/src/testDigit.cxx +++ b/DataFormats/Detectors/MUON/MCH/src/testDigit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MID/CMakeLists.txt b/DataFormats/Detectors/MUON/MID/CMakeLists.txt index 33680cd30c102..fa8faccf63531 100644 --- a/DataFormats/Detectors/MUON/MID/CMakeLists.txt +++ b/DataFormats/Detectors/MUON/MID/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( DataFormatsMID diff --git a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/CTF.h b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/CTF.h index ed7d4b78ed539..1f7762fd95185 100644 --- a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/CTF.h +++ b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/Cluster2D.h b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/Cluster2D.h index 04d8591aaae1c..21a1ef160bc40 100644 --- a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/Cluster2D.h +++ b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/Cluster2D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/Cluster3D.h b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/Cluster3D.h index 34b3bbcc5fa9c..6befb7e676b2e 100644 --- a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/Cluster3D.h +++ b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/Cluster3D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/ColumnData.h b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/ColumnData.h index 85339a80b5b7a..b7c76ae2673b5 100644 --- a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/ColumnData.h +++ b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/ColumnData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/ROBoard.h b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/ROBoard.h index 865f4f2116ddf..ea33b2125147c 100644 --- a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/ROBoard.h +++ b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/ROBoard.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/ROFRecord.h b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/ROFRecord.h index 368fc3173126c..e3d3d143659ec 100644 --- a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/ROFRecord.h +++ b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/ROFRecord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/Track.h b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/Track.h index 0e5a91ca92c4d..0bffb0b78f73a 100644 --- a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/Track.h +++ b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/Track.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MID/src/CTF.cxx b/DataFormats/Detectors/MUON/MID/src/CTF.cxx index 9e3bdccc1f992..3f13cf7982dc9 100644 --- a/DataFormats/Detectors/MUON/MID/src/CTF.cxx +++ b/DataFormats/Detectors/MUON/MID/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MID/src/ColumnData.cxx b/DataFormats/Detectors/MUON/MID/src/ColumnData.cxx index fcf1243fd9721..503f913e4ef2e 100644 --- a/DataFormats/Detectors/MUON/MID/src/ColumnData.cxx +++ b/DataFormats/Detectors/MUON/MID/src/ColumnData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MID/src/DataFormatsMIDLinkDef.h b/DataFormats/Detectors/MUON/MID/src/DataFormatsMIDLinkDef.h index a4986e7abc4c8..0eca602da31d8 100644 --- a/DataFormats/Detectors/MUON/MID/src/DataFormatsMIDLinkDef.h +++ b/DataFormats/Detectors/MUON/MID/src/DataFormatsMIDLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MID/src/ROBoard.cxx b/DataFormats/Detectors/MUON/MID/src/ROBoard.cxx index 0f442d6e4f6e6..9312a13eac3fb 100644 --- a/DataFormats/Detectors/MUON/MID/src/ROBoard.cxx +++ b/DataFormats/Detectors/MUON/MID/src/ROBoard.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/MUON/MID/src/Track.cxx b/DataFormats/Detectors/MUON/MID/src/Track.cxx index c20392de12387..4c89f26c7546a 100644 --- a/DataFormats/Detectors/MUON/MID/src/Track.cxx +++ b/DataFormats/Detectors/MUON/MID/src/Track.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/CMakeLists.txt b/DataFormats/Detectors/PHOS/CMakeLists.txt index 306539d9eb343..6361a3fd2e0a2 100644 --- a/DataFormats/Detectors/PHOS/CMakeLists.txt +++ b/DataFormats/Detectors/PHOS/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsPHOS SOURCES src/PHOSBlockHeader.cxx diff --git a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/BadChannelsMap.h b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/BadChannelsMap.h index c82b8d28cd32f..f76d689bcbb65 100644 --- a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/BadChannelsMap.h +++ b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/BadChannelsMap.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/CTF.h b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/CTF.h index ee9300a01972c..170b0a4e47bfc 100644 --- a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/CTF.h +++ b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/CalibParams.h b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/CalibParams.h index abb9c60957187..5870a0966dae6 100644 --- a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/CalibParams.h +++ b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/CalibParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Cell.h b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Cell.h index 3d853882501e6..bd916c81bd6da 100644 --- a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Cell.h +++ b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Cell.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Cluster.h b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Cluster.h index 81f7befde5de2..c9969ca12e4d9 100644 --- a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Cluster.h +++ b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Cluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Digit.h b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Digit.h index e2c35fbf85458..c7686e272f18c 100644 --- a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Digit.h +++ b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Digit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/MCLabel.h b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/MCLabel.h index cb0f51e912567..a9aaa30243c0a 100644 --- a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/MCLabel.h +++ b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/MCLabel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/PHOSBlockHeader.h b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/PHOSBlockHeader.h index dc7e514efa351..8a28477c7d74e 100644 --- a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/PHOSBlockHeader.h +++ b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/PHOSBlockHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Pedestals.h b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Pedestals.h index db0834a40ef83..bcb991c79f7ec 100644 --- a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Pedestals.h +++ b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/Pedestals.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/TriggerMap.h b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/TriggerMap.h index 1d33127901fca..61e7ef1cf1711 100644 --- a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/TriggerMap.h +++ b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/TriggerMap.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/TriggerRecord.h b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/TriggerRecord.h index e936124af7f57..72e473202a853 100644 --- a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/TriggerRecord.h +++ b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/TriggerRecord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/src/BadChannelsMap.cxx b/DataFormats/Detectors/PHOS/src/BadChannelsMap.cxx index f27fc98145a03..5202a79f002d8 100644 --- a/DataFormats/Detectors/PHOS/src/BadChannelsMap.cxx +++ b/DataFormats/Detectors/PHOS/src/BadChannelsMap.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/src/CTF.cxx b/DataFormats/Detectors/PHOS/src/CTF.cxx index d7cda37769955..77a38978470a9 100644 --- a/DataFormats/Detectors/PHOS/src/CTF.cxx +++ b/DataFormats/Detectors/PHOS/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/src/CalibParams.cxx b/DataFormats/Detectors/PHOS/src/CalibParams.cxx index 85dcdea32cf27..b8707cfb548ad 100644 --- a/DataFormats/Detectors/PHOS/src/CalibParams.cxx +++ b/DataFormats/Detectors/PHOS/src/CalibParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/src/Cell.cxx b/DataFormats/Detectors/PHOS/src/Cell.cxx index 08fa8c5c3f137..7a6bbb76000f9 100644 --- a/DataFormats/Detectors/PHOS/src/Cell.cxx +++ b/DataFormats/Detectors/PHOS/src/Cell.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/src/Cluster.cxx b/DataFormats/Detectors/PHOS/src/Cluster.cxx index 66df3c8e92704..32cc8f4778445 100644 --- a/DataFormats/Detectors/PHOS/src/Cluster.cxx +++ b/DataFormats/Detectors/PHOS/src/Cluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/src/DataFormatsPHOSLinkDef.h b/DataFormats/Detectors/PHOS/src/DataFormatsPHOSLinkDef.h index 911ef1cfdf675..86e87eba56324 100644 --- a/DataFormats/Detectors/PHOS/src/DataFormatsPHOSLinkDef.h +++ b/DataFormats/Detectors/PHOS/src/DataFormatsPHOSLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/src/Digit.cxx b/DataFormats/Detectors/PHOS/src/Digit.cxx index f9b3e7d13a5fe..213130c113253 100644 --- a/DataFormats/Detectors/PHOS/src/Digit.cxx +++ b/DataFormats/Detectors/PHOS/src/Digit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/src/MCLabel.cxx b/DataFormats/Detectors/PHOS/src/MCLabel.cxx index ffb57f1bcf529..ed26982db8645 100644 --- a/DataFormats/Detectors/PHOS/src/MCLabel.cxx +++ b/DataFormats/Detectors/PHOS/src/MCLabel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/src/PHOSBlockHeader.cxx b/DataFormats/Detectors/PHOS/src/PHOSBlockHeader.cxx index ac2f0334b62af..46bda4b18538d 100644 --- a/DataFormats/Detectors/PHOS/src/PHOSBlockHeader.cxx +++ b/DataFormats/Detectors/PHOS/src/PHOSBlockHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/src/Pedestals.cxx b/DataFormats/Detectors/PHOS/src/Pedestals.cxx index cceda6d1f1c39..52111a2a16a6a 100644 --- a/DataFormats/Detectors/PHOS/src/Pedestals.cxx +++ b/DataFormats/Detectors/PHOS/src/Pedestals.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/src/TriggerMap.cxx b/DataFormats/Detectors/PHOS/src/TriggerMap.cxx index 02ec3a2d710d9..9e7f889b52b7c 100644 --- a/DataFormats/Detectors/PHOS/src/TriggerMap.cxx +++ b/DataFormats/Detectors/PHOS/src/TriggerMap.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/src/TriggerRecord.cxx b/DataFormats/Detectors/PHOS/src/TriggerRecord.cxx index 3f42791d792f7..36d2b076a65c2 100644 --- a/DataFormats/Detectors/PHOS/src/TriggerRecord.cxx +++ b/DataFormats/Detectors/PHOS/src/TriggerRecord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/PHOS/test/testCell.cxx b/DataFormats/Detectors/PHOS/test/testCell.cxx index a9b8850610fa5..dc31bdd5ba587 100644 --- a/DataFormats/Detectors/PHOS/test/testCell.cxx +++ b/DataFormats/Detectors/PHOS/test/testCell.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/CMakeLists.txt b/DataFormats/Detectors/TOF/CMakeLists.txt index 52e6f593f25db..952acf682f35a 100644 --- a/DataFormats/Detectors/TOF/CMakeLists.txt +++ b/DataFormats/Detectors/TOF/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsTOF SOURCES src/Cluster.cxx diff --git a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CTF.h b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CTF.h index 824df93660c7f..8938712cb442d 100644 --- a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CTF.h +++ b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibInfoCluster.h b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibInfoCluster.h index 45e31facecfd4..83229cdf62a65 100644 --- a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibInfoCluster.h +++ b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibInfoCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibInfoTOF.h b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibInfoTOF.h index 9fa941afc33ba..cbb8c0ae44d1d 100644 --- a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibInfoTOF.h +++ b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibInfoTOF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibInfoTOFshort.h b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibInfoTOFshort.h index 3f5579c0bc33a..a67866f3c501c 100644 --- a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibInfoTOFshort.h +++ b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibInfoTOFshort.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibLHCphaseTOF.h b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibLHCphaseTOF.h index ba60077538b9f..221761ee01d0d 100644 --- a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibLHCphaseTOF.h +++ b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibLHCphaseTOF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibTimeSlewingParamTOF.h b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibTimeSlewingParamTOF.h index ba15203e7781f..99494ba4526dd 100644 --- a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibTimeSlewingParamTOF.h +++ b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CalibTimeSlewingParamTOF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/include/DataFormatsTOF/Cluster.h b/DataFormats/Detectors/TOF/include/DataFormatsTOF/Cluster.h index 65c199781279c..8c348b5aef867 100644 --- a/DataFormats/Detectors/TOF/include/DataFormatsTOF/Cluster.h +++ b/DataFormats/Detectors/TOF/include/DataFormatsTOF/Cluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CompressedDataFormat.h b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CompressedDataFormat.h index ad00322500e81..a6e5b45d9b859 100644 --- a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CompressedDataFormat.h +++ b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CompressedDataFormat.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CosmicInfo.h b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CosmicInfo.h index d5fa484ed2cb2..2d33f7f47d73a 100644 --- a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CosmicInfo.h +++ b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CosmicInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/include/DataFormatsTOF/RawDataFormat.h b/DataFormats/Detectors/TOF/include/DataFormatsTOF/RawDataFormat.h index 1e440307f2212..87a05b6ec3542 100644 --- a/DataFormats/Detectors/TOF/include/DataFormatsTOF/RawDataFormat.h +++ b/DataFormats/Detectors/TOF/include/DataFormatsTOF/RawDataFormat.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/src/CTF.cxx b/DataFormats/Detectors/TOF/src/CTF.cxx index a1097f94efbae..62d4820a0b829 100644 --- a/DataFormats/Detectors/TOF/src/CTF.cxx +++ b/DataFormats/Detectors/TOF/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/src/CalibInfoCluster.cxx b/DataFormats/Detectors/TOF/src/CalibInfoCluster.cxx index 0b17412461569..6d0af8ac315d7 100644 --- a/DataFormats/Detectors/TOF/src/CalibInfoCluster.cxx +++ b/DataFormats/Detectors/TOF/src/CalibInfoCluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/src/CalibInfoTOF.cxx b/DataFormats/Detectors/TOF/src/CalibInfoTOF.cxx index 9e08679b90da3..89858904b104b 100644 --- a/DataFormats/Detectors/TOF/src/CalibInfoTOF.cxx +++ b/DataFormats/Detectors/TOF/src/CalibInfoTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/src/CalibInfoTOFshort.cxx b/DataFormats/Detectors/TOF/src/CalibInfoTOFshort.cxx index bc680005fcd9b..b1bb966b123f6 100644 --- a/DataFormats/Detectors/TOF/src/CalibInfoTOFshort.cxx +++ b/DataFormats/Detectors/TOF/src/CalibInfoTOFshort.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/src/CalibLHCphaseTOF.cxx b/DataFormats/Detectors/TOF/src/CalibLHCphaseTOF.cxx index 8cab385255223..179faaabedce0 100644 --- a/DataFormats/Detectors/TOF/src/CalibLHCphaseTOF.cxx +++ b/DataFormats/Detectors/TOF/src/CalibLHCphaseTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/src/CalibTimeSlewingParamTOF.cxx b/DataFormats/Detectors/TOF/src/CalibTimeSlewingParamTOF.cxx index 91e20e1814bcd..3fcf67eb9ca7c 100644 --- a/DataFormats/Detectors/TOF/src/CalibTimeSlewingParamTOF.cxx +++ b/DataFormats/Detectors/TOF/src/CalibTimeSlewingParamTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/src/Cluster.cxx b/DataFormats/Detectors/TOF/src/Cluster.cxx index d783a86923fde..8e688ee91e801 100644 --- a/DataFormats/Detectors/TOF/src/Cluster.cxx +++ b/DataFormats/Detectors/TOF/src/Cluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/src/CosmicInfo.cxx b/DataFormats/Detectors/TOF/src/CosmicInfo.cxx index 95146878695bb..35d783d4b3ba4 100644 --- a/DataFormats/Detectors/TOF/src/CosmicInfo.cxx +++ b/DataFormats/Detectors/TOF/src/CosmicInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TOF/src/DataFormatsTOFLinkDef.h b/DataFormats/Detectors/TOF/src/DataFormatsTOFLinkDef.h index 818fb0b4e7e5b..e2e3c8584d7ae 100644 --- a/DataFormats/Detectors/TOF/src/DataFormatsTOFLinkDef.h +++ b/DataFormats/Detectors/TOF/src/DataFormatsTOFLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/CMakeLists.txt b/DataFormats/Detectors/TPC/CMakeLists.txt index d8c38272fc1f0..56386a9330f5b 100644 --- a/DataFormats/Detectors/TPC/CMakeLists.txt +++ b/DataFormats/Detectors/TPC/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # Comments # diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/CTF.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/CTF.h index 3e352e2667451..ebd9e427087bb 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/CTF.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterGroupAttribute.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterGroupAttribute.h index 4bd5bd2596684..dad63831c3485 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterGroupAttribute.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterGroupAttribute.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterHardware.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterHardware.h index d3e9019d5d2a5..b4c123c0ea95e 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterHardware.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterHardware.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterNative.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterNative.h index beacd5b4f2909..e7092fb59a402 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterNative.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterNative.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterNativeHelper.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterNativeHelper.h index a7761e2472093..b8d6a3e7a9428 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterNativeHelper.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/ClusterNativeHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/CompressedClusters.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/CompressedClusters.h index 249d9cb4f0bae..cbdc64fde9d3a 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/CompressedClusters.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/CompressedClusters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/CompressedClustersHelpers.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/CompressedClustersHelpers.h index b7d49c56238c8..7ca33ff1bc162 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/CompressedClustersHelpers.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/CompressedClustersHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/Constants.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/Constants.h index a7d4c6c410975..6f6201b7de8df 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/Constants.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/Constants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/Defs.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/Defs.h index 0499dcd7dc6f5..115033df5c062 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/Defs.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/Defs.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/Digit.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/Digit.h index 4c446024324c5..2b816569e2fbe 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/Digit.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/Digit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/Helpers.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/Helpers.h index 22333545d7d2d..56fe16e99b9b6 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/Helpers.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/Helpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/IDC.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/IDC.h index 44361230a4b6f..a55a74be34c88 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/IDC.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/IDC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/LaserTrack.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/LaserTrack.h index 649bde1466280..00b3d749a3833 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/LaserTrack.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/LaserTrack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/TPCSectorHeader.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/TPCSectorHeader.h index c9221ff5fb37a..afa6b1c53b235 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/TPCSectorHeader.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/TPCSectorHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/TrackTPC.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/TrackTPC.h index c91b1f1ce6489..adc3ff45b30eb 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/TrackTPC.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/TrackTPC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/WorkflowHelper.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/WorkflowHelper.h index ebc4f97f3992f..24d8e72557a7f 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/WorkflowHelper.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/WorkflowHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/ZeroSuppression.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/ZeroSuppression.h index 2fd6c82b920af..ad577252254ae 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/ZeroSuppression.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/ZeroSuppression.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/ZeroSuppressionLinkBased.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/ZeroSuppressionLinkBased.h index b3c64ad06dfcc..f94d7e2fb5a10 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/ZeroSuppressionLinkBased.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/ZeroSuppressionLinkBased.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/dEdxInfo.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/dEdxInfo.h index b00725fe587aa..63b64a50b63dc 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/dEdxInfo.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/dEdxInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/src/ClusterNativeHelper.cxx b/DataFormats/Detectors/TPC/src/ClusterNativeHelper.cxx index 3b609f9ef3b57..62be5c4fab09d 100644 --- a/DataFormats/Detectors/TPC/src/ClusterNativeHelper.cxx +++ b/DataFormats/Detectors/TPC/src/ClusterNativeHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/src/CompressedClusters.cxx b/DataFormats/Detectors/TPC/src/CompressedClusters.cxx index 6188496791964..f4e5ff3cedd6d 100644 --- a/DataFormats/Detectors/TPC/src/CompressedClusters.cxx +++ b/DataFormats/Detectors/TPC/src/CompressedClusters.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/src/DataFormatsTPCLinkDef.h b/DataFormats/Detectors/TPC/src/DataFormatsTPCLinkDef.h index a8eb060a3d400..e1ece2e48fe7c 100644 --- a/DataFormats/Detectors/TPC/src/DataFormatsTPCLinkDef.h +++ b/DataFormats/Detectors/TPC/src/DataFormatsTPCLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/src/Helpers.cxx b/DataFormats/Detectors/TPC/src/Helpers.cxx index cef1d03b5dd10..d9a6bb30a5ce4 100644 --- a/DataFormats/Detectors/TPC/src/Helpers.cxx +++ b/DataFormats/Detectors/TPC/src/Helpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/src/LaserTrack.cxx b/DataFormats/Detectors/TPC/src/LaserTrack.cxx index 0700cadb6d05f..975d161f76082 100644 --- a/DataFormats/Detectors/TPC/src/LaserTrack.cxx +++ b/DataFormats/Detectors/TPC/src/LaserTrack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/src/TPCSectorHeader.cxx b/DataFormats/Detectors/TPC/src/TPCSectorHeader.cxx index fdee9e3c141cb..96716fd966cb6 100644 --- a/DataFormats/Detectors/TPC/src/TPCSectorHeader.cxx +++ b/DataFormats/Detectors/TPC/src/TPCSectorHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/src/TrackTPC.cxx b/DataFormats/Detectors/TPC/src/TrackTPC.cxx index e0932ae58b681..90f1e62a7a524 100644 --- a/DataFormats/Detectors/TPC/src/TrackTPC.cxx +++ b/DataFormats/Detectors/TPC/src/TrackTPC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/src/WorkflowHelper.cxx b/DataFormats/Detectors/TPC/src/WorkflowHelper.cxx index f4a5a34624965..3b7e64f61f452 100644 --- a/DataFormats/Detectors/TPC/src/WorkflowHelper.cxx +++ b/DataFormats/Detectors/TPC/src/WorkflowHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/test/testClusterHardware.cxx b/DataFormats/Detectors/TPC/test/testClusterHardware.cxx index 713c2b5df68a4..1c98140db1ab8 100644 --- a/DataFormats/Detectors/TPC/test/testClusterHardware.cxx +++ b/DataFormats/Detectors/TPC/test/testClusterHardware.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/test/testClusterNative.cxx b/DataFormats/Detectors/TPC/test/testClusterNative.cxx index fe146e69ff49a..f99d11a93a6f2 100644 --- a/DataFormats/Detectors/TPC/test/testClusterNative.cxx +++ b/DataFormats/Detectors/TPC/test/testClusterNative.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TPC/test/testCompressedClusters.cxx b/DataFormats/Detectors/TPC/test/testCompressedClusters.cxx index 15956a1f31249..ec0a99a3c07fb 100644 --- a/DataFormats/Detectors/TPC/test/testCompressedClusters.cxx +++ b/DataFormats/Detectors/TPC/test/testCompressedClusters.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/CMakeLists.txt b/DataFormats/Detectors/TRD/CMakeLists.txt index 05b8217d04159..8a29c4e73e0a7 100644 --- a/DataFormats/Detectors/TRD/CMakeLists.txt +++ b/DataFormats/Detectors/TRD/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsTRD SOURCES src/TriggerRecord.cxx diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/AngularResidHistos.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/AngularResidHistos.h index f5f0d2b8616e3..9b1146104fbc4 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/AngularResidHistos.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/AngularResidHistos.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CTF.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CTF.h index 30b8a49af35f5..45b75e14f1470 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CTF.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CalibratedTracklet.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CalibratedTracklet.h index ce761e885b9a0..c23ad040d9b9f 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CalibratedTracklet.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CalibratedTracklet.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CompressedDigit.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CompressedDigit.h index d7c2e513165ad..0a60f9a4de7ca 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CompressedDigit.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CompressedDigit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CompressedHeader.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CompressedHeader.h index 6cb5b0c051eb6..03722b84efd43 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CompressedHeader.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CompressedHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/Constants.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/Constants.h index 30fed480f1e5c..1aa59721bdc41 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/Constants.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/Constants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/Digit.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/Digit.h index 3c80817f59fb6..d725c8b611379 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/Digit.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/Digit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/EventRecord.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/EventRecord.h index b3c1794918608..d31049fb307af 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/EventRecord.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/EventRecord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/HelperMethods.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/HelperMethods.h index 259286d59a29d..515b60326fa94 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/HelperMethods.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/HelperMethods.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/Hit.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/Hit.h index 326c48f8e941d..2b370633f8eeb 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/Hit.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/Hit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/LinkRecord.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/LinkRecord.h index 0c5db1563b11f..23a35b692ff7a 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/LinkRecord.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/LinkRecord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/RawData.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/RawData.h index 3b72130371da2..d788cb39c6bae 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/RawData.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/RawData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/RecoInputContainer.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/RecoInputContainer.h index 581998d9418ae..070939ca3ee42 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/RecoInputContainer.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/RecoInputContainer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/SignalArray.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/SignalArray.h index 18d716041f4ff..1d446c6d3f649 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/SignalArray.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/SignalArray.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/TrackTRD.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/TrackTRD.h index 34ec9d841e6ca..6483348f3d674 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/TrackTRD.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/TrackTRD.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/TrackTriggerRecord.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/TrackTriggerRecord.h index 7df4eccb47b72..a6a32b90558f9 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/TrackTriggerRecord.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/TrackTriggerRecord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/Tracklet64.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/Tracklet64.h index 5e1e7592a9226..a8d8a83f2c87f 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/Tracklet64.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/Tracklet64.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/TriggerRecord.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/TriggerRecord.h index 790170ff99862..5a933fb218621 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/TriggerRecord.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/TriggerRecord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/src/AngularResidHistos.cxx b/DataFormats/Detectors/TRD/src/AngularResidHistos.cxx index 7baefa883c309..f0c3b2637f94f 100644 --- a/DataFormats/Detectors/TRD/src/AngularResidHistos.cxx +++ b/DataFormats/Detectors/TRD/src/AngularResidHistos.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/src/CTF.cxx b/DataFormats/Detectors/TRD/src/CTF.cxx index 8839b47070a92..b39e6afda7bac 100644 --- a/DataFormats/Detectors/TRD/src/CTF.cxx +++ b/DataFormats/Detectors/TRD/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/src/CompressedDigit.cxx b/DataFormats/Detectors/TRD/src/CompressedDigit.cxx index acb8977af9d68..cc2c850b81cd1 100644 --- a/DataFormats/Detectors/TRD/src/CompressedDigit.cxx +++ b/DataFormats/Detectors/TRD/src/CompressedDigit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/src/DataFormatsTRDLinkDef.h b/DataFormats/Detectors/TRD/src/DataFormatsTRDLinkDef.h index f2833bb49f89a..0c76ab8a28ad2 100644 --- a/DataFormats/Detectors/TRD/src/DataFormatsTRDLinkDef.h +++ b/DataFormats/Detectors/TRD/src/DataFormatsTRDLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/src/Digit.cxx b/DataFormats/Detectors/TRD/src/Digit.cxx index d1585204f19b1..003b605eda828 100644 --- a/DataFormats/Detectors/TRD/src/Digit.cxx +++ b/DataFormats/Detectors/TRD/src/Digit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/src/EventRecord.cxx b/DataFormats/Detectors/TRD/src/EventRecord.cxx index 66e73dbd1fe94..7b0e04530830f 100644 --- a/DataFormats/Detectors/TRD/src/EventRecord.cxx +++ b/DataFormats/Detectors/TRD/src/EventRecord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/src/LinkRecord.cxx b/DataFormats/Detectors/TRD/src/LinkRecord.cxx index 933721a7975a8..996bfc5142387 100644 --- a/DataFormats/Detectors/TRD/src/LinkRecord.cxx +++ b/DataFormats/Detectors/TRD/src/LinkRecord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/src/RawData.cxx b/DataFormats/Detectors/TRD/src/RawData.cxx index 0047f21281c98..b339c4eaf3e41 100644 --- a/DataFormats/Detectors/TRD/src/RawData.cxx +++ b/DataFormats/Detectors/TRD/src/RawData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/src/Tracklet64.cxx b/DataFormats/Detectors/TRD/src/Tracklet64.cxx index 73af94f4ea2d0..bc87152d44211 100644 --- a/DataFormats/Detectors/TRD/src/Tracklet64.cxx +++ b/DataFormats/Detectors/TRD/src/Tracklet64.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/src/TriggerRecord.cxx b/DataFormats/Detectors/TRD/src/TriggerRecord.cxx index 40dd7e037605c..ac85420d12202 100644 --- a/DataFormats/Detectors/TRD/src/TriggerRecord.cxx +++ b/DataFormats/Detectors/TRD/src/TriggerRecord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/TRD/test/testDigit.cxx b/DataFormats/Detectors/TRD/test/testDigit.cxx index 236dd298b8e24..6ef30c484a9e9 100644 --- a/DataFormats/Detectors/TRD/test/testDigit.cxx +++ b/DataFormats/Detectors/TRD/test/testDigit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/Upgrades/CMakeLists.txt b/DataFormats/Detectors/Upgrades/CMakeLists.txt index ddf642acf6e90..a2d470b8ff6d5 100644 --- a/DataFormats/Detectors/Upgrades/CMakeLists.txt +++ b/DataFormats/Detectors/Upgrades/CMakeLists.txt @@ -1,11 +1,12 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. message(STATUS "Building dataformats for upgrades") diff --git a/DataFormats/Detectors/ZDC/CMakeLists.txt b/DataFormats/Detectors/ZDC/CMakeLists.txt index d94159975b749..3038fef1196d8 100644 --- a/DataFormats/Detectors/ZDC/CMakeLists.txt +++ b/DataFormats/Detectors/ZDC/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsZDC SOURCES src/ChannelData.cxx src/BCData.cxx src/BCRecData.cxx src/RecEvent.cxx src/RecEventAux.cxx src/RawEventData.cxx diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/BCData.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/BCData.h index f9182e3e7559a..cdbf813db318d 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/BCData.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/BCData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/CTF.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/CTF.h index 5e2d265362809..5f959ffa12983 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/CTF.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/CTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ChannelData.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ChannelData.h index be5427382d925..e33cd7ea95ad4 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ChannelData.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ChannelData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/Hit.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/Hit.h index 9df0246c5f5db..6e0b99dca6761 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/Hit.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/Hit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/MCLabel.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/MCLabel.h index 6ec251aec6b2a..e67ffe673e2a7 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/MCLabel.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/MCLabel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/OrbitData.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/OrbitData.h index 8767e5cf33997..9c35d400608fa 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/OrbitData.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/OrbitData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/OrbitRawData.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/OrbitRawData.h index 09195353c65bc..e988e6f5d0c95 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/OrbitRawData.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/OrbitRawData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/OrbitRecData.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/OrbitRecData.h index c7033731d693b..ee46ca18e44d7 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/OrbitRecData.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/OrbitRecData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RawEventData.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RawEventData.h index e96a0e95f59f6..1797e1998d24b 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RawEventData.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RawEventData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEvent.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEvent.h index c40cff9a21a18..6016a65fa758c 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEvent.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEvent.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/BCData.cxx b/DataFormats/Detectors/ZDC/src/BCData.cxx index 267da75ecc9b9..b086bb64ebd7c 100644 --- a/DataFormats/Detectors/ZDC/src/BCData.cxx +++ b/DataFormats/Detectors/ZDC/src/BCData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/CTF.cxx b/DataFormats/Detectors/ZDC/src/CTF.cxx index df2b1867a0ea7..907bb1cc6b6f1 100644 --- a/DataFormats/Detectors/ZDC/src/CTF.cxx +++ b/DataFormats/Detectors/ZDC/src/CTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/ChannelData.cxx b/DataFormats/Detectors/ZDC/src/ChannelData.cxx index a29f977762e02..81ce63b0708f9 100644 --- a/DataFormats/Detectors/ZDC/src/ChannelData.cxx +++ b/DataFormats/Detectors/ZDC/src/ChannelData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/DataFormatsZDCLinkDef.h b/DataFormats/Detectors/ZDC/src/DataFormatsZDCLinkDef.h index e19ae7019d8ef..01bbc93cc674f 100644 --- a/DataFormats/Detectors/ZDC/src/DataFormatsZDCLinkDef.h +++ b/DataFormats/Detectors/ZDC/src/DataFormatsZDCLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/OrbitData.cxx b/DataFormats/Detectors/ZDC/src/OrbitData.cxx index de7079a3137de..00571de999908 100644 --- a/DataFormats/Detectors/ZDC/src/OrbitData.cxx +++ b/DataFormats/Detectors/ZDC/src/OrbitData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/OrbitRawData.cxx b/DataFormats/Detectors/ZDC/src/OrbitRawData.cxx index 3429e5d6f2ade..7c75057059a88 100644 --- a/DataFormats/Detectors/ZDC/src/OrbitRawData.cxx +++ b/DataFormats/Detectors/ZDC/src/OrbitRawData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/OrbitRecData.cxx b/DataFormats/Detectors/ZDC/src/OrbitRecData.cxx index e9e1f7924ec99..9f7484df36148 100644 --- a/DataFormats/Detectors/ZDC/src/OrbitRecData.cxx +++ b/DataFormats/Detectors/ZDC/src/OrbitRecData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/RawEventData.cxx b/DataFormats/Detectors/ZDC/src/RawEventData.cxx index 06155e310e2e8..4bc1d921e7e19 100644 --- a/DataFormats/Detectors/ZDC/src/RawEventData.cxx +++ b/DataFormats/Detectors/ZDC/src/RawEventData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/RecEvent.cxx b/DataFormats/Detectors/ZDC/src/RecEvent.cxx index 2cbd771dae325..888245444d064 100644 --- a/DataFormats/Detectors/ZDC/src/RecEvent.cxx +++ b/DataFormats/Detectors/ZDC/src/RecEvent.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/CMakeLists.txt b/DataFormats/Headers/CMakeLists.txt index 22addd9e4830c..3d5534fb88f5d 100644 --- a/DataFormats/Headers/CMakeLists.txt +++ b/DataFormats/Headers/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(Headers SOURCES src/DataHeader.cxx src/NameHeader.cxx diff --git a/DataFormats/Headers/include/Headers/DAQID.h b/DataFormats/Headers/include/Headers/DAQID.h index 4918750ae1818..0e78082ba96ce 100644 --- a/DataFormats/Headers/include/Headers/DAQID.h +++ b/DataFormats/Headers/include/Headers/DAQID.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/include/Headers/DataHeader.h b/DataFormats/Headers/include/Headers/DataHeader.h index d5d44cd27a65a..62afee27882bf 100644 --- a/DataFormats/Headers/include/Headers/DataHeader.h +++ b/DataFormats/Headers/include/Headers/DataHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/include/Headers/DataHeaderHelpers.h b/DataFormats/Headers/include/Headers/DataHeaderHelpers.h index c7f7eff3dbfd3..bf05247ee104c 100644 --- a/DataFormats/Headers/include/Headers/DataHeaderHelpers.h +++ b/DataFormats/Headers/include/Headers/DataHeaderHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/include/Headers/HeartbeatFrame.h b/DataFormats/Headers/include/Headers/HeartbeatFrame.h index 4e3afa3fa42bc..a7b810e15d471 100644 --- a/DataFormats/Headers/include/Headers/HeartbeatFrame.h +++ b/DataFormats/Headers/include/Headers/HeartbeatFrame.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/include/Headers/NameHeader.h b/DataFormats/Headers/include/Headers/NameHeader.h index f6aa282a2fc3b..1a62923a75044 100644 --- a/DataFormats/Headers/include/Headers/NameHeader.h +++ b/DataFormats/Headers/include/Headers/NameHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/include/Headers/RAWDataHeader.h b/DataFormats/Headers/include/Headers/RAWDataHeader.h index 8f68a0356c9c3..8c9f5ba43f8cd 100644 --- a/DataFormats/Headers/include/Headers/RAWDataHeader.h +++ b/DataFormats/Headers/include/Headers/RAWDataHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/include/Headers/RDHAny.h b/DataFormats/Headers/include/Headers/RDHAny.h index b4a57d362abf4..6105fb425d78c 100644 --- a/DataFormats/Headers/include/Headers/RDHAny.h +++ b/DataFormats/Headers/include/Headers/RDHAny.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/include/Headers/Stack.h b/DataFormats/Headers/include/Headers/Stack.h index 216cb6bf71694..184733e35c339 100644 --- a/DataFormats/Headers/include/Headers/Stack.h +++ b/DataFormats/Headers/include/Headers/Stack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/include/Headers/SubframeMetadata.h b/DataFormats/Headers/include/Headers/SubframeMetadata.h index a5cc9c8a12779..255fa0ceb8db6 100644 --- a/DataFormats/Headers/include/Headers/SubframeMetadata.h +++ b/DataFormats/Headers/include/Headers/SubframeMetadata.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/include/Headers/TimeStamp.h b/DataFormats/Headers/include/Headers/TimeStamp.h index 0bdae0059fd41..720fcd83412d8 100644 --- a/DataFormats/Headers/include/Headers/TimeStamp.h +++ b/DataFormats/Headers/include/Headers/TimeStamp.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/src/DAQID.cxx b/DataFormats/Headers/src/DAQID.cxx index 32fb60a1531e9..95ce0c686bce6 100644 --- a/DataFormats/Headers/src/DAQID.cxx +++ b/DataFormats/Headers/src/DAQID.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/src/DataHeader.cxx b/DataFormats/Headers/src/DataHeader.cxx index 61a38628f7728..96e04bf523173 100644 --- a/DataFormats/Headers/src/DataHeader.cxx +++ b/DataFormats/Headers/src/DataHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/src/HeartbeatFrame.cxx b/DataFormats/Headers/src/HeartbeatFrame.cxx index 053d4997fdb48..4ea042b739750 100644 --- a/DataFormats/Headers/src/HeartbeatFrame.cxx +++ b/DataFormats/Headers/src/HeartbeatFrame.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/src/NameHeader.cxx b/DataFormats/Headers/src/NameHeader.cxx index 2d72ae4a12b27..6d2767c284d5c 100644 --- a/DataFormats/Headers/src/NameHeader.cxx +++ b/DataFormats/Headers/src/NameHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/src/RDHAny.cxx b/DataFormats/Headers/src/RDHAny.cxx index 6c62b1fa927b7..a48ae508b357f 100644 --- a/DataFormats/Headers/src/RDHAny.cxx +++ b/DataFormats/Headers/src/RDHAny.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/src/TimeStamp.cxx b/DataFormats/Headers/src/TimeStamp.cxx index dcac4c285a7ad..d540735d1f028 100644 --- a/DataFormats/Headers/src/TimeStamp.cxx +++ b/DataFormats/Headers/src/TimeStamp.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/test/testDAQID.cxx b/DataFormats/Headers/test/testDAQID.cxx index 404eca33d7b19..59c87b086f658 100644 --- a/DataFormats/Headers/test/testDAQID.cxx +++ b/DataFormats/Headers/test/testDAQID.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/test/testDataHeader.cxx b/DataFormats/Headers/test/testDataHeader.cxx index 37c7e3d34df50..0703fc6c3ae71 100644 --- a/DataFormats/Headers/test/testDataHeader.cxx +++ b/DataFormats/Headers/test/testDataHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/test/testTimeStamp.cxx b/DataFormats/Headers/test/testTimeStamp.cxx index ff941f4424494..d418e05ded68f 100644 --- a/DataFormats/Headers/test/testTimeStamp.cxx +++ b/DataFormats/Headers/test/testTimeStamp.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/test/test_HeartbeatFrame.cxx b/DataFormats/Headers/test/test_HeartbeatFrame.cxx index ef690ff5a195f..aa49f9bc8c0e0 100644 --- a/DataFormats/Headers/test/test_HeartbeatFrame.cxx +++ b/DataFormats/Headers/test/test_HeartbeatFrame.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Headers/test/test_RAWDataHeader.cxx b/DataFormats/Headers/test/test_RAWDataHeader.cxx index 7323b0c1ae5e5..12319953b1a75 100644 --- a/DataFormats/Headers/test/test_RAWDataHeader.cxx +++ b/DataFormats/Headers/test/test_RAWDataHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Legacy/HLT/include/AliceHLT/TPCRawCluster.h b/DataFormats/Legacy/HLT/include/AliceHLT/TPCRawCluster.h index 0776b94dda46b..59be2a86c3c2b 100644 --- a/DataFormats/Legacy/HLT/include/AliceHLT/TPCRawCluster.h +++ b/DataFormats/Legacy/HLT/include/AliceHLT/TPCRawCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/MemoryResources/CMakeLists.txt b/DataFormats/MemoryResources/CMakeLists.txt index 8979f242cd4dd..6a31d35872054 100644 --- a/DataFormats/MemoryResources/CMakeLists.txt +++ b/DataFormats/MemoryResources/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MemoryResources SOURCES src/MemoryResources.cxx diff --git a/DataFormats/MemoryResources/include/MemoryResources/MemoryResources.h b/DataFormats/MemoryResources/include/MemoryResources/MemoryResources.h index fc8b24c59168a..766be341216b5 100644 --- a/DataFormats/MemoryResources/include/MemoryResources/MemoryResources.h +++ b/DataFormats/MemoryResources/include/MemoryResources/MemoryResources.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/MemoryResources/include/MemoryResources/observer_ptr.h b/DataFormats/MemoryResources/include/MemoryResources/observer_ptr.h index 8d0a281204475..603d24798bb02 100644 --- a/DataFormats/MemoryResources/include/MemoryResources/observer_ptr.h +++ b/DataFormats/MemoryResources/include/MemoryResources/observer_ptr.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/MemoryResources/src/MemoryResources.cxx b/DataFormats/MemoryResources/src/MemoryResources.cxx index 1cef7ffa1bb5b..c8c4f915e6f3f 100644 --- a/DataFormats/MemoryResources/src/MemoryResources.cxx +++ b/DataFormats/MemoryResources/src/MemoryResources.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/MemoryResources/test/testMemoryResources.cxx b/DataFormats/MemoryResources/test/testMemoryResources.cxx index f5fe8dd664cda..ece99f3cdb035 100644 --- a/DataFormats/MemoryResources/test/testMemoryResources.cxx +++ b/DataFormats/MemoryResources/test/testMemoryResources.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/MemoryResources/test/test_observer_ptr.cxx b/DataFormats/MemoryResources/test/test_observer_ptr.cxx index 9deea71bfde36..11218ea0f830f 100644 --- a/DataFormats/MemoryResources/test/test_observer_ptr.cxx +++ b/DataFormats/MemoryResources/test/test_observer_ptr.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Parameters/CMakeLists.txt b/DataFormats/Parameters/CMakeLists.txt index c6adf65737866..a23704fe18f00 100644 --- a/DataFormats/Parameters/CMakeLists.txt +++ b/DataFormats/Parameters/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsParameters SOURCES src/GRPObject.cxx diff --git a/DataFormats/Parameters/include/DataFormatsParameters/GRPObject.h b/DataFormats/Parameters/include/DataFormatsParameters/GRPObject.h index 88634152c4727..49654aadaf6c3 100644 --- a/DataFormats/Parameters/include/DataFormatsParameters/GRPObject.h +++ b/DataFormats/Parameters/include/DataFormatsParameters/GRPObject.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Parameters/src/GRPObject.cxx b/DataFormats/Parameters/src/GRPObject.cxx index 8287681745342..53be816679b59 100644 --- a/DataFormats/Parameters/src/GRPObject.cxx +++ b/DataFormats/Parameters/src/GRPObject.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Parameters/src/ParametersDataLinkDef.h b/DataFormats/Parameters/src/ParametersDataLinkDef.h index 3b61be067228c..0cdcca0406856 100644 --- a/DataFormats/Parameters/src/ParametersDataLinkDef.h +++ b/DataFormats/Parameters/src/ParametersDataLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/QualityControl/CMakeLists.txt b/DataFormats/QualityControl/CMakeLists.txt index 8ee7ca0b9fd7e..c1473a634ebd9 100644 --- a/DataFormats/QualityControl/CMakeLists.txt +++ b/DataFormats/QualityControl/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsQualityControl SOURCES src/FlagReasons.cxx diff --git a/DataFormats/QualityControl/include/DataFormatsQualityControl/FlagReasons.h b/DataFormats/QualityControl/include/DataFormatsQualityControl/FlagReasons.h index 933401e001796..2c743d46ef251 100644 --- a/DataFormats/QualityControl/include/DataFormatsQualityControl/FlagReasons.h +++ b/DataFormats/QualityControl/include/DataFormatsQualityControl/FlagReasons.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlag.h b/DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlag.h index e8f51e3461b82..bb79799d9d44e 100644 --- a/DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlag.h +++ b/DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlag.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlagCollection.h b/DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlagCollection.h index c838eb722906b..70627e523422a 100644 --- a/DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlagCollection.h +++ b/DataFormats/QualityControl/include/DataFormatsQualityControl/TimeRangeFlagCollection.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/QualityControl/src/DataFormatsQualityControlLinkDef.h b/DataFormats/QualityControl/src/DataFormatsQualityControlLinkDef.h index 94aa87052392f..8d77bccef4b7c 100644 --- a/DataFormats/QualityControl/src/DataFormatsQualityControlLinkDef.h +++ b/DataFormats/QualityControl/src/DataFormatsQualityControlLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/QualityControl/src/FlagReasons.cxx b/DataFormats/QualityControl/src/FlagReasons.cxx index 86f1a37da3814..25c8e7c0e4f06 100644 --- a/DataFormats/QualityControl/src/FlagReasons.cxx +++ b/DataFormats/QualityControl/src/FlagReasons.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/QualityControl/src/TimeRangeFlag.cxx b/DataFormats/QualityControl/src/TimeRangeFlag.cxx index 084fe34369171..f96d5bc9b7b72 100644 --- a/DataFormats/QualityControl/src/TimeRangeFlag.cxx +++ b/DataFormats/QualityControl/src/TimeRangeFlag.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/QualityControl/src/TimeRangeFlagCollection.cxx b/DataFormats/QualityControl/src/TimeRangeFlagCollection.cxx index 626b385856f58..05924649b07be 100644 --- a/DataFormats/QualityControl/src/TimeRangeFlagCollection.cxx +++ b/DataFormats/QualityControl/src/TimeRangeFlagCollection.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/QualityControl/test/testFlagReasons.cxx b/DataFormats/QualityControl/test/testFlagReasons.cxx index 27936af831a98..874f2b448445c 100644 --- a/DataFormats/QualityControl/test/testFlagReasons.cxx +++ b/DataFormats/QualityControl/test/testFlagReasons.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/QualityControl/test/testTimeRangeFlag.cxx b/DataFormats/QualityControl/test/testTimeRangeFlag.cxx index 507e7676efad1..72156c3f5e811 100644 --- a/DataFormats/QualityControl/test/testTimeRangeFlag.cxx +++ b/DataFormats/QualityControl/test/testTimeRangeFlag.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/QualityControl/test/testTimeRangeFlagCollection.cxx b/DataFormats/QualityControl/test/testTimeRangeFlagCollection.cxx index c9374f35a8266..b849b8cf6f2c8 100644 --- a/DataFormats/QualityControl/test/testTimeRangeFlagCollection.cxx +++ b/DataFormats/QualityControl/test/testTimeRangeFlagCollection.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/CMakeLists.txt b/DataFormats/Reconstruction/CMakeLists.txt index be3d16c7bd867..3f0b132c802f1 100644 --- a/DataFormats/Reconstruction/CMakeLists.txt +++ b/DataFormats/Reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ReconstructionDataFormats SOURCES src/TrackParametrization.cxx diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/BaseCluster.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/BaseCluster.h index 64eff7054044b..de422aa0bf474 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/BaseCluster.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/BaseCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/Cascade.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/Cascade.h index 7cb2c77242868..77047357c092f 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/Cascade.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/Cascade.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/DCA.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/DCA.h index c6058de4c6081..922470f8992f5 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/DCA.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/DCA.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/GlobalTrackAccessor.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/GlobalTrackAccessor.h index 09e67b891cba4..3deeb1c364fd4 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/GlobalTrackAccessor.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/GlobalTrackAccessor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/GlobalTrackID.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/GlobalTrackID.h index 0cce8e762a96a..177257c43cfab 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/GlobalTrackID.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/GlobalTrackID.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOF.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOF.h index c81181953fe4c..ea0ba1e1f94d9 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOF.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/PID.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/PID.h index 52b259c562d4d..e3002a717f051 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/PID.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/PID.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/PrimaryVertex.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/PrimaryVertex.h index 872e7517e8ff6..ce470361034f5 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/PrimaryVertex.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/PrimaryVertex.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/Track.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/Track.h index 1779e869d98fa..c4b17158f7dc5 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/Track.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/Track.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackCosmics.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackCosmics.h index 6639d9c3e44bc..79a34dc585876 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackCosmics.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackCosmics.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackFwd.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackFwd.h index bf9749a55d1ca..4bdfd044ae33c 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackFwd.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackFwd.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackLTIntegral.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackLTIntegral.h index e0cf44df2bbde..95d17d8b28d5b 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackLTIntegral.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackLTIntegral.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackParametrization.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackParametrization.h index 5459a2aa1fc5c..7ab2c6d304686 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackParametrization.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackParametrization.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackParametrizationWithError.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackParametrizationWithError.h index 9aa49c3bc336e..78b01a007012b 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackParametrizationWithError.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackParametrizationWithError.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackTPCITS.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackTPCITS.h index 51d0af81e8b73..5ef3fdc4ba5a7 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackTPCITS.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackTPCITS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackTPCTOF.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackTPCTOF.h index 0dcd348f0f7c2..aff55ce50ee14 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackTPCTOF.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackTPCTOF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackUtils.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackUtils.h index 30e4495b140db..8e8dd9033bdf8 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackUtils.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/V0.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/V0.h index 5b53d6dd670b5..53bb357a1df4e 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/V0.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/V0.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/Vertex.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/Vertex.h index eb8bf67d5d474..efc09205d7f17 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/Vertex.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/Vertex.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/VtxTrackIndex.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/VtxTrackIndex.h index 05c45ae5d0fba..38b4a9ee8a408 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/VtxTrackIndex.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/VtxTrackIndex.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/VtxTrackRef.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/VtxTrackRef.h index fb7b3830a66c2..5cdc9aafefb66 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/VtxTrackRef.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/VtxTrackRef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/BaseCluster.cxx b/DataFormats/Reconstruction/src/BaseCluster.cxx index 91898ad762d57..4b19fe146e674 100644 --- a/DataFormats/Reconstruction/src/BaseCluster.cxx +++ b/DataFormats/Reconstruction/src/BaseCluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/Cascade.cxx b/DataFormats/Reconstruction/src/Cascade.cxx index 71c99f3b5f955..dbc2c4cbae011 100644 --- a/DataFormats/Reconstruction/src/Cascade.cxx +++ b/DataFormats/Reconstruction/src/Cascade.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/DCA.cxx b/DataFormats/Reconstruction/src/DCA.cxx index 34d6f714d0feb..9bb324c8df3a9 100644 --- a/DataFormats/Reconstruction/src/DCA.cxx +++ b/DataFormats/Reconstruction/src/DCA.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/GlobalTrackID.cxx b/DataFormats/Reconstruction/src/GlobalTrackID.cxx index d62f88f55ca78..6b00c5b4534f6 100644 --- a/DataFormats/Reconstruction/src/GlobalTrackID.cxx +++ b/DataFormats/Reconstruction/src/GlobalTrackID.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/MatchInfoTOF.cxx b/DataFormats/Reconstruction/src/MatchInfoTOF.cxx index 78f9b9c72cb43..b4156bd2e7093 100644 --- a/DataFormats/Reconstruction/src/MatchInfoTOF.cxx +++ b/DataFormats/Reconstruction/src/MatchInfoTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/PID.cxx b/DataFormats/Reconstruction/src/PID.cxx index ffe6dab6c778d..2e6f7b7fc7483 100644 --- a/DataFormats/Reconstruction/src/PID.cxx +++ b/DataFormats/Reconstruction/src/PID.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/PrimaryVertex.cxx b/DataFormats/Reconstruction/src/PrimaryVertex.cxx index 74c376ca66b1a..f1b1a8ff01181 100644 --- a/DataFormats/Reconstruction/src/PrimaryVertex.cxx +++ b/DataFormats/Reconstruction/src/PrimaryVertex.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/ReconstructionDataFormatsLinkDef.h b/DataFormats/Reconstruction/src/ReconstructionDataFormatsLinkDef.h index 63284f7cf2e5b..c7e31a3a08bec 100644 --- a/DataFormats/Reconstruction/src/ReconstructionDataFormatsLinkDef.h +++ b/DataFormats/Reconstruction/src/ReconstructionDataFormatsLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/TrackCosmics.cxx b/DataFormats/Reconstruction/src/TrackCosmics.cxx index 597b1fc85aaef..e360acf53adfd 100644 --- a/DataFormats/Reconstruction/src/TrackCosmics.cxx +++ b/DataFormats/Reconstruction/src/TrackCosmics.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/TrackFwd.cxx b/DataFormats/Reconstruction/src/TrackFwd.cxx index c826f73126df1..2a6adaf3669cd 100644 --- a/DataFormats/Reconstruction/src/TrackFwd.cxx +++ b/DataFormats/Reconstruction/src/TrackFwd.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/TrackLTIntegral.cxx b/DataFormats/Reconstruction/src/TrackLTIntegral.cxx index 585e5a64a7d89..52a77ce92a4da 100644 --- a/DataFormats/Reconstruction/src/TrackLTIntegral.cxx +++ b/DataFormats/Reconstruction/src/TrackLTIntegral.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/TrackParametrization.cxx b/DataFormats/Reconstruction/src/TrackParametrization.cxx index cb8d49d63c578..9da46e7948227 100644 --- a/DataFormats/Reconstruction/src/TrackParametrization.cxx +++ b/DataFormats/Reconstruction/src/TrackParametrization.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization @@ -13,11 +14,12 @@ /// @since Oct 1, 2020 /// @brief -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/TrackParametrizationWithError.cxx b/DataFormats/Reconstruction/src/TrackParametrizationWithError.cxx index db7ea9a7636c8..7aad8590c61ac 100644 --- a/DataFormats/Reconstruction/src/TrackParametrizationWithError.cxx +++ b/DataFormats/Reconstruction/src/TrackParametrizationWithError.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization @@ -13,11 +14,12 @@ /// @since Oct 1, 2020 /// @brief -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/TrackTPCITS.cxx b/DataFormats/Reconstruction/src/TrackTPCITS.cxx index 669e843d4046d..915ed32a4f26a 100644 --- a/DataFormats/Reconstruction/src/TrackTPCITS.cxx +++ b/DataFormats/Reconstruction/src/TrackTPCITS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/TrackTPCTOF.cxx b/DataFormats/Reconstruction/src/TrackTPCTOF.cxx index 5c33687e4f927..a466f59ccebdf 100644 --- a/DataFormats/Reconstruction/src/TrackTPCTOF.cxx +++ b/DataFormats/Reconstruction/src/TrackTPCTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/V0.cxx b/DataFormats/Reconstruction/src/V0.cxx index 1542b4cd0d24b..0956b3482f674 100644 --- a/DataFormats/Reconstruction/src/V0.cxx +++ b/DataFormats/Reconstruction/src/V0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/Vertex.cxx b/DataFormats/Reconstruction/src/Vertex.cxx index 4c85cbdae24ca..df0448bf4e908 100644 --- a/DataFormats/Reconstruction/src/Vertex.cxx +++ b/DataFormats/Reconstruction/src/Vertex.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/VtxTrackIndex.cxx b/DataFormats/Reconstruction/src/VtxTrackIndex.cxx index 2464759270921..33b96ce9033e2 100644 --- a/DataFormats/Reconstruction/src/VtxTrackIndex.cxx +++ b/DataFormats/Reconstruction/src/VtxTrackIndex.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/src/VtxTrackRef.cxx b/DataFormats/Reconstruction/src/VtxTrackRef.cxx index 4dad6af0d39e3..2ded10b8afe59 100644 --- a/DataFormats/Reconstruction/src/VtxTrackRef.cxx +++ b/DataFormats/Reconstruction/src/VtxTrackRef.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/test/testLTOFIntegration.cxx b/DataFormats/Reconstruction/test/testLTOFIntegration.cxx index 66f57754ad047..bb65c60d08d18 100644 --- a/DataFormats/Reconstruction/test/testLTOFIntegration.cxx +++ b/DataFormats/Reconstruction/test/testLTOFIntegration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Reconstruction/test/testVertex.cxx b/DataFormats/Reconstruction/test/testVertex.cxx index 60300c6c292e6..010c21f401a5a 100644 --- a/DataFormats/Reconstruction/test/testVertex.cxx +++ b/DataFormats/Reconstruction/test/testVertex.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/TimeFrame/CMakeLists.txt b/DataFormats/TimeFrame/CMakeLists.txt index 65dddd10df872..f0649731ccb2c 100644 --- a/DataFormats/TimeFrame/CMakeLists.txt +++ b/DataFormats/TimeFrame/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TimeFrame SOURCES src/TimeFrame.cxx diff --git a/DataFormats/TimeFrame/include/TimeFrame/TimeFrame.h b/DataFormats/TimeFrame/include/TimeFrame/TimeFrame.h index ee7404ebc5aac..815bfbde09c45 100644 --- a/DataFormats/TimeFrame/include/TimeFrame/TimeFrame.h +++ b/DataFormats/TimeFrame/include/TimeFrame/TimeFrame.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/TimeFrame/src/TimeFrame.cxx b/DataFormats/TimeFrame/src/TimeFrame.cxx index 1f094f0f642d9..c28a82dd5ad27 100644 --- a/DataFormats/TimeFrame/src/TimeFrame.cxx +++ b/DataFormats/TimeFrame/src/TimeFrame.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/TimeFrame/src/TimeFrameLinkDef.h b/DataFormats/TimeFrame/src/TimeFrameLinkDef.h index de8a221d9ffad..5a1f194a693f5 100644 --- a/DataFormats/TimeFrame/src/TimeFrameLinkDef.h +++ b/DataFormats/TimeFrame/src/TimeFrameLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/TimeFrame/test/TimeFrameTest.cxx b/DataFormats/TimeFrame/test/TimeFrameTest.cxx index f48fb52e6d8df..41a78dd1217a3 100644 --- a/DataFormats/TimeFrame/test/TimeFrameTest.cxx +++ b/DataFormats/TimeFrame/test/TimeFrameTest.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/CMakeLists.txt b/DataFormats/common/CMakeLists.txt index 85ea2035932af..54084248b551e 100644 --- a/DataFormats/common/CMakeLists.txt +++ b/DataFormats/common/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(CommonDataFormat SOURCES src/InteractionRecord.cxx diff --git a/DataFormats/common/include/CommonDataFormat/AbstractRef.h b/DataFormats/common/include/CommonDataFormat/AbstractRef.h index a9784ddc785ab..7154fd5506393 100644 --- a/DataFormats/common/include/CommonDataFormat/AbstractRef.h +++ b/DataFormats/common/include/CommonDataFormat/AbstractRef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/include/CommonDataFormat/AbstractRefAccessor.h b/DataFormats/common/include/CommonDataFormat/AbstractRefAccessor.h index 8b291cf28672e..9f6a8b1bd7d23 100644 --- a/DataFormats/common/include/CommonDataFormat/AbstractRefAccessor.h +++ b/DataFormats/common/include/CommonDataFormat/AbstractRefAccessor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/include/CommonDataFormat/BunchFilling.h b/DataFormats/common/include/CommonDataFormat/BunchFilling.h index 30d50109a6c5c..eb639577d8ea1 100644 --- a/DataFormats/common/include/CommonDataFormat/BunchFilling.h +++ b/DataFormats/common/include/CommonDataFormat/BunchFilling.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/include/CommonDataFormat/EvIndex.h b/DataFormats/common/include/CommonDataFormat/EvIndex.h index f6bd9077bb6eb..c22ebc5893a08 100644 --- a/DataFormats/common/include/CommonDataFormat/EvIndex.h +++ b/DataFormats/common/include/CommonDataFormat/EvIndex.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/include/CommonDataFormat/FlatHisto1D.h b/DataFormats/common/include/CommonDataFormat/FlatHisto1D.h index 21d5d21c6b15a..65d00b040f010 100644 --- a/DataFormats/common/include/CommonDataFormat/FlatHisto1D.h +++ b/DataFormats/common/include/CommonDataFormat/FlatHisto1D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/include/CommonDataFormat/FlatHisto2D.h b/DataFormats/common/include/CommonDataFormat/FlatHisto2D.h index e6db141deb59e..7db9051b105ce 100644 --- a/DataFormats/common/include/CommonDataFormat/FlatHisto2D.h +++ b/DataFormats/common/include/CommonDataFormat/FlatHisto2D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/include/CommonDataFormat/IRFrame.h b/DataFormats/common/include/CommonDataFormat/IRFrame.h index 6291ac3a3a6a1..696ddecdf9359 100644 --- a/DataFormats/common/include/CommonDataFormat/IRFrame.h +++ b/DataFormats/common/include/CommonDataFormat/IRFrame.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/include/CommonDataFormat/InteractionRecord.h b/DataFormats/common/include/CommonDataFormat/InteractionRecord.h index 0a666783c7cd1..849f06b8c228e 100644 --- a/DataFormats/common/include/CommonDataFormat/InteractionRecord.h +++ b/DataFormats/common/include/CommonDataFormat/InteractionRecord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/include/CommonDataFormat/RangeReference.h b/DataFormats/common/include/CommonDataFormat/RangeReference.h index 2b2c04d0808d1..0308d3b8af937 100644 --- a/DataFormats/common/include/CommonDataFormat/RangeReference.h +++ b/DataFormats/common/include/CommonDataFormat/RangeReference.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/include/CommonDataFormat/TimeStamp.h b/DataFormats/common/include/CommonDataFormat/TimeStamp.h index 3133c6bc5cda3..486bba59656d4 100644 --- a/DataFormats/common/include/CommonDataFormat/TimeStamp.h +++ b/DataFormats/common/include/CommonDataFormat/TimeStamp.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/src/AbstractRefAccessor.cxx b/DataFormats/common/src/AbstractRefAccessor.cxx index ad75bfe7f4d44..ddea96fe42e7d 100644 --- a/DataFormats/common/src/AbstractRefAccessor.cxx +++ b/DataFormats/common/src/AbstractRefAccessor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/src/BunchFilling.cxx b/DataFormats/common/src/BunchFilling.cxx index 818be2c9361b0..25e8bd74f3e38 100644 --- a/DataFormats/common/src/BunchFilling.cxx +++ b/DataFormats/common/src/BunchFilling.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/src/CommonDataFormatLinkDef.h b/DataFormats/common/src/CommonDataFormatLinkDef.h index e1cda3a30b83f..2999b4151973a 100644 --- a/DataFormats/common/src/CommonDataFormatLinkDef.h +++ b/DataFormats/common/src/CommonDataFormatLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/src/FlatHisto1D.cxx b/DataFormats/common/src/FlatHisto1D.cxx index e9ff348fbe6de..6386e2f3b940e 100644 --- a/DataFormats/common/src/FlatHisto1D.cxx +++ b/DataFormats/common/src/FlatHisto1D.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/src/FlatHisto2D.cxx b/DataFormats/common/src/FlatHisto2D.cxx index cea96d3c1a502..f2284f412a312 100644 --- a/DataFormats/common/src/FlatHisto2D.cxx +++ b/DataFormats/common/src/FlatHisto2D.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/src/InteractionRecord.cxx b/DataFormats/common/src/InteractionRecord.cxx index 59962961548b1..f15c8c8e85328 100644 --- a/DataFormats/common/src/InteractionRecord.cxx +++ b/DataFormats/common/src/InteractionRecord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/test/testAbstractRefAccessor.cxx b/DataFormats/common/test/testAbstractRefAccessor.cxx index 0fbee48e9cddd..fc5bedc5be715 100644 --- a/DataFormats/common/test/testAbstractRefAccessor.cxx +++ b/DataFormats/common/test/testAbstractRefAccessor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/test/testFlatHisto.cxx b/DataFormats/common/test/testFlatHisto.cxx index 44ae3b3c2a520..f690c7ead84b5 100644 --- a/DataFormats/common/test/testFlatHisto.cxx +++ b/DataFormats/common/test/testFlatHisto.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/test/testRangeRef.cxx b/DataFormats/common/test/testRangeRef.cxx index f6a339e8f3a85..7b0b66b8aabe1 100644 --- a/DataFormats/common/test/testRangeRef.cxx +++ b/DataFormats/common/test/testRangeRef.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/common/test/testTimeStamp.cxx b/DataFormats/common/test/testTimeStamp.cxx index 542ae430b029f..9912a701f0c66 100644 --- a/DataFormats/common/test/testTimeStamp.cxx +++ b/DataFormats/common/test/testTimeStamp.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/CMakeLists.txt b/DataFormats/simulation/CMakeLists.txt index 47cd91cb29d1a..3a7cb0b61d936 100644 --- a/DataFormats/simulation/CMakeLists.txt +++ b/DataFormats/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(SimulationDataFormat SOURCES src/Stack.cxx diff --git a/DataFormats/simulation/include/SimulationDataFormat/BaseHits.h b/DataFormats/simulation/include/SimulationDataFormat/BaseHits.h index 31e506cbe65e0..b9ed356ec8b5a 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/BaseHits.h +++ b/DataFormats/simulation/include/SimulationDataFormat/BaseHits.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/ConstMCTruthContainer.h b/DataFormats/simulation/include/SimulationDataFormat/ConstMCTruthContainer.h index b477e37eed3ed..64a8b02c856ab 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/ConstMCTruthContainer.h +++ b/DataFormats/simulation/include/SimulationDataFormat/ConstMCTruthContainer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/DigitizationContext.h b/DataFormats/simulation/include/SimulationDataFormat/DigitizationContext.h index 66a2f608b6ffa..b21d6b0201074 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/DigitizationContext.h +++ b/DataFormats/simulation/include/SimulationDataFormat/DigitizationContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/IOMCTruthContainerView.h b/DataFormats/simulation/include/SimulationDataFormat/IOMCTruthContainerView.h index 590524cd61e8f..1692422c90f2c 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/IOMCTruthContainerView.h +++ b/DataFormats/simulation/include/SimulationDataFormat/IOMCTruthContainerView.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/LabelContainer.h b/DataFormats/simulation/include/SimulationDataFormat/LabelContainer.h index 656f4c2ed18d4..6264c8580db9f 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/LabelContainer.h +++ b/DataFormats/simulation/include/SimulationDataFormat/LabelContainer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/MCCompLabel.h b/DataFormats/simulation/include/SimulationDataFormat/MCCompLabel.h index 7c2e392871343..6436958e7bb34 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/MCCompLabel.h +++ b/DataFormats/simulation/include/SimulationDataFormat/MCCompLabel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/MCEventHeader.h b/DataFormats/simulation/include/SimulationDataFormat/MCEventHeader.h index f2889c9bca134..3fc2ad1d39ef7 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/MCEventHeader.h +++ b/DataFormats/simulation/include/SimulationDataFormat/MCEventHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/MCEventLabel.h b/DataFormats/simulation/include/SimulationDataFormat/MCEventLabel.h index 170aa89470979..8583d31d460ba 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/MCEventLabel.h +++ b/DataFormats/simulation/include/SimulationDataFormat/MCEventLabel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/MCEventStats.h b/DataFormats/simulation/include/SimulationDataFormat/MCEventStats.h index 087b9cf86be48..dbbfcc3932aad 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/MCEventStats.h +++ b/DataFormats/simulation/include/SimulationDataFormat/MCEventStats.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/MCTrack.h b/DataFormats/simulation/include/SimulationDataFormat/MCTrack.h index ad3118974cd1a..dd1d1198333af 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/MCTrack.h +++ b/DataFormats/simulation/include/SimulationDataFormat/MCTrack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/MCTruthContainer.h b/DataFormats/simulation/include/SimulationDataFormat/MCTruthContainer.h index 9c08084da1cad..83cd59e58db97 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/MCTruthContainer.h +++ b/DataFormats/simulation/include/SimulationDataFormat/MCTruthContainer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/ParticleStatus.h b/DataFormats/simulation/include/SimulationDataFormat/ParticleStatus.h index 798ff293178f4..552436aebfdbf 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/ParticleStatus.h +++ b/DataFormats/simulation/include/SimulationDataFormat/ParticleStatus.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/PrimaryChunk.h b/DataFormats/simulation/include/SimulationDataFormat/PrimaryChunk.h index 0376951ff574b..86f2023c3680b 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/PrimaryChunk.h +++ b/DataFormats/simulation/include/SimulationDataFormat/PrimaryChunk.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/ProcessingEventInfo.h b/DataFormats/simulation/include/SimulationDataFormat/ProcessingEventInfo.h index 568b82505029e..150a8272c7714 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/ProcessingEventInfo.h +++ b/DataFormats/simulation/include/SimulationDataFormat/ProcessingEventInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/Stack.h b/DataFormats/simulation/include/SimulationDataFormat/Stack.h index 13c064751d134..d6bda808830ec 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/Stack.h +++ b/DataFormats/simulation/include/SimulationDataFormat/Stack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/StackParam.h b/DataFormats/simulation/include/SimulationDataFormat/StackParam.h index d5e940381039b..b76112b41b541 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/StackParam.h +++ b/DataFormats/simulation/include/SimulationDataFormat/StackParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/include/SimulationDataFormat/TrackReference.h b/DataFormats/simulation/include/SimulationDataFormat/TrackReference.h index ba390ad11bdc5..3766f7bce07a7 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/TrackReference.h +++ b/DataFormats/simulation/include/SimulationDataFormat/TrackReference.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/src/CustomStreamers.cxx b/DataFormats/simulation/src/CustomStreamers.cxx index ba06a6a207916..69f3607bf9d59 100644 --- a/DataFormats/simulation/src/CustomStreamers.cxx +++ b/DataFormats/simulation/src/CustomStreamers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/src/DigitizationContext.cxx b/DataFormats/simulation/src/DigitizationContext.cxx index 75d49a459e58f..f9e1c5035cdae 100644 --- a/DataFormats/simulation/src/DigitizationContext.cxx +++ b/DataFormats/simulation/src/DigitizationContext.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/src/MCCompLabel.cxx b/DataFormats/simulation/src/MCCompLabel.cxx index 1a6aee581f1b1..8e4f2ad73f876 100644 --- a/DataFormats/simulation/src/MCCompLabel.cxx +++ b/DataFormats/simulation/src/MCCompLabel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/src/MCEventHeader.cxx b/DataFormats/simulation/src/MCEventHeader.cxx index 6b43cc9c86afd..99004fec46ffa 100644 --- a/DataFormats/simulation/src/MCEventHeader.cxx +++ b/DataFormats/simulation/src/MCEventHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/src/MCEventLabel.cxx b/DataFormats/simulation/src/MCEventLabel.cxx index f12b6bf5d1dc1..31607eb6d3010 100644 --- a/DataFormats/simulation/src/MCEventLabel.cxx +++ b/DataFormats/simulation/src/MCEventLabel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/src/MCTrack.cxx b/DataFormats/simulation/src/MCTrack.cxx index 94ce726755ea0..a35779a5876f5 100644 --- a/DataFormats/simulation/src/MCTrack.cxx +++ b/DataFormats/simulation/src/MCTrack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/src/SimulationDataLinkDef.h b/DataFormats/simulation/src/SimulationDataLinkDef.h index 8c18aee9724ee..acaaa03198f77 100644 --- a/DataFormats/simulation/src/SimulationDataLinkDef.h +++ b/DataFormats/simulation/src/SimulationDataLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/src/Stack.cxx b/DataFormats/simulation/src/Stack.cxx index 839d2e2b360ba..9238fa0d8dce1 100644 --- a/DataFormats/simulation/src/Stack.cxx +++ b/DataFormats/simulation/src/Stack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/src/StackParam.cxx b/DataFormats/simulation/src/StackParam.cxx index 59917159653b0..c5589d039f8c5 100644 --- a/DataFormats/simulation/src/StackParam.cxx +++ b/DataFormats/simulation/src/StackParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/test/MCTrack.cxx b/DataFormats/simulation/test/MCTrack.cxx index 8190a557fd957..052bb0f360ffe 100644 --- a/DataFormats/simulation/test/MCTrack.cxx +++ b/DataFormats/simulation/test/MCTrack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/test/testBasicHits.cxx b/DataFormats/simulation/test/testBasicHits.cxx index 8f1e97d292504..e81c173fedae8 100644 --- a/DataFormats/simulation/test/testBasicHits.cxx +++ b/DataFormats/simulation/test/testBasicHits.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/test/testMCCompLabel.cxx b/DataFormats/simulation/test/testMCCompLabel.cxx index 825737cfae3cb..43c234461498d 100644 --- a/DataFormats/simulation/test/testMCCompLabel.cxx +++ b/DataFormats/simulation/test/testMCCompLabel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/test/testMCEventLabel.cxx b/DataFormats/simulation/test/testMCEventLabel.cxx index 0ea2c8af288a9..e3ca5966b44ea 100644 --- a/DataFormats/simulation/test/testMCEventLabel.cxx +++ b/DataFormats/simulation/test/testMCEventLabel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/simulation/test/testMCTruthContainer.cxx b/DataFormats/simulation/test/testMCTruthContainer.cxx index 8e5b66ba826d6..071421073e0ae 100644 --- a/DataFormats/simulation/test/testMCTruthContainer.cxx +++ b/DataFormats/simulation/test/testMCTruthContainer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/AOD/CMakeLists.txt b/Detectors/AOD/CMakeLists.txt index 06d5d7939fe88..9d329980bbb80 100644 --- a/Detectors/AOD/CMakeLists.txt +++ b/Detectors/AOD/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( AODProducerWorkflow diff --git a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h index 12125b7474698..e44fdd4aa6900 100644 --- a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h +++ b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index 126cd67f0bef2..cd8851678b9b6 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/AOD/src/StandaloneAODProducer.cxx b/Detectors/AOD/src/StandaloneAODProducer.cxx index da12c2fa02ed2..22881b50446bc 100644 --- a/Detectors/AOD/src/StandaloneAODProducer.cxx +++ b/Detectors/AOD/src/StandaloneAODProducer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/AOD/src/aod-producer-workflow.cxx b/Detectors/AOD/src/aod-producer-workflow.cxx index 57c398bbcc937..b5514f5f8c4db 100644 --- a/Detectors/AOD/src/aod-producer-workflow.cxx +++ b/Detectors/AOD/src/aod-producer-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/CMakeLists.txt b/Detectors/Align/CMakeLists.txt index 2e8b42cd55bf0..ef4f76ac0d4f5 100644 --- a/Detectors/Align/CMakeLists.txt +++ b/Detectors/Align/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(Align SOURCES src/GeometricalConstraint.cxx diff --git a/Detectors/Align/include/Align/AlignableDetector.h b/Detectors/Align/include/Align/AlignableDetector.h index 650dae4607238..451b36e51b985 100644 --- a/Detectors/Align/include/Align/AlignableDetector.h +++ b/Detectors/Align/include/Align/AlignableDetector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignableDetectorHMPID.h b/Detectors/Align/include/Align/AlignableDetectorHMPID.h index 0640f84aa3aee..b7c7bd063c576 100644 --- a/Detectors/Align/include/Align/AlignableDetectorHMPID.h +++ b/Detectors/Align/include/Align/AlignableDetectorHMPID.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignableDetectorITS.h b/Detectors/Align/include/Align/AlignableDetectorITS.h index 50166d5d72d8a..160aa34a39366 100644 --- a/Detectors/Align/include/Align/AlignableDetectorITS.h +++ b/Detectors/Align/include/Align/AlignableDetectorITS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignableDetectorTOF.h b/Detectors/Align/include/Align/AlignableDetectorTOF.h index 9af6ee826534b..4897409260dfa 100644 --- a/Detectors/Align/include/Align/AlignableDetectorTOF.h +++ b/Detectors/Align/include/Align/AlignableDetectorTOF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignableDetectorTPC.h b/Detectors/Align/include/Align/AlignableDetectorTPC.h index bb2f0e103cdc0..d513f983d44e4 100644 --- a/Detectors/Align/include/Align/AlignableDetectorTPC.h +++ b/Detectors/Align/include/Align/AlignableDetectorTPC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignableDetectorTRD.h b/Detectors/Align/include/Align/AlignableDetectorTRD.h index 3bdb998acc2dc..9b193acb7d26e 100644 --- a/Detectors/Align/include/Align/AlignableDetectorTRD.h +++ b/Detectors/Align/include/Align/AlignableDetectorTRD.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignableSensor.h b/Detectors/Align/include/Align/AlignableSensor.h index 045748e6c98c3..cb9484dc6ce50 100644 --- a/Detectors/Align/include/Align/AlignableSensor.h +++ b/Detectors/Align/include/Align/AlignableSensor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignableSensorHMPID.h b/Detectors/Align/include/Align/AlignableSensorHMPID.h index 95d833bc2beb3..a31382115a8b3 100644 --- a/Detectors/Align/include/Align/AlignableSensorHMPID.h +++ b/Detectors/Align/include/Align/AlignableSensorHMPID.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignableSensorITS.h b/Detectors/Align/include/Align/AlignableSensorITS.h index c66885c53c154..0d4d3f162a89d 100644 --- a/Detectors/Align/include/Align/AlignableSensorITS.h +++ b/Detectors/Align/include/Align/AlignableSensorITS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignableSensorTOF.h b/Detectors/Align/include/Align/AlignableSensorTOF.h index 9c0ceca513b11..2c648ebb77c96 100644 --- a/Detectors/Align/include/Align/AlignableSensorTOF.h +++ b/Detectors/Align/include/Align/AlignableSensorTOF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignableSensorTPC.h b/Detectors/Align/include/Align/AlignableSensorTPC.h index b2218ebb0740b..281222394fc7b 100644 --- a/Detectors/Align/include/Align/AlignableSensorTPC.h +++ b/Detectors/Align/include/Align/AlignableSensorTPC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignableSensorTRD.h b/Detectors/Align/include/Align/AlignableSensorTRD.h index 80c9377d7aeb7..f40062e9a1a44 100644 --- a/Detectors/Align/include/Align/AlignableSensorTRD.h +++ b/Detectors/Align/include/Align/AlignableSensorTRD.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignableVolume.h b/Detectors/Align/include/Align/AlignableVolume.h index 7bd066d26c850..7e3d25221cbd4 100644 --- a/Detectors/Align/include/Align/AlignableVolume.h +++ b/Detectors/Align/include/Align/AlignableVolume.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignmentPoint.h b/Detectors/Align/include/Align/AlignmentPoint.h index 4b43ea7d0c51b..0e5527f433153 100644 --- a/Detectors/Align/include/Align/AlignmentPoint.h +++ b/Detectors/Align/include/Align/AlignmentPoint.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/AlignmentTrack.h b/Detectors/Align/include/Align/AlignmentTrack.h index 1b79001993063..e9a711e6dc11a 100644 --- a/Detectors/Align/include/Align/AlignmentTrack.h +++ b/Detectors/Align/include/Align/AlignmentTrack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/Controller.h b/Detectors/Align/include/Align/Controller.h index f7764d32c716f..32591c5e97631 100644 --- a/Detectors/Align/include/Align/Controller.h +++ b/Detectors/Align/include/Align/Controller.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/DOFStatistics.h b/Detectors/Align/include/Align/DOFStatistics.h index 3254e7574a217..f0a0aa3de185e 100644 --- a/Detectors/Align/include/Align/DOFStatistics.h +++ b/Detectors/Align/include/Align/DOFStatistics.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/EventVertex.h b/Detectors/Align/include/Align/EventVertex.h index 58ab64868eab6..e6e77ac471c7b 100644 --- a/Detectors/Align/include/Align/EventVertex.h +++ b/Detectors/Align/include/Align/EventVertex.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/GeometricalConstraint.h b/Detectors/Align/include/Align/GeometricalConstraint.h index 7ea1615c893ae..c252d4591f4e3 100644 --- a/Detectors/Align/include/Align/GeometricalConstraint.h +++ b/Detectors/Align/include/Align/GeometricalConstraint.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/Mille.h b/Detectors/Align/include/Align/Mille.h index a243a5e740d05..82de5084033be 100644 --- a/Detectors/Align/include/Align/Mille.h +++ b/Detectors/Align/include/Align/Mille.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/Millepede2Record.h b/Detectors/Align/include/Align/Millepede2Record.h index adb03c3e62474..370f697440f9b 100644 --- a/Detectors/Align/include/Align/Millepede2Record.h +++ b/Detectors/Align/include/Align/Millepede2Record.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/ResidualsController.h b/Detectors/Align/include/Align/ResidualsController.h index 90d748be6f081..a42c4333f4e25 100644 --- a/Detectors/Align/include/Align/ResidualsController.h +++ b/Detectors/Align/include/Align/ResidualsController.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/ResidualsControllerFast.h b/Detectors/Align/include/Align/ResidualsControllerFast.h index 17c39428b5733..171bfb45757d2 100644 --- a/Detectors/Align/include/Align/ResidualsControllerFast.h +++ b/Detectors/Align/include/Align/ResidualsControllerFast.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/include/Align/utils.h b/Detectors/Align/include/Align/utils.h index 31a51d0166b9b..8a5192641557a 100644 --- a/Detectors/Align/include/Align/utils.h +++ b/Detectors/Align/include/Align/utils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignLinkDef.h b/Detectors/Align/src/AlignLinkDef.h index 5eb9f43b4a726..de9353a2a833e 100644 --- a/Detectors/Align/src/AlignLinkDef.h +++ b/Detectors/Align/src/AlignLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableDetector.cxx b/Detectors/Align/src/AlignableDetector.cxx index d7db75d44c2fb..dbb19e359c1c7 100644 --- a/Detectors/Align/src/AlignableDetector.cxx +++ b/Detectors/Align/src/AlignableDetector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableDetectorHMPID.cxx b/Detectors/Align/src/AlignableDetectorHMPID.cxx index 74c7b69c6fbc9..b24ae159e0c44 100644 --- a/Detectors/Align/src/AlignableDetectorHMPID.cxx +++ b/Detectors/Align/src/AlignableDetectorHMPID.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableDetectorITS.cxx b/Detectors/Align/src/AlignableDetectorITS.cxx index cf02b0e16d193..21c74c6f8031a 100644 --- a/Detectors/Align/src/AlignableDetectorITS.cxx +++ b/Detectors/Align/src/AlignableDetectorITS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableDetectorTOF.cxx b/Detectors/Align/src/AlignableDetectorTOF.cxx index d8ef959cef71d..6dc79c7bd685f 100644 --- a/Detectors/Align/src/AlignableDetectorTOF.cxx +++ b/Detectors/Align/src/AlignableDetectorTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableDetectorTPC.cxx b/Detectors/Align/src/AlignableDetectorTPC.cxx index b9ee9dea71647..63fac7dd9cac6 100644 --- a/Detectors/Align/src/AlignableDetectorTPC.cxx +++ b/Detectors/Align/src/AlignableDetectorTPC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableDetectorTRD.cxx b/Detectors/Align/src/AlignableDetectorTRD.cxx index 24618f996528f..6f9ea26d092ab 100644 --- a/Detectors/Align/src/AlignableDetectorTRD.cxx +++ b/Detectors/Align/src/AlignableDetectorTRD.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableSensor.cxx b/Detectors/Align/src/AlignableSensor.cxx index 3ca7ea6a02f40..724d06a00a442 100644 --- a/Detectors/Align/src/AlignableSensor.cxx +++ b/Detectors/Align/src/AlignableSensor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableSensorHMPID.cxx b/Detectors/Align/src/AlignableSensorHMPID.cxx index cd186ef972556..bdeb9dbe687f4 100644 --- a/Detectors/Align/src/AlignableSensorHMPID.cxx +++ b/Detectors/Align/src/AlignableSensorHMPID.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableSensorITS.cxx b/Detectors/Align/src/AlignableSensorITS.cxx index c1996e942b25f..0e666726de516 100644 --- a/Detectors/Align/src/AlignableSensorITS.cxx +++ b/Detectors/Align/src/AlignableSensorITS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableSensorTOF.cxx b/Detectors/Align/src/AlignableSensorTOF.cxx index bd12f25fb54c9..2e7da48ec37b6 100644 --- a/Detectors/Align/src/AlignableSensorTOF.cxx +++ b/Detectors/Align/src/AlignableSensorTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableSensorTPC.cxx b/Detectors/Align/src/AlignableSensorTPC.cxx index 72170ad1cb831..f99bd2e5b2eed 100644 --- a/Detectors/Align/src/AlignableSensorTPC.cxx +++ b/Detectors/Align/src/AlignableSensorTPC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableSensorTRD.cxx b/Detectors/Align/src/AlignableSensorTRD.cxx index f26d0df04e55f..8b23574e51f59 100644 --- a/Detectors/Align/src/AlignableSensorTRD.cxx +++ b/Detectors/Align/src/AlignableSensorTRD.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignableVolume.cxx b/Detectors/Align/src/AlignableVolume.cxx index 3869631e72219..b4982c3edfbe6 100644 --- a/Detectors/Align/src/AlignableVolume.cxx +++ b/Detectors/Align/src/AlignableVolume.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignmentPoint.cxx b/Detectors/Align/src/AlignmentPoint.cxx index 8b3b030ded1e3..4034e3ca4e678 100644 --- a/Detectors/Align/src/AlignmentPoint.cxx +++ b/Detectors/Align/src/AlignmentPoint.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/AlignmentTrack.cxx b/Detectors/Align/src/AlignmentTrack.cxx index d1472f62b2550..c93d5ebf0d001 100644 --- a/Detectors/Align/src/AlignmentTrack.cxx +++ b/Detectors/Align/src/AlignmentTrack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/Controller.cxx b/Detectors/Align/src/Controller.cxx index 2c0d38b1975ad..1381387dc5d30 100644 --- a/Detectors/Align/src/Controller.cxx +++ b/Detectors/Align/src/Controller.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/DOFStatistics.cxx b/Detectors/Align/src/DOFStatistics.cxx index aedc7ae54efa6..8df1c3f6b2a69 100644 --- a/Detectors/Align/src/DOFStatistics.cxx +++ b/Detectors/Align/src/DOFStatistics.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/EventVertex.cxx b/Detectors/Align/src/EventVertex.cxx index 455a200745630..992b1e063083f 100644 --- a/Detectors/Align/src/EventVertex.cxx +++ b/Detectors/Align/src/EventVertex.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/GeometricalConstraint.cxx b/Detectors/Align/src/GeometricalConstraint.cxx index ff776a9263c84..3cbb71f43da87 100644 --- a/Detectors/Align/src/GeometricalConstraint.cxx +++ b/Detectors/Align/src/GeometricalConstraint.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/Mille.cxx b/Detectors/Align/src/Mille.cxx index c507bbd27a722..03fb6bed9858c 100644 --- a/Detectors/Align/src/Mille.cxx +++ b/Detectors/Align/src/Mille.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/Millepede2Record.cxx b/Detectors/Align/src/Millepede2Record.cxx index bd7686779f3ae..497b5096b6702 100644 --- a/Detectors/Align/src/Millepede2Record.cxx +++ b/Detectors/Align/src/Millepede2Record.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/ResidualsController.cxx b/Detectors/Align/src/ResidualsController.cxx index 0b9a7df18ab95..c85267136aa8d 100644 --- a/Detectors/Align/src/ResidualsController.cxx +++ b/Detectors/Align/src/ResidualsController.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Align/src/ResidualsControllerFast.cxx b/Detectors/Align/src/ResidualsControllerFast.cxx index 3207e4b1d7cdf..66054ac75c96c 100644 --- a/Detectors/Align/src/ResidualsControllerFast.cxx +++ b/Detectors/Align/src/ResidualsControllerFast.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/CMakeLists.txt b/Detectors/Base/CMakeLists.txt index 3740cac02b413..f1cd8eb58b311 100644 --- a/Detectors/Base/CMakeLists.txt +++ b/Detectors/Base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DetectorsBase SOURCES src/Detector.cxx diff --git a/Detectors/Base/include/DetectorsBase/Aligner.h b/Detectors/Base/include/DetectorsBase/Aligner.h index 0c813404f0559..76ea1bb2bde77 100644 --- a/Detectors/Base/include/DetectorsBase/Aligner.h +++ b/Detectors/Base/include/DetectorsBase/Aligner.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/include/DetectorsBase/BaseDPLDigitizer.h b/Detectors/Base/include/DetectorsBase/BaseDPLDigitizer.h index a07965d84ec2c..b285a5579e1c6 100644 --- a/Detectors/Base/include/DetectorsBase/BaseDPLDigitizer.h +++ b/Detectors/Base/include/DetectorsBase/BaseDPLDigitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/include/DetectorsBase/CTFCoderBase.h b/Detectors/Base/include/DetectorsBase/CTFCoderBase.h index db6a360b7fc5b..29a58dbb367bf 100644 --- a/Detectors/Base/include/DetectorsBase/CTFCoderBase.h +++ b/Detectors/Base/include/DetectorsBase/CTFCoderBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/include/DetectorsBase/Detector.h b/Detectors/Base/include/DetectorsBase/Detector.h index f37d2bc5b2ca2..c5fa5d34aa1ed 100644 --- a/Detectors/Base/include/DetectorsBase/Detector.h +++ b/Detectors/Base/include/DetectorsBase/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/include/DetectorsBase/GeometryManager.h b/Detectors/Base/include/DetectorsBase/GeometryManager.h index 616ac677e2592..c3e8f263d22d5 100644 --- a/Detectors/Base/include/DetectorsBase/GeometryManager.h +++ b/Detectors/Base/include/DetectorsBase/GeometryManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/include/DetectorsBase/MatCell.h b/Detectors/Base/include/DetectorsBase/MatCell.h index 44a27aae9f085..b5af66439955d 100644 --- a/Detectors/Base/include/DetectorsBase/MatCell.h +++ b/Detectors/Base/include/DetectorsBase/MatCell.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/include/DetectorsBase/MatLayerCyl.h b/Detectors/Base/include/DetectorsBase/MatLayerCyl.h index cf0acc750b53b..defc60bd59a99 100644 --- a/Detectors/Base/include/DetectorsBase/MatLayerCyl.h +++ b/Detectors/Base/include/DetectorsBase/MatLayerCyl.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/include/DetectorsBase/MatLayerCylSet.h b/Detectors/Base/include/DetectorsBase/MatLayerCylSet.h index e0912de30c691..488b0eab317fb 100644 --- a/Detectors/Base/include/DetectorsBase/MatLayerCylSet.h +++ b/Detectors/Base/include/DetectorsBase/MatLayerCylSet.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/include/DetectorsBase/MaterialManager.h b/Detectors/Base/include/DetectorsBase/MaterialManager.h index 46b48e77f7423..8a6f8ee819c87 100644 --- a/Detectors/Base/include/DetectorsBase/MaterialManager.h +++ b/Detectors/Base/include/DetectorsBase/MaterialManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/include/DetectorsBase/Propagator.h b/Detectors/Base/include/DetectorsBase/Propagator.h index 5cbb70cb55675..3472fe77d62df 100644 --- a/Detectors/Base/include/DetectorsBase/Propagator.h +++ b/Detectors/Base/include/DetectorsBase/Propagator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/include/DetectorsBase/Ray.h b/Detectors/Base/include/DetectorsBase/Ray.h index 4b489b599fb5f..1701e65c2d638 100644 --- a/Detectors/Base/include/DetectorsBase/Ray.h +++ b/Detectors/Base/include/DetectorsBase/Ray.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/src/Aligner.cxx b/Detectors/Base/src/Aligner.cxx index ebc32017141d6..5616349d73ade 100644 --- a/Detectors/Base/src/Aligner.cxx +++ b/Detectors/Base/src/Aligner.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/src/BaseDPLDigitizer.cxx b/Detectors/Base/src/BaseDPLDigitizer.cxx index c35101d4cc650..6f6b2bc8a747d 100644 --- a/Detectors/Base/src/BaseDPLDigitizer.cxx +++ b/Detectors/Base/src/BaseDPLDigitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/src/CTFCoderBase.cxx b/Detectors/Base/src/CTFCoderBase.cxx index 65d77b6ca681d..3ad8067c173b2 100644 --- a/Detectors/Base/src/CTFCoderBase.cxx +++ b/Detectors/Base/src/CTFCoderBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/src/Detector.cxx b/Detectors/Base/src/Detector.cxx index cbf54e2422e0b..a41ef304273e0 100644 --- a/Detectors/Base/src/Detector.cxx +++ b/Detectors/Base/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/src/DetectorsBaseLinkDef.h b/Detectors/Base/src/DetectorsBaseLinkDef.h index cfcff0cd83226..f542e0f064c3b 100644 --- a/Detectors/Base/src/DetectorsBaseLinkDef.h +++ b/Detectors/Base/src/DetectorsBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/src/GeometryManager.cxx b/Detectors/Base/src/GeometryManager.cxx index 022ff8e5b9f49..0620917457125 100644 --- a/Detectors/Base/src/GeometryManager.cxx +++ b/Detectors/Base/src/GeometryManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/src/MatLayerCyl.cxx b/Detectors/Base/src/MatLayerCyl.cxx index f8705a505b334..ebd4acdea614d 100644 --- a/Detectors/Base/src/MatLayerCyl.cxx +++ b/Detectors/Base/src/MatLayerCyl.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/src/MatLayerCylSet.cxx b/Detectors/Base/src/MatLayerCylSet.cxx index 3d110766c6436..0757a5fe4fdcb 100644 --- a/Detectors/Base/src/MatLayerCylSet.cxx +++ b/Detectors/Base/src/MatLayerCylSet.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/src/MaterialManager.cxx b/Detectors/Base/src/MaterialManager.cxx index 2b184635f0574..34aa0769050f8 100644 --- a/Detectors/Base/src/MaterialManager.cxx +++ b/Detectors/Base/src/MaterialManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/src/Propagator.cxx b/Detectors/Base/src/Propagator.cxx index 9cad29a31a0f9..961f8130a7cde 100644 --- a/Detectors/Base/src/Propagator.cxx +++ b/Detectors/Base/src/Propagator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/src/Ray.cxx b/Detectors/Base/src/Ray.cxx index 1fede46d3be26..c4cdbcb88fb06 100644 --- a/Detectors/Base/src/Ray.cxx +++ b/Detectors/Base/src/Ray.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/test/buildMatBudLUT.C b/Detectors/Base/test/buildMatBudLUT.C index b0f0d0d2ac2b3..097176497c17f 100644 --- a/Detectors/Base/test/buildMatBudLUT.C +++ b/Detectors/Base/test/buildMatBudLUT.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/test/testDCAFitter.cxx b/Detectors/Base/test/testDCAFitter.cxx index 1ad9cdc61b881..60e0f08f4a5a1 100644 --- a/Detectors/Base/test/testDCAFitter.cxx +++ b/Detectors/Base/test/testDCAFitter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Base/test/testMatBudLUT.cxx b/Detectors/Base/test/testMatBudLUT.cxx index 289dc84f5bc26..d332422035cd6 100644 --- a/Detectors/Base/test/testMatBudLUT.cxx +++ b/Detectors/Base/test/testMatBudLUT.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CMakeLists.txt b/Detectors/CMakeLists.txt index 8a1d4a432a934..6ebd1ff4639d2 100644 --- a/Detectors/CMakeLists.txt +++ b/Detectors/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Base) add_subdirectory(Raw) diff --git a/Detectors/CPV/CMakeLists.txt b/Detectors/CPV/CMakeLists.txt index 1a5260de68324..72cfdf2ef2b9c 100644 --- a/Detectors/CPV/CMakeLists.txt +++ b/Detectors/CPV/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(calib) diff --git a/Detectors/CPV/base/CMakeLists.txt b/Detectors/CPV/base/CMakeLists.txt index 10258ffc3770c..893b5b98f682b 100644 --- a/Detectors/CPV/base/CMakeLists.txt +++ b/Detectors/CPV/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(CPVBase SOURCES src/Geometry.cxx diff --git a/Detectors/CPV/base/include/CPVBase/CPVSimParams.h b/Detectors/CPV/base/include/CPVBase/CPVSimParams.h index eb83ad2431ce3..c01bce522a8a3 100644 --- a/Detectors/CPV/base/include/CPVBase/CPVSimParams.h +++ b/Detectors/CPV/base/include/CPVBase/CPVSimParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/base/include/CPVBase/Geometry.h b/Detectors/CPV/base/include/CPVBase/Geometry.h index 9dfa43e63ec70..643afa3a4c087 100644 --- a/Detectors/CPV/base/include/CPVBase/Geometry.h +++ b/Detectors/CPV/base/include/CPVBase/Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/base/src/CPVBaseLinkDef.h b/Detectors/CPV/base/src/CPVBaseLinkDef.h index 8c82cbe04f7c2..2833c6eef89e0 100644 --- a/Detectors/CPV/base/src/CPVBaseLinkDef.h +++ b/Detectors/CPV/base/src/CPVBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/base/src/CPVSimParams.cxx b/Detectors/CPV/base/src/CPVSimParams.cxx index 435fd309d6b52..2a25c7b0fef2b 100644 --- a/Detectors/CPV/base/src/CPVSimParams.cxx +++ b/Detectors/CPV/base/src/CPVSimParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/base/src/Geometry.cxx b/Detectors/CPV/base/src/Geometry.cxx index 57094afc2ef5f..532f9759bffaa 100644 --- a/Detectors/CPV/base/src/Geometry.cxx +++ b/Detectors/CPV/base/src/Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/calib/CMakeLists.txt b/Detectors/CPV/calib/CMakeLists.txt index ddce7dc1730f7..c8992f1ede0d4 100644 --- a/Detectors/CPV/calib/CMakeLists.txt +++ b/Detectors/CPV/calib/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(CPVCalibWorkflow) diff --git a/Detectors/CPV/calib/CPVCalibWorkflow/CMakeLists.txt b/Detectors/CPV/calib/CPVCalibWorkflow/CMakeLists.txt index b52ef05fb18d8..26745a09cdd09 100644 --- a/Detectors/CPV/calib/CPVCalibWorkflow/CMakeLists.txt +++ b/Detectors/CPV/calib/CPVCalibWorkflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(CPVCalibWorkflow SOURCES src/CPVPedestalCalibDevice.cxx diff --git a/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVBadMapCalibDevice.h b/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVBadMapCalibDevice.h index 859168a928211..9696af5654135 100644 --- a/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVBadMapCalibDevice.h +++ b/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVBadMapCalibDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVGainCalibDevice.h b/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVGainCalibDevice.h index 2f3009e60bdb2..3988c62956b2f 100644 --- a/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVGainCalibDevice.h +++ b/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVGainCalibDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVPedestalCalibDevice.h b/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVPedestalCalibDevice.h index 3f3ed6cee78f0..72a50a3214128 100644 --- a/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVPedestalCalibDevice.h +++ b/Detectors/CPV/calib/CPVCalibWorkflow/include/CPVCalibWorkflow/CPVPedestalCalibDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/calib/CPVCalibWorkflow/src/CPVBadMapCalibDevice.cxx b/Detectors/CPV/calib/CPVCalibWorkflow/src/CPVBadMapCalibDevice.cxx index 75fb24128ff5c..e8b69b07246bf 100644 --- a/Detectors/CPV/calib/CPVCalibWorkflow/src/CPVBadMapCalibDevice.cxx +++ b/Detectors/CPV/calib/CPVCalibWorkflow/src/CPVBadMapCalibDevice.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/calib/CPVCalibWorkflow/src/CPVGainCalibDevice.cxx b/Detectors/CPV/calib/CPVCalibWorkflow/src/CPVGainCalibDevice.cxx index e8962d1c3a939..7df8d78ae6488 100644 --- a/Detectors/CPV/calib/CPVCalibWorkflow/src/CPVGainCalibDevice.cxx +++ b/Detectors/CPV/calib/CPVCalibWorkflow/src/CPVGainCalibDevice.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/calib/CPVCalibWorkflow/src/CPVPedestalCalibDevice.cxx b/Detectors/CPV/calib/CPVCalibWorkflow/src/CPVPedestalCalibDevice.cxx index c7d607f3736f8..d13e3a3db4111 100644 --- a/Detectors/CPV/calib/CPVCalibWorkflow/src/CPVPedestalCalibDevice.cxx +++ b/Detectors/CPV/calib/CPVCalibWorkflow/src/CPVPedestalCalibDevice.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/calib/CPVCalibWorkflow/src/cpv-calib-workflow.cxx b/Detectors/CPV/calib/CPVCalibWorkflow/src/cpv-calib-workflow.cxx index 0ae61ea9e259f..600e8aac7a3b8 100644 --- a/Detectors/CPV/calib/CPVCalibWorkflow/src/cpv-calib-workflow.cxx +++ b/Detectors/CPV/calib/CPVCalibWorkflow/src/cpv-calib-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/calib/macros/PostBadMapCCDB.C b/Detectors/CPV/calib/macros/PostBadMapCCDB.C index 0666af5dadd46..6aae7a54d4281 100644 --- a/Detectors/CPV/calib/macros/PostBadMapCCDB.C +++ b/Detectors/CPV/calib/macros/PostBadMapCCDB.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/calib/macros/PostCalibCCDB.C b/Detectors/CPV/calib/macros/PostCalibCCDB.C index 85cf4cabf46c0..ec70da8885b1b 100644 --- a/Detectors/CPV/calib/macros/PostCalibCCDB.C +++ b/Detectors/CPV/calib/macros/PostCalibCCDB.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/calib/src/CPVCalibLinkDef.h b/Detectors/CPV/calib/src/CPVCalibLinkDef.h index abcf7bc777bd6..bacb15db53a75 100644 --- a/Detectors/CPV/calib/src/CPVCalibLinkDef.h +++ b/Detectors/CPV/calib/src/CPVCalibLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/CMakeLists.txt b/Detectors/CPV/reconstruction/CMakeLists.txt index 7ec757f3648f0..e18166420d829 100644 --- a/Detectors/CPV/reconstruction/CMakeLists.txt +++ b/Detectors/CPV/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -#Copyright CERN and copyright holders of ALICE O2.This software is distributed -#under the terms of the GNU General Public License v3(GPL Version 3), copied -#verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -#See http: //alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # -#In applying this license CERN does not waive the privileges and immunities -#granted to it by virtue of its status as an Intergovernmental Organization or -#submit itself to any jurisdiction. +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(CPVReconstruction SOURCES src/Clusterer.cxx diff --git a/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFCoder.h b/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFCoder.h index b476f9b127ade..95f2b362fb0a0 100644 --- a/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFCoder.h +++ b/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFHelper.h b/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFHelper.h index 32652e5610e31..59956cc2d056b 100644 --- a/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFHelper.h +++ b/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/include/CPVReconstruction/Clusterer.h b/Detectors/CPV/reconstruction/include/CPVReconstruction/Clusterer.h index 3c728a3355e9f..87dfcba88f1cb 100644 --- a/Detectors/CPV/reconstruction/include/CPVReconstruction/Clusterer.h +++ b/Detectors/CPV/reconstruction/include/CPVReconstruction/Clusterer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/include/CPVReconstruction/FullCluster.h b/Detectors/CPV/reconstruction/include/CPVReconstruction/FullCluster.h index e24122d56fb15..5ee612b7ddacc 100644 --- a/Detectors/CPV/reconstruction/include/CPVReconstruction/FullCluster.h +++ b/Detectors/CPV/reconstruction/include/CPVReconstruction/FullCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/include/CPVReconstruction/RawDecoder.h b/Detectors/CPV/reconstruction/include/CPVReconstruction/RawDecoder.h index ac4c4a1416d4e..7a72f37b5b903 100644 --- a/Detectors/CPV/reconstruction/include/CPVReconstruction/RawDecoder.h +++ b/Detectors/CPV/reconstruction/include/CPVReconstruction/RawDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/include/CPVReconstruction/RawReaderMemory.h b/Detectors/CPV/reconstruction/include/CPVReconstruction/RawReaderMemory.h index 31b63f9c0a557..cd7800358752f 100644 --- a/Detectors/CPV/reconstruction/include/CPVReconstruction/RawReaderMemory.h +++ b/Detectors/CPV/reconstruction/include/CPVReconstruction/RawReaderMemory.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/src/CPVReconstructionLinkDef.h b/Detectors/CPV/reconstruction/src/CPVReconstructionLinkDef.h index 76d1bc00c7ae6..ee792fd2dce06 100644 --- a/Detectors/CPV/reconstruction/src/CPVReconstructionLinkDef.h +++ b/Detectors/CPV/reconstruction/src/CPVReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/src/CTFCoder.cxx b/Detectors/CPV/reconstruction/src/CTFCoder.cxx index df9d4f6292ee3..eb4ceaac7d86b 100644 --- a/Detectors/CPV/reconstruction/src/CTFCoder.cxx +++ b/Detectors/CPV/reconstruction/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/src/CTFHelper.cxx b/Detectors/CPV/reconstruction/src/CTFHelper.cxx index 9954f5a8d0a1b..08310ffb6c48d 100644 --- a/Detectors/CPV/reconstruction/src/CTFHelper.cxx +++ b/Detectors/CPV/reconstruction/src/CTFHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/src/Clusterer.cxx b/Detectors/CPV/reconstruction/src/Clusterer.cxx index 81083bc9c5e06..6355e2b25db97 100644 --- a/Detectors/CPV/reconstruction/src/Clusterer.cxx +++ b/Detectors/CPV/reconstruction/src/Clusterer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/src/FullCluster.cxx b/Detectors/CPV/reconstruction/src/FullCluster.cxx index 8ac549b871f62..b70001aa6fef7 100644 --- a/Detectors/CPV/reconstruction/src/FullCluster.cxx +++ b/Detectors/CPV/reconstruction/src/FullCluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/src/RawDecoder.cxx b/Detectors/CPV/reconstruction/src/RawDecoder.cxx index 998ed5053f8fb..9e1fa97e83450 100644 --- a/Detectors/CPV/reconstruction/src/RawDecoder.cxx +++ b/Detectors/CPV/reconstruction/src/RawDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/reconstruction/src/RawReaderMemory.cxx b/Detectors/CPV/reconstruction/src/RawReaderMemory.cxx index 53424f830c9ab..85bd717331aa7 100644 --- a/Detectors/CPV/reconstruction/src/RawReaderMemory.cxx +++ b/Detectors/CPV/reconstruction/src/RawReaderMemory.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/simulation/CMakeLists.txt b/Detectors/CPV/simulation/CMakeLists.txt index 53dfd43567d28..d8a329a050b74 100644 --- a/Detectors/CPV/simulation/CMakeLists.txt +++ b/Detectors/CPV/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(CPVSimulation SOURCES src/Detector.cxx diff --git a/Detectors/CPV/simulation/include/CPVSimulation/Detector.h b/Detectors/CPV/simulation/include/CPVSimulation/Detector.h index 04c5bc92fb066..c9ece3ba482ec 100644 --- a/Detectors/CPV/simulation/include/CPVSimulation/Detector.h +++ b/Detectors/CPV/simulation/include/CPVSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/simulation/include/CPVSimulation/Digitizer.h b/Detectors/CPV/simulation/include/CPVSimulation/Digitizer.h index f0f7fa3542429..b14effc8bf5f3 100644 --- a/Detectors/CPV/simulation/include/CPVSimulation/Digitizer.h +++ b/Detectors/CPV/simulation/include/CPVSimulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/simulation/include/CPVSimulation/GeometryParams.h b/Detectors/CPV/simulation/include/CPVSimulation/GeometryParams.h index 7c40586b518f7..2c2d55b48cc72 100644 --- a/Detectors/CPV/simulation/include/CPVSimulation/GeometryParams.h +++ b/Detectors/CPV/simulation/include/CPVSimulation/GeometryParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/simulation/include/CPVSimulation/RawWriter.h b/Detectors/CPV/simulation/include/CPVSimulation/RawWriter.h index cbf74c62862d0..c39048a7fbd5d 100644 --- a/Detectors/CPV/simulation/include/CPVSimulation/RawWriter.h +++ b/Detectors/CPV/simulation/include/CPVSimulation/RawWriter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/simulation/src/CPVSimulationLinkDef.h b/Detectors/CPV/simulation/src/CPVSimulationLinkDef.h index a2e865e038991..20ca9a8264f90 100644 --- a/Detectors/CPV/simulation/src/CPVSimulationLinkDef.h +++ b/Detectors/CPV/simulation/src/CPVSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/simulation/src/Detector.cxx b/Detectors/CPV/simulation/src/Detector.cxx index 488d46a8be886..6f6f0c62d1392 100644 --- a/Detectors/CPV/simulation/src/Detector.cxx +++ b/Detectors/CPV/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/simulation/src/Digitizer.cxx b/Detectors/CPV/simulation/src/Digitizer.cxx index a17a9ddf62391..f749dbe18d4dd 100644 --- a/Detectors/CPV/simulation/src/Digitizer.cxx +++ b/Detectors/CPV/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/simulation/src/GeometryParams.cxx b/Detectors/CPV/simulation/src/GeometryParams.cxx index 41ea284f0fced..0b7004a9cfa3d 100644 --- a/Detectors/CPV/simulation/src/GeometryParams.cxx +++ b/Detectors/CPV/simulation/src/GeometryParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/simulation/src/RawCreator.cxx b/Detectors/CPV/simulation/src/RawCreator.cxx index 00c29253d0d24..631426a213269 100644 --- a/Detectors/CPV/simulation/src/RawCreator.cxx +++ b/Detectors/CPV/simulation/src/RawCreator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/simulation/src/RawWriter.cxx b/Detectors/CPV/simulation/src/RawWriter.cxx index ecb63b6658d61..9279d1c924ad3 100644 --- a/Detectors/CPV/simulation/src/RawWriter.cxx +++ b/Detectors/CPV/simulation/src/RawWriter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/testsimulation/CMakeLists.txt b/Detectors/CPV/testsimulation/CMakeLists.txt index 30f35b4bb6347..33a15099f64ca 100644 --- a/Detectors/CPV/testsimulation/CMakeLists.txt +++ b/Detectors/CPV/testsimulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(drawCPVgeometry.C PUBLIC_LINK_LIBRARIES O2::CPVSimulation diff --git a/Detectors/CPV/workflow/CMakeLists.txt b/Detectors/CPV/workflow/CMakeLists.txt index 2289e72b53d92..39ac511dbd6eb 100644 --- a/Detectors/CPV/workflow/CMakeLists.txt +++ b/Detectors/CPV/workflow/CMakeLists.txt @@ -1,8 +1,9 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is -# distributed under the terms of the GNU General Public License v3 (GPL -# Version 3), copied verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/ for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities # granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/include/CPVWorkflow/ClusterizerSpec.h b/Detectors/CPV/workflow/include/CPVWorkflow/ClusterizerSpec.h index 6c4f7acacc08e..d851fba14ef9b 100644 --- a/Detectors/CPV/workflow/include/CPVWorkflow/ClusterizerSpec.h +++ b/Detectors/CPV/workflow/include/CPVWorkflow/ClusterizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/include/CPVWorkflow/DigitsPrinterSpec.h b/Detectors/CPV/workflow/include/CPVWorkflow/DigitsPrinterSpec.h index 18682bd7f0b4b..66d295a10aa60 100644 --- a/Detectors/CPV/workflow/include/CPVWorkflow/DigitsPrinterSpec.h +++ b/Detectors/CPV/workflow/include/CPVWorkflow/DigitsPrinterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/include/CPVWorkflow/EntropyDecoderSpec.h b/Detectors/CPV/workflow/include/CPVWorkflow/EntropyDecoderSpec.h index 7f23f832667d0..843692b5f6308 100644 --- a/Detectors/CPV/workflow/include/CPVWorkflow/EntropyDecoderSpec.h +++ b/Detectors/CPV/workflow/include/CPVWorkflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/include/CPVWorkflow/EntropyEncoderSpec.h b/Detectors/CPV/workflow/include/CPVWorkflow/EntropyEncoderSpec.h index f7543b856e77f..40ee233f72511 100644 --- a/Detectors/CPV/workflow/include/CPVWorkflow/EntropyEncoderSpec.h +++ b/Detectors/CPV/workflow/include/CPVWorkflow/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/include/CPVWorkflow/RawToDigitConverterSpec.h b/Detectors/CPV/workflow/include/CPVWorkflow/RawToDigitConverterSpec.h index fbb5b9496e5f7..5d25cf7c4b0f8 100644 --- a/Detectors/CPV/workflow/include/CPVWorkflow/RawToDigitConverterSpec.h +++ b/Detectors/CPV/workflow/include/CPVWorkflow/RawToDigitConverterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/include/CPVWorkflow/ReaderSpec.h b/Detectors/CPV/workflow/include/CPVWorkflow/ReaderSpec.h index bc6a51573cf84..eb78f15a84f06 100644 --- a/Detectors/CPV/workflow/include/CPVWorkflow/ReaderSpec.h +++ b/Detectors/CPV/workflow/include/CPVWorkflow/ReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/include/CPVWorkflow/RecoWorkflow.h b/Detectors/CPV/workflow/include/CPVWorkflow/RecoWorkflow.h index cd863e6fe2be1..e9066d80d5fc7 100644 --- a/Detectors/CPV/workflow/include/CPVWorkflow/RecoWorkflow.h +++ b/Detectors/CPV/workflow/include/CPVWorkflow/RecoWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/include/CPVWorkflow/WriterSpec.h b/Detectors/CPV/workflow/include/CPVWorkflow/WriterSpec.h index 5de1976eba7df..e35755104f996 100644 --- a/Detectors/CPV/workflow/include/CPVWorkflow/WriterSpec.h +++ b/Detectors/CPV/workflow/include/CPVWorkflow/WriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/src/ClusterizerSpec.cxx b/Detectors/CPV/workflow/src/ClusterizerSpec.cxx index 4423aee96a83a..3f66a133fa02f 100644 --- a/Detectors/CPV/workflow/src/ClusterizerSpec.cxx +++ b/Detectors/CPV/workflow/src/ClusterizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/src/DigitsPrinterSpec.cxx b/Detectors/CPV/workflow/src/DigitsPrinterSpec.cxx index e88cf031320fe..2722ce9bba29b 100644 --- a/Detectors/CPV/workflow/src/DigitsPrinterSpec.cxx +++ b/Detectors/CPV/workflow/src/DigitsPrinterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/src/EntropyDecoderSpec.cxx b/Detectors/CPV/workflow/src/EntropyDecoderSpec.cxx index 655e2a9be7701..44a79ed94bb1f 100644 --- a/Detectors/CPV/workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/CPV/workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/src/EntropyEncoderSpec.cxx b/Detectors/CPV/workflow/src/EntropyEncoderSpec.cxx index 76f5974eeb594..4cf7b46e929d0 100644 --- a/Detectors/CPV/workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/CPV/workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx b/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx index 83d5a2a3f3e22..00f0dadec4f2e 100644 --- a/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx +++ b/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/src/ReaderSpec.cxx b/Detectors/CPV/workflow/src/ReaderSpec.cxx index a61dd1a3cef81..d0fb6e19246f4 100644 --- a/Detectors/CPV/workflow/src/ReaderSpec.cxx +++ b/Detectors/CPV/workflow/src/ReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/src/RecoWorkflow.cxx b/Detectors/CPV/workflow/src/RecoWorkflow.cxx index 2f5cea8d046fe..bb8f678c037df 100644 --- a/Detectors/CPV/workflow/src/RecoWorkflow.cxx +++ b/Detectors/CPV/workflow/src/RecoWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/src/WriterSpec.cxx b/Detectors/CPV/workflow/src/WriterSpec.cxx index cf4d7d9922c5a..06f00624153fc 100644 --- a/Detectors/CPV/workflow/src/WriterSpec.cxx +++ b/Detectors/CPV/workflow/src/WriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/src/cpv-reco-workflow.cxx b/Detectors/CPV/workflow/src/cpv-reco-workflow.cxx index 4a98309a3e8fe..c62f51158074a 100644 --- a/Detectors/CPV/workflow/src/cpv-reco-workflow.cxx +++ b/Detectors/CPV/workflow/src/cpv-reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CPV/workflow/src/entropy-encoder-workflow.cxx b/Detectors/CPV/workflow/src/entropy-encoder-workflow.cxx index 5c43f8af68991..9c79fe431e27f 100644 --- a/Detectors/CPV/workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/CPV/workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/CMakeLists.txt b/Detectors/CTF/CMakeLists.txt index 303bcf1ff93d2..46d5aaf5fd8bd 100644 --- a/Detectors/CTF/CMakeLists.txt +++ b/Detectors/CTF/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(workflow) diff --git a/Detectors/CTF/test/test_ctf_io_cpv.cxx b/Detectors/CTF/test/test_ctf_io_cpv.cxx index b60131e60c851..f96ce1c73cee7 100644 --- a/Detectors/CTF/test/test_ctf_io_cpv.cxx +++ b/Detectors/CTF/test/test_ctf_io_cpv.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_emcal.cxx b/Detectors/CTF/test/test_ctf_io_emcal.cxx index 974ff2f3e1174..e8de8e49c4bd0 100644 --- a/Detectors/CTF/test/test_ctf_io_emcal.cxx +++ b/Detectors/CTF/test/test_ctf_io_emcal.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_fdd.cxx b/Detectors/CTF/test/test_ctf_io_fdd.cxx index 96b8543e59e6b..c9d181c52294e 100644 --- a/Detectors/CTF/test/test_ctf_io_fdd.cxx +++ b/Detectors/CTF/test/test_ctf_io_fdd.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_ft0.cxx b/Detectors/CTF/test/test_ctf_io_ft0.cxx index 7263052da0008..54d10e1fd75ef 100644 --- a/Detectors/CTF/test/test_ctf_io_ft0.cxx +++ b/Detectors/CTF/test/test_ctf_io_ft0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_fv0.cxx b/Detectors/CTF/test/test_ctf_io_fv0.cxx index efa49d28e37e9..3367b1cce3b89 100644 --- a/Detectors/CTF/test/test_ctf_io_fv0.cxx +++ b/Detectors/CTF/test/test_ctf_io_fv0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_hmpid.cxx b/Detectors/CTF/test/test_ctf_io_hmpid.cxx index bbbb2a2a07064..c591f3081f67b 100644 --- a/Detectors/CTF/test/test_ctf_io_hmpid.cxx +++ b/Detectors/CTF/test/test_ctf_io_hmpid.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_itsmft.cxx b/Detectors/CTF/test/test_ctf_io_itsmft.cxx index ad67d55574d0e..18c0fa2c257f2 100644 --- a/Detectors/CTF/test/test_ctf_io_itsmft.cxx +++ b/Detectors/CTF/test/test_ctf_io_itsmft.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_mch.cxx b/Detectors/CTF/test/test_ctf_io_mch.cxx index ca8772a00c22d..e1f717c31aa24 100644 --- a/Detectors/CTF/test/test_ctf_io_mch.cxx +++ b/Detectors/CTF/test/test_ctf_io_mch.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_mid.cxx b/Detectors/CTF/test/test_ctf_io_mid.cxx index 80bd5c098e003..e36d06e597224 100644 --- a/Detectors/CTF/test/test_ctf_io_mid.cxx +++ b/Detectors/CTF/test/test_ctf_io_mid.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_phos.cxx b/Detectors/CTF/test/test_ctf_io_phos.cxx index 92cdb75422876..7cff1f2ed408d 100644 --- a/Detectors/CTF/test/test_ctf_io_phos.cxx +++ b/Detectors/CTF/test/test_ctf_io_phos.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_tof.cxx b/Detectors/CTF/test/test_ctf_io_tof.cxx index cdccecc2b7cf4..c3bc0825a3211 100644 --- a/Detectors/CTF/test/test_ctf_io_tof.cxx +++ b/Detectors/CTF/test/test_ctf_io_tof.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_tpc.cxx b/Detectors/CTF/test/test_ctf_io_tpc.cxx index 12efdfcfe74fe..3ea058dc708a8 100644 --- a/Detectors/CTF/test/test_ctf_io_tpc.cxx +++ b/Detectors/CTF/test/test_ctf_io_tpc.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_trd.cxx b/Detectors/CTF/test/test_ctf_io_trd.cxx index b8db6d0d76851..dfac172ab79a8 100644 --- a/Detectors/CTF/test/test_ctf_io_trd.cxx +++ b/Detectors/CTF/test/test_ctf_io_trd.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/test/test_ctf_io_zdc.cxx b/Detectors/CTF/test/test_ctf_io_zdc.cxx index 65222c2e81b2f..5caddfce274bf 100644 --- a/Detectors/CTF/test/test_ctf_io_zdc.cxx +++ b/Detectors/CTF/test/test_ctf_io_zdc.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/workflow/CMakeLists.txt b/Detectors/CTF/workflow/CMakeLists.txt index 36bec572920fa..82e1f21192514 100644 --- a/Detectors/CTF/workflow/CMakeLists.txt +++ b/Detectors/CTF/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(CTFWorkflow SOURCES src/CTFWriterSpec.cxx diff --git a/Detectors/CTF/workflow/include/CTFWorkflow/CTFReaderSpec.h b/Detectors/CTF/workflow/include/CTFWorkflow/CTFReaderSpec.h index c3920d60d9866..9ca4f3e2fae76 100644 --- a/Detectors/CTF/workflow/include/CTFWorkflow/CTFReaderSpec.h +++ b/Detectors/CTF/workflow/include/CTFWorkflow/CTFReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/workflow/include/CTFWorkflow/CTFWriterSpec.h b/Detectors/CTF/workflow/include/CTFWorkflow/CTFWriterSpec.h index bb95a69683a79..d339deec9f108 100644 --- a/Detectors/CTF/workflow/include/CTFWorkflow/CTFWriterSpec.h +++ b/Detectors/CTF/workflow/include/CTFWorkflow/CTFWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/workflow/src/CTFReaderSpec.cxx b/Detectors/CTF/workflow/src/CTFReaderSpec.cxx index e8a4504f1240d..78a0fb902e917 100644 --- a/Detectors/CTF/workflow/src/CTFReaderSpec.cxx +++ b/Detectors/CTF/workflow/src/CTFReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/workflow/src/CTFWriterSpec.cxx b/Detectors/CTF/workflow/src/CTFWriterSpec.cxx index 5f7b8b84faf13..48a933694631f 100644 --- a/Detectors/CTF/workflow/src/CTFWriterSpec.cxx +++ b/Detectors/CTF/workflow/src/CTFWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/workflow/src/ctf-reader-workflow.cxx b/Detectors/CTF/workflow/src/ctf-reader-workflow.cxx index 2f5e89009e4b2..6d3a42d4778e9 100644 --- a/Detectors/CTF/workflow/src/ctf-reader-workflow.cxx +++ b/Detectors/CTF/workflow/src/ctf-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTF/workflow/src/ctf-writer-workflow.cxx b/Detectors/CTF/workflow/src/ctf-writer-workflow.cxx index 2910ab573a23e..7234699332024 100644 --- a/Detectors/CTF/workflow/src/ctf-writer-workflow.cxx +++ b/Detectors/CTF/workflow/src/ctf-writer-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTP/CMakeLists.txt b/Detectors/CTP/CMakeLists.txt index c0bf28a9b70b7..5894b42641a8f 100644 --- a/Detectors/CTP/CMakeLists.txt +++ b/Detectors/CTP/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(simulation) add_subdirectory(workflow) diff --git a/Detectors/CTP/macro/CMakeLists.txt b/Detectors/CTP/macro/CMakeLists.txt index cd3ebf80bcdb3..24dc9e6ef6c93 100644 --- a/Detectors/CTP/macro/CMakeLists.txt +++ b/Detectors/CTP/macro/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(CreateCTPConfig.C PUBLIC_LINK_LIBRARIES O2::DataFormatsCTP diff --git a/Detectors/CTP/macro/CreateCTPConfig.C b/Detectors/CTP/macro/CreateCTPConfig.C index e02622be09713..1b7b372e11f75 100644 --- a/Detectors/CTP/macro/CreateCTPConfig.C +++ b/Detectors/CTP/macro/CreateCTPConfig.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTP/simulation/CMakeLists.txt b/Detectors/CTP/simulation/CMakeLists.txt index c144fd0ad72dd..de38c20bf731a 100644 --- a/Detectors/CTP/simulation/CMakeLists.txt +++ b/Detectors/CTP/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(CTPSimulation SOURCES src/Digitizer.cxx diff --git a/Detectors/CTP/simulation/include/CTPSimulation/Digitizer.h b/Detectors/CTP/simulation/include/CTPSimulation/Digitizer.h index 9dff03b274b3f..0f08d9adb18c6 100644 --- a/Detectors/CTP/simulation/include/CTPSimulation/Digitizer.h +++ b/Detectors/CTP/simulation/include/CTPSimulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTP/simulation/include/CTPSimulation/Digits2Raw.h b/Detectors/CTP/simulation/include/CTPSimulation/Digits2Raw.h index ce26ddd9c96e4..cd0417f11c79b 100644 --- a/Detectors/CTP/simulation/include/CTPSimulation/Digits2Raw.h +++ b/Detectors/CTP/simulation/include/CTPSimulation/Digits2Raw.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTP/simulation/src/CTPSimulationLinkDef.h b/Detectors/CTP/simulation/src/CTPSimulationLinkDef.h index aea4dd9a7d890..28f1f37283067 100644 --- a/Detectors/CTP/simulation/src/CTPSimulationLinkDef.h +++ b/Detectors/CTP/simulation/src/CTPSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTP/simulation/src/Digitizer.cxx b/Detectors/CTP/simulation/src/Digitizer.cxx index 57a466b0f0870..393cd284d40d0 100644 --- a/Detectors/CTP/simulation/src/Digitizer.cxx +++ b/Detectors/CTP/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTP/simulation/src/Digits2Raw.cxx b/Detectors/CTP/simulation/src/Digits2Raw.cxx index c62af85ed2d8d..19825949b9b2a 100644 --- a/Detectors/CTP/simulation/src/Digits2Raw.cxx +++ b/Detectors/CTP/simulation/src/Digits2Raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTP/simulation/src/digi2raw.cxx b/Detectors/CTP/simulation/src/digi2raw.cxx index 0d620835da735..49d6271388cb3 100644 --- a/Detectors/CTP/simulation/src/digi2raw.cxx +++ b/Detectors/CTP/simulation/src/digi2raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTP/workflow/CMakeLists.txt b/Detectors/CTP/workflow/CMakeLists.txt index 1aeb02e1ab208..eeca03da47c30 100644 --- a/Detectors/CTP/workflow/CMakeLists.txt +++ b/Detectors/CTP/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(CTPWorkflow SOURCES src/CTPDigitWriterSpec.cxx diff --git a/Detectors/CTP/workflow/include/CTPWorkflow/CTPDigitWriterSpec.h b/Detectors/CTP/workflow/include/CTPWorkflow/CTPDigitWriterSpec.h index 7288a9be4608f..aa7941622f050 100644 --- a/Detectors/CTP/workflow/include/CTPWorkflow/CTPDigitWriterSpec.h +++ b/Detectors/CTP/workflow/include/CTPWorkflow/CTPDigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/CTP/workflow/src/CTPDigitWriterSpec.cxx b/Detectors/CTP/workflow/src/CTPDigitWriterSpec.cxx index 19e963056b4d3..7fa65c3cd2e76 100644 --- a/Detectors/CTP/workflow/src/CTPDigitWriterSpec.cxx +++ b/Detectors/CTP/workflow/src/CTPDigitWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/CMakeLists.txt b/Detectors/Calibration/CMakeLists.txt index e42a9bfa97bc6..40064c2756e54 100644 --- a/Detectors/Calibration/CMakeLists.txt +++ b/Detectors/Calibration/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DetectorsCalibration SOURCES src/TimeSlot.cxx diff --git a/Detectors/Calibration/include/DetectorsCalibration/MeanVertexCalibrator.h b/Detectors/Calibration/include/DetectorsCalibration/MeanVertexCalibrator.h index d033f35f08024..e6c1a12150a76 100644 --- a/Detectors/Calibration/include/DetectorsCalibration/MeanVertexCalibrator.h +++ b/Detectors/Calibration/include/DetectorsCalibration/MeanVertexCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/include/DetectorsCalibration/MeanVertexData.h b/Detectors/Calibration/include/DetectorsCalibration/MeanVertexData.h index 42f5f67920143..bf383e0f19c78 100644 --- a/Detectors/Calibration/include/DetectorsCalibration/MeanVertexData.h +++ b/Detectors/Calibration/include/DetectorsCalibration/MeanVertexData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/include/DetectorsCalibration/MeanVertexParams.h b/Detectors/Calibration/include/DetectorsCalibration/MeanVertexParams.h index 11beb9e1435d3..5de4f74de317e 100644 --- a/Detectors/Calibration/include/DetectorsCalibration/MeanVertexParams.h +++ b/Detectors/Calibration/include/DetectorsCalibration/MeanVertexParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/include/DetectorsCalibration/TimeSlot.h b/Detectors/Calibration/include/DetectorsCalibration/TimeSlot.h index 6837e4fd5446c..28256227e86b0 100644 --- a/Detectors/Calibration/include/DetectorsCalibration/TimeSlot.h +++ b/Detectors/Calibration/include/DetectorsCalibration/TimeSlot.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/include/DetectorsCalibration/TimeSlotCalibration.h b/Detectors/Calibration/include/DetectorsCalibration/TimeSlotCalibration.h index fe39e2d9e9ea1..0dcfbffd9b6c9 100644 --- a/Detectors/Calibration/include/DetectorsCalibration/TimeSlotCalibration.h +++ b/Detectors/Calibration/include/DetectorsCalibration/TimeSlotCalibration.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/include/DetectorsCalibration/Utils.h b/Detectors/Calibration/include/DetectorsCalibration/Utils.h index 8a0a92575ce9e..5093d5feda1f6 100644 --- a/Detectors/Calibration/include/DetectorsCalibration/Utils.h +++ b/Detectors/Calibration/include/DetectorsCalibration/Utils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/src/DetectorsCalibrationLinkDef.h b/Detectors/Calibration/src/DetectorsCalibrationLinkDef.h index 337be0f3bbb5c..fdb0a8e41f063 100644 --- a/Detectors/Calibration/src/DetectorsCalibrationLinkDef.h +++ b/Detectors/Calibration/src/DetectorsCalibrationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/src/MeanVertexCalibrator.cxx b/Detectors/Calibration/src/MeanVertexCalibrator.cxx index 1141e872e4b3f..4b169a6c761a9 100644 --- a/Detectors/Calibration/src/MeanVertexCalibrator.cxx +++ b/Detectors/Calibration/src/MeanVertexCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/src/MeanVertexData.cxx b/Detectors/Calibration/src/MeanVertexData.cxx index dbcaf5b7616f8..19b2e6fd3ae26 100644 --- a/Detectors/Calibration/src/MeanVertexData.cxx +++ b/Detectors/Calibration/src/MeanVertexData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/src/MeanVertexParams.cxx b/Detectors/Calibration/src/MeanVertexParams.cxx index 99a7b8252f959..0fbf8ecd46b3d 100644 --- a/Detectors/Calibration/src/MeanVertexParams.cxx +++ b/Detectors/Calibration/src/MeanVertexParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/src/TimeSlot.cxx b/Detectors/Calibration/src/TimeSlot.cxx index af2e495a4bed0..36eef86c043c0 100644 --- a/Detectors/Calibration/src/TimeSlot.cxx +++ b/Detectors/Calibration/src/TimeSlot.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/src/TimeSlotCalibration.cxx b/Detectors/Calibration/src/TimeSlotCalibration.cxx index cb8ee39a9a405..188938d0a7c78 100644 --- a/Detectors/Calibration/src/TimeSlotCalibration.cxx +++ b/Detectors/Calibration/src/TimeSlotCalibration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/src/Utils.cxx b/Detectors/Calibration/src/Utils.cxx index 5d97b143344a8..d24b8200168c7 100644 --- a/Detectors/Calibration/src/Utils.cxx +++ b/Detectors/Calibration/src/Utils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/testMacros/CMakeLists.txt b/Detectors/Calibration/testMacros/CMakeLists.txt index cc000ec18cd55..2d9cec773a80d 100644 --- a/Detectors/Calibration/testMacros/CMakeLists.txt +++ b/Detectors/Calibration/testMacros/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. install(FILES populateCCDB.C retrieveFromCCDB.C diff --git a/Detectors/Calibration/testMacros/populateCCDB.cxx b/Detectors/Calibration/testMacros/populateCCDB.cxx index 6707681d7438f..8ce0cb2b8e791 100644 --- a/Detectors/Calibration/testMacros/populateCCDB.cxx +++ b/Detectors/Calibration/testMacros/populateCCDB.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/testMacros/retrieveFromCCDB.cxx b/Detectors/Calibration/testMacros/retrieveFromCCDB.cxx index 53ccd8fe9841a..9ce46c3cfad98 100644 --- a/Detectors/Calibration/testMacros/retrieveFromCCDB.cxx +++ b/Detectors/Calibration/testMacros/retrieveFromCCDB.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/workflow/CCDBPopulatorSpec.h b/Detectors/Calibration/workflow/CCDBPopulatorSpec.h index 1effee69be1a2..54e3ce6354211 100644 --- a/Detectors/Calibration/workflow/CCDBPopulatorSpec.h +++ b/Detectors/Calibration/workflow/CCDBPopulatorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/workflow/CMakeLists.txt b/Detectors/Calibration/workflow/CMakeLists.txt index c138198976e96..69e17e0666dd6 100644 --- a/Detectors/Calibration/workflow/CMakeLists.txt +++ b/Detectors/Calibration/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DetectorsCalibrationWorkflow SOURCES src/MeanVertexCalibratorSpec.cxx diff --git a/Detectors/Calibration/workflow/ccdb-populator-workflow.cxx b/Detectors/Calibration/workflow/ccdb-populator-workflow.cxx index f8c51c8ba12a6..211a01a7be370 100644 --- a/Detectors/Calibration/workflow/ccdb-populator-workflow.cxx +++ b/Detectors/Calibration/workflow/ccdb-populator-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/workflow/include/DetectorsCalibrationWorkflow/MeanVertexCalibratorSpec.h b/Detectors/Calibration/workflow/include/DetectorsCalibrationWorkflow/MeanVertexCalibratorSpec.h index 3fc11e625e4f2..226ff22d19d08 100644 --- a/Detectors/Calibration/workflow/include/DetectorsCalibrationWorkflow/MeanVertexCalibratorSpec.h +++ b/Detectors/Calibration/workflow/include/DetectorsCalibrationWorkflow/MeanVertexCalibratorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/workflow/src/MeanVertexCalibratorSpec.cxx b/Detectors/Calibration/workflow/src/MeanVertexCalibratorSpec.cxx index a39525ea1f414..cdb0ce5375514 100644 --- a/Detectors/Calibration/workflow/src/MeanVertexCalibratorSpec.cxx +++ b/Detectors/Calibration/workflow/src/MeanVertexCalibratorSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Calibration/workflow/src/mean-vertex-calibration-workflow.cxx b/Detectors/Calibration/workflow/src/mean-vertex-calibration-workflow.cxx index 47b2574956471..337690ec5104d 100644 --- a/Detectors/Calibration/workflow/src/mean-vertex-calibration-workflow.cxx +++ b/Detectors/Calibration/workflow/src/mean-vertex-calibration-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/CMakeLists.txt b/Detectors/DCS/CMakeLists.txt index 4942dca584e1e..fed7b42795576 100644 --- a/Detectors/DCS/CMakeLists.txt +++ b/Detectors/DCS/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # add_compile_options(-O0 -g -fPIC) diff --git a/Detectors/DCS/include/DetectorsDCS/AliasExpander.h b/Detectors/DCS/include/DetectorsDCS/AliasExpander.h index ac2ea2486e92b..386c99fcbda1e 100644 --- a/Detectors/DCS/include/DetectorsDCS/AliasExpander.h +++ b/Detectors/DCS/include/DetectorsDCS/AliasExpander.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/include/DetectorsDCS/Clock.h b/Detectors/DCS/include/DetectorsDCS/Clock.h index 506626828c6aa..263fc698e508d 100644 --- a/Detectors/DCS/include/DetectorsDCS/Clock.h +++ b/Detectors/DCS/include/DetectorsDCS/Clock.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/include/DetectorsDCS/DataPointCompositeObject.h b/Detectors/DCS/include/DetectorsDCS/DataPointCompositeObject.h index 525a74bb9edc3..4bd43e38e681d 100644 --- a/Detectors/DCS/include/DetectorsDCS/DataPointCompositeObject.h +++ b/Detectors/DCS/include/DetectorsDCS/DataPointCompositeObject.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/include/DetectorsDCS/DataPointCreator.h b/Detectors/DCS/include/DetectorsDCS/DataPointCreator.h index 4c63e96108d15..c37cefc3a5c56 100644 --- a/Detectors/DCS/include/DetectorsDCS/DataPointCreator.h +++ b/Detectors/DCS/include/DetectorsDCS/DataPointCreator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/include/DetectorsDCS/DataPointGenerator.h b/Detectors/DCS/include/DetectorsDCS/DataPointGenerator.h index 5b3bcc180dcb2..11ff41e854bd9 100644 --- a/Detectors/DCS/include/DetectorsDCS/DataPointGenerator.h +++ b/Detectors/DCS/include/DetectorsDCS/DataPointGenerator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/include/DetectorsDCS/DataPointIdentifier.h b/Detectors/DCS/include/DetectorsDCS/DataPointIdentifier.h index ea81f35e89e52..32397b1ace0b0 100644 --- a/Detectors/DCS/include/DetectorsDCS/DataPointIdentifier.h +++ b/Detectors/DCS/include/DetectorsDCS/DataPointIdentifier.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/include/DetectorsDCS/DataPointValue.h b/Detectors/DCS/include/DetectorsDCS/DataPointValue.h index 6bf7f490d3fac..cd7edd5a9ac47 100644 --- a/Detectors/DCS/include/DetectorsDCS/DataPointValue.h +++ b/Detectors/DCS/include/DetectorsDCS/DataPointValue.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/include/DetectorsDCS/DeliveryType.h b/Detectors/DCS/include/DetectorsDCS/DeliveryType.h index 8da5b2452f1bc..31afd0b30debb 100644 --- a/Detectors/DCS/include/DetectorsDCS/DeliveryType.h +++ b/Detectors/DCS/include/DetectorsDCS/DeliveryType.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/include/DetectorsDCS/GenericFunctions.h b/Detectors/DCS/include/DetectorsDCS/GenericFunctions.h index 91937d33f30a3..81d825c72652b 100644 --- a/Detectors/DCS/include/DetectorsDCS/GenericFunctions.h +++ b/Detectors/DCS/include/DetectorsDCS/GenericFunctions.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/include/DetectorsDCS/StringUtils.h b/Detectors/DCS/include/DetectorsDCS/StringUtils.h index adf0dd2aad59d..0d0ff477a1186 100644 --- a/Detectors/DCS/include/DetectorsDCS/StringUtils.h +++ b/Detectors/DCS/include/DetectorsDCS/StringUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/src/AliasExpander.cxx b/Detectors/DCS/src/AliasExpander.cxx index e2f7448ad5696..9f9ce30d9ca31 100644 --- a/Detectors/DCS/src/AliasExpander.cxx +++ b/Detectors/DCS/src/AliasExpander.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/src/Clock.cxx b/Detectors/DCS/src/Clock.cxx index e8fb9eac9e0ea..ec5125dd9cf00 100644 --- a/Detectors/DCS/src/Clock.cxx +++ b/Detectors/DCS/src/Clock.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/src/DataPointCompositeObject.cxx b/Detectors/DCS/src/DataPointCompositeObject.cxx index 2ec290215f0ad..a17bbaa05ca0a 100644 --- a/Detectors/DCS/src/DataPointCompositeObject.cxx +++ b/Detectors/DCS/src/DataPointCompositeObject.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/src/DataPointCreator.cxx b/Detectors/DCS/src/DataPointCreator.cxx index 6b11d76a7675e..4664aa1f9b682 100644 --- a/Detectors/DCS/src/DataPointCreator.cxx +++ b/Detectors/DCS/src/DataPointCreator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/src/DataPointGenerator.cxx b/Detectors/DCS/src/DataPointGenerator.cxx index 2a36b242f63a2..ab52bc7dda098 100644 --- a/Detectors/DCS/src/DataPointGenerator.cxx +++ b/Detectors/DCS/src/DataPointGenerator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/src/DataPointIdentifier.cxx b/Detectors/DCS/src/DataPointIdentifier.cxx index 85906ad6dd408..93ee2ebc3681c 100644 --- a/Detectors/DCS/src/DataPointIdentifier.cxx +++ b/Detectors/DCS/src/DataPointIdentifier.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/src/DataPointValue.cxx b/Detectors/DCS/src/DataPointValue.cxx index dc5874b7e3a9b..473df5733bcd4 100644 --- a/Detectors/DCS/src/DataPointValue.cxx +++ b/Detectors/DCS/src/DataPointValue.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/src/DeliveryType.cxx b/Detectors/DCS/src/DeliveryType.cxx index 6ff195fc8fd9d..85a81ece45b3b 100644 --- a/Detectors/DCS/src/DeliveryType.cxx +++ b/Detectors/DCS/src/DeliveryType.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/src/DetectorsDCSLinkDef.h b/Detectors/DCS/src/DetectorsDCSLinkDef.h index 9208687816a56..d20209c43438a 100644 --- a/Detectors/DCS/src/DetectorsDCSLinkDef.h +++ b/Detectors/DCS/src/DetectorsDCSLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/src/GenericFunctions.cxx b/Detectors/DCS/src/GenericFunctions.cxx index c8be0880092c4..f5300a8d03c5f 100644 --- a/Detectors/DCS/src/GenericFunctions.cxx +++ b/Detectors/DCS/src/GenericFunctions.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/src/StringUtils.cxx b/Detectors/DCS/src/StringUtils.cxx index a0e96d17a5752..e66e7625c6836 100644 --- a/Detectors/DCS/src/StringUtils.cxx +++ b/Detectors/DCS/src/StringUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/test/testAliasExpander.cxx b/Detectors/DCS/test/testAliasExpander.cxx index 549a7a69cda65..9f05ebb60900a 100644 --- a/Detectors/DCS/test/testAliasExpander.cxx +++ b/Detectors/DCS/test/testAliasExpander.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/test/testDataPointGenerator.cxx b/Detectors/DCS/test/testDataPointGenerator.cxx index 367e52dc14558..917b588dac52d 100644 --- a/Detectors/DCS/test/testDataPointGenerator.cxx +++ b/Detectors/DCS/test/testDataPointGenerator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/test/testDataPointTypes.cxx b/Detectors/DCS/test/testDataPointTypes.cxx index 91c1db1def7c2..491ebae1f5d00 100644 --- a/Detectors/DCS/test/testDataPointTypes.cxx +++ b/Detectors/DCS/test/testDataPointTypes.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/testWorkflow/include/DCStestWorkflow/DCSRandomDataGeneratorSpec.h b/Detectors/DCS/testWorkflow/include/DCStestWorkflow/DCSRandomDataGeneratorSpec.h index 356bd89160d43..4167b5fe50cb2 100644 --- a/Detectors/DCS/testWorkflow/include/DCStestWorkflow/DCSRandomDataGeneratorSpec.h +++ b/Detectors/DCS/testWorkflow/include/DCStestWorkflow/DCSRandomDataGeneratorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/testWorkflow/macros/CMakeLists.txt b/Detectors/DCS/testWorkflow/macros/CMakeLists.txt index e828b79a73110..2c8bad56fe462 100644 --- a/Detectors/DCS/testWorkflow/macros/CMakeLists.txt +++ b/Detectors/DCS/testWorkflow/macros/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro( makeCCDBEntryForDCS.C diff --git a/Detectors/DCS/testWorkflow/macros/makeCCDBEntryForDCS.C b/Detectors/DCS/testWorkflow/macros/makeCCDBEntryForDCS.C index 8d5759434636c..a9ab3710d049d 100644 --- a/Detectors/DCS/testWorkflow/macros/makeCCDBEntryForDCS.C +++ b/Detectors/DCS/testWorkflow/macros/makeCCDBEntryForDCS.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/testWorkflow/src/DCSConsumerSpec.h b/Detectors/DCS/testWorkflow/src/DCSConsumerSpec.h index 9485e3d5c1488..b2abfa5f016f0 100644 --- a/Detectors/DCS/testWorkflow/src/DCSConsumerSpec.h +++ b/Detectors/DCS/testWorkflow/src/DCSConsumerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/testWorkflow/src/DCSRandomDataGeneratorSpec.cxx b/Detectors/DCS/testWorkflow/src/DCSRandomDataGeneratorSpec.cxx index f992eb501423a..200e06eb9e165 100644 --- a/Detectors/DCS/testWorkflow/src/DCSRandomDataGeneratorSpec.cxx +++ b/Detectors/DCS/testWorkflow/src/DCSRandomDataGeneratorSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/testWorkflow/src/DCStoDPLconverter.h b/Detectors/DCS/testWorkflow/src/DCStoDPLconverter.h index 87b2b708025ca..b09299fffbef2 100644 --- a/Detectors/DCS/testWorkflow/src/DCStoDPLconverter.h +++ b/Detectors/DCS/testWorkflow/src/DCStoDPLconverter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/testWorkflow/src/dcs-config-proxy.cxx b/Detectors/DCS/testWorkflow/src/dcs-config-proxy.cxx index 0eb586671f310..44b38fa431035 100644 --- a/Detectors/DCS/testWorkflow/src/dcs-config-proxy.cxx +++ b/Detectors/DCS/testWorkflow/src/dcs-config-proxy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/testWorkflow/src/dcs-config-test-workflow.cxx b/Detectors/DCS/testWorkflow/src/dcs-config-test-workflow.cxx index da4b24053a759..216850ae23409 100644 --- a/Detectors/DCS/testWorkflow/src/dcs-config-test-workflow.cxx +++ b/Detectors/DCS/testWorkflow/src/dcs-config-test-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/testWorkflow/src/dcs-data-client-workflow.cxx b/Detectors/DCS/testWorkflow/src/dcs-data-client-workflow.cxx index 334e7008ddfb4..489a5a4a6b7b7 100644 --- a/Detectors/DCS/testWorkflow/src/dcs-data-client-workflow.cxx +++ b/Detectors/DCS/testWorkflow/src/dcs-data-client-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/DCS/testWorkflow/src/dcs-proxy.cxx b/Detectors/DCS/testWorkflow/src/dcs-proxy.cxx index 71eb9fbf32259..f8f4196d84dc0 100644 --- a/Detectors/DCS/testWorkflow/src/dcs-proxy.cxx +++ b/Detectors/DCS/testWorkflow/src/dcs-proxy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/CMakeLists.txt b/Detectors/EMCAL/CMakeLists.txt index 3c2d8d4e188ab..032ac3bbd6362 100644 --- a/Detectors/EMCAL/CMakeLists.txt +++ b/Detectors/EMCAL/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(simulation) diff --git a/Detectors/EMCAL/base/CMakeLists.txt b/Detectors/EMCAL/base/CMakeLists.txt index 5dbcf5dfa3182..1f4b5ca501806 100644 --- a/Detectors/EMCAL/base/CMakeLists.txt +++ b/Detectors/EMCAL/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(EMCALBase SOURCES src/Geometry.cxx src/Hit.cxx diff --git a/Detectors/EMCAL/base/include/EMCALBase/ClusterFactory.h b/Detectors/EMCAL/base/include/EMCALBase/ClusterFactory.h index 088a8cb796292..b3e8a6308452c 100644 --- a/Detectors/EMCAL/base/include/EMCALBase/ClusterFactory.h +++ b/Detectors/EMCAL/base/include/EMCALBase/ClusterFactory.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/include/EMCALBase/Geometry.h b/Detectors/EMCAL/base/include/EMCALBase/Geometry.h index 3a46d049c989e..6ab91178ab8f1 100644 --- a/Detectors/EMCAL/base/include/EMCALBase/Geometry.h +++ b/Detectors/EMCAL/base/include/EMCALBase/Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/include/EMCALBase/GeometryBase.h b/Detectors/EMCAL/base/include/EMCALBase/GeometryBase.h index 4b760ef78792b..96a68ed86bbc9 100644 --- a/Detectors/EMCAL/base/include/EMCALBase/GeometryBase.h +++ b/Detectors/EMCAL/base/include/EMCALBase/GeometryBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/include/EMCALBase/Hit.h b/Detectors/EMCAL/base/include/EMCALBase/Hit.h index 15570bb09f7fb..640001a64872d 100644 --- a/Detectors/EMCAL/base/include/EMCALBase/Hit.h +++ b/Detectors/EMCAL/base/include/EMCALBase/Hit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/include/EMCALBase/Mapper.h b/Detectors/EMCAL/base/include/EMCALBase/Mapper.h index da51ff0302c33..32f606840affd 100644 --- a/Detectors/EMCAL/base/include/EMCALBase/Mapper.h +++ b/Detectors/EMCAL/base/include/EMCALBase/Mapper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/include/EMCALBase/RCUTrailer.h b/Detectors/EMCAL/base/include/EMCALBase/RCUTrailer.h index aff59f2f60230..8723a7a68264b 100644 --- a/Detectors/EMCAL/base/include/EMCALBase/RCUTrailer.h +++ b/Detectors/EMCAL/base/include/EMCALBase/RCUTrailer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/include/EMCALBase/ShishKebabTrd1Module.h b/Detectors/EMCAL/base/include/EMCALBase/ShishKebabTrd1Module.h index 4e92dfda6e345..7f544bfc4f0e7 100644 --- a/Detectors/EMCAL/base/include/EMCALBase/ShishKebabTrd1Module.h +++ b/Detectors/EMCAL/base/include/EMCALBase/ShishKebabTrd1Module.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/src/ClusterFactory.cxx b/Detectors/EMCAL/base/src/ClusterFactory.cxx index 60a95e8b0ee6c..d35d629a5ecae 100644 --- a/Detectors/EMCAL/base/src/ClusterFactory.cxx +++ b/Detectors/EMCAL/base/src/ClusterFactory.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/src/EMCALBaseLinkDef.h b/Detectors/EMCAL/base/src/EMCALBaseLinkDef.h index 865b3fd0d5e6d..4f7d9107a60a4 100644 --- a/Detectors/EMCAL/base/src/EMCALBaseLinkDef.h +++ b/Detectors/EMCAL/base/src/EMCALBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/src/Geometry.cxx b/Detectors/EMCAL/base/src/Geometry.cxx index 6f0a00b9bdfdf..bc1431f37dae3 100644 --- a/Detectors/EMCAL/base/src/Geometry.cxx +++ b/Detectors/EMCAL/base/src/Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/src/Hit.cxx b/Detectors/EMCAL/base/src/Hit.cxx index 4a7f97581942b..39edba54e6b12 100644 --- a/Detectors/EMCAL/base/src/Hit.cxx +++ b/Detectors/EMCAL/base/src/Hit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/src/Mapper.cxx b/Detectors/EMCAL/base/src/Mapper.cxx index e55b07c67da37..4f6105f39c4bb 100644 --- a/Detectors/EMCAL/base/src/Mapper.cxx +++ b/Detectors/EMCAL/base/src/Mapper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/src/RCUTrailer.cxx b/Detectors/EMCAL/base/src/RCUTrailer.cxx index f217ec6fc91cd..6df0c141657e5 100644 --- a/Detectors/EMCAL/base/src/RCUTrailer.cxx +++ b/Detectors/EMCAL/base/src/RCUTrailer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/src/ShishKebabTrd1Module.cxx b/Detectors/EMCAL/base/src/ShishKebabTrd1Module.cxx index d33c456f0bf0c..75c9d1662db95 100644 --- a/Detectors/EMCAL/base/src/ShishKebabTrd1Module.cxx +++ b/Detectors/EMCAL/base/src/ShishKebabTrd1Module.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/test/testGeometryRowColIndexing.C b/Detectors/EMCAL/base/test/testGeometryRowColIndexing.C index 9006dcdf43277..a05dd89eef923 100644 --- a/Detectors/EMCAL/base/test/testGeometryRowColIndexing.C +++ b/Detectors/EMCAL/base/test/testGeometryRowColIndexing.C @@ -1,12 +1,13 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction +// or submit itself to any jurisdiction. void testGeometryRowColIndexing() { diff --git a/Detectors/EMCAL/base/test/testMapper.cxx b/Detectors/EMCAL/base/test/testMapper.cxx index 0606a90f5c641..5f410020c7881 100644 --- a/Detectors/EMCAL/base/test/testMapper.cxx +++ b/Detectors/EMCAL/base/test/testMapper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/base/test/testRCUTrailer.cxx b/Detectors/EMCAL/base/test/testRCUTrailer.cxx index 121f0f90d8e6c..4cbf5ec8d327a 100644 --- a/Detectors/EMCAL/base/test/testRCUTrailer.cxx +++ b/Detectors/EMCAL/base/test/testRCUTrailer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/CMakeLists.txt b/Detectors/EMCAL/calib/CMakeLists.txt index 6edbc6633b94a..dac436280b601 100644 --- a/Detectors/EMCAL/calib/CMakeLists.txt +++ b/Detectors/EMCAL/calib/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(EMCALCalib SOURCES src/BadChannelMap.cxx diff --git a/Detectors/EMCAL/calib/include/EMCALCalib/BadChannelMap.h b/Detectors/EMCAL/calib/include/EMCALCalib/BadChannelMap.h index 507298af17a6d..998300e86af59 100644 --- a/Detectors/EMCAL/calib/include/EMCALCalib/BadChannelMap.h +++ b/Detectors/EMCAL/calib/include/EMCALCalib/BadChannelMap.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/include/EMCALCalib/CalibDB.h b/Detectors/EMCAL/calib/include/EMCALCalib/CalibDB.h index d34a3052311a5..2d1ca5a6a94c9 100644 --- a/Detectors/EMCAL/calib/include/EMCALCalib/CalibDB.h +++ b/Detectors/EMCAL/calib/include/EMCALCalib/CalibDB.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/include/EMCALCalib/GainCalibrationFactors.h b/Detectors/EMCAL/calib/include/EMCALCalib/GainCalibrationFactors.h index b56430979f1c7..1f048dc9738c0 100644 --- a/Detectors/EMCAL/calib/include/EMCALCalib/GainCalibrationFactors.h +++ b/Detectors/EMCAL/calib/include/EMCALCalib/GainCalibrationFactors.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/include/EMCALCalib/TempCalibParamSM.h b/Detectors/EMCAL/calib/include/EMCALCalib/TempCalibParamSM.h index 142a76716ba76..fa8f9fffba48f 100644 --- a/Detectors/EMCAL/calib/include/EMCALCalib/TempCalibParamSM.h +++ b/Detectors/EMCAL/calib/include/EMCALCalib/TempCalibParamSM.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/include/EMCALCalib/TempCalibrationParams.h b/Detectors/EMCAL/calib/include/EMCALCalib/TempCalibrationParams.h index 5626e65e6dd7b..f8eb8efd72657 100644 --- a/Detectors/EMCAL/calib/include/EMCALCalib/TempCalibrationParams.h +++ b/Detectors/EMCAL/calib/include/EMCALCalib/TempCalibrationParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/include/EMCALCalib/TimeCalibParamL1Phase.h b/Detectors/EMCAL/calib/include/EMCALCalib/TimeCalibParamL1Phase.h index 4684b73b9f49f..dd13089a272e0 100644 --- a/Detectors/EMCAL/calib/include/EMCALCalib/TimeCalibParamL1Phase.h +++ b/Detectors/EMCAL/calib/include/EMCALCalib/TimeCalibParamL1Phase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/include/EMCALCalib/TimeCalibrationParams.h b/Detectors/EMCAL/calib/include/EMCALCalib/TimeCalibrationParams.h index 610daefedb264..8733448beea2b 100644 --- a/Detectors/EMCAL/calib/include/EMCALCalib/TimeCalibrationParams.h +++ b/Detectors/EMCAL/calib/include/EMCALCalib/TimeCalibrationParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/include/EMCALCalib/TriggerDCS.h b/Detectors/EMCAL/calib/include/EMCALCalib/TriggerDCS.h index 2706ac40f2a41..9b991d910bf62 100644 --- a/Detectors/EMCAL/calib/include/EMCALCalib/TriggerDCS.h +++ b/Detectors/EMCAL/calib/include/EMCALCalib/TriggerDCS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/include/EMCALCalib/TriggerSTUDCS.h b/Detectors/EMCAL/calib/include/EMCALCalib/TriggerSTUDCS.h index c618f6add9570..eff9144aa67c1 100644 --- a/Detectors/EMCAL/calib/include/EMCALCalib/TriggerSTUDCS.h +++ b/Detectors/EMCAL/calib/include/EMCALCalib/TriggerSTUDCS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/include/EMCALCalib/TriggerSTUErrorCounter.h b/Detectors/EMCAL/calib/include/EMCALCalib/TriggerSTUErrorCounter.h index 8cb639ca16d7a..38079676c60e8 100644 --- a/Detectors/EMCAL/calib/include/EMCALCalib/TriggerSTUErrorCounter.h +++ b/Detectors/EMCAL/calib/include/EMCALCalib/TriggerSTUErrorCounter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/include/EMCALCalib/TriggerTRUDCS.h b/Detectors/EMCAL/calib/include/EMCALCalib/TriggerTRUDCS.h index ea3e05be96f9e..b762f00e21e1b 100644 --- a/Detectors/EMCAL/calib/include/EMCALCalib/TriggerTRUDCS.h +++ b/Detectors/EMCAL/calib/include/EMCALCalib/TriggerTRUDCS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/BadChannelMap_CCDBApitest.C b/Detectors/EMCAL/calib/macros/BadChannelMap_CCDBApitest.C index 9865dfb0c79b5..ff8d6c8acc8f2 100644 --- a/Detectors/EMCAL/calib/macros/BadChannelMap_CCDBApitest.C +++ b/Detectors/EMCAL/calib/macros/BadChannelMap_CCDBApitest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/BadChannelMap_CalibDBtest.C b/Detectors/EMCAL/calib/macros/BadChannelMap_CalibDBtest.C index 96218fb64ad16..05e8d8fcef94c 100644 --- a/Detectors/EMCAL/calib/macros/BadChannelMap_CalibDBtest.C +++ b/Detectors/EMCAL/calib/macros/BadChannelMap_CalibDBtest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/GainCalibrationFactors_CCDBApiTest.C b/Detectors/EMCAL/calib/macros/GainCalibrationFactors_CCDBApiTest.C index 58a5e3f1c8d8f..6f3e93449d4c1 100644 --- a/Detectors/EMCAL/calib/macros/GainCalibrationFactors_CCDBApiTest.C +++ b/Detectors/EMCAL/calib/macros/GainCalibrationFactors_CCDBApiTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/GainCalibrationFactors_CalibDBTest.C b/Detectors/EMCAL/calib/macros/GainCalibrationFactors_CalibDBTest.C index f08581121b1f9..a75d3363333ed 100644 --- a/Detectors/EMCAL/calib/macros/GainCalibrationFactors_CalibDBTest.C +++ b/Detectors/EMCAL/calib/macros/GainCalibrationFactors_CalibDBTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/ReadTestBadChannelMap_CCDBApi.C b/Detectors/EMCAL/calib/macros/ReadTestBadChannelMap_CCDBApi.C index f57e30c2e2a31..c64143f067fd9 100644 --- a/Detectors/EMCAL/calib/macros/ReadTestBadChannelMap_CCDBApi.C +++ b/Detectors/EMCAL/calib/macros/ReadTestBadChannelMap_CCDBApi.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/TempCalibParamSM_CCDBApiTest.C b/Detectors/EMCAL/calib/macros/TempCalibParamSM_CCDBApiTest.C index 685d3c60c8d4b..a3689d951ea7d 100644 --- a/Detectors/EMCAL/calib/macros/TempCalibParamSM_CCDBApiTest.C +++ b/Detectors/EMCAL/calib/macros/TempCalibParamSM_CCDBApiTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/TempCalibParamSM_CalibDBTest.C b/Detectors/EMCAL/calib/macros/TempCalibParamSM_CalibDBTest.C index 6232a8ff3bc13..9b393463c36d4 100644 --- a/Detectors/EMCAL/calib/macros/TempCalibParamSM_CalibDBTest.C +++ b/Detectors/EMCAL/calib/macros/TempCalibParamSM_CalibDBTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/TempCalibrationParams_CCDBApiTest.C b/Detectors/EMCAL/calib/macros/TempCalibrationParams_CCDBApiTest.C index 1cf1d101a5785..4d7e0bcaa3704 100644 --- a/Detectors/EMCAL/calib/macros/TempCalibrationParams_CCDBApiTest.C +++ b/Detectors/EMCAL/calib/macros/TempCalibrationParams_CCDBApiTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/TempCalibrationParams_CalibDBTest.C b/Detectors/EMCAL/calib/macros/TempCalibrationParams_CalibDBTest.C index 04bf0975cf862..002ad79f91aba 100644 --- a/Detectors/EMCAL/calib/macros/TempCalibrationParams_CalibDBTest.C +++ b/Detectors/EMCAL/calib/macros/TempCalibrationParams_CalibDBTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/TimeCalibParamsL1Phase_CCDBApiTest.C b/Detectors/EMCAL/calib/macros/TimeCalibParamsL1Phase_CCDBApiTest.C index 202dbb3db017f..ae6865a06b6ec 100644 --- a/Detectors/EMCAL/calib/macros/TimeCalibParamsL1Phase_CCDBApiTest.C +++ b/Detectors/EMCAL/calib/macros/TimeCalibParamsL1Phase_CCDBApiTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/TimeCalibParamsL1Phase_CalibDBTest.C b/Detectors/EMCAL/calib/macros/TimeCalibParamsL1Phase_CalibDBTest.C index f7bc03456c734..d1cf60a5148b7 100644 --- a/Detectors/EMCAL/calib/macros/TimeCalibParamsL1Phase_CalibDBTest.C +++ b/Detectors/EMCAL/calib/macros/TimeCalibParamsL1Phase_CalibDBTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/TimeCalibrationParams_CCDBApiTest.C b/Detectors/EMCAL/calib/macros/TimeCalibrationParams_CCDBApiTest.C index dc7bbf9e11dee..24511ff3aa08a 100644 --- a/Detectors/EMCAL/calib/macros/TimeCalibrationParams_CCDBApiTest.C +++ b/Detectors/EMCAL/calib/macros/TimeCalibrationParams_CCDBApiTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/TimeCalibrationParams_CalibDBTest.C b/Detectors/EMCAL/calib/macros/TimeCalibrationParams_CalibDBTest.C index 609624b1e75fc..a63bf854fd834 100644 --- a/Detectors/EMCAL/calib/macros/TimeCalibrationParams_CalibDBTest.C +++ b/Detectors/EMCAL/calib/macros/TimeCalibrationParams_CalibDBTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/TriggerDCS_CCDBApiTest.C b/Detectors/EMCAL/calib/macros/TriggerDCS_CCDBApiTest.C index fc9cf04faed4c..84e1404bc2661 100644 --- a/Detectors/EMCAL/calib/macros/TriggerDCS_CCDBApiTest.C +++ b/Detectors/EMCAL/calib/macros/TriggerDCS_CCDBApiTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/macros/TriggerDCS_CalibDBTest.C b/Detectors/EMCAL/calib/macros/TriggerDCS_CalibDBTest.C index 68b0c842d00d6..c9fa8f4f77ba7 100644 --- a/Detectors/EMCAL/calib/macros/TriggerDCS_CalibDBTest.C +++ b/Detectors/EMCAL/calib/macros/TriggerDCS_CalibDBTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/src/BadChannelMap.cxx b/Detectors/EMCAL/calib/src/BadChannelMap.cxx index 4fed9e4ec7cd6..8594e60da4483 100644 --- a/Detectors/EMCAL/calib/src/BadChannelMap.cxx +++ b/Detectors/EMCAL/calib/src/BadChannelMap.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/src/CalibDB.cxx b/Detectors/EMCAL/calib/src/CalibDB.cxx index d845f9e1bcfdc..36b48d44717ef 100644 --- a/Detectors/EMCAL/calib/src/CalibDB.cxx +++ b/Detectors/EMCAL/calib/src/CalibDB.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/src/EMCALCalibLinkDef.h b/Detectors/EMCAL/calib/src/EMCALCalibLinkDef.h index 2adb3af2074bc..38bca0c835af8 100644 --- a/Detectors/EMCAL/calib/src/EMCALCalibLinkDef.h +++ b/Detectors/EMCAL/calib/src/EMCALCalibLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/src/GainCalibrationFactors.cxx b/Detectors/EMCAL/calib/src/GainCalibrationFactors.cxx index c80d8d2322909..7f5b332baef99 100644 --- a/Detectors/EMCAL/calib/src/GainCalibrationFactors.cxx +++ b/Detectors/EMCAL/calib/src/GainCalibrationFactors.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/src/TempCalibParamSM.cxx b/Detectors/EMCAL/calib/src/TempCalibParamSM.cxx index efdb51af0f57a..79d2dc551c24d 100644 --- a/Detectors/EMCAL/calib/src/TempCalibParamSM.cxx +++ b/Detectors/EMCAL/calib/src/TempCalibParamSM.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/src/TempCalibrationParams.cxx b/Detectors/EMCAL/calib/src/TempCalibrationParams.cxx index 6e2d97aace83d..7234395cc5ba6 100644 --- a/Detectors/EMCAL/calib/src/TempCalibrationParams.cxx +++ b/Detectors/EMCAL/calib/src/TempCalibrationParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/src/TimeCalibParamL1Phase.cxx b/Detectors/EMCAL/calib/src/TimeCalibParamL1Phase.cxx index 27c5ef90629e9..9f1b27b1befb2 100644 --- a/Detectors/EMCAL/calib/src/TimeCalibParamL1Phase.cxx +++ b/Detectors/EMCAL/calib/src/TimeCalibParamL1Phase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/src/TimeCalibrationParams.cxx b/Detectors/EMCAL/calib/src/TimeCalibrationParams.cxx index 03de70b3c7427..0653706426da7 100644 --- a/Detectors/EMCAL/calib/src/TimeCalibrationParams.cxx +++ b/Detectors/EMCAL/calib/src/TimeCalibrationParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/src/TriggerDCS.cxx b/Detectors/EMCAL/calib/src/TriggerDCS.cxx index 57e7dcf302d53..21d489a545f7f 100644 --- a/Detectors/EMCAL/calib/src/TriggerDCS.cxx +++ b/Detectors/EMCAL/calib/src/TriggerDCS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/src/TriggerSTUDCS.cxx b/Detectors/EMCAL/calib/src/TriggerSTUDCS.cxx index 0e4047030479a..69f884eab1970 100644 --- a/Detectors/EMCAL/calib/src/TriggerSTUDCS.cxx +++ b/Detectors/EMCAL/calib/src/TriggerSTUDCS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/src/TriggerSTUErrorCounter.cxx b/Detectors/EMCAL/calib/src/TriggerSTUErrorCounter.cxx index 38c92c0651eb5..dc9618573c4a6 100644 --- a/Detectors/EMCAL/calib/src/TriggerSTUErrorCounter.cxx +++ b/Detectors/EMCAL/calib/src/TriggerSTUErrorCounter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/src/TriggerTRUDCS.cxx b/Detectors/EMCAL/calib/src/TriggerTRUDCS.cxx index 9ffa1a430b6ab..2712ab853d74a 100644 --- a/Detectors/EMCAL/calib/src/TriggerTRUDCS.cxx +++ b/Detectors/EMCAL/calib/src/TriggerTRUDCS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/test/testBadChannelMap.cxx b/Detectors/EMCAL/calib/test/testBadChannelMap.cxx index 51c896b588c4a..57ca0f93c5bff 100644 --- a/Detectors/EMCAL/calib/test/testBadChannelMap.cxx +++ b/Detectors/EMCAL/calib/test/testBadChannelMap.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/test/testGainCalibration.cxx b/Detectors/EMCAL/calib/test/testGainCalibration.cxx index 4fcc49fd10ede..80452ebae919c 100644 --- a/Detectors/EMCAL/calib/test/testGainCalibration.cxx +++ b/Detectors/EMCAL/calib/test/testGainCalibration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/test/testTempCalibration.cxx b/Detectors/EMCAL/calib/test/testTempCalibration.cxx index dcd9488510987..f137272a44e3c 100644 --- a/Detectors/EMCAL/calib/test/testTempCalibration.cxx +++ b/Detectors/EMCAL/calib/test/testTempCalibration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/test/testTempCalibrationSM.cxx b/Detectors/EMCAL/calib/test/testTempCalibrationSM.cxx index 0f087bf12123d..7a666bf460cfe 100644 --- a/Detectors/EMCAL/calib/test/testTempCalibrationSM.cxx +++ b/Detectors/EMCAL/calib/test/testTempCalibrationSM.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/test/testTimeCalibration.cxx b/Detectors/EMCAL/calib/test/testTimeCalibration.cxx index 63e5ac314b8db..8a7fe8ff1ddb6 100644 --- a/Detectors/EMCAL/calib/test/testTimeCalibration.cxx +++ b/Detectors/EMCAL/calib/test/testTimeCalibration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/test/testTimeL1PhaseCalib.cxx b/Detectors/EMCAL/calib/test/testTimeL1PhaseCalib.cxx index cbe13ae87d6b2..83b80e6811fda 100644 --- a/Detectors/EMCAL/calib/test/testTimeL1PhaseCalib.cxx +++ b/Detectors/EMCAL/calib/test/testTimeL1PhaseCalib.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/test/testTriggerDCS.cxx b/Detectors/EMCAL/calib/test/testTriggerDCS.cxx index 8dee30ac50ef3..6ddde07aa53b1 100644 --- a/Detectors/EMCAL/calib/test/testTriggerDCS.cxx +++ b/Detectors/EMCAL/calib/test/testTriggerDCS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/test/testTriggerSTUDCS.cxx b/Detectors/EMCAL/calib/test/testTriggerSTUDCS.cxx index b1c6884cfd1d2..44805c5221a92 100644 --- a/Detectors/EMCAL/calib/test/testTriggerSTUDCS.cxx +++ b/Detectors/EMCAL/calib/test/testTriggerSTUDCS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/test/testTriggerSTUErrorCounter.cxx b/Detectors/EMCAL/calib/test/testTriggerSTUErrorCounter.cxx index 859b232499c16..60ec4c5603541 100644 --- a/Detectors/EMCAL/calib/test/testTriggerSTUErrorCounter.cxx +++ b/Detectors/EMCAL/calib/test/testTriggerSTUErrorCounter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calib/test/testTriggerTRUDCS.cxx b/Detectors/EMCAL/calib/test/testTriggerTRUDCS.cxx index 9c2c3f74027dc..e08d864abea2a 100644 --- a/Detectors/EMCAL/calib/test/testTriggerTRUDCS.cxx +++ b/Detectors/EMCAL/calib/test/testTriggerTRUDCS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calibration/CMakeLists.txt b/Detectors/EMCAL/calibration/CMakeLists.txt index 9d597643a0de4..f30d073c53244 100644 --- a/Detectors/EMCAL/calibration/CMakeLists.txt +++ b/Detectors/EMCAL/calibration/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(EMCALCalibration SOURCES src/EMCALChannelCalibrator.cxx diff --git a/Detectors/EMCAL/calibration/include/EMCALCalibration/EMCALChannelCalibrator.h b/Detectors/EMCAL/calibration/include/EMCALCalibration/EMCALChannelCalibrator.h index 3f12f03197e2d..dd4300ad25951 100644 --- a/Detectors/EMCAL/calibration/include/EMCALCalibration/EMCALChannelCalibrator.h +++ b/Detectors/EMCAL/calibration/include/EMCALCalibration/EMCALChannelCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calibration/src/EMCALCalibrationLinkDef.h b/Detectors/EMCAL/calibration/src/EMCALCalibrationLinkDef.h index 4244bf78efefb..3b47bad7acd49 100644 --- a/Detectors/EMCAL/calibration/src/EMCALCalibrationLinkDef.h +++ b/Detectors/EMCAL/calibration/src/EMCALCalibrationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calibration/src/EMCALChannelCalibrator.cxx b/Detectors/EMCAL/calibration/src/EMCALChannelCalibrator.cxx index 06c6b19e5906b..10ed01efef650 100644 --- a/Detectors/EMCAL/calibration/src/EMCALChannelCalibrator.cxx +++ b/Detectors/EMCAL/calibration/src/EMCALChannelCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calibration/testWorkflow/EMCALChannelCalibratorSpec.h b/Detectors/EMCAL/calibration/testWorkflow/EMCALChannelCalibratorSpec.h index 061bbe705298d..c00a1f89c277a 100644 --- a/Detectors/EMCAL/calibration/testWorkflow/EMCALChannelCalibratorSpec.h +++ b/Detectors/EMCAL/calibration/testWorkflow/EMCALChannelCalibratorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/calibration/testWorkflow/emc-channel-calib-workflow.cxx b/Detectors/EMCAL/calibration/testWorkflow/emc-channel-calib-workflow.cxx index a2c84bc05e9fe..036739ad7f3ad 100644 --- a/Detectors/EMCAL/calibration/testWorkflow/emc-channel-calib-workflow.cxx +++ b/Detectors/EMCAL/calibration/testWorkflow/emc-channel-calib-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/doxymodules.h b/Detectors/EMCAL/doxymodules.h index 19bb9cb0185e7..a5423cadd016b 100644 --- a/Detectors/EMCAL/doxymodules.h +++ b/Detectors/EMCAL/doxymodules.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/CMakeLists.txt b/Detectors/EMCAL/reconstruction/CMakeLists.txt index 4098ada3954aa..d0a0bb4456472 100644 --- a/Detectors/EMCAL/reconstruction/CMakeLists.txt +++ b/Detectors/EMCAL/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(EMCALReconstruction SOURCES src/RawReaderMemory.cxx diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/AltroDecoder.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/AltroDecoder.h index 53ebaa4d1f480..0abbee8dd4a64 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/AltroDecoder.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/AltroDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/Bunch.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/Bunch.h index 8263a7ce5b5c7..de9b619f55f6c 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/Bunch.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/Bunch.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFCoder.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFCoder.h index 79197d995d910..77784b86604f9 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFCoder.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFHelper.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFHelper.h index 4589f217226d1..8a732f49b8d76 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFHelper.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloFitResults.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloFitResults.h index ad2ad3d35ba0f..5a2f68b50109b 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloFitResults.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloFitResults.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitter.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitter.h index 80f5af1dc5e50..dd925c10fa54f 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitter.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitterGamma2.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitterGamma2.h old mode 100755 new mode 100644 index 06a0d334be9bf..e11af72988243 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitterGamma2.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitterGamma2.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitterStandard.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitterStandard.h index 63ec19005a042..a1df51779dab3 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitterStandard.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CaloRawFitterStandard.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/Channel.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/Channel.h index bb063e7c991fd..aebe890b78fcc 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/Channel.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/Channel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/Clusterizer.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/Clusterizer.h index bc057b0a3b4a9..0f58262f43400 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/Clusterizer.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/Clusterizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/ClusterizerParameters.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/ClusterizerParameters.h index 719202b605457..04f3e72369934 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/ClusterizerParameters.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/ClusterizerParameters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/ClusterizerTask.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/ClusterizerTask.h index d8a6c9a8bdf3b..86ac6d274dda5 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/ClusterizerTask.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/ClusterizerTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/DigitReader.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/DigitReader.h index 180069f147b0d..08d524b558b2c 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/DigitReader.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/DigitReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawBuffer.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawBuffer.h index 3c598b1bb71ec..9646fabebc4ac 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawBuffer.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawBuffer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawDecodingError.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawDecodingError.h index 7c028e02cdac9..548fd5d77c4cc 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawDecodingError.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawDecodingError.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawHeaderStream.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawHeaderStream.h index 017b091203378..4f898d66934ad 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawHeaderStream.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawHeaderStream.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawPayload.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawPayload.h index 7450d3afbd478..3a4abfd8f9617 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawPayload.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawPayload.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawReaderMemory.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawReaderMemory.h index c6d544e0529ff..dd42ea222e603 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawReaderMemory.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/RawReaderMemory.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/macros/RawFitterTESTMulti.C b/Detectors/EMCAL/reconstruction/macros/RawFitterTESTMulti.C index d9bea803997e0..2bd988db7bb6e 100644 --- a/Detectors/EMCAL/reconstruction/macros/RawFitterTESTMulti.C +++ b/Detectors/EMCAL/reconstruction/macros/RawFitterTESTMulti.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/macros/RawFitterTESTs.C b/Detectors/EMCAL/reconstruction/macros/RawFitterTESTs.C index ebc0233d80f50..8667627319ff4 100644 --- a/Detectors/EMCAL/reconstruction/macros/RawFitterTESTs.C +++ b/Detectors/EMCAL/reconstruction/macros/RawFitterTESTs.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/run/rawReaderFile.cxx b/Detectors/EMCAL/reconstruction/run/rawReaderFile.cxx index badb7c785292d..d3daa2ab5281e 100644 --- a/Detectors/EMCAL/reconstruction/run/rawReaderFile.cxx +++ b/Detectors/EMCAL/reconstruction/run/rawReaderFile.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/AltroDecoder.cxx b/Detectors/EMCAL/reconstruction/src/AltroDecoder.cxx index 882c190ce4758..a9d9e8d948d96 100644 --- a/Detectors/EMCAL/reconstruction/src/AltroDecoder.cxx +++ b/Detectors/EMCAL/reconstruction/src/AltroDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/Bunch.cxx b/Detectors/EMCAL/reconstruction/src/Bunch.cxx index fea2cd3da982c..0f532732a013f 100644 --- a/Detectors/EMCAL/reconstruction/src/Bunch.cxx +++ b/Detectors/EMCAL/reconstruction/src/Bunch.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/CTFCoder.cxx b/Detectors/EMCAL/reconstruction/src/CTFCoder.cxx index 3fc31aaea0a7a..158702a36e274 100644 --- a/Detectors/EMCAL/reconstruction/src/CTFCoder.cxx +++ b/Detectors/EMCAL/reconstruction/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/CTFHelper.cxx b/Detectors/EMCAL/reconstruction/src/CTFHelper.cxx index 1e0f385b72fce..14346f6261a6a 100644 --- a/Detectors/EMCAL/reconstruction/src/CTFHelper.cxx +++ b/Detectors/EMCAL/reconstruction/src/CTFHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/CaloFitResults.cxx b/Detectors/EMCAL/reconstruction/src/CaloFitResults.cxx index 364de7042a279..7a129f387fa44 100644 --- a/Detectors/EMCAL/reconstruction/src/CaloFitResults.cxx +++ b/Detectors/EMCAL/reconstruction/src/CaloFitResults.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/CaloRawFitter.cxx b/Detectors/EMCAL/reconstruction/src/CaloRawFitter.cxx index 7be7ed56c3eec..3cdb0b4644781 100644 --- a/Detectors/EMCAL/reconstruction/src/CaloRawFitter.cxx +++ b/Detectors/EMCAL/reconstruction/src/CaloRawFitter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/CaloRawFitterGamma2.cxx b/Detectors/EMCAL/reconstruction/src/CaloRawFitterGamma2.cxx old mode 100755 new mode 100644 index 7f1ce41c96bf0..6509ac1568882 --- a/Detectors/EMCAL/reconstruction/src/CaloRawFitterGamma2.cxx +++ b/Detectors/EMCAL/reconstruction/src/CaloRawFitterGamma2.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/CaloRawFitterStandard.cxx b/Detectors/EMCAL/reconstruction/src/CaloRawFitterStandard.cxx index 16a0eac4253a9..2ecc01ba7933c 100644 --- a/Detectors/EMCAL/reconstruction/src/CaloRawFitterStandard.cxx +++ b/Detectors/EMCAL/reconstruction/src/CaloRawFitterStandard.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/Channel.cxx b/Detectors/EMCAL/reconstruction/src/Channel.cxx index bdd79ee9d39b5..cf9886fb7c757 100644 --- a/Detectors/EMCAL/reconstruction/src/Channel.cxx +++ b/Detectors/EMCAL/reconstruction/src/Channel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/Clusterizer.cxx b/Detectors/EMCAL/reconstruction/src/Clusterizer.cxx index 3a4d33d10555d..2816d954b7b5a 100644 --- a/Detectors/EMCAL/reconstruction/src/Clusterizer.cxx +++ b/Detectors/EMCAL/reconstruction/src/Clusterizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/ClusterizerParameters.cxx b/Detectors/EMCAL/reconstruction/src/ClusterizerParameters.cxx index 546b8d2170c7e..91284ebb71dc5 100644 --- a/Detectors/EMCAL/reconstruction/src/ClusterizerParameters.cxx +++ b/Detectors/EMCAL/reconstruction/src/ClusterizerParameters.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/ClusterizerTask.cxx b/Detectors/EMCAL/reconstruction/src/ClusterizerTask.cxx index 6b5e8e2c56d7e..f5e4dadaebdfb 100644 --- a/Detectors/EMCAL/reconstruction/src/ClusterizerTask.cxx +++ b/Detectors/EMCAL/reconstruction/src/ClusterizerTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/DigitReader.cxx b/Detectors/EMCAL/reconstruction/src/DigitReader.cxx index 3db378c5b9d38..c03eb57cc8296 100644 --- a/Detectors/EMCAL/reconstruction/src/DigitReader.cxx +++ b/Detectors/EMCAL/reconstruction/src/DigitReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/EMCALReconstructionLinkDef.h b/Detectors/EMCAL/reconstruction/src/EMCALReconstructionLinkDef.h index 3267e83f6d89f..bd41f789af02a 100644 --- a/Detectors/EMCAL/reconstruction/src/EMCALReconstructionLinkDef.h +++ b/Detectors/EMCAL/reconstruction/src/EMCALReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/RawBuffer.cxx b/Detectors/EMCAL/reconstruction/src/RawBuffer.cxx index fd79bcfe088a4..c767e8cc25f4a 100644 --- a/Detectors/EMCAL/reconstruction/src/RawBuffer.cxx +++ b/Detectors/EMCAL/reconstruction/src/RawBuffer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/RawHeaderStream.cxx b/Detectors/EMCAL/reconstruction/src/RawHeaderStream.cxx index dfecb6a4f02f5..a046656f3a67e 100644 --- a/Detectors/EMCAL/reconstruction/src/RawHeaderStream.cxx +++ b/Detectors/EMCAL/reconstruction/src/RawHeaderStream.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/RawPayload.cxx b/Detectors/EMCAL/reconstruction/src/RawPayload.cxx index b28e49bf50bb2..80f3e0355e1f3 100644 --- a/Detectors/EMCAL/reconstruction/src/RawPayload.cxx +++ b/Detectors/EMCAL/reconstruction/src/RawPayload.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/reconstruction/src/RawReaderMemory.cxx b/Detectors/EMCAL/reconstruction/src/RawReaderMemory.cxx index 6340cb30b9964..192b88b960c6c 100644 --- a/Detectors/EMCAL/reconstruction/src/RawReaderMemory.cxx +++ b/Detectors/EMCAL/reconstruction/src/RawReaderMemory.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/CMakeLists.txt b/Detectors/EMCAL/simulation/CMakeLists.txt index 966ce39807466..9b49be71b10a9 100644 --- a/Detectors/EMCAL/simulation/CMakeLists.txt +++ b/Detectors/EMCAL/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(EMCALSimulation SOURCES src/Detector.cxx src/Digitizer.cxx src/SDigitizer.cxx diff --git a/Detectors/EMCAL/simulation/include/EMCALSimulation/Detector.h b/Detectors/EMCAL/simulation/include/EMCALSimulation/Detector.h index a7fb3649ac572..1553c4b559019 100644 --- a/Detectors/EMCAL/simulation/include/EMCALSimulation/Detector.h +++ b/Detectors/EMCAL/simulation/include/EMCALSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/include/EMCALSimulation/Digitizer.h b/Detectors/EMCAL/simulation/include/EMCALSimulation/Digitizer.h index bcd002acbb2e2..355dae64a7769 100644 --- a/Detectors/EMCAL/simulation/include/EMCALSimulation/Digitizer.h +++ b/Detectors/EMCAL/simulation/include/EMCALSimulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/include/EMCALSimulation/DigitsWriteoutBuffer.h b/Detectors/EMCAL/simulation/include/EMCALSimulation/DigitsWriteoutBuffer.h index 5aeda3be9d663..692da3f9c4550 100644 --- a/Detectors/EMCAL/simulation/include/EMCALSimulation/DigitsWriteoutBuffer.h +++ b/Detectors/EMCAL/simulation/include/EMCALSimulation/DigitsWriteoutBuffer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/include/EMCALSimulation/LabeledDigit.h b/Detectors/EMCAL/simulation/include/EMCALSimulation/LabeledDigit.h index c53cd2aeeb1d5..05939f8dc3c3c 100644 --- a/Detectors/EMCAL/simulation/include/EMCALSimulation/LabeledDigit.h +++ b/Detectors/EMCAL/simulation/include/EMCALSimulation/LabeledDigit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/include/EMCALSimulation/RawWriter.h b/Detectors/EMCAL/simulation/include/EMCALSimulation/RawWriter.h index aa9e9d100084a..1df607dc957dd 100644 --- a/Detectors/EMCAL/simulation/include/EMCALSimulation/RawWriter.h +++ b/Detectors/EMCAL/simulation/include/EMCALSimulation/RawWriter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/include/EMCALSimulation/SDigitizer.h b/Detectors/EMCAL/simulation/include/EMCALSimulation/SDigitizer.h index f21478cbd74db..09171cce5b976 100644 --- a/Detectors/EMCAL/simulation/include/EMCALSimulation/SDigitizer.h +++ b/Detectors/EMCAL/simulation/include/EMCALSimulation/SDigitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/include/EMCALSimulation/SimParam.h b/Detectors/EMCAL/simulation/include/EMCALSimulation/SimParam.h index 2d24978328847..f3658472011f3 100644 --- a/Detectors/EMCAL/simulation/include/EMCALSimulation/SimParam.h +++ b/Detectors/EMCAL/simulation/include/EMCALSimulation/SimParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/include/EMCALSimulation/SpaceFrame.h b/Detectors/EMCAL/simulation/include/EMCALSimulation/SpaceFrame.h index 9ddb94f4a0a91..2dd770295c992 100644 --- a/Detectors/EMCAL/simulation/include/EMCALSimulation/SpaceFrame.h +++ b/Detectors/EMCAL/simulation/include/EMCALSimulation/SpaceFrame.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/src/Detector.cxx b/Detectors/EMCAL/simulation/src/Detector.cxx index 79c27568b7124..cbed97e335ee8 100644 --- a/Detectors/EMCAL/simulation/src/Detector.cxx +++ b/Detectors/EMCAL/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/src/Digitizer.cxx b/Detectors/EMCAL/simulation/src/Digitizer.cxx index c3d1ee52a8b26..034a51994bbce 100644 --- a/Detectors/EMCAL/simulation/src/Digitizer.cxx +++ b/Detectors/EMCAL/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/src/DigitsWriteoutBuffer.cxx b/Detectors/EMCAL/simulation/src/DigitsWriteoutBuffer.cxx index 44d2951d8ab00..15d4c3ee2e66e 100644 --- a/Detectors/EMCAL/simulation/src/DigitsWriteoutBuffer.cxx +++ b/Detectors/EMCAL/simulation/src/DigitsWriteoutBuffer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/src/EMCALSimulationLinkDef.h b/Detectors/EMCAL/simulation/src/EMCALSimulationLinkDef.h index a492d8606fc60..f74b3ecb9922d 100644 --- a/Detectors/EMCAL/simulation/src/EMCALSimulationLinkDef.h +++ b/Detectors/EMCAL/simulation/src/EMCALSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/src/LabeledDigit.cxx b/Detectors/EMCAL/simulation/src/LabeledDigit.cxx index 618a9f6578c92..bf2d8b7b766e6 100644 --- a/Detectors/EMCAL/simulation/src/LabeledDigit.cxx +++ b/Detectors/EMCAL/simulation/src/LabeledDigit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/src/RawCreator.cxx b/Detectors/EMCAL/simulation/src/RawCreator.cxx index c8ea47f677eb3..56e77967bb25e 100644 --- a/Detectors/EMCAL/simulation/src/RawCreator.cxx +++ b/Detectors/EMCAL/simulation/src/RawCreator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/src/RawWriter.cxx b/Detectors/EMCAL/simulation/src/RawWriter.cxx index 8dc92ee952cbc..ffdee8ed64867 100644 --- a/Detectors/EMCAL/simulation/src/RawWriter.cxx +++ b/Detectors/EMCAL/simulation/src/RawWriter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/src/SDigitizer.cxx b/Detectors/EMCAL/simulation/src/SDigitizer.cxx index c11dc9c43a03e..d9584576364e0 100644 --- a/Detectors/EMCAL/simulation/src/SDigitizer.cxx +++ b/Detectors/EMCAL/simulation/src/SDigitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/src/SimParam.cxx b/Detectors/EMCAL/simulation/src/SimParam.cxx index b179c60a5d1be..14e0e484ee033 100644 --- a/Detectors/EMCAL/simulation/src/SimParam.cxx +++ b/Detectors/EMCAL/simulation/src/SimParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/simulation/src/SpaceFrame.cxx b/Detectors/EMCAL/simulation/src/SpaceFrame.cxx index a6218e7e3a2ef..38f1707887adf 100644 --- a/Detectors/EMCAL/simulation/src/SpaceFrame.cxx +++ b/Detectors/EMCAL/simulation/src/SpaceFrame.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/testsimulation/CMakeLists.txt b/Detectors/EMCAL/testsimulation/CMakeLists.txt index a40f842e71601..2d3ca30089f68 100644 --- a/Detectors/EMCAL/testsimulation/CMakeLists.txt +++ b/Detectors/EMCAL/testsimulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. if(NOT BUILD_TEST_ROOT_MACROS) return() diff --git a/Detectors/EMCAL/testsimulation/fixedEnergyElectronGun.C b/Detectors/EMCAL/testsimulation/fixedEnergyElectronGun.C index e695f89045b38..5bf617635b327 100644 --- a/Detectors/EMCAL/testsimulation/fixedEnergyElectronGun.C +++ b/Detectors/EMCAL/testsimulation/fixedEnergyElectronGun.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/testsimulation/fixedEnergyPhotonGun.C b/Detectors/EMCAL/testsimulation/fixedEnergyPhotonGun.C index 1f8cb1e2d0f05..ab09889af4ce0 100644 --- a/Detectors/EMCAL/testsimulation/fixedEnergyPhotonGun.C +++ b/Detectors/EMCAL/testsimulation/fixedEnergyPhotonGun.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/testsimulation/fixedEnergyPionGun.C b/Detectors/EMCAL/testsimulation/fixedEnergyPionGun.C index 773d7c1883f45..50d0b1782e041 100644 --- a/Detectors/EMCAL/testsimulation/fixedEnergyPionGun.C +++ b/Detectors/EMCAL/testsimulation/fixedEnergyPionGun.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/CMakeLists.txt b/Detectors/EMCAL/workflow/CMakeLists.txt index aac2708bddbbb..b19ccfd5a6765 100644 --- a/Detectors/EMCAL/workflow/CMakeLists.txt +++ b/Detectors/EMCAL/workflow/CMakeLists.txt @@ -1,8 +1,9 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is -# distributed under the terms of the GNU General Public License v3 (GPL -# Version 3), copied verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/ for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities # granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/AnalysisClusterSpec.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/AnalysisClusterSpec.h old mode 100755 new mode 100644 index a6132d114ce12..74cdd62110b73 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/AnalysisClusterSpec.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/AnalysisClusterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/CellConverterSpec.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/CellConverterSpec.h index 2d087da1ee67a..cc09f376d5b10 100644 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/CellConverterSpec.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/CellConverterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/ClusterizerSpec.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/ClusterizerSpec.h index 4495215c0be0c..67c60fab6655c 100644 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/ClusterizerSpec.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/ClusterizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/DigitsPrinterSpec.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/DigitsPrinterSpec.h index c20ec6662822e..6ee0b7143c186 100644 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/DigitsPrinterSpec.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/DigitsPrinterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/EntropyDecoderSpec.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/EntropyDecoderSpec.h index 2273f60d5a1f6..9f0baea56a038 100644 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/EntropyDecoderSpec.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/EntropyEncoderSpec.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/EntropyEncoderSpec.h index f0852d9367577..454d1b4e70f5a 100644 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/EntropyEncoderSpec.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/PublisherSpec.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/PublisherSpec.h index 864b360a2b747..11806c485e96a 100644 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/PublisherSpec.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/PublisherSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/RawToCellConverterSpec.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/RawToCellConverterSpec.h index facca555abe8f..4c7480c0b430b 100644 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/RawToCellConverterSpec.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/RawToCellConverterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/RecoWorkflow.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/RecoWorkflow.h index f001e24ae88d2..b7337982d4754 100644 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/RecoWorkflow.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/RecoWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/src/AnalysisClusterSpec.cxx b/Detectors/EMCAL/workflow/src/AnalysisClusterSpec.cxx old mode 100755 new mode 100644 index 26931ad0741df..87412b35313f6 --- a/Detectors/EMCAL/workflow/src/AnalysisClusterSpec.cxx +++ b/Detectors/EMCAL/workflow/src/AnalysisClusterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/src/CellConverterSpec.cxx b/Detectors/EMCAL/workflow/src/CellConverterSpec.cxx index b6fbc65ea37dc..836e6dc3c1d25 100644 --- a/Detectors/EMCAL/workflow/src/CellConverterSpec.cxx +++ b/Detectors/EMCAL/workflow/src/CellConverterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/src/ClusterizerSpec.cxx b/Detectors/EMCAL/workflow/src/ClusterizerSpec.cxx index 8c4284945cb21..2f063b89848c3 100644 --- a/Detectors/EMCAL/workflow/src/ClusterizerSpec.cxx +++ b/Detectors/EMCAL/workflow/src/ClusterizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/src/DigitsPrinterSpec.cxx b/Detectors/EMCAL/workflow/src/DigitsPrinterSpec.cxx index df0131cc53e28..ec72fefd648bf 100644 --- a/Detectors/EMCAL/workflow/src/DigitsPrinterSpec.cxx +++ b/Detectors/EMCAL/workflow/src/DigitsPrinterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/src/EntropyDecoderSpec.cxx b/Detectors/EMCAL/workflow/src/EntropyDecoderSpec.cxx index 86db412773721..74f71faa5f104 100644 --- a/Detectors/EMCAL/workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/EMCAL/workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/src/EntropyEncoderSpec.cxx b/Detectors/EMCAL/workflow/src/EntropyEncoderSpec.cxx index 1a83e73d1093a..c58cebbda2953 100644 --- a/Detectors/EMCAL/workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/EMCAL/workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/src/PublisherSpec.cxx b/Detectors/EMCAL/workflow/src/PublisherSpec.cxx index 666261ef58641..94c84c318d129 100644 --- a/Detectors/EMCAL/workflow/src/PublisherSpec.cxx +++ b/Detectors/EMCAL/workflow/src/PublisherSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx b/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx index 55547eb6ec9db..b5a6de2b421ef 100644 --- a/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx +++ b/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/src/RecoWorkflow.cxx b/Detectors/EMCAL/workflow/src/RecoWorkflow.cxx index effb27158681e..97b71150a52fb 100644 --- a/Detectors/EMCAL/workflow/src/RecoWorkflow.cxx +++ b/Detectors/EMCAL/workflow/src/RecoWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/src/emc-reco-workflow.cxx b/Detectors/EMCAL/workflow/src/emc-reco-workflow.cxx index 44fa18b4381e9..42066a364f76e 100644 --- a/Detectors/EMCAL/workflow/src/emc-reco-workflow.cxx +++ b/Detectors/EMCAL/workflow/src/emc-reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/EMCAL/workflow/src/entropy-encoder-workflow.cxx b/Detectors/EMCAL/workflow/src/entropy-encoder-workflow.cxx index a6e34eddf3e95..2fe9aefcb5ed2 100644 --- a/Detectors/EMCAL/workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/EMCAL/workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/CMakeLists.txt b/Detectors/FIT/CMakeLists.txt index 1195467cd8683..43cc48f69bb16 100644 --- a/Detectors/FIT/CMakeLists.txt +++ b/Detectors/FIT/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(FT0) add_subdirectory(common) diff --git a/Detectors/FIT/FDD/CMakeLists.txt b/Detectors/FIT/FDD/CMakeLists.txt index d119660024e7c..940cdd85b9441 100644 --- a/Detectors/FIT/FDD/CMakeLists.txt +++ b/Detectors/FIT/FDD/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(raw) diff --git a/Detectors/FIT/FDD/base/CMakeLists.txt b/Detectors/FIT/FDD/base/CMakeLists.txt index 84e16095dc3fe..18a13fb34f2a2 100644 --- a/Detectors/FIT/FDD/base/CMakeLists.txt +++ b/Detectors/FIT/FDD/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FDDBase SOURCES src/Geometry.cxx diff --git a/Detectors/FIT/FDD/base/include/FDDBase/Constants.h b/Detectors/FIT/FDD/base/include/FDDBase/Constants.h index e4fcbf48e0df7..5b06fd7378c3e 100644 --- a/Detectors/FIT/FDD/base/include/FDDBase/Constants.h +++ b/Detectors/FIT/FDD/base/include/FDDBase/Constants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/base/include/FDDBase/Geometry.h b/Detectors/FIT/FDD/base/include/FDDBase/Geometry.h index 17cf1543c6621..a8080d1431052 100644 --- a/Detectors/FIT/FDD/base/include/FDDBase/Geometry.h +++ b/Detectors/FIT/FDD/base/include/FDDBase/Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/base/src/FDDBaseLinkDef.h b/Detectors/FIT/FDD/base/src/FDDBaseLinkDef.h index 93c4d3738077a..41d6b6fde02e3 100644 --- a/Detectors/FIT/FDD/base/src/FDDBaseLinkDef.h +++ b/Detectors/FIT/FDD/base/src/FDDBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/base/src/Geometry.cxx b/Detectors/FIT/FDD/base/src/Geometry.cxx index e2d57d9bf0900..cc4bc14962be5 100644 --- a/Detectors/FIT/FDD/base/src/Geometry.cxx +++ b/Detectors/FIT/FDD/base/src/Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/raw/CMakeLists.txt b/Detectors/FIT/FDD/raw/CMakeLists.txt index 4a64e4a99e097..09e9b2ce90f31 100644 --- a/Detectors/FIT/FDD/raw/CMakeLists.txt +++ b/Detectors/FIT/FDD/raw/CMakeLists.txt @@ -1,12 +1,13 @@ -#Copyright CERN and copyright holders of ALICE O2.This software is distributed -#under the terms of the GNU General Public License v3(GPL Version 3), copied -#verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -#See http: //alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # -#In applying this license CERN does not waive the privileges and immunities -#granted to it by virtue of its status as an Intergovernmental Organization or -#submit itself to any jurisdiction. +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FDDRaw SOURCES src/DataBlockFDD.cxx src/DigitBlockFDD.cxx src/RawReaderFDDBase.cxx src/RawWriterFDD.cxx diff --git a/Detectors/FIT/FDD/raw/include/FDDRaw/DataBlockFDD.h b/Detectors/FIT/FDD/raw/include/FDDRaw/DataBlockFDD.h index 59837fa2322e8..3e5659e62a5e2 100644 --- a/Detectors/FIT/FDD/raw/include/FDDRaw/DataBlockFDD.h +++ b/Detectors/FIT/FDD/raw/include/FDDRaw/DataBlockFDD.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/raw/include/FDDRaw/DigitBlockFDD.h b/Detectors/FIT/FDD/raw/include/FDDRaw/DigitBlockFDD.h index 32ee7ef73f887..bb15de0aaf618 100644 --- a/Detectors/FIT/FDD/raw/include/FDDRaw/DigitBlockFDD.h +++ b/Detectors/FIT/FDD/raw/include/FDDRaw/DigitBlockFDD.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/raw/include/FDDRaw/RawReaderFDDBase.h b/Detectors/FIT/FDD/raw/include/FDDRaw/RawReaderFDDBase.h index 3c791d42462ad..e3e3865a04294 100644 --- a/Detectors/FIT/FDD/raw/include/FDDRaw/RawReaderFDDBase.h +++ b/Detectors/FIT/FDD/raw/include/FDDRaw/RawReaderFDDBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/raw/include/FDDRaw/RawWriterFDD.h b/Detectors/FIT/FDD/raw/include/FDDRaw/RawWriterFDD.h index f8f3bfb2d95f2..e534521468bf0 100644 --- a/Detectors/FIT/FDD/raw/include/FDDRaw/RawWriterFDD.h +++ b/Detectors/FIT/FDD/raw/include/FDDRaw/RawWriterFDD.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/raw/src/DataBlockFDD.cxx b/Detectors/FIT/FDD/raw/src/DataBlockFDD.cxx index 186c60de5007c..944c3dbd598f5 100644 --- a/Detectors/FIT/FDD/raw/src/DataBlockFDD.cxx +++ b/Detectors/FIT/FDD/raw/src/DataBlockFDD.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/raw/src/DigitBlockFDD.cxx b/Detectors/FIT/FDD/raw/src/DigitBlockFDD.cxx index 40232b47096e6..fe4948ab9480b 100644 --- a/Detectors/FIT/FDD/raw/src/DigitBlockFDD.cxx +++ b/Detectors/FIT/FDD/raw/src/DigitBlockFDD.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/raw/src/RawReaderFDDBase.cxx b/Detectors/FIT/FDD/raw/src/RawReaderFDDBase.cxx index ac6db9f90c33d..3708c53d3f03b 100644 --- a/Detectors/FIT/FDD/raw/src/RawReaderFDDBase.cxx +++ b/Detectors/FIT/FDD/raw/src/RawReaderFDDBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/raw/src/RawWriterFDD.cxx b/Detectors/FIT/FDD/raw/src/RawWriterFDD.cxx index 39f3a6b7b7175..29b364ce400be 100644 --- a/Detectors/FIT/FDD/raw/src/RawWriterFDD.cxx +++ b/Detectors/FIT/FDD/raw/src/RawWriterFDD.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/reconstruction/CMakeLists.txt b/Detectors/FIT/FDD/reconstruction/CMakeLists.txt index 41a1664da5235..d14ac3e7a3feb 100644 --- a/Detectors/FIT/FDD/reconstruction/CMakeLists.txt +++ b/Detectors/FIT/FDD/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FDDReconstruction SOURCES src/Reconstructor.cxx diff --git a/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/CTFCoder.h b/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/CTFCoder.h index 9d621f75cbbd6..97707c987a243 100644 --- a/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/CTFCoder.h +++ b/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/ReadRaw.h b/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/ReadRaw.h index e5547217f285e..54c8b7b203edb 100644 --- a/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/ReadRaw.h +++ b/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/ReadRaw.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/Reconstructor.h b/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/Reconstructor.h index e43ca4835db0a..d55d37711c93a 100644 --- a/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/Reconstructor.h +++ b/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/Reconstructor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/reconstruction/src/CTFCoder.cxx b/Detectors/FIT/FDD/reconstruction/src/CTFCoder.cxx index 82050cd60993a..e4e84a7446cc5 100644 --- a/Detectors/FIT/FDD/reconstruction/src/CTFCoder.cxx +++ b/Detectors/FIT/FDD/reconstruction/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/reconstruction/src/FDDReconstructionLinkDef.h b/Detectors/FIT/FDD/reconstruction/src/FDDReconstructionLinkDef.h index 741a85871df65..ff8dce72fd44a 100644 --- a/Detectors/FIT/FDD/reconstruction/src/FDDReconstructionLinkDef.h +++ b/Detectors/FIT/FDD/reconstruction/src/FDDReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/reconstruction/src/ReadRaw.cxx b/Detectors/FIT/FDD/reconstruction/src/ReadRaw.cxx index 51567e8c2ce1d..0e499410f7041 100644 --- a/Detectors/FIT/FDD/reconstruction/src/ReadRaw.cxx +++ b/Detectors/FIT/FDD/reconstruction/src/ReadRaw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/reconstruction/src/Reconstructor.cxx b/Detectors/FIT/FDD/reconstruction/src/Reconstructor.cxx index 7bfcca22dedb1..adf5b21e9cc52 100644 --- a/Detectors/FIT/FDD/reconstruction/src/Reconstructor.cxx +++ b/Detectors/FIT/FDD/reconstruction/src/Reconstructor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/reconstruction/src/test-raw2digit.cxx b/Detectors/FIT/FDD/reconstruction/src/test-raw2digit.cxx index 1564114d6208e..938e80a204578 100644 --- a/Detectors/FIT/FDD/reconstruction/src/test-raw2digit.cxx +++ b/Detectors/FIT/FDD/reconstruction/src/test-raw2digit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/simulation/CMakeLists.txt b/Detectors/FIT/FDD/simulation/CMakeLists.txt index 62ede3d8aac8b..e81685ff43664 100644 --- a/Detectors/FIT/FDD/simulation/CMakeLists.txt +++ b/Detectors/FIT/FDD/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FDDSimulation SOURCES src/Detector.cxx diff --git a/Detectors/FIT/FDD/simulation/include/FDDSimulation/Detector.h b/Detectors/FIT/FDD/simulation/include/FDDSimulation/Detector.h index 9ea50b4ee45fb..485197b30d0bb 100644 --- a/Detectors/FIT/FDD/simulation/include/FDDSimulation/Detector.h +++ b/Detectors/FIT/FDD/simulation/include/FDDSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/simulation/include/FDDSimulation/DigitizationParameters.h b/Detectors/FIT/FDD/simulation/include/FDDSimulation/DigitizationParameters.h index d66870a0de917..2a0d25839014a 100644 --- a/Detectors/FIT/FDD/simulation/include/FDDSimulation/DigitizationParameters.h +++ b/Detectors/FIT/FDD/simulation/include/FDDSimulation/DigitizationParameters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/simulation/include/FDDSimulation/Digitizer.h b/Detectors/FIT/FDD/simulation/include/FDDSimulation/Digitizer.h index 3cca6624612dc..c7bd444d5ce63 100644 --- a/Detectors/FIT/FDD/simulation/include/FDDSimulation/Digitizer.h +++ b/Detectors/FIT/FDD/simulation/include/FDDSimulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/simulation/include/FDDSimulation/Digits2Raw.h b/Detectors/FIT/FDD/simulation/include/FDDSimulation/Digits2Raw.h index 9e90be6330d6b..10cec83c8afba 100644 --- a/Detectors/FIT/FDD/simulation/include/FDDSimulation/Digits2Raw.h +++ b/Detectors/FIT/FDD/simulation/include/FDDSimulation/Digits2Raw.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/simulation/src/Detector.cxx b/Detectors/FIT/FDD/simulation/src/Detector.cxx index e579db50e2108..4780f18a590d3 100644 --- a/Detectors/FIT/FDD/simulation/src/Detector.cxx +++ b/Detectors/FIT/FDD/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/simulation/src/Digitizer.cxx b/Detectors/FIT/FDD/simulation/src/Digitizer.cxx index 62be756e9a056..130b024ae8f3a 100644 --- a/Detectors/FIT/FDD/simulation/src/Digitizer.cxx +++ b/Detectors/FIT/FDD/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/simulation/src/Digits2Raw.cxx b/Detectors/FIT/FDD/simulation/src/Digits2Raw.cxx index af28b4b21a78d..04876f526f59c 100644 --- a/Detectors/FIT/FDD/simulation/src/Digits2Raw.cxx +++ b/Detectors/FIT/FDD/simulation/src/Digits2Raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/simulation/src/FDDSimulationLinkDef.h b/Detectors/FIT/FDD/simulation/src/FDDSimulationLinkDef.h index d7ba52a55bf9a..44059b3c5d75e 100644 --- a/Detectors/FIT/FDD/simulation/src/FDDSimulationLinkDef.h +++ b/Detectors/FIT/FDD/simulation/src/FDDSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/simulation/src/digit2raw.cxx b/Detectors/FIT/FDD/simulation/src/digit2raw.cxx index 4437237c9c98a..0018f209adf4b 100644 --- a/Detectors/FIT/FDD/simulation/src/digit2raw.cxx +++ b/Detectors/FIT/FDD/simulation/src/digit2raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/CMakeLists.txt b/Detectors/FIT/FDD/workflow/CMakeLists.txt index d2c952fa66557..937300bef2196 100644 --- a/Detectors/FIT/FDD/workflow/CMakeLists.txt +++ b/Detectors/FIT/FDD/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FDDWorkflow SOURCES src/DigitReaderSpec.cxx diff --git a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/DigitReaderSpec.h b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/DigitReaderSpec.h index 5b1407de2630f..8b2ea9a8d35e4 100644 --- a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/DigitReaderSpec.h +++ b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/DigitReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/DigitWriterSpec.h b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/DigitWriterSpec.h index b65cab9b7de12..7d5fb352faa26 100644 --- a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/DigitWriterSpec.h +++ b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/DigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/EntropyDecoderSpec.h b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/EntropyDecoderSpec.h index 4b8b4e5bcd309..da3d373a54f4a 100644 --- a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/EntropyDecoderSpec.h +++ b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/EntropyEncoderSpec.h b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/EntropyEncoderSpec.h index 1a7b131fc45fc..8d523e65d16f1 100644 --- a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/EntropyEncoderSpec.h +++ b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawDataProcessSpec.h b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawDataProcessSpec.h index 3bd340796be22..6ed465b6181dd 100644 --- a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawDataProcessSpec.h +++ b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawDataProcessSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawDataReaderSpec.h b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawDataReaderSpec.h index 522bf08b2e526..74cbd48dccd0f 100644 --- a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawDataReaderSpec.h +++ b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawDataReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawReaderFDD.h b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawReaderFDD.h index 51538f680f141..89d007fab81ab 100644 --- a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawReaderFDD.h +++ b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawReaderFDD.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawWorkflow.h b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawWorkflow.h index f4096f6aa59a5..3bbab66d16497 100644 --- a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawWorkflow.h +++ b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RawWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RecPointReaderSpec.h b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RecPointReaderSpec.h index 6eaf38585d637..1fb92d914379b 100644 --- a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RecPointReaderSpec.h +++ b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RecPointReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RecPointWriterSpec.h b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RecPointWriterSpec.h index 7fa95c492eb15..64ab059ae6d45 100644 --- a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RecPointWriterSpec.h +++ b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RecPointWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RecoWorkflow.h b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RecoWorkflow.h index 4bb67d281f1ae..2dbd854e34eee 100644 --- a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RecoWorkflow.h +++ b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/RecoWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/ReconstructorSpec.h b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/ReconstructorSpec.h index b8d14ad22b4a4..b8d248b102463 100644 --- a/Detectors/FIT/FDD/workflow/include/FDDWorkflow/ReconstructorSpec.h +++ b/Detectors/FIT/FDD/workflow/include/FDDWorkflow/ReconstructorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/DigitReaderSpec.cxx b/Detectors/FIT/FDD/workflow/src/DigitReaderSpec.cxx index 7314c49cf0385..56d5a3efb4ee2 100644 --- a/Detectors/FIT/FDD/workflow/src/DigitReaderSpec.cxx +++ b/Detectors/FIT/FDD/workflow/src/DigitReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/EntropyDecoderSpec.cxx b/Detectors/FIT/FDD/workflow/src/EntropyDecoderSpec.cxx index 39a0146c12754..a302c14a81d25 100644 --- a/Detectors/FIT/FDD/workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/FIT/FDD/workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/EntropyEncoderSpec.cxx b/Detectors/FIT/FDD/workflow/src/EntropyEncoderSpec.cxx index 659d8af844c1b..911931e410aed 100644 --- a/Detectors/FIT/FDD/workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/FIT/FDD/workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/RawDataProcessSpec.cxx b/Detectors/FIT/FDD/workflow/src/RawDataProcessSpec.cxx index d0a23c5068207..e059c6fc13d2f 100644 --- a/Detectors/FIT/FDD/workflow/src/RawDataProcessSpec.cxx +++ b/Detectors/FIT/FDD/workflow/src/RawDataProcessSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/RawDataReaderSpec.cxx b/Detectors/FIT/FDD/workflow/src/RawDataReaderSpec.cxx index 7e17650d8cb0f..631655d3038ec 100644 --- a/Detectors/FIT/FDD/workflow/src/RawDataReaderSpec.cxx +++ b/Detectors/FIT/FDD/workflow/src/RawDataReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/RawReaderFDD.cxx b/Detectors/FIT/FDD/workflow/src/RawReaderFDD.cxx index ce6c961101136..ff470a6315898 100644 --- a/Detectors/FIT/FDD/workflow/src/RawReaderFDD.cxx +++ b/Detectors/FIT/FDD/workflow/src/RawReaderFDD.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/RawWorkflow.cxx b/Detectors/FIT/FDD/workflow/src/RawWorkflow.cxx index c8b70c8a15074..c9816b9b8e1da 100644 --- a/Detectors/FIT/FDD/workflow/src/RawWorkflow.cxx +++ b/Detectors/FIT/FDD/workflow/src/RawWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/RecPointReaderSpec.cxx b/Detectors/FIT/FDD/workflow/src/RecPointReaderSpec.cxx index 9782bbcb2f026..dd4e5a2f7b42e 100644 --- a/Detectors/FIT/FDD/workflow/src/RecPointReaderSpec.cxx +++ b/Detectors/FIT/FDD/workflow/src/RecPointReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/RecPointWriterSpec.cxx b/Detectors/FIT/FDD/workflow/src/RecPointWriterSpec.cxx index a359e601ef25e..bf18d94426169 100644 --- a/Detectors/FIT/FDD/workflow/src/RecPointWriterSpec.cxx +++ b/Detectors/FIT/FDD/workflow/src/RecPointWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/RecoWorkflow.cxx b/Detectors/FIT/FDD/workflow/src/RecoWorkflow.cxx index 1eb796e29178a..e7c5932d4b6ec 100644 --- a/Detectors/FIT/FDD/workflow/src/RecoWorkflow.cxx +++ b/Detectors/FIT/FDD/workflow/src/RecoWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/ReconstructorSpec.cxx b/Detectors/FIT/FDD/workflow/src/ReconstructorSpec.cxx index 3cacc248e5fda..3d72953e0c031 100644 --- a/Detectors/FIT/FDD/workflow/src/ReconstructorSpec.cxx +++ b/Detectors/FIT/FDD/workflow/src/ReconstructorSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/digits-reader-workflow.cxx b/Detectors/FIT/FDD/workflow/src/digits-reader-workflow.cxx index 2b7b3c54bfd92..fa861f7e64715 100644 --- a/Detectors/FIT/FDD/workflow/src/digits-reader-workflow.cxx +++ b/Detectors/FIT/FDD/workflow/src/digits-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/entropy-encoder-workflow.cxx b/Detectors/FIT/FDD/workflow/src/entropy-encoder-workflow.cxx index 87a8b05d20357..2adcfe0a1c422 100644 --- a/Detectors/FIT/FDD/workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/FIT/FDD/workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/fdd-flp-workflow.cxx b/Detectors/FIT/FDD/workflow/src/fdd-flp-workflow.cxx index 047b02b466ec6..9100c4cdf75dc 100644 --- a/Detectors/FIT/FDD/workflow/src/fdd-flp-workflow.cxx +++ b/Detectors/FIT/FDD/workflow/src/fdd-flp-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FDD/workflow/src/fdd-reco-workflow.cxx b/Detectors/FIT/FDD/workflow/src/fdd-reco-workflow.cxx index bb05f2caf64d7..b04f853ab4c40 100644 --- a/Detectors/FIT/FDD/workflow/src/fdd-reco-workflow.cxx +++ b/Detectors/FIT/FDD/workflow/src/fdd-reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/CMakeLists.txt b/Detectors/FIT/FT0/CMakeLists.txt index c5e1abaa666a9..83f8bbdd1ff73 100644 --- a/Detectors/FIT/FT0/CMakeLists.txt +++ b/Detectors/FIT/FT0/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(raw) diff --git a/Detectors/FIT/FT0/base/CMakeLists.txt b/Detectors/FIT/FT0/base/CMakeLists.txt index 2b20db8b6180e..52e34f97a9c13 100644 --- a/Detectors/FIT/FT0/base/CMakeLists.txt +++ b/Detectors/FIT/FT0/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FT0Base SOURCES src/Geometry.cxx diff --git a/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h b/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h index b1baad6ea1abe..7e2bc94cb346e 100644 --- a/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h +++ b/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/base/src/FT0BaseLinkDef.h b/Detectors/FIT/FT0/base/src/FT0BaseLinkDef.h index ba34f1e82413b..bb9f9c55abb33 100644 --- a/Detectors/FIT/FT0/base/src/FT0BaseLinkDef.h +++ b/Detectors/FIT/FT0/base/src/FT0BaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/base/src/Geometry.cxx b/Detectors/FIT/FT0/base/src/Geometry.cxx index b76949a31903f..8abe4eed45140 100644 --- a/Detectors/FIT/FT0/base/src/Geometry.cxx +++ b/Detectors/FIT/FT0/base/src/Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/CMakeLists.txt b/Detectors/FIT/FT0/calibration/CMakeLists.txt index d9a91d6eb16e1..3d337a4decf08 100644 --- a/Detectors/FIT/FT0/calibration/CMakeLists.txt +++ b/Detectors/FIT/FT0/calibration/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FT0Calibration SOURCES diff --git a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CalibrationInfoObject.h b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CalibrationInfoObject.h index 0302e0054f5e7..bf1c9c6f15b61 100644 --- a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CalibrationInfoObject.h +++ b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CalibrationInfoObject.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0ChannelTimeCalibrationObject.h b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0ChannelTimeCalibrationObject.h index dcb628c4d368e..6246fc6186142 100644 --- a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0ChannelTimeCalibrationObject.h +++ b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0ChannelTimeCalibrationObject.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0ChannelTimeTimeSlotContainer.h b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0ChannelTimeTimeSlotContainer.h index 862089855960a..f4985a9f5c2f8 100644 --- a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0ChannelTimeTimeSlotContainer.h +++ b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0ChannelTimeTimeSlotContainer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0DummyCalibrationObject.h b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0DummyCalibrationObject.h index f6d68ebe31cc0..86a527c64c045 100644 --- a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0DummyCalibrationObject.h +++ b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0DummyCalibrationObject.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/macros/makeDummyFT0CalibObjectInCCDB.C b/Detectors/FIT/FT0/calibration/macros/makeDummyFT0CalibObjectInCCDB.C index 3ac857bf33448..58db1f90b3e16 100644 --- a/Detectors/FIT/FT0/calibration/macros/makeDummyFT0CalibObjectInCCDB.C +++ b/Detectors/FIT/FT0/calibration/macros/makeDummyFT0CalibObjectInCCDB.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/src/FT0CalibrationLinkDef.h b/Detectors/FIT/FT0/calibration/src/FT0CalibrationLinkDef.h index 4ce6d885a2d5b..fff0211aa2260 100644 --- a/Detectors/FIT/FT0/calibration/src/FT0CalibrationLinkDef.h +++ b/Detectors/FIT/FT0/calibration/src/FT0CalibrationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/src/FT0ChannelTimeCalibrationObject.cxx b/Detectors/FIT/FT0/calibration/src/FT0ChannelTimeCalibrationObject.cxx index 49c3d49906942..5806ed10d891c 100644 --- a/Detectors/FIT/FT0/calibration/src/FT0ChannelTimeCalibrationObject.cxx +++ b/Detectors/FIT/FT0/calibration/src/FT0ChannelTimeCalibrationObject.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/src/FT0ChannelTimeTimeSlotContainer.cxx b/Detectors/FIT/FT0/calibration/src/FT0ChannelTimeTimeSlotContainer.cxx index d405d007b1ba1..c1479d9669c59 100644 --- a/Detectors/FIT/FT0/calibration/src/FT0ChannelTimeTimeSlotContainer.cxx +++ b/Detectors/FIT/FT0/calibration/src/FT0ChannelTimeTimeSlotContainer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/FT0Calibration-Workflow.cxx b/Detectors/FIT/FT0/calibration/testWorkflow/FT0Calibration-Workflow.cxx index 390b62f6af31e..a6c977d1d0de2 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/FT0Calibration-Workflow.cxx +++ b/Detectors/FIT/FT0/calibration/testWorkflow/FT0Calibration-Workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibrationDummy-Workflow.cxx b/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibrationDummy-Workflow.cxx index 1eff2bd733434..7adef65ae70d0 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibrationDummy-Workflow.cxx +++ b/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibrationDummy-Workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/FT0ChannelTimeCalibration-Workflow.cxx b/Detectors/FIT/FT0/calibration/testWorkflow/FT0ChannelTimeCalibration-Workflow.cxx index 53cbd2f6f129c..26e079733a2ae 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/FT0ChannelTimeCalibration-Workflow.cxx +++ b/Detectors/FIT/FT0/calibration/testWorkflow/FT0ChannelTimeCalibration-Workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/FT0ChannelTimeCalibrationSpec.h b/Detectors/FIT/FT0/calibration/testWorkflow/FT0ChannelTimeCalibrationSpec.h index b85e7c57d978c..9bc3496c7f5bf 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/FT0ChannelTimeCalibrationSpec.h +++ b/Detectors/FIT/FT0/calibration/testWorkflow/FT0ChannelTimeCalibrationSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/FT0SlewingCalibrationWorkflow.cxx b/Detectors/FIT/FT0/calibration/testWorkflow/FT0SlewingCalibrationWorkflow.cxx index 04417de093ec0..9a9c8e078322a 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/FT0SlewingCalibrationWorkflow.cxx +++ b/Detectors/FIT/FT0/calibration/testWorkflow/FT0SlewingCalibrationWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/FT0TFProcessor-Workflow.cxx b/Detectors/FIT/FT0/calibration/testWorkflow/FT0TFProcessor-Workflow.cxx index 0af7e0c5d7c04..b1caba47cbe09 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/FT0TFProcessor-Workflow.cxx +++ b/Detectors/FIT/FT0/calibration/testWorkflow/FT0TFProcessor-Workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/raw/CMakeLists.txt b/Detectors/FIT/FT0/raw/CMakeLists.txt index 3593a99945c03..06b4c0f0a33b3 100644 --- a/Detectors/FIT/FT0/raw/CMakeLists.txt +++ b/Detectors/FIT/FT0/raw/CMakeLists.txt @@ -1,12 +1,13 @@ -#Copyright CERN and copyright holders of ALICE O2.This software is distributed -#under the terms of the GNU General Public License v3(GPL Version 3), copied -#verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -#See http: //alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # -#In applying this license CERN does not waive the privileges and immunities -#granted to it by virtue of its status as an Intergovernmental Organization or -#submit itself to any jurisdiction. +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FT0Raw SOURCES src/DataBlockFT0.cxx src/DigitBlockFT0.cxx src/RawReaderFT0Base.cxx src/RawWriterFT0.cxx diff --git a/Detectors/FIT/FT0/raw/include/FT0Raw/DataBlockFT0.h b/Detectors/FIT/FT0/raw/include/FT0Raw/DataBlockFT0.h index 8d13ef1c4f931..ba9ff367794be 100644 --- a/Detectors/FIT/FT0/raw/include/FT0Raw/DataBlockFT0.h +++ b/Detectors/FIT/FT0/raw/include/FT0Raw/DataBlockFT0.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/raw/include/FT0Raw/DigitBlockFT0.h b/Detectors/FIT/FT0/raw/include/FT0Raw/DigitBlockFT0.h index d6d4bd6e32b45..716d6795e5ad2 100644 --- a/Detectors/FIT/FT0/raw/include/FT0Raw/DigitBlockFT0.h +++ b/Detectors/FIT/FT0/raw/include/FT0Raw/DigitBlockFT0.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/raw/include/FT0Raw/RawReaderFT0Base.h b/Detectors/FIT/FT0/raw/include/FT0Raw/RawReaderFT0Base.h index 373b3a67f7b6d..5f161a808edaa 100644 --- a/Detectors/FIT/FT0/raw/include/FT0Raw/RawReaderFT0Base.h +++ b/Detectors/FIT/FT0/raw/include/FT0Raw/RawReaderFT0Base.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/raw/include/FT0Raw/RawWriterFT0.h b/Detectors/FIT/FT0/raw/include/FT0Raw/RawWriterFT0.h index 2bfaa372acfbe..951fe42cc11fc 100644 --- a/Detectors/FIT/FT0/raw/include/FT0Raw/RawWriterFT0.h +++ b/Detectors/FIT/FT0/raw/include/FT0Raw/RawWriterFT0.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/raw/src/DataBlockFT0.cxx b/Detectors/FIT/FT0/raw/src/DataBlockFT0.cxx index 11794b9e17810..0506c068160b0 100644 --- a/Detectors/FIT/FT0/raw/src/DataBlockFT0.cxx +++ b/Detectors/FIT/FT0/raw/src/DataBlockFT0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/raw/src/DigitBlockFT0.cxx b/Detectors/FIT/FT0/raw/src/DigitBlockFT0.cxx index 22cdf187cad85..4f320e350f83e 100644 --- a/Detectors/FIT/FT0/raw/src/DigitBlockFT0.cxx +++ b/Detectors/FIT/FT0/raw/src/DigitBlockFT0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/raw/src/RawReaderFT0Base.cxx b/Detectors/FIT/FT0/raw/src/RawReaderFT0Base.cxx index ef5f619b6ecb2..292b3ad4fe491 100644 --- a/Detectors/FIT/FT0/raw/src/RawReaderFT0Base.cxx +++ b/Detectors/FIT/FT0/raw/src/RawReaderFT0Base.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/raw/src/RawWriterFT0.cxx b/Detectors/FIT/FT0/raw/src/RawWriterFT0.cxx index 496d575d319ff..cd57b0ea4fe0e 100644 --- a/Detectors/FIT/FT0/raw/src/RawWriterFT0.cxx +++ b/Detectors/FIT/FT0/raw/src/RawWriterFT0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/reconstruction/CMakeLists.txt b/Detectors/FIT/FT0/reconstruction/CMakeLists.txt index dd2e9dbeebdac..67ccbeab92933 100644 --- a/Detectors/FIT/FT0/reconstruction/CMakeLists.txt +++ b/Detectors/FIT/FT0/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FT0Reconstruction SOURCES src/CollisionTimeRecoTask.cxx diff --git a/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/CTFCoder.h b/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/CTFCoder.h index 74e0ee27e7dbf..e3f694d505916 100644 --- a/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/CTFCoder.h +++ b/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/CollisionTimeRecoTask.h b/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/CollisionTimeRecoTask.h index 7f8edd35ec11d..d79c0311fa190 100644 --- a/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/CollisionTimeRecoTask.h +++ b/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/CollisionTimeRecoTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/InteractionTag.h b/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/InteractionTag.h index 50c5c466ce9f4..2a41d980c5749 100644 --- a/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/InteractionTag.h +++ b/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/InteractionTag.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/ReadRaw.h b/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/ReadRaw.h index e9b3823742333..ea2ec72f8ed32 100644 --- a/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/ReadRaw.h +++ b/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/ReadRaw.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/reconstruction/src/CTFCoder.cxx b/Detectors/FIT/FT0/reconstruction/src/CTFCoder.cxx index f8bf93a05b914..3a49932c6f5bc 100644 --- a/Detectors/FIT/FT0/reconstruction/src/CTFCoder.cxx +++ b/Detectors/FIT/FT0/reconstruction/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/reconstruction/src/CollisionTimeRecoTask.cxx b/Detectors/FIT/FT0/reconstruction/src/CollisionTimeRecoTask.cxx index c814eb4fdf533..706428a02ec47 100644 --- a/Detectors/FIT/FT0/reconstruction/src/CollisionTimeRecoTask.cxx +++ b/Detectors/FIT/FT0/reconstruction/src/CollisionTimeRecoTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/reconstruction/src/FT0ReconstructionLinkDef.h b/Detectors/FIT/FT0/reconstruction/src/FT0ReconstructionLinkDef.h index e8811907900b5..af9f58fc1b445 100644 --- a/Detectors/FIT/FT0/reconstruction/src/FT0ReconstructionLinkDef.h +++ b/Detectors/FIT/FT0/reconstruction/src/FT0ReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/reconstruction/src/InteractionTag.cxx b/Detectors/FIT/FT0/reconstruction/src/InteractionTag.cxx index a384e40f28895..dc7392237c10a 100644 --- a/Detectors/FIT/FT0/reconstruction/src/InteractionTag.cxx +++ b/Detectors/FIT/FT0/reconstruction/src/InteractionTag.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/reconstruction/src/ReadRaw.cxx b/Detectors/FIT/FT0/reconstruction/src/ReadRaw.cxx index 5ba5fd0f769de..b8fbe59652e19 100644 --- a/Detectors/FIT/FT0/reconstruction/src/ReadRaw.cxx +++ b/Detectors/FIT/FT0/reconstruction/src/ReadRaw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/reconstruction/src/test-raw-conversion.cxx b/Detectors/FIT/FT0/reconstruction/src/test-raw-conversion.cxx index aba09bd76336e..36c0bc8438f99 100644 --- a/Detectors/FIT/FT0/reconstruction/src/test-raw-conversion.cxx +++ b/Detectors/FIT/FT0/reconstruction/src/test-raw-conversion.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/reconstruction/src/test-raw2digit.cxx b/Detectors/FIT/FT0/reconstruction/src/test-raw2digit.cxx index ffe14288cd4da..806703022f020 100644 --- a/Detectors/FIT/FT0/reconstruction/src/test-raw2digit.cxx +++ b/Detectors/FIT/FT0/reconstruction/src/test-raw2digit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/simulation/CMakeLists.txt b/Detectors/FIT/FT0/simulation/CMakeLists.txt index 23dc494992eab..e139017dd8e05 100644 --- a/Detectors/FIT/FT0/simulation/CMakeLists.txt +++ b/Detectors/FIT/FT0/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FT0Simulation SOURCES src/Detector.cxx diff --git a/Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h b/Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h index 4afcf0f30baf1..25db92a355745 100644 --- a/Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h +++ b/Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/simulation/include/FT0Simulation/DigitizationConstants.h b/Detectors/FIT/FT0/simulation/include/FT0Simulation/DigitizationConstants.h index 66118f17701f3..63ba8de3f084c 100644 --- a/Detectors/FIT/FT0/simulation/include/FT0Simulation/DigitizationConstants.h +++ b/Detectors/FIT/FT0/simulation/include/FT0Simulation/DigitizationConstants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/simulation/include/FT0Simulation/DigitizationParameters.h b/Detectors/FIT/FT0/simulation/include/FT0Simulation/DigitizationParameters.h index baaa0f942bf55..3eba62ca05f00 100644 --- a/Detectors/FIT/FT0/simulation/include/FT0Simulation/DigitizationParameters.h +++ b/Detectors/FIT/FT0/simulation/include/FT0Simulation/DigitizationParameters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/simulation/include/FT0Simulation/Digitizer.h b/Detectors/FIT/FT0/simulation/include/FT0Simulation/Digitizer.h index e622ef35c6b5e..33479765314f0 100644 --- a/Detectors/FIT/FT0/simulation/include/FT0Simulation/Digitizer.h +++ b/Detectors/FIT/FT0/simulation/include/FT0Simulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/simulation/include/FT0Simulation/DigitizerTask.h b/Detectors/FIT/FT0/simulation/include/FT0Simulation/DigitizerTask.h index fc8232cc79f5f..e689fc9bfc903 100644 --- a/Detectors/FIT/FT0/simulation/include/FT0Simulation/DigitizerTask.h +++ b/Detectors/FIT/FT0/simulation/include/FT0Simulation/DigitizerTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/simulation/include/FT0Simulation/Digits2Raw.h b/Detectors/FIT/FT0/simulation/include/FT0Simulation/Digits2Raw.h index 2d68d6995f15d..258a440578232 100644 --- a/Detectors/FIT/FT0/simulation/include/FT0Simulation/Digits2Raw.h +++ b/Detectors/FIT/FT0/simulation/include/FT0Simulation/Digits2Raw.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/simulation/src/Detector.cxx b/Detectors/FIT/FT0/simulation/src/Detector.cxx index e398a97d8e82b..7abc01a6e4682 100644 --- a/Detectors/FIT/FT0/simulation/src/Detector.cxx +++ b/Detectors/FIT/FT0/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/simulation/src/Digitizer.cxx b/Detectors/FIT/FT0/simulation/src/Digitizer.cxx index f3950de7ab428..86a72e7ea6bc6 100644 --- a/Detectors/FIT/FT0/simulation/src/Digitizer.cxx +++ b/Detectors/FIT/FT0/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/simulation/src/DigitizerTask.cxx b/Detectors/FIT/FT0/simulation/src/DigitizerTask.cxx index a75c3474127b0..7e325294e7032 100644 --- a/Detectors/FIT/FT0/simulation/src/DigitizerTask.cxx +++ b/Detectors/FIT/FT0/simulation/src/DigitizerTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/simulation/src/Digits2Raw.cxx b/Detectors/FIT/FT0/simulation/src/Digits2Raw.cxx index 04e844b7b7494..d47c784c8abda 100644 --- a/Detectors/FIT/FT0/simulation/src/Digits2Raw.cxx +++ b/Detectors/FIT/FT0/simulation/src/Digits2Raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/simulation/src/FT0SimulationLinkDef.h b/Detectors/FIT/FT0/simulation/src/FT0SimulationLinkDef.h index c8e02eaabdac5..14f54600b80cf 100644 --- a/Detectors/FIT/FT0/simulation/src/FT0SimulationLinkDef.h +++ b/Detectors/FIT/FT0/simulation/src/FT0SimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/simulation/src/digi2raw.cxx b/Detectors/FIT/FT0/simulation/src/digi2raw.cxx index c1b21ece59dc6..b87918142b628 100644 --- a/Detectors/FIT/FT0/simulation/src/digi2raw.cxx +++ b/Detectors/FIT/FT0/simulation/src/digi2raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/CMakeLists.txt b/Detectors/FIT/FT0/workflow/CMakeLists.txt index 0eaa98a92dde0..b775bc2e1febe 100644 --- a/Detectors/FIT/FT0/workflow/CMakeLists.txt +++ b/Detectors/FIT/FT0/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FT0Workflow SOURCES src/RecoWorkflow.cxx diff --git a/Detectors/FIT/FT0/workflow/include/FT0Workflow/DigitReaderSpec.h b/Detectors/FIT/FT0/workflow/include/FT0Workflow/DigitReaderSpec.h index 16bec0ad09994..5fb21e9dc4b49 100644 --- a/Detectors/FIT/FT0/workflow/include/FT0Workflow/DigitReaderSpec.h +++ b/Detectors/FIT/FT0/workflow/include/FT0Workflow/DigitReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/include/FT0Workflow/EntropyDecoderSpec.h b/Detectors/FIT/FT0/workflow/include/FT0Workflow/EntropyDecoderSpec.h index 58b25bbcebe54..9f19696ace2c9 100644 --- a/Detectors/FIT/FT0/workflow/include/FT0Workflow/EntropyDecoderSpec.h +++ b/Detectors/FIT/FT0/workflow/include/FT0Workflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/include/FT0Workflow/EntropyEncoderSpec.h b/Detectors/FIT/FT0/workflow/include/FT0Workflow/EntropyEncoderSpec.h index 5b42eb0f2cd14..641e5be8551bf 100644 --- a/Detectors/FIT/FT0/workflow/include/FT0Workflow/EntropyEncoderSpec.h +++ b/Detectors/FIT/FT0/workflow/include/FT0Workflow/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0DataProcessDPLSpec.h b/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0DataProcessDPLSpec.h index 0f79510037f09..7b7e98d50368e 100644 --- a/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0DataProcessDPLSpec.h +++ b/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0DataProcessDPLSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0DataReaderDPLSpec.h b/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0DataReaderDPLSpec.h index 40706bea0d68e..5c10762e0c927 100644 --- a/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0DataReaderDPLSpec.h +++ b/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0DataReaderDPLSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0DigitWriterSpec.h b/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0DigitWriterSpec.h index a16eb762519aa..08400ef56d9b9 100644 --- a/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0DigitWriterSpec.h +++ b/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0DigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0Workflow.h b/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0Workflow.h index 995d2157c39e5..a4988b2c18fc7 100644 --- a/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0Workflow.h +++ b/Detectors/FIT/FT0/workflow/include/FT0Workflow/FT0Workflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/include/FT0Workflow/RawReaderFT0.h b/Detectors/FIT/FT0/workflow/include/FT0Workflow/RawReaderFT0.h index 85363718fdc16..5c77e247041b1 100644 --- a/Detectors/FIT/FT0/workflow/include/FT0Workflow/RawReaderFT0.h +++ b/Detectors/FIT/FT0/workflow/include/FT0Workflow/RawReaderFT0.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/include/FT0Workflow/RecPointReaderSpec.h b/Detectors/FIT/FT0/workflow/include/FT0Workflow/RecPointReaderSpec.h index ed00b1d525c07..f74a5339675d1 100644 --- a/Detectors/FIT/FT0/workflow/include/FT0Workflow/RecPointReaderSpec.h +++ b/Detectors/FIT/FT0/workflow/include/FT0Workflow/RecPointReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/include/FT0Workflow/RecPointWriterSpec.h b/Detectors/FIT/FT0/workflow/include/FT0Workflow/RecPointWriterSpec.h index a4a4609cb2045..d1fb0cba5e95b 100644 --- a/Detectors/FIT/FT0/workflow/include/FT0Workflow/RecPointWriterSpec.h +++ b/Detectors/FIT/FT0/workflow/include/FT0Workflow/RecPointWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/include/FT0Workflow/RecoWorkflow.h b/Detectors/FIT/FT0/workflow/include/FT0Workflow/RecoWorkflow.h index 157fb7bee0804..3277404621cbd 100644 --- a/Detectors/FIT/FT0/workflow/include/FT0Workflow/RecoWorkflow.h +++ b/Detectors/FIT/FT0/workflow/include/FT0Workflow/RecoWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/include/FT0Workflow/ReconstructionSpec.h b/Detectors/FIT/FT0/workflow/include/FT0Workflow/ReconstructionSpec.h index d20cb6f8aae6e..268b597575af2 100644 --- a/Detectors/FIT/FT0/workflow/include/FT0Workflow/ReconstructionSpec.h +++ b/Detectors/FIT/FT0/workflow/include/FT0Workflow/ReconstructionSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/DigitReaderSpec.cxx b/Detectors/FIT/FT0/workflow/src/DigitReaderSpec.cxx index d504e5e6d75ed..285fcc62f4617 100644 --- a/Detectors/FIT/FT0/workflow/src/DigitReaderSpec.cxx +++ b/Detectors/FIT/FT0/workflow/src/DigitReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/EntropyDecoderSpec.cxx b/Detectors/FIT/FT0/workflow/src/EntropyDecoderSpec.cxx index c1757e73e387b..accc9ee99b59f 100644 --- a/Detectors/FIT/FT0/workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/FIT/FT0/workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/EntropyEncoderSpec.cxx b/Detectors/FIT/FT0/workflow/src/EntropyEncoderSpec.cxx index f7f41ad0d11c1..866a72c2e98c9 100644 --- a/Detectors/FIT/FT0/workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/FIT/FT0/workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/FT0DataProcessDPLSpec.cxx b/Detectors/FIT/FT0/workflow/src/FT0DataProcessDPLSpec.cxx index 9ad55e06a8c56..6ab9768805859 100644 --- a/Detectors/FIT/FT0/workflow/src/FT0DataProcessDPLSpec.cxx +++ b/Detectors/FIT/FT0/workflow/src/FT0DataProcessDPLSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/FT0DataReaderDPLSpec.cxx b/Detectors/FIT/FT0/workflow/src/FT0DataReaderDPLSpec.cxx index d8451ba6ccb1e..caa642794b561 100644 --- a/Detectors/FIT/FT0/workflow/src/FT0DataReaderDPLSpec.cxx +++ b/Detectors/FIT/FT0/workflow/src/FT0DataReaderDPLSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/FT0DigitWriterSpec.cxx b/Detectors/FIT/FT0/workflow/src/FT0DigitWriterSpec.cxx index 95c4b34deb598..2e832ec5669cc 100644 --- a/Detectors/FIT/FT0/workflow/src/FT0DigitWriterSpec.cxx +++ b/Detectors/FIT/FT0/workflow/src/FT0DigitWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/FT0Workflow.cxx b/Detectors/FIT/FT0/workflow/src/FT0Workflow.cxx index 7634e0aa2997a..b3927c4b9cab2 100644 --- a/Detectors/FIT/FT0/workflow/src/FT0Workflow.cxx +++ b/Detectors/FIT/FT0/workflow/src/FT0Workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/RawReaderFT0.cxx b/Detectors/FIT/FT0/workflow/src/RawReaderFT0.cxx index 3de0026f13b55..b2ef17e540112 100644 --- a/Detectors/FIT/FT0/workflow/src/RawReaderFT0.cxx +++ b/Detectors/FIT/FT0/workflow/src/RawReaderFT0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/RecPointReaderSpec.cxx b/Detectors/FIT/FT0/workflow/src/RecPointReaderSpec.cxx index 5525886cb9fcb..43c3a1817183e 100644 --- a/Detectors/FIT/FT0/workflow/src/RecPointReaderSpec.cxx +++ b/Detectors/FIT/FT0/workflow/src/RecPointReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/RecPointWriterSpec.cxx b/Detectors/FIT/FT0/workflow/src/RecPointWriterSpec.cxx index cfae8f06c1b44..8a43394d5edfb 100644 --- a/Detectors/FIT/FT0/workflow/src/RecPointWriterSpec.cxx +++ b/Detectors/FIT/FT0/workflow/src/RecPointWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/RecoWorkflow.cxx b/Detectors/FIT/FT0/workflow/src/RecoWorkflow.cxx index af33a654e941e..591c51c0f0fb0 100644 --- a/Detectors/FIT/FT0/workflow/src/RecoWorkflow.cxx +++ b/Detectors/FIT/FT0/workflow/src/RecoWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/ReconstructionSpec.cxx b/Detectors/FIT/FT0/workflow/src/ReconstructionSpec.cxx index d4eff6573cb9b..1d6139987652e 100644 --- a/Detectors/FIT/FT0/workflow/src/ReconstructionSpec.cxx +++ b/Detectors/FIT/FT0/workflow/src/ReconstructionSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/digits-reader-workflow.cxx b/Detectors/FIT/FT0/workflow/src/digits-reader-workflow.cxx index 1c342397d1dac..8c84b5fdd89b1 100644 --- a/Detectors/FIT/FT0/workflow/src/digits-reader-workflow.cxx +++ b/Detectors/FIT/FT0/workflow/src/digits-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/entropy-encoder-workflow.cxx b/Detectors/FIT/FT0/workflow/src/entropy-encoder-workflow.cxx index e4a094904a820..25271680222cc 100644 --- a/Detectors/FIT/FT0/workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/FIT/FT0/workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/ft0-flp-workflow.cxx b/Detectors/FIT/FT0/workflow/src/ft0-flp-workflow.cxx index 0ea45643e33f8..17c4b46a2fb72 100644 --- a/Detectors/FIT/FT0/workflow/src/ft0-flp-workflow.cxx +++ b/Detectors/FIT/FT0/workflow/src/ft0-flp-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/workflow/src/ft0-reco-workflow.cxx b/Detectors/FIT/FT0/workflow/src/ft0-reco-workflow.cxx index f1618913d7388..23a8b78d95307 100644 --- a/Detectors/FIT/FT0/workflow/src/ft0-reco-workflow.cxx +++ b/Detectors/FIT/FT0/workflow/src/ft0-reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/CMakeLists.txt b/Detectors/FIT/FV0/CMakeLists.txt index 82e6a9f03618f..044ff06bcc672 100644 --- a/Detectors/FIT/FV0/CMakeLists.txt +++ b/Detectors/FIT/FV0/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(raw) diff --git a/Detectors/FIT/FV0/base/CMakeLists.txt b/Detectors/FIT/FV0/base/CMakeLists.txt index fd3579c692c1b..fe2b7e763bbfa 100644 --- a/Detectors/FIT/FV0/base/CMakeLists.txt +++ b/Detectors/FIT/FV0/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FV0Base SOURCES src/Geometry.cxx diff --git a/Detectors/FIT/FV0/base/include/FV0Base/Constants.h b/Detectors/FIT/FV0/base/include/FV0Base/Constants.h index 965110873e21c..ea7c0a737219b 100644 --- a/Detectors/FIT/FV0/base/include/FV0Base/Constants.h +++ b/Detectors/FIT/FV0/base/include/FV0Base/Constants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/base/include/FV0Base/Geometry.h b/Detectors/FIT/FV0/base/include/FV0Base/Geometry.h index c0cb9403ad874..45c9e83be5aa0 100644 --- a/Detectors/FIT/FV0/base/include/FV0Base/Geometry.h +++ b/Detectors/FIT/FV0/base/include/FV0Base/Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/base/src/FV0BaseLinkDef.h b/Detectors/FIT/FV0/base/src/FV0BaseLinkDef.h index b2ec9f0e5022c..5d5bfea6b1361 100644 --- a/Detectors/FIT/FV0/base/src/FV0BaseLinkDef.h +++ b/Detectors/FIT/FV0/base/src/FV0BaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/base/src/Geometry.cxx b/Detectors/FIT/FV0/base/src/Geometry.cxx index b40df946084af..188847d52b434 100644 --- a/Detectors/FIT/FV0/base/src/Geometry.cxx +++ b/Detectors/FIT/FV0/base/src/Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/macro/CMakeLists.txt b/Detectors/FIT/FV0/macro/CMakeLists.txt index d7fadb4a3683c..884c7429d7419 100644 --- a/Detectors/FIT/FV0/macro/CMakeLists.txt +++ b/Detectors/FIT/FV0/macro/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(readFV0Hits.C PUBLIC_LINK_LIBRARIES O2::FV0Simulation diff --git a/Detectors/FIT/FV0/raw/CMakeLists.txt b/Detectors/FIT/FV0/raw/CMakeLists.txt index edc6c07fb8731..1848affd5749f 100644 --- a/Detectors/FIT/FV0/raw/CMakeLists.txt +++ b/Detectors/FIT/FV0/raw/CMakeLists.txt @@ -1,12 +1,13 @@ -#Copyright CERN and copyright holders of ALICE O2.This software is distributed -#under the terms of the GNU General Public License v3(GPL Version 3), copied -#verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -#See http: //alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # -#In applying this license CERN does not waive the privileges and immunities -#granted to it by virtue of its status as an Intergovernmental Organization or -#submit itself to any jurisdiction. +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FV0Raw SOURCES src/DataBlockFV0.cxx src/DigitBlockFV0.cxx src/RawReaderFV0Base.cxx src/RawWriterFV0.cxx diff --git a/Detectors/FIT/FV0/raw/include/FV0Raw/DataBlockFV0.h b/Detectors/FIT/FV0/raw/include/FV0Raw/DataBlockFV0.h index 4d4143ed37aee..8bbcadf45b301 100644 --- a/Detectors/FIT/FV0/raw/include/FV0Raw/DataBlockFV0.h +++ b/Detectors/FIT/FV0/raw/include/FV0Raw/DataBlockFV0.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/raw/include/FV0Raw/DigitBlockFV0.h b/Detectors/FIT/FV0/raw/include/FV0Raw/DigitBlockFV0.h index 8e203a2662fce..37375c62e2b47 100644 --- a/Detectors/FIT/FV0/raw/include/FV0Raw/DigitBlockFV0.h +++ b/Detectors/FIT/FV0/raw/include/FV0Raw/DigitBlockFV0.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/raw/include/FV0Raw/RawReaderFV0Base.h b/Detectors/FIT/FV0/raw/include/FV0Raw/RawReaderFV0Base.h index 1ad67390cda75..f1a6c74bd8261 100644 --- a/Detectors/FIT/FV0/raw/include/FV0Raw/RawReaderFV0Base.h +++ b/Detectors/FIT/FV0/raw/include/FV0Raw/RawReaderFV0Base.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/raw/include/FV0Raw/RawWriterFV0.h b/Detectors/FIT/FV0/raw/include/FV0Raw/RawWriterFV0.h index 4330ec60363df..2c25075721693 100644 --- a/Detectors/FIT/FV0/raw/include/FV0Raw/RawWriterFV0.h +++ b/Detectors/FIT/FV0/raw/include/FV0Raw/RawWriterFV0.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/raw/src/DataBlockFV0.cxx b/Detectors/FIT/FV0/raw/src/DataBlockFV0.cxx index 9d5c73dacfeda..4f53af0c80f79 100644 --- a/Detectors/FIT/FV0/raw/src/DataBlockFV0.cxx +++ b/Detectors/FIT/FV0/raw/src/DataBlockFV0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/raw/src/DigitBlockFV0.cxx b/Detectors/FIT/FV0/raw/src/DigitBlockFV0.cxx index dd7ce3d7dfbeb..8da75f3bdbcff 100644 --- a/Detectors/FIT/FV0/raw/src/DigitBlockFV0.cxx +++ b/Detectors/FIT/FV0/raw/src/DigitBlockFV0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/raw/src/RawReaderFV0Base.cxx b/Detectors/FIT/FV0/raw/src/RawReaderFV0Base.cxx index a0dfaf4fe0740..7bba6ea3937c9 100644 --- a/Detectors/FIT/FV0/raw/src/RawReaderFV0Base.cxx +++ b/Detectors/FIT/FV0/raw/src/RawReaderFV0Base.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/raw/src/RawWriterFV0.cxx b/Detectors/FIT/FV0/raw/src/RawWriterFV0.cxx index 2849558447c8d..64d75091cbe80 100644 --- a/Detectors/FIT/FV0/raw/src/RawWriterFV0.cxx +++ b/Detectors/FIT/FV0/raw/src/RawWriterFV0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/reconstruction/CMakeLists.txt b/Detectors/FIT/FV0/reconstruction/CMakeLists.txt index 3432b9b32970d..c293acc7587c5 100644 --- a/Detectors/FIT/FV0/reconstruction/CMakeLists.txt +++ b/Detectors/FIT/FV0/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FV0Reconstruction SOURCES src/ReadRaw.cxx diff --git a/Detectors/FIT/FV0/reconstruction/include/FV0Reconstruction/CTFCoder.h b/Detectors/FIT/FV0/reconstruction/include/FV0Reconstruction/CTFCoder.h index ae14872cc13d2..95354af50981c 100644 --- a/Detectors/FIT/FV0/reconstruction/include/FV0Reconstruction/CTFCoder.h +++ b/Detectors/FIT/FV0/reconstruction/include/FV0Reconstruction/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/reconstruction/include/FV0Reconstruction/ReadRaw.h b/Detectors/FIT/FV0/reconstruction/include/FV0Reconstruction/ReadRaw.h index ade792cc6ee0d..4a6d6134b5466 100644 --- a/Detectors/FIT/FV0/reconstruction/include/FV0Reconstruction/ReadRaw.h +++ b/Detectors/FIT/FV0/reconstruction/include/FV0Reconstruction/ReadRaw.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/reconstruction/src/CTFCoder.cxx b/Detectors/FIT/FV0/reconstruction/src/CTFCoder.cxx index c7b7a8d994ecf..8a9a6475932aa 100644 --- a/Detectors/FIT/FV0/reconstruction/src/CTFCoder.cxx +++ b/Detectors/FIT/FV0/reconstruction/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/reconstruction/src/FV0ReconstructionLinkDef.h b/Detectors/FIT/FV0/reconstruction/src/FV0ReconstructionLinkDef.h index 9c78ce474d9df..4e9ca3b922628 100644 --- a/Detectors/FIT/FV0/reconstruction/src/FV0ReconstructionLinkDef.h +++ b/Detectors/FIT/FV0/reconstruction/src/FV0ReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/reconstruction/src/ReadRaw.cxx b/Detectors/FIT/FV0/reconstruction/src/ReadRaw.cxx index 5af806bb38bff..43790664b3c41 100644 --- a/Detectors/FIT/FV0/reconstruction/src/ReadRaw.cxx +++ b/Detectors/FIT/FV0/reconstruction/src/ReadRaw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/reconstruction/src/test-raw2digit.cxx b/Detectors/FIT/FV0/reconstruction/src/test-raw2digit.cxx index dc2f24f35ccd3..17aa052991231 100644 --- a/Detectors/FIT/FV0/reconstruction/src/test-raw2digit.cxx +++ b/Detectors/FIT/FV0/reconstruction/src/test-raw2digit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/simulation/CMakeLists.txt b/Detectors/FIT/FV0/simulation/CMakeLists.txt index d334135530d92..19b65b4a88dc0 100644 --- a/Detectors/FIT/FV0/simulation/CMakeLists.txt +++ b/Detectors/FIT/FV0/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FV0Simulation SOURCES src/Detector.cxx diff --git a/Detectors/FIT/FV0/simulation/include/FV0Simulation/Detector.h b/Detectors/FIT/FV0/simulation/include/FV0Simulation/Detector.h index 6e708568282f3..11930a048e062 100644 --- a/Detectors/FIT/FV0/simulation/include/FV0Simulation/Detector.h +++ b/Detectors/FIT/FV0/simulation/include/FV0Simulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/simulation/include/FV0Simulation/DigitizationConstant.h b/Detectors/FIT/FV0/simulation/include/FV0Simulation/DigitizationConstant.h index 6faa00ff54bec..bd2e83f8609dc 100644 --- a/Detectors/FIT/FV0/simulation/include/FV0Simulation/DigitizationConstant.h +++ b/Detectors/FIT/FV0/simulation/include/FV0Simulation/DigitizationConstant.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/simulation/include/FV0Simulation/Digitizer.h b/Detectors/FIT/FV0/simulation/include/FV0Simulation/Digitizer.h index be9c5ce6fceea..1e528a6d453da 100644 --- a/Detectors/FIT/FV0/simulation/include/FV0Simulation/Digitizer.h +++ b/Detectors/FIT/FV0/simulation/include/FV0Simulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/simulation/include/FV0Simulation/Digits2Raw.h b/Detectors/FIT/FV0/simulation/include/FV0Simulation/Digits2Raw.h index 8e5c881440f4c..d6c6751c6247f 100644 --- a/Detectors/FIT/FV0/simulation/include/FV0Simulation/Digits2Raw.h +++ b/Detectors/FIT/FV0/simulation/include/FV0Simulation/Digits2Raw.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/simulation/include/FV0Simulation/FV0DigParam.h b/Detectors/FIT/FV0/simulation/include/FV0Simulation/FV0DigParam.h index c0c90c0b784b4..e3f2390ecfab0 100644 --- a/Detectors/FIT/FV0/simulation/include/FV0Simulation/FV0DigParam.h +++ b/Detectors/FIT/FV0/simulation/include/FV0Simulation/FV0DigParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/simulation/src/Detector.cxx b/Detectors/FIT/FV0/simulation/src/Detector.cxx index d444deab53ea4..98d83c82b4b96 100644 --- a/Detectors/FIT/FV0/simulation/src/Detector.cxx +++ b/Detectors/FIT/FV0/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/simulation/src/Digitizer.cxx b/Detectors/FIT/FV0/simulation/src/Digitizer.cxx index cbe4a47fe4b3a..4e3fc70c3f5e6 100644 --- a/Detectors/FIT/FV0/simulation/src/Digitizer.cxx +++ b/Detectors/FIT/FV0/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/simulation/src/Digits2Raw.cxx b/Detectors/FIT/FV0/simulation/src/Digits2Raw.cxx index 079fabb0bf4c9..d461ac0f69f0d 100644 --- a/Detectors/FIT/FV0/simulation/src/Digits2Raw.cxx +++ b/Detectors/FIT/FV0/simulation/src/Digits2Raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/simulation/src/FV0DigParam.cxx b/Detectors/FIT/FV0/simulation/src/FV0DigParam.cxx index 2b7bcd0888e66..9ad7f1cd73b86 100644 --- a/Detectors/FIT/FV0/simulation/src/FV0DigParam.cxx +++ b/Detectors/FIT/FV0/simulation/src/FV0DigParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/simulation/src/FV0SimulationLinkDef.h b/Detectors/FIT/FV0/simulation/src/FV0SimulationLinkDef.h index 96ff6069e78ba..9b98240214702 100644 --- a/Detectors/FIT/FV0/simulation/src/FV0SimulationLinkDef.h +++ b/Detectors/FIT/FV0/simulation/src/FV0SimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/simulation/src/digit2raw.cxx b/Detectors/FIT/FV0/simulation/src/digit2raw.cxx index dd21761ab6089..6e2fc7f7e330e 100644 --- a/Detectors/FIT/FV0/simulation/src/digit2raw.cxx +++ b/Detectors/FIT/FV0/simulation/src/digit2raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/workflow/CMakeLists.txt b/Detectors/FIT/FV0/workflow/CMakeLists.txt index 1355258288645..2cbc0d3a866e8 100644 --- a/Detectors/FIT/FV0/workflow/CMakeLists.txt +++ b/Detectors/FIT/FV0/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FV0Workflow SOURCES src/EntropyEncoderSpec.cxx diff --git a/Detectors/FIT/FV0/workflow/include/FV0Workflow/DigitReaderSpec.h b/Detectors/FIT/FV0/workflow/include/FV0Workflow/DigitReaderSpec.h index 7a71ae588a030..9d90d3b0859b3 100644 --- a/Detectors/FIT/FV0/workflow/include/FV0Workflow/DigitReaderSpec.h +++ b/Detectors/FIT/FV0/workflow/include/FV0Workflow/DigitReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/workflow/include/FV0Workflow/EntropyDecoderSpec.h b/Detectors/FIT/FV0/workflow/include/FV0Workflow/EntropyDecoderSpec.h index 744ad441effca..adc21637b2e10 100644 --- a/Detectors/FIT/FV0/workflow/include/FV0Workflow/EntropyDecoderSpec.h +++ b/Detectors/FIT/FV0/workflow/include/FV0Workflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/workflow/include/FV0Workflow/EntropyEncoderSpec.h b/Detectors/FIT/FV0/workflow/include/FV0Workflow/EntropyEncoderSpec.h index 0b38260cad14f..48660a01a99f4 100644 --- a/Detectors/FIT/FV0/workflow/include/FV0Workflow/EntropyEncoderSpec.h +++ b/Detectors/FIT/FV0/workflow/include/FV0Workflow/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/workflow/src/DigitReaderSpec.cxx b/Detectors/FIT/FV0/workflow/src/DigitReaderSpec.cxx index 3f102c54b615d..f70138a2ca112 100644 --- a/Detectors/FIT/FV0/workflow/src/DigitReaderSpec.cxx +++ b/Detectors/FIT/FV0/workflow/src/DigitReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/workflow/src/EntropyDecoderSpec.cxx b/Detectors/FIT/FV0/workflow/src/EntropyDecoderSpec.cxx index 51f92bfcf1405..1b836995c0b28 100644 --- a/Detectors/FIT/FV0/workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/FIT/FV0/workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/workflow/src/EntropyEncoderSpec.cxx b/Detectors/FIT/FV0/workflow/src/EntropyEncoderSpec.cxx index 7d786f88ffef1..b1a648385e3e9 100644 --- a/Detectors/FIT/FV0/workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/FIT/FV0/workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/workflow/src/digits-reader-workflow.cxx b/Detectors/FIT/FV0/workflow/src/digits-reader-workflow.cxx index a933f9ceedd46..064c50a076f18 100644 --- a/Detectors/FIT/FV0/workflow/src/digits-reader-workflow.cxx +++ b/Detectors/FIT/FV0/workflow/src/digits-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/workflow/src/entropy-encoder-workflow.cxx b/Detectors/FIT/FV0/workflow/src/entropy-encoder-workflow.cxx index 58455959b0854..06800f6fa0453 100644 --- a/Detectors/FIT/FV0/workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/FIT/FV0/workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FV0/workflow/src/fv0-flp-workflow.cxx b/Detectors/FIT/FV0/workflow/src/fv0-flp-workflow.cxx index 078ec33cabc00..68b88e7aa2913 100644 --- a/Detectors/FIT/FV0/workflow/src/fv0-flp-workflow.cxx +++ b/Detectors/FIT/FV0/workflow/src/fv0-flp-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/common/CMakeLists.txt b/Detectors/FIT/common/CMakeLists.txt index ea27cb95bd4c4..5a919c69af898 100644 --- a/Detectors/FIT/common/CMakeLists.txt +++ b/Detectors/FIT/common/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # add_subdirectory(simulation) diff --git a/Detectors/FIT/common/calibration/CMakeLists.txt b/Detectors/FIT/common/calibration/CMakeLists.txt index 9559c8c5ed18f..def98716d3fd1 100644 --- a/Detectors/FIT/common/calibration/CMakeLists.txt +++ b/Detectors/FIT/common/calibration/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FITCalibration PUBLIC_LINK_LIBRARIES diff --git a/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrationApi.h b/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrationApi.h index 966ae78276c1b..796f2a17c2551 100644 --- a/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrationApi.h +++ b/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrationApi.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrationDevice.h b/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrationDevice.h index 24b94755c4dce..f76dd2f72f606 100644 --- a/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrationDevice.h +++ b/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrationDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrationObjectProducer.h b/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrationObjectProducer.h index d721d66649cee..1dc4bfaf2a1fe 100644 --- a/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrationObjectProducer.h +++ b/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrationObjectProducer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrator.h b/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrator.h index 5ba500bba5152..9d0ce6a12ba3d 100644 --- a/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrator.h +++ b/Detectors/FIT/common/calibration/include/FITCalibration/FITCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/common/calibration/src/FITCalibrationLinkDef.h b/Detectors/FIT/common/calibration/src/FITCalibrationLinkDef.h index 147514f48aff2..02f5acc1602bd 100644 --- a/Detectors/FIT/common/calibration/src/FITCalibrationLinkDef.h +++ b/Detectors/FIT/common/calibration/src/FITCalibrationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/common/simulation/CMakeLists.txt b/Detectors/FIT/common/simulation/CMakeLists.txt index 3b3ee8a5c24a4..7f25c1b9c0d67 100644 --- a/Detectors/FIT/common/simulation/CMakeLists.txt +++ b/Detectors/FIT/common/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FITSimulation SOURCES src/Digitizer.cxx diff --git a/Detectors/FIT/common/simulation/include/FITSimulation/DigitizationParameters.h b/Detectors/FIT/common/simulation/include/FITSimulation/DigitizationParameters.h index a1c8f5586ffe8..12bf883f4052e 100644 --- a/Detectors/FIT/common/simulation/include/FITSimulation/DigitizationParameters.h +++ b/Detectors/FIT/common/simulation/include/FITSimulation/DigitizationParameters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/common/simulation/src/FITSimulationLinkDef.h b/Detectors/FIT/common/simulation/src/FITSimulationLinkDef.h index 3873f7bbd8b4b..afbb4ad54a433 100644 --- a/Detectors/FIT/common/simulation/src/FITSimulationLinkDef.h +++ b/Detectors/FIT/common/simulation/src/FITSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/macros/CMakeLists.txt b/Detectors/FIT/macros/CMakeLists.txt index 7912e34aae684..8b5f5e9c6e606 100644 --- a/Detectors/FIT/macros/CMakeLists.txt +++ b/Detectors/FIT/macros/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(readFT0hits.C PUBLIC_LINK_LIBRARIES O2::DataFormatsFT0 diff --git a/Detectors/FIT/raw/CMakeLists.txt b/Detectors/FIT/raw/CMakeLists.txt index 0d5a48191fa1a..9090f54029017 100644 --- a/Detectors/FIT/raw/CMakeLists.txt +++ b/Detectors/FIT/raw/CMakeLists.txt @@ -1,12 +1,13 @@ -#Copyright CERN and copyright holders of ALICE O2.This software is distributed -#under the terms of the GNU General Public License v3(GPL Version 3), copied -#verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -#See http: //alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # -#In applying this license CERN does not waive the privileges and immunities -#granted to it by virtue of its status as an Intergovernmental Organization or -#submit itself to any jurisdiction. +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FITRaw SOURCES src/DataBlockBase.cxx src/DataBlockFIT.cxx src/DigitBlockBase.cxx src/DigitBlockFIT.cxx src/RawReaderBase.cxx src/RawReaderBaseFIT.cxx src/RawWriterFIT.cxx diff --git a/Detectors/FIT/raw/include/FITRaw/DataBlockBase.h b/Detectors/FIT/raw/include/FITRaw/DataBlockBase.h index f288141fcb4fb..fd153ec9e1d5c 100644 --- a/Detectors/FIT/raw/include/FITRaw/DataBlockBase.h +++ b/Detectors/FIT/raw/include/FITRaw/DataBlockBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/include/FITRaw/DataBlockFIT.h b/Detectors/FIT/raw/include/FITRaw/DataBlockFIT.h index b0e6e5f2767ec..aa8af70ff945b 100644 --- a/Detectors/FIT/raw/include/FITRaw/DataBlockFIT.h +++ b/Detectors/FIT/raw/include/FITRaw/DataBlockFIT.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/include/FITRaw/DigitBlockBase.h b/Detectors/FIT/raw/include/FITRaw/DigitBlockBase.h index cae2e008557d1..c1eabb940f214 100644 --- a/Detectors/FIT/raw/include/FITRaw/DigitBlockBase.h +++ b/Detectors/FIT/raw/include/FITRaw/DigitBlockBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h b/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h index f00258d320fb2..60bf920836760 100644 --- a/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h +++ b/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/include/FITRaw/RawReaderBase.h b/Detectors/FIT/raw/include/FITRaw/RawReaderBase.h index 9237665d1cb50..0c82c8808363a 100644 --- a/Detectors/FIT/raw/include/FITRaw/RawReaderBase.h +++ b/Detectors/FIT/raw/include/FITRaw/RawReaderBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/include/FITRaw/RawReaderBaseFIT.h b/Detectors/FIT/raw/include/FITRaw/RawReaderBaseFIT.h index 34446832ffef3..d8251aa3d03e4 100644 --- a/Detectors/FIT/raw/include/FITRaw/RawReaderBaseFIT.h +++ b/Detectors/FIT/raw/include/FITRaw/RawReaderBaseFIT.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/include/FITRaw/RawWriterFIT.h b/Detectors/FIT/raw/include/FITRaw/RawWriterFIT.h index cd57039bbc82d..75335f9fcbf9f 100644 --- a/Detectors/FIT/raw/include/FITRaw/RawWriterFIT.h +++ b/Detectors/FIT/raw/include/FITRaw/RawWriterFIT.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/src/DataBlockBase.cxx b/Detectors/FIT/raw/src/DataBlockBase.cxx index 82ed86360af98..a2d30a36a4789 100644 --- a/Detectors/FIT/raw/src/DataBlockBase.cxx +++ b/Detectors/FIT/raw/src/DataBlockBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/src/DataBlockFIT.cxx b/Detectors/FIT/raw/src/DataBlockFIT.cxx index beb9bf384420f..fb8c32311bf55 100644 --- a/Detectors/FIT/raw/src/DataBlockFIT.cxx +++ b/Detectors/FIT/raw/src/DataBlockFIT.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/src/DigitBlockBase.cxx b/Detectors/FIT/raw/src/DigitBlockBase.cxx index 9e626d77b064a..6381a86559b33 100644 --- a/Detectors/FIT/raw/src/DigitBlockBase.cxx +++ b/Detectors/FIT/raw/src/DigitBlockBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/src/DigitBlockFIT.cxx b/Detectors/FIT/raw/src/DigitBlockFIT.cxx index 0fecb35812d2e..6d9d7f4e9ee15 100644 --- a/Detectors/FIT/raw/src/DigitBlockFIT.cxx +++ b/Detectors/FIT/raw/src/DigitBlockFIT.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/src/RawReaderBase.cxx b/Detectors/FIT/raw/src/RawReaderBase.cxx index 24b38a3138533..2146ce1c3a6f5 100644 --- a/Detectors/FIT/raw/src/RawReaderBase.cxx +++ b/Detectors/FIT/raw/src/RawReaderBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/src/RawReaderBaseFIT.cxx b/Detectors/FIT/raw/src/RawReaderBaseFIT.cxx index 5cc85ffcd0a90..003bdcb12574b 100644 --- a/Detectors/FIT/raw/src/RawReaderBaseFIT.cxx +++ b/Detectors/FIT/raw/src/RawReaderBaseFIT.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/raw/src/RawWriterFIT.cxx b/Detectors/FIT/raw/src/RawWriterFIT.cxx index 4d3bdd66cc6e5..3d8276af67486 100644 --- a/Detectors/FIT/raw/src/RawWriterFIT.cxx +++ b/Detectors/FIT/raw/src/RawWriterFIT.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/workflow/CMakeLists.txt b/Detectors/FIT/workflow/CMakeLists.txt index 35d1de7948c4b..be3c19ef8e78d 100644 --- a/Detectors/FIT/workflow/CMakeLists.txt +++ b/Detectors/FIT/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FITWorkflow SOURCES src/FITDataReaderDPLSpec.cxx diff --git a/Detectors/FIT/workflow/include/FITWorkflow/FITDataReaderDPLSpec.h b/Detectors/FIT/workflow/include/FITWorkflow/FITDataReaderDPLSpec.h index 62661c16d4577..1b0c4c0d4abe4 100644 --- a/Detectors/FIT/workflow/include/FITWorkflow/FITDataReaderDPLSpec.h +++ b/Detectors/FIT/workflow/include/FITWorkflow/FITDataReaderDPLSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/workflow/include/FITWorkflow/FITDigitWriterSpec.h b/Detectors/FIT/workflow/include/FITWorkflow/FITDigitWriterSpec.h index 43c0264182a24..a03331b785892 100644 --- a/Detectors/FIT/workflow/include/FITWorkflow/FITDigitWriterSpec.h +++ b/Detectors/FIT/workflow/include/FITWorkflow/FITDigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/workflow/include/FITWorkflow/RawReaderFIT.h b/Detectors/FIT/workflow/include/FITWorkflow/RawReaderFIT.h index 9e312d2eabc47..39a33fe79de35 100644 --- a/Detectors/FIT/workflow/include/FITWorkflow/RawReaderFIT.h +++ b/Detectors/FIT/workflow/include/FITWorkflow/RawReaderFIT.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/workflow/src/FITDataReaderDPLSpec.cxx b/Detectors/FIT/workflow/src/FITDataReaderDPLSpec.cxx index c3c474437293e..4c0694f7549aa 100644 --- a/Detectors/FIT/workflow/src/FITDataReaderDPLSpec.cxx +++ b/Detectors/FIT/workflow/src/FITDataReaderDPLSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/workflow/src/FITDigitWriterSpec.cxx b/Detectors/FIT/workflow/src/FITDigitWriterSpec.cxx index a58ff966b375c..efac74cd0c4f6 100644 --- a/Detectors/FIT/workflow/src/FITDigitWriterSpec.cxx +++ b/Detectors/FIT/workflow/src/FITDigitWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/workflow/src/RawReaderFIT.cxx b/Detectors/FIT/workflow/src/RawReaderFIT.cxx index 6df51054f398d..2ebffb8f10c96 100644 --- a/Detectors/FIT/workflow/src/RawReaderFIT.cxx +++ b/Detectors/FIT/workflow/src/RawReaderFIT.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTracking/CMakeLists.txt b/Detectors/GlobalTracking/CMakeLists.txt index 5a6f893d43abd..cde8c5b8df64c 100644 --- a/Detectors/GlobalTracking/CMakeLists.txt +++ b/Detectors/GlobalTracking/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( GlobalTracking diff --git a/Detectors/GlobalTracking/include/GlobalTracking/MatchCosmics.h b/Detectors/GlobalTracking/include/GlobalTracking/MatchCosmics.h index 8559f1b5f80b6..8c63825b65fe0 100644 --- a/Detectors/GlobalTracking/include/GlobalTracking/MatchCosmics.h +++ b/Detectors/GlobalTracking/include/GlobalTracking/MatchCosmics.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTracking/include/GlobalTracking/MatchCosmicsParams.h b/Detectors/GlobalTracking/include/GlobalTracking/MatchCosmicsParams.h index 2260852d87173..402b3488193fe 100644 --- a/Detectors/GlobalTracking/include/GlobalTracking/MatchCosmicsParams.h +++ b/Detectors/GlobalTracking/include/GlobalTracking/MatchCosmicsParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTracking/include/GlobalTracking/MatchTOF.h b/Detectors/GlobalTracking/include/GlobalTracking/MatchTOF.h index c8fbadb9f71c8..ca2118de741a5 100644 --- a/Detectors/GlobalTracking/include/GlobalTracking/MatchTOF.h +++ b/Detectors/GlobalTracking/include/GlobalTracking/MatchTOF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITS.h b/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITS.h index cf7b16b923e66..aa58b1dc4aafe 100644 --- a/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITS.h +++ b/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITSParams.h b/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITSParams.h index 40ebb93366ac3..936cfcba33619 100644 --- a/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITSParams.h +++ b/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITSParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTracking/src/GlobalTrackingLinkDef.h b/Detectors/GlobalTracking/src/GlobalTrackingLinkDef.h index 320efa26d1e27..ab2a36bd1c23b 100644 --- a/Detectors/GlobalTracking/src/GlobalTrackingLinkDef.h +++ b/Detectors/GlobalTracking/src/GlobalTrackingLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTracking/src/MatchCosmics.cxx b/Detectors/GlobalTracking/src/MatchCosmics.cxx index b5bb5deb1f9d6..5ef96aed91432 100644 --- a/Detectors/GlobalTracking/src/MatchCosmics.cxx +++ b/Detectors/GlobalTracking/src/MatchCosmics.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTracking/src/MatchCosmicsParams.cxx b/Detectors/GlobalTracking/src/MatchCosmicsParams.cxx index 3978dd10a2ba5..f14ae04897c68 100644 --- a/Detectors/GlobalTracking/src/MatchCosmicsParams.cxx +++ b/Detectors/GlobalTracking/src/MatchCosmicsParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTracking/src/MatchTOF.cxx b/Detectors/GlobalTracking/src/MatchTOF.cxx index efc03a0522206..a9e4d479b7a2c 100644 --- a/Detectors/GlobalTracking/src/MatchTOF.cxx +++ b/Detectors/GlobalTracking/src/MatchTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTracking/src/MatchTPCITS.cxx b/Detectors/GlobalTracking/src/MatchTPCITS.cxx index 7676ac35858bb..5b1f3ed78e0ba 100644 --- a/Detectors/GlobalTracking/src/MatchTPCITS.cxx +++ b/Detectors/GlobalTracking/src/MatchTPCITS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTracking/src/MatchTPCITSParams.cxx b/Detectors/GlobalTracking/src/MatchTPCITSParams.cxx index 6783099b24074..9aa7556768091 100644 --- a/Detectors/GlobalTracking/src/MatchTPCITSParams.cxx +++ b/Detectors/GlobalTracking/src/MatchTPCITSParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/CMakeLists.txt b/Detectors/GlobalTrackingWorkflow/CMakeLists.txt index 6b0fb881d12a1..f3b14aaaff0dd 100644 --- a/Detectors/GlobalTrackingWorkflow/CMakeLists.txt +++ b/Detectors/GlobalTrackingWorkflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # FIXME: do we actually need a library here, or is the executable enough ? diff --git a/Detectors/GlobalTrackingWorkflow/helpers/CMakeLists.txt b/Detectors/GlobalTrackingWorkflow/helpers/CMakeLists.txt index 30e9ba579ea60..eea3f82dd67ce 100644 --- a/Detectors/GlobalTrackingWorkflow/helpers/CMakeLists.txt +++ b/Detectors/GlobalTrackingWorkflow/helpers/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(GlobalTrackingWorkflowHelpers SOURCES src/InputHelper.cxx diff --git a/Detectors/GlobalTrackingWorkflow/helpers/include/GlobalTrackingWorkflowHelpers/InputHelper.h b/Detectors/GlobalTrackingWorkflow/helpers/include/GlobalTrackingWorkflowHelpers/InputHelper.h index ac46e62d128b0..bd1e0bc92597a 100644 --- a/Detectors/GlobalTrackingWorkflow/helpers/include/GlobalTrackingWorkflowHelpers/InputHelper.h +++ b/Detectors/GlobalTrackingWorkflow/helpers/include/GlobalTrackingWorkflowHelpers/InputHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/helpers/src/GlobalTrackClusterReader.cxx b/Detectors/GlobalTrackingWorkflow/helpers/src/GlobalTrackClusterReader.cxx index 134ca8e122c3f..2d6ce1acd78b7 100644 --- a/Detectors/GlobalTrackingWorkflow/helpers/src/GlobalTrackClusterReader.cxx +++ b/Detectors/GlobalTrackingWorkflow/helpers/src/GlobalTrackClusterReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/helpers/src/InputHelper.cxx b/Detectors/GlobalTrackingWorkflow/helpers/src/InputHelper.cxx index 12f40c52d2309..d2f3b954b41e3 100644 --- a/Detectors/GlobalTrackingWorkflow/helpers/src/InputHelper.cxx +++ b/Detectors/GlobalTrackingWorkflow/helpers/src/InputHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/CosmicsMatchingSpec.h b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/CosmicsMatchingSpec.h index 21f597ec82d4a..25553c5d56d33 100644 --- a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/CosmicsMatchingSpec.h +++ b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/CosmicsMatchingSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/PrimaryVertexWriterSpec.h b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/PrimaryVertexWriterSpec.h index b722866e17e52..f2eb02d3f3940 100644 --- a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/PrimaryVertexWriterSpec.h +++ b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/PrimaryVertexWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/PrimaryVertexingSpec.h b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/PrimaryVertexingSpec.h index 7c849e4cf256d..6d6fcdc9e70a2 100644 --- a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/PrimaryVertexingSpec.h +++ b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/PrimaryVertexingSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/SecondaryVertexWriterSpec.h b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/SecondaryVertexWriterSpec.h index 76b3b1d815119..6d814cfe05848 100644 --- a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/SecondaryVertexWriterSpec.h +++ b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/SecondaryVertexWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/SecondaryVertexingSpec.h b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/SecondaryVertexingSpec.h index 7fcb91640cf44..3376810d08923 100644 --- a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/SecondaryVertexingSpec.h +++ b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/SecondaryVertexingSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TOFMatcherSpec.h b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TOFMatcherSpec.h index d46a0fa2f995e..d5e1f8f54f6d0 100644 --- a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TOFMatcherSpec.h +++ b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TOFMatcherSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TPCITSMatchingSpec.h b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TPCITSMatchingSpec.h index 4336be4e4f668..7d8839e89ba2b 100644 --- a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TPCITSMatchingSpec.h +++ b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TPCITSMatchingSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TrackCosmicsWriterSpec.h b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TrackCosmicsWriterSpec.h index 8c9cffd2978b4..9cae3afa7b1d5 100644 --- a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TrackCosmicsWriterSpec.h +++ b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TrackCosmicsWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TrackWriterTPCITSSpec.h b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TrackWriterTPCITSSpec.h index 2a3763a61e9f1..f6175dd7c30be 100644 --- a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TrackWriterTPCITSSpec.h +++ b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TrackWriterTPCITSSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/VertexTrackMatcherSpec.h b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/VertexTrackMatcherSpec.h index a7b7d51be7561..fdb17a1d0443f 100644 --- a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/VertexTrackMatcherSpec.h +++ b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/VertexTrackMatcherSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/readers/CMakeLists.txt b/Detectors/GlobalTrackingWorkflow/readers/CMakeLists.txt index 29383d39cc5f1..db20e188a0d3c 100644 --- a/Detectors/GlobalTrackingWorkflow/readers/CMakeLists.txt +++ b/Detectors/GlobalTrackingWorkflow/readers/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(GlobalTrackingWorkflowReaders SOURCES src/TrackCosmicsReaderSpec.cxx diff --git a/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/PrimaryVertexReaderSpec.h b/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/PrimaryVertexReaderSpec.h index 5bec7935d64a1..eb8d5b3c1d801 100644 --- a/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/PrimaryVertexReaderSpec.h +++ b/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/PrimaryVertexReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/SecondaryVertexReaderSpec.h b/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/SecondaryVertexReaderSpec.h index 136e6c4aa8580..6e80bf3ea2310 100644 --- a/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/SecondaryVertexReaderSpec.h +++ b/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/SecondaryVertexReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/TrackCosmicsReaderSpec.h b/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/TrackCosmicsReaderSpec.h index eb5d7cc332beb..214e3d4caf081 100644 --- a/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/TrackCosmicsReaderSpec.h +++ b/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/TrackCosmicsReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h b/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h index 6335eb218c98e..9f0d1dccb2cd2 100644 --- a/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h +++ b/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/readers/src/PrimaryVertexReaderSpec.cxx b/Detectors/GlobalTrackingWorkflow/readers/src/PrimaryVertexReaderSpec.cxx index 64d72fdb04fa9..41b2aee351709 100644 --- a/Detectors/GlobalTrackingWorkflow/readers/src/PrimaryVertexReaderSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/readers/src/PrimaryVertexReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/readers/src/SecondaryVertexReaderSpec.cxx b/Detectors/GlobalTrackingWorkflow/readers/src/SecondaryVertexReaderSpec.cxx index ba7d0edcd50a8..ced2c0b821751 100644 --- a/Detectors/GlobalTrackingWorkflow/readers/src/SecondaryVertexReaderSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/readers/src/SecondaryVertexReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/readers/src/TrackCosmicsReaderSpec.cxx b/Detectors/GlobalTrackingWorkflow/readers/src/TrackCosmicsReaderSpec.cxx index b5ebc458861eb..94de4b9426698 100644 --- a/Detectors/GlobalTrackingWorkflow/readers/src/TrackCosmicsReaderSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/readers/src/TrackCosmicsReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/readers/src/TrackTPCITSReaderSpec.cxx b/Detectors/GlobalTrackingWorkflow/readers/src/TrackTPCITSReaderSpec.cxx index 1079d0481292d..7ad1f88a44da4 100644 --- a/Detectors/GlobalTrackingWorkflow/readers/src/TrackTPCITSReaderSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/readers/src/TrackTPCITSReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/CosmicsMatchingSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/CosmicsMatchingSpec.cxx index 94bf44d658646..efb7f0dd66aab 100644 --- a/Detectors/GlobalTrackingWorkflow/src/CosmicsMatchingSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/CosmicsMatchingSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/PrimaryVertexWriterSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/PrimaryVertexWriterSpec.cxx index 14770ca5e3be2..1ba4312873048 100644 --- a/Detectors/GlobalTrackingWorkflow/src/PrimaryVertexWriterSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/PrimaryVertexWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/PrimaryVertexingSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/PrimaryVertexingSpec.cxx index 86dc983433b16..466cc6817b56f 100644 --- a/Detectors/GlobalTrackingWorkflow/src/PrimaryVertexingSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/PrimaryVertexingSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/SecondaryVertexWriterSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/SecondaryVertexWriterSpec.cxx index b82282c28c5df..ec2307161c7e0 100644 --- a/Detectors/GlobalTrackingWorkflow/src/SecondaryVertexWriterSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/SecondaryVertexWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/SecondaryVertexingSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/SecondaryVertexingSpec.cxx index 446c17c755c08..a464f5ff08200 100644 --- a/Detectors/GlobalTrackingWorkflow/src/SecondaryVertexingSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/SecondaryVertexingSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/TOFMatcherSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/TOFMatcherSpec.cxx index 18a4b57b33445..553a93ea5f3c9 100644 --- a/Detectors/GlobalTrackingWorkflow/src/TOFMatcherSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/TOFMatcherSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/TPCITSMatchingSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/TPCITSMatchingSpec.cxx index 0e77abb9aa75c..9381ba276c5de 100644 --- a/Detectors/GlobalTrackingWorkflow/src/TPCITSMatchingSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/TPCITSMatchingSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/TrackCosmicsWriterSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/TrackCosmicsWriterSpec.cxx index d6e468b56a58f..af3f4052ee8ce 100644 --- a/Detectors/GlobalTrackingWorkflow/src/TrackCosmicsWriterSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/TrackCosmicsWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/TrackWriterTPCITSSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/TrackWriterTPCITSSpec.cxx index 3cca9b6542b7e..fcd557422c7ce 100644 --- a/Detectors/GlobalTrackingWorkflow/src/TrackWriterTPCITSSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/TrackWriterTPCITSSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/VertexTrackMatcherSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/VertexTrackMatcherSpec.cxx index aeae201d05c00..46b568446d161 100644 --- a/Detectors/GlobalTrackingWorkflow/src/VertexTrackMatcherSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/VertexTrackMatcherSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/cosmics-match-workflow.cxx b/Detectors/GlobalTrackingWorkflow/src/cosmics-match-workflow.cxx index 053f000a35a13..dba53cc368e72 100644 --- a/Detectors/GlobalTrackingWorkflow/src/cosmics-match-workflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/cosmics-match-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/primary-vertex-reader-workflow.cxx b/Detectors/GlobalTrackingWorkflow/src/primary-vertex-reader-workflow.cxx index 2011865bed311..8a8de9901cd25 100644 --- a/Detectors/GlobalTrackingWorkflow/src/primary-vertex-reader-workflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/primary-vertex-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/primary-vertexing-workflow.cxx b/Detectors/GlobalTrackingWorkflow/src/primary-vertexing-workflow.cxx index 54ffe98e1f850..66fe5f31ccd0b 100644 --- a/Detectors/GlobalTrackingWorkflow/src/primary-vertexing-workflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/primary-vertexing-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/secondary-vertex-reader-workflow.cxx b/Detectors/GlobalTrackingWorkflow/src/secondary-vertex-reader-workflow.cxx index 440e431414417..0aa7bcf0bc538 100644 --- a/Detectors/GlobalTrackingWorkflow/src/secondary-vertex-reader-workflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/secondary-vertex-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/secondary-vertexing-workflow.cxx b/Detectors/GlobalTrackingWorkflow/src/secondary-vertexing-workflow.cxx index 3554735f4624c..c4a6d23d8a410 100644 --- a/Detectors/GlobalTrackingWorkflow/src/secondary-vertexing-workflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/secondary-vertexing-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/tof-matcher-workflow.cxx b/Detectors/GlobalTrackingWorkflow/src/tof-matcher-workflow.cxx index 52e6beb7a1cdc..d29b0413a14e6 100644 --- a/Detectors/GlobalTrackingWorkflow/src/tof-matcher-workflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/tof-matcher-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/src/tpcits-match-workflow.cxx b/Detectors/GlobalTrackingWorkflow/src/tpcits-match-workflow.cxx index eb1e792f07300..f585ea4116a75 100644 --- a/Detectors/GlobalTrackingWorkflow/src/tpcits-match-workflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/tpcits-match-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/CMakeLists.txt b/Detectors/GlobalTrackingWorkflow/tofworkflow/CMakeLists.txt index 0fe0e6c1fd231..5de38a868f929 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/CMakeLists.txt +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TOFWorkflow SOURCES src/RecoWorkflowSpec.cxx diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowSpec.h b/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowSpec.h index 7dbf1441b3434..ffad01cb111aa 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowSpec.h +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowWithTPCSpec.h b/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowWithTPCSpec.h index c9a7406dc9d6e..342a68c3b6c1e 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowWithTPCSpec.h +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowWithTPCSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/RecoWorkflowSpec.cxx b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/RecoWorkflowSpec.cxx index 2a3a7251b148f..da519603b76a7 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/RecoWorkflowSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/RecoWorkflowSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/RecoWorkflowWithTPCSpec.cxx b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/RecoWorkflowWithTPCSpec.cxx index 94949db47be00..d55dcde324c7f 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/RecoWorkflowWithTPCSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/RecoWorkflowWithTPCSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-calibinfo-reader.cxx b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-calibinfo-reader.cxx index 85915460dad24..59d91d63ae8db 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-calibinfo-reader.cxx +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-calibinfo-reader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-global.cxx b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-global.cxx index 93eb249ea3d77..b0a0bbe7c6656 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-global.cxx +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-global.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-tpc.cxx b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-tpc.cxx index 3adfd794b8371..c703d274a4851 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-tpc.cxx +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-tpc.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-reco-workflow.cxx b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-reco-workflow.cxx index ea9d01fcea600..77b234b7d2cfc 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-reco-workflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/CMakeLists.txt b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/CMakeLists.txt index 0169471002458..d2a1bd7c3a132 100644 --- a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/CMakeLists.txt +++ b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. #TODO Does the O2::GlobalTracking library need to be linked? o2_add_library(TPCInterpolationWorkflow diff --git a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TPCInterpolationSpec.h b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TPCInterpolationSpec.h index 0e1a812e0aa29..5bd95f827e0b4 100644 --- a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TPCInterpolationSpec.h +++ b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TPCInterpolationSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TPCResidualWriterSpec.h b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TPCResidualWriterSpec.h index 59dbbe4e7fb1b..fb68d99de8d8b 100644 --- a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TPCResidualWriterSpec.h +++ b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TPCResidualWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TrackInterpolationReaderSpec.h b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TrackInterpolationReaderSpec.h index 01896f687b6bf..eef17b7b6b2e1 100644 --- a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TrackInterpolationReaderSpec.h +++ b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TrackInterpolationReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TrackInterpolationWorkflow.h b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TrackInterpolationWorkflow.h index 4f631c71d7854..140ab513e82a3 100644 --- a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TrackInterpolationWorkflow.h +++ b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/include/TPCInterpolationWorkflow/TrackInterpolationWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TPCInterpolationSpec.cxx b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TPCInterpolationSpec.cxx index 73d95045cd7b0..ae627e327b071 100644 --- a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TPCInterpolationSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TPCInterpolationSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TPCResidualWriterSpec.cxx b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TPCResidualWriterSpec.cxx index 7c2e5678c8d4d..1dba6e5ec60e3 100644 --- a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TPCResidualWriterSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TPCResidualWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TrackInterpolationReaderSpec.cxx b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TrackInterpolationReaderSpec.cxx index c2e41024be2cf..db79a21c97abe 100644 --- a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TrackInterpolationReaderSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TrackInterpolationReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TrackInterpolationWorkflow.cxx b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TrackInterpolationWorkflow.cxx index d5151d1e33645..b8f778158961a 100644 --- a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TrackInterpolationWorkflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/TrackInterpolationWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/tpc-interpolation-workflow.cxx b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/tpc-interpolation-workflow.cxx index 1205f53bf00b9..dae1fe2880114 100644 --- a/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/tpc-interpolation-workflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/tpcinterpolationworkflow/src/tpc-interpolation-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/CMakeLists.txt b/Detectors/HMPID/CMakeLists.txt index f9ecc0c9f62be..4be323cfcaf09 100644 --- a/Detectors/HMPID/CMakeLists.txt +++ b/Detectors/HMPID/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(simulation) diff --git a/Detectors/HMPID/base/CMakeLists.txt b/Detectors/HMPID/base/CMakeLists.txt index f8cc5111478e2..da9b9e77b73d0 100644 --- a/Detectors/HMPID/base/CMakeLists.txt +++ b/Detectors/HMPID/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(HMPIDBase SOURCES src/Param.cxx src/Geo.cxx diff --git a/Detectors/HMPID/base/include/HMPIDBase/Common.h b/Detectors/HMPID/base/include/HMPIDBase/Common.h index 24c8f9806d4c9..8675d11d47755 100644 --- a/Detectors/HMPID/base/include/HMPIDBase/Common.h +++ b/Detectors/HMPID/base/include/HMPIDBase/Common.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/base/include/HMPIDBase/Geo.h b/Detectors/HMPID/base/include/HMPIDBase/Geo.h index d2af8d6527504..fe830c500769b 100644 --- a/Detectors/HMPID/base/include/HMPIDBase/Geo.h +++ b/Detectors/HMPID/base/include/HMPIDBase/Geo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/base/include/HMPIDBase/Param.h b/Detectors/HMPID/base/include/HMPIDBase/Param.h index 2321aa58641f3..7466ee9f26101 100644 --- a/Detectors/HMPID/base/include/HMPIDBase/Param.h +++ b/Detectors/HMPID/base/include/HMPIDBase/Param.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/base/src/Geo.cxx b/Detectors/HMPID/base/src/Geo.cxx index 5f2490e488a1c..9764764d11989 100644 --- a/Detectors/HMPID/base/src/Geo.cxx +++ b/Detectors/HMPID/base/src/Geo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/base/src/HMPIDBaseLinkDef.h b/Detectors/HMPID/base/src/HMPIDBaseLinkDef.h index 35839105de08e..c01a2479c4725 100644 --- a/Detectors/HMPID/base/src/HMPIDBaseLinkDef.h +++ b/Detectors/HMPID/base/src/HMPIDBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/base/src/Param.cxx b/Detectors/HMPID/base/src/Param.cxx index 01b04e640f27b..9696067801fd6 100644 --- a/Detectors/HMPID/base/src/Param.cxx +++ b/Detectors/HMPID/base/src/Param.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/CMakeLists.txt b/Detectors/HMPID/reconstruction/CMakeLists.txt index e7909e953f2fe..c56e087ba555d 100644 --- a/Detectors/HMPID/reconstruction/CMakeLists.txt +++ b/Detectors/HMPID/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(HMPIDReconstruction SOURCES src/Clusterer.cxx diff --git a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFCoder.h b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFCoder.h index 805dde7cae2d1..2ecee19995caf 100644 --- a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFCoder.h +++ b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFHelper.h b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFHelper.h index e8fb092db9576..5864948577de8 100644 --- a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFHelper.h +++ b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/Clusterer.h b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/Clusterer.h index d551af51bd91d..15d738a3363bf 100644 --- a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/Clusterer.h +++ b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/Clusterer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecodeRawFile.h b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecodeRawFile.h index 3b49837d98806..e92e8375ad0d0 100644 --- a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecodeRawFile.h +++ b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecodeRawFile.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecodeRawMem.h b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecodeRawMem.h index bce2d97a6eb6d..d5d82d0f238e9 100644 --- a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecodeRawMem.h +++ b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecodeRawMem.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecoder.h b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecoder.h index 00d455c0a8d56..be4b1d427b3fd 100644 --- a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecoder.h +++ b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecoder2.h b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecoder2.h index 5ff034e074039..6d49663c9e368 100644 --- a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecoder2.h +++ b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidDecoder2.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidEquipment.h b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidEquipment.h index 0cc1f51d8cd9a..df7c62a169840 100644 --- a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidEquipment.h +++ b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/HmpidEquipment.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/src/CTFCoder.cxx b/Detectors/HMPID/reconstruction/src/CTFCoder.cxx index 405acb62f4140..8f3a67b6d315a 100644 --- a/Detectors/HMPID/reconstruction/src/CTFCoder.cxx +++ b/Detectors/HMPID/reconstruction/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/src/CTFHelper.cxx b/Detectors/HMPID/reconstruction/src/CTFHelper.cxx index 3ce24fcba0c49..db1e5a454bb1a 100644 --- a/Detectors/HMPID/reconstruction/src/CTFHelper.cxx +++ b/Detectors/HMPID/reconstruction/src/CTFHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/src/Clusterer.cxx b/Detectors/HMPID/reconstruction/src/Clusterer.cxx index 87a48176dae28..1f664efebe87b 100644 --- a/Detectors/HMPID/reconstruction/src/Clusterer.cxx +++ b/Detectors/HMPID/reconstruction/src/Clusterer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/src/HMPIDReconstructionLinkDef.h b/Detectors/HMPID/reconstruction/src/HMPIDReconstructionLinkDef.h index 753dd9d0669bd..1fa77ff6676f2 100644 --- a/Detectors/HMPID/reconstruction/src/HMPIDReconstructionLinkDef.h +++ b/Detectors/HMPID/reconstruction/src/HMPIDReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/src/HmpidDecodeRawFile.cxx b/Detectors/HMPID/reconstruction/src/HmpidDecodeRawFile.cxx index a575ca8df84cf..ff47b3e05a153 100644 --- a/Detectors/HMPID/reconstruction/src/HmpidDecodeRawFile.cxx +++ b/Detectors/HMPID/reconstruction/src/HmpidDecodeRawFile.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/src/HmpidDecodeRawMem.cxx b/Detectors/HMPID/reconstruction/src/HmpidDecodeRawMem.cxx index b633838515987..3538a5eb7bc57 100644 --- a/Detectors/HMPID/reconstruction/src/HmpidDecodeRawMem.cxx +++ b/Detectors/HMPID/reconstruction/src/HmpidDecodeRawMem.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/src/HmpidDecoder.cxx b/Detectors/HMPID/reconstruction/src/HmpidDecoder.cxx index 209bbc9320586..bece4b6486d58 100644 --- a/Detectors/HMPID/reconstruction/src/HmpidDecoder.cxx +++ b/Detectors/HMPID/reconstruction/src/HmpidDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/src/HmpidDecoder2.cxx b/Detectors/HMPID/reconstruction/src/HmpidDecoder2.cxx index e953904b374be..d5d592842d1a5 100644 --- a/Detectors/HMPID/reconstruction/src/HmpidDecoder2.cxx +++ b/Detectors/HMPID/reconstruction/src/HmpidDecoder2.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/reconstruction/src/HmpidEquipment.cxx b/Detectors/HMPID/reconstruction/src/HmpidEquipment.cxx index 32983f4545742..17ece2b438b00 100644 --- a/Detectors/HMPID/reconstruction/src/HmpidEquipment.cxx +++ b/Detectors/HMPID/reconstruction/src/HmpidEquipment.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/simulation/CMakeLists.txt b/Detectors/HMPID/simulation/CMakeLists.txt index 2488f68c6accb..17be7cfa9e403 100644 --- a/Detectors/HMPID/simulation/CMakeLists.txt +++ b/Detectors/HMPID/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(HMPIDSimulation SOURCES src/HMPIDDigitizer.cxx diff --git a/Detectors/HMPID/simulation/include/HMPIDSimulation/Detector.h b/Detectors/HMPID/simulation/include/HMPIDSimulation/Detector.h index 288db7bfc93fc..6b1b1f2809c90 100644 --- a/Detectors/HMPID/simulation/include/HMPIDSimulation/Detector.h +++ b/Detectors/HMPID/simulation/include/HMPIDSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/simulation/include/HMPIDSimulation/HMPIDDigitizer.h b/Detectors/HMPID/simulation/include/HMPIDSimulation/HMPIDDigitizer.h index 9d32e3eef54f2..9ebac852f8e8f 100644 --- a/Detectors/HMPID/simulation/include/HMPIDSimulation/HMPIDDigitizer.h +++ b/Detectors/HMPID/simulation/include/HMPIDSimulation/HMPIDDigitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/simulation/include/HMPIDSimulation/HmpidCoder2.h b/Detectors/HMPID/simulation/include/HMPIDSimulation/HmpidCoder2.h index c334281329ad1..2ec5a1fd13f73 100644 --- a/Detectors/HMPID/simulation/include/HMPIDSimulation/HmpidCoder2.h +++ b/Detectors/HMPID/simulation/include/HMPIDSimulation/HmpidCoder2.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/simulation/src/Detector.cxx b/Detectors/HMPID/simulation/src/Detector.cxx index 19e1f182b693c..cd826eaca739f 100644 --- a/Detectors/HMPID/simulation/src/Detector.cxx +++ b/Detectors/HMPID/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/simulation/src/HMPIDDigitizer.cxx b/Detectors/HMPID/simulation/src/HMPIDDigitizer.cxx index b65273bc477e3..e75405cf504b2 100644 --- a/Detectors/HMPID/simulation/src/HMPIDDigitizer.cxx +++ b/Detectors/HMPID/simulation/src/HMPIDDigitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/simulation/src/HMPIDSimulationLinkDef.h b/Detectors/HMPID/simulation/src/HMPIDSimulationLinkDef.h index 6ebaf6c6eb617..752c9b596db4d 100644 --- a/Detectors/HMPID/simulation/src/HMPIDSimulationLinkDef.h +++ b/Detectors/HMPID/simulation/src/HMPIDSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/simulation/src/HmpidCoder2.cxx b/Detectors/HMPID/simulation/src/HmpidCoder2.cxx index ec2d1835e270b..15781467a4155 100644 --- a/Detectors/HMPID/simulation/src/HmpidCoder2.cxx +++ b/Detectors/HMPID/simulation/src/HmpidCoder2.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/CMakeLists.txt b/Detectors/HMPID/workflow/CMakeLists.txt index 1eda85c5bc257..a65251c1f4539 100644 --- a/Detectors/HMPID/workflow/CMakeLists.txt +++ b/Detectors/HMPID/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(HMPIDWorkflow SOURCES src/DataDecoderSpec.cxx diff --git a/Detectors/HMPID/workflow/include/HMPIDWorkflow/ClusterizerSpec.h_notused.h b/Detectors/HMPID/workflow/include/HMPIDWorkflow/ClusterizerSpec.h_notused.h index bf5f5bdbb5313..6102ec481c97c 100644 --- a/Detectors/HMPID/workflow/include/HMPIDWorkflow/ClusterizerSpec.h_notused.h +++ b/Detectors/HMPID/workflow/include/HMPIDWorkflow/ClusterizerSpec.h_notused.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/include/HMPIDWorkflow/DataDecoderSpec.h b/Detectors/HMPID/workflow/include/HMPIDWorkflow/DataDecoderSpec.h index 5ff1cd35e606e..664826919be84 100644 --- a/Detectors/HMPID/workflow/include/HMPIDWorkflow/DataDecoderSpec.h +++ b/Detectors/HMPID/workflow/include/HMPIDWorkflow/DataDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/include/HMPIDWorkflow/DataDecoderSpec2.h b/Detectors/HMPID/workflow/include/HMPIDWorkflow/DataDecoderSpec2.h index bc87676d9bfcb..147433ea46ec6 100644 --- a/Detectors/HMPID/workflow/include/HMPIDWorkflow/DataDecoderSpec2.h +++ b/Detectors/HMPID/workflow/include/HMPIDWorkflow/DataDecoderSpec2.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/include/HMPIDWorkflow/DigitReaderSpec.h_notused.h b/Detectors/HMPID/workflow/include/HMPIDWorkflow/DigitReaderSpec.h_notused.h index 2133992a81e30..eea9b134bd911 100644 --- a/Detectors/HMPID/workflow/include/HMPIDWorkflow/DigitReaderSpec.h_notused.h +++ b/Detectors/HMPID/workflow/include/HMPIDWorkflow/DigitReaderSpec.h_notused.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/include/HMPIDWorkflow/DigitsToRawSpec.h b/Detectors/HMPID/workflow/include/HMPIDWorkflow/DigitsToRawSpec.h index 59d3a48c8ed94..ee184bbe50103 100644 --- a/Detectors/HMPID/workflow/include/HMPIDWorkflow/DigitsToRawSpec.h +++ b/Detectors/HMPID/workflow/include/HMPIDWorkflow/DigitsToRawSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/include/HMPIDWorkflow/DumpDigitsSpec.h b/Detectors/HMPID/workflow/include/HMPIDWorkflow/DumpDigitsSpec.h index b9965c29c1725..a64ceb45ba51b 100644 --- a/Detectors/HMPID/workflow/include/HMPIDWorkflow/DumpDigitsSpec.h +++ b/Detectors/HMPID/workflow/include/HMPIDWorkflow/DumpDigitsSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/include/HMPIDWorkflow/EntropyDecoderSpec.h b/Detectors/HMPID/workflow/include/HMPIDWorkflow/EntropyDecoderSpec.h index bbd90d3a3c4b8..43e3a0c0a5a78 100644 --- a/Detectors/HMPID/workflow/include/HMPIDWorkflow/EntropyDecoderSpec.h +++ b/Detectors/HMPID/workflow/include/HMPIDWorkflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/include/HMPIDWorkflow/EntropyEncoderSpec.h b/Detectors/HMPID/workflow/include/HMPIDWorkflow/EntropyEncoderSpec.h index d5948f00f3887..50b965aeefba7 100644 --- a/Detectors/HMPID/workflow/include/HMPIDWorkflow/EntropyEncoderSpec.h +++ b/Detectors/HMPID/workflow/include/HMPIDWorkflow/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/include/HMPIDWorkflow/PedestalsCalculationSpec.h b/Detectors/HMPID/workflow/include/HMPIDWorkflow/PedestalsCalculationSpec.h index 119624f0acd45..dc0c952484dd6 100644 --- a/Detectors/HMPID/workflow/include/HMPIDWorkflow/PedestalsCalculationSpec.h +++ b/Detectors/HMPID/workflow/include/HMPIDWorkflow/PedestalsCalculationSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/include/HMPIDWorkflow/RawToDigitsSpec.h b/Detectors/HMPID/workflow/include/HMPIDWorkflow/RawToDigitsSpec.h index e919c8b6bb58a..e90995f7f8b83 100644 --- a/Detectors/HMPID/workflow/include/HMPIDWorkflow/RawToDigitsSpec.h +++ b/Detectors/HMPID/workflow/include/HMPIDWorkflow/RawToDigitsSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/include/HMPIDWorkflow/ReadRawFileSpec.h b/Detectors/HMPID/workflow/include/HMPIDWorkflow/ReadRawFileSpec.h index 2dfcb18c3f8a9..2476c52289b23 100644 --- a/Detectors/HMPID/workflow/include/HMPIDWorkflow/ReadRawFileSpec.h +++ b/Detectors/HMPID/workflow/include/HMPIDWorkflow/ReadRawFileSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/include/HMPIDWorkflow/WriteRawFileSpec.h b/Detectors/HMPID/workflow/include/HMPIDWorkflow/WriteRawFileSpec.h index 808e6aa5f22bb..4670b089622cb 100644 --- a/Detectors/HMPID/workflow/include/HMPIDWorkflow/WriteRawFileSpec.h +++ b/Detectors/HMPID/workflow/include/HMPIDWorkflow/WriteRawFileSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/DataDecoderSpec.cxx b/Detectors/HMPID/workflow/src/DataDecoderSpec.cxx index a9627dbecaa35..20e8ca9ebd633 100644 --- a/Detectors/HMPID/workflow/src/DataDecoderSpec.cxx +++ b/Detectors/HMPID/workflow/src/DataDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/DataDecoderSpec2.cxx b/Detectors/HMPID/workflow/src/DataDecoderSpec2.cxx index 0f6a9b180bedc..05dfb21640748 100644 --- a/Detectors/HMPID/workflow/src/DataDecoderSpec2.cxx +++ b/Detectors/HMPID/workflow/src/DataDecoderSpec2.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/DigitsToRawSpec.cxx b/Detectors/HMPID/workflow/src/DigitsToRawSpec.cxx index 5e2693ba2cbae..0d8c3b641c443 100644 --- a/Detectors/HMPID/workflow/src/DigitsToRawSpec.cxx +++ b/Detectors/HMPID/workflow/src/DigitsToRawSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/DumpDigitsSpec.cxx b/Detectors/HMPID/workflow/src/DumpDigitsSpec.cxx index 069f5bcac1ce2..a9b85b1b7835a 100644 --- a/Detectors/HMPID/workflow/src/DumpDigitsSpec.cxx +++ b/Detectors/HMPID/workflow/src/DumpDigitsSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/EntropyDecoderSpec.cxx b/Detectors/HMPID/workflow/src/EntropyDecoderSpec.cxx index 56ec0a414f09e..a719716930bd8 100644 --- a/Detectors/HMPID/workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/HMPID/workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/EntropyEncoderSpec.cxx b/Detectors/HMPID/workflow/src/EntropyEncoderSpec.cxx index 94e9ad05bafb5..7258853eb87f7 100644 --- a/Detectors/HMPID/workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/HMPID/workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/PedestalsCalculationSpec.cxx b/Detectors/HMPID/workflow/src/PedestalsCalculationSpec.cxx index 30d6a353e63cb..5786e476a5efc 100644 --- a/Detectors/HMPID/workflow/src/PedestalsCalculationSpec.cxx +++ b/Detectors/HMPID/workflow/src/PedestalsCalculationSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/RawToDigitsSpec.cxx b/Detectors/HMPID/workflow/src/RawToDigitsSpec.cxx index c7aa78137494d..a505bea538b20 100644 --- a/Detectors/HMPID/workflow/src/RawToDigitsSpec.cxx +++ b/Detectors/HMPID/workflow/src/RawToDigitsSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/ReadRawFileSpec.cxx b/Detectors/HMPID/workflow/src/ReadRawFileSpec.cxx index 2cef42fe076f6..98ff8677c39da 100644 --- a/Detectors/HMPID/workflow/src/ReadRawFileSpec.cxx +++ b/Detectors/HMPID/workflow/src/ReadRawFileSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/WriteRawFileSpec.cxx b/Detectors/HMPID/workflow/src/WriteRawFileSpec.cxx index 15acf78c69513..09b42f7364c10 100644 --- a/Detectors/HMPID/workflow/src/WriteRawFileSpec.cxx +++ b/Detectors/HMPID/workflow/src/WriteRawFileSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/digits-to-raw-stream-workflow.cxx b/Detectors/HMPID/workflow/src/digits-to-raw-stream-workflow.cxx index bc9b662f28285..1b619ab523e61 100644 --- a/Detectors/HMPID/workflow/src/digits-to-raw-stream-workflow.cxx +++ b/Detectors/HMPID/workflow/src/digits-to-raw-stream-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/digits-to-raw-workflow.cxx b/Detectors/HMPID/workflow/src/digits-to-raw-workflow.cxx index a1cd50bf99009..5d707194abc06 100644 --- a/Detectors/HMPID/workflow/src/digits-to-raw-workflow.cxx +++ b/Detectors/HMPID/workflow/src/digits-to-raw-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/dump-digits-stream-workflow.cxx b/Detectors/HMPID/workflow/src/dump-digits-stream-workflow.cxx index a3df07478c3c5..869e2fbcb0450 100644 --- a/Detectors/HMPID/workflow/src/dump-digits-stream-workflow.cxx +++ b/Detectors/HMPID/workflow/src/dump-digits-stream-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/entropy-encoder-workflow.cxx b/Detectors/HMPID/workflow/src/entropy-encoder-workflow.cxx index b45df80fb266a..298158cb2f0df 100644 --- a/Detectors/HMPID/workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/HMPID/workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/raw-to-digits-stream-workflow.cxx b/Detectors/HMPID/workflow/src/raw-to-digits-stream-workflow.cxx index 0c0d1278b03ef..4a142232fc925 100644 --- a/Detectors/HMPID/workflow/src/raw-to-digits-stream-workflow.cxx +++ b/Detectors/HMPID/workflow/src/raw-to-digits-stream-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/raw-to-digits-workflow.cxx b/Detectors/HMPID/workflow/src/raw-to-digits-workflow.cxx index 00939b16aef37..429ac849cc63b 100644 --- a/Detectors/HMPID/workflow/src/raw-to-digits-workflow.cxx +++ b/Detectors/HMPID/workflow/src/raw-to-digits-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/raw-to-pedestals-workflow.cxx b/Detectors/HMPID/workflow/src/raw-to-pedestals-workflow.cxx index ac18c487da079..23b3bc1784e1d 100644 --- a/Detectors/HMPID/workflow/src/raw-to-pedestals-workflow.cxx +++ b/Detectors/HMPID/workflow/src/raw-to-pedestals-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/HMPID/workflow/src/read-raw-file-stream-workflow.cxx b/Detectors/HMPID/workflow/src/read-raw-file-stream-workflow.cxx index 0c635eb0bea20..1f96e24c5a649 100644 --- a/Detectors/HMPID/workflow/src/read-raw-file-stream-workflow.cxx +++ b/Detectors/HMPID/workflow/src/read-raw-file-stream-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/CMakeLists.txt b/Detectors/ITSMFT/CMakeLists.txt index e08e8e47e3f87..e3ac73cf4a482 100644 --- a/Detectors/ITSMFT/CMakeLists.txt +++ b/Detectors/ITSMFT/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(common) add_subdirectory(ITS) diff --git a/Detectors/ITSMFT/ITS/CMakeLists.txt b/Detectors/ITSMFT/ITS/CMakeLists.txt index f6895bf6716be..760c4a2775d6c 100644 --- a/Detectors/ITSMFT/ITS/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(calibration) diff --git a/Detectors/ITSMFT/ITS/QC/CMakeLists.txt b/Detectors/ITSMFT/ITS/QC/CMakeLists.txt index 3d3bc9f8029d1..e99262f0c88d9 100644 --- a/Detectors/ITSMFT/ITS/QC/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/QC/CMakeLists.txt @@ -1,11 +1,12 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(TestDataReaderWorkflow) diff --git a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/CMakeLists.txt b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/CMakeLists.txt index 07a32ff33cc64..152e67f8161b6 100644 --- a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITSQCDataReaderWorkflow SOURCES src/TestDataReaderWorkflow.cxx diff --git a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/RootInclude.h b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/RootInclude.h index 22e4765543435..480ecba821435 100644 --- a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/RootInclude.h +++ b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/RootInclude.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/TestDataGetter.h b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/TestDataGetter.h index 0e4e88bb1e871..90748d60e5f3b 100644 --- a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/TestDataGetter.h +++ b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/TestDataGetter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/TestDataReader.h b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/TestDataReader.h index bef7a21ae273b..fecd7489f1784 100644 --- a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/TestDataReader.h +++ b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/TestDataReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/TestDataReaderWorkflow.h b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/TestDataReaderWorkflow.h index 33a5cee05c57a..7da6bcf421a6b 100644 --- a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/TestDataReaderWorkflow.h +++ b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/include/ITSQCDataReaderWorkflow/TestDataReaderWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/TestDataGetter.cxx b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/TestDataGetter.cxx index a7270207bb18a..0be9dff8e7abc 100644 --- a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/TestDataGetter.cxx +++ b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/TestDataGetter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/TestDataReader.cxx b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/TestDataReader.cxx index 1d665b89db39e..546bbb9250f4c 100644 --- a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/TestDataReader.cxx +++ b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/TestDataReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/TestDataReaderWorkflow.cxx b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/TestDataReaderWorkflow.cxx index 6942258133414..aa1f0933222fd 100644 --- a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/TestDataReaderWorkflow.cxx +++ b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/TestDataReaderWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/its-qc-data-reader.cxx b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/its-qc-data-reader.cxx index 15a623d421242..5f78190e31f4c 100644 --- a/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/its-qc-data-reader.cxx +++ b/Detectors/ITSMFT/ITS/QC/TestDataReaderWorkflow/src/its-qc-data-reader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/base/CMakeLists.txt b/Detectors/ITSMFT/ITS/base/CMakeLists.txt index 6c311d5fc409f..170f0458feddd 100644 --- a/Detectors/ITSMFT/ITS/base/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITSBase SOURCES src/GeometryTGeo.cxx src/ContainerFactory.cxx diff --git a/Detectors/ITSMFT/ITS/base/include/ITSBase/ContainerFactory.h b/Detectors/ITSMFT/ITS/base/include/ITSBase/ContainerFactory.h index 098390616b3d2..baf2f3b94d243 100644 --- a/Detectors/ITSMFT/ITS/base/include/ITSBase/ContainerFactory.h +++ b/Detectors/ITSMFT/ITS/base/include/ITSBase/ContainerFactory.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/base/include/ITSBase/GeometryTGeo.h b/Detectors/ITSMFT/ITS/base/include/ITSBase/GeometryTGeo.h index e9ec3cfd1e7ca..66c15c8e26796 100644 --- a/Detectors/ITSMFT/ITS/base/include/ITSBase/GeometryTGeo.h +++ b/Detectors/ITSMFT/ITS/base/include/ITSBase/GeometryTGeo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/base/include/ITSBase/MisalignmentParameter.h b/Detectors/ITSMFT/ITS/base/include/ITSBase/MisalignmentParameter.h index e8b118a3c6a60..0e663f23b2514 100644 --- a/Detectors/ITSMFT/ITS/base/include/ITSBase/MisalignmentParameter.h +++ b/Detectors/ITSMFT/ITS/base/include/ITSBase/MisalignmentParameter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/base/src/ContainerFactory.cxx b/Detectors/ITSMFT/ITS/base/src/ContainerFactory.cxx index 0bb3371e6716c..43e67ff9fabac 100644 --- a/Detectors/ITSMFT/ITS/base/src/ContainerFactory.cxx +++ b/Detectors/ITSMFT/ITS/base/src/ContainerFactory.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/base/src/GeometryTGeo.cxx b/Detectors/ITSMFT/ITS/base/src/GeometryTGeo.cxx index d105caad7d468..6db3c601d4b59 100644 --- a/Detectors/ITSMFT/ITS/base/src/GeometryTGeo.cxx +++ b/Detectors/ITSMFT/ITS/base/src/GeometryTGeo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/base/src/ITSBaseLinkDef.h b/Detectors/ITSMFT/ITS/base/src/ITSBaseLinkDef.h index c767dfe7a019b..8ed030f65bac2 100644 --- a/Detectors/ITSMFT/ITS/base/src/ITSBaseLinkDef.h +++ b/Detectors/ITSMFT/ITS/base/src/ITSBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/base/src/MisalignmentParameter.cxx b/Detectors/ITSMFT/ITS/base/src/MisalignmentParameter.cxx index c775961a56d8f..98e8518e4ee61 100644 --- a/Detectors/ITSMFT/ITS/base/src/MisalignmentParameter.cxx +++ b/Detectors/ITSMFT/ITS/base/src/MisalignmentParameter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/calibration/CMakeLists.txt b/Detectors/ITSMFT/ITS/calibration/CMakeLists.txt index 8b0c1c933a0e6..9453b9e365e5a 100644 --- a/Detectors/ITSMFT/ITS/calibration/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/calibration/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(macros) diff --git a/Detectors/ITSMFT/ITS/calibration/include/ITSCalibration/NoiseCalibrator.h b/Detectors/ITSMFT/ITS/calibration/include/ITSCalibration/NoiseCalibrator.h index 0ff1d9ed13f52..06cde8aac7adb 100644 --- a/Detectors/ITSMFT/ITS/calibration/include/ITSCalibration/NoiseCalibrator.h +++ b/Detectors/ITSMFT/ITS/calibration/include/ITSCalibration/NoiseCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/calibration/include/ITSCalibration/NoiseCalibratorSpec.h b/Detectors/ITSMFT/ITS/calibration/include/ITSCalibration/NoiseCalibratorSpec.h index 35464fb7976f4..e793f74095c34 100644 --- a/Detectors/ITSMFT/ITS/calibration/include/ITSCalibration/NoiseCalibratorSpec.h +++ b/Detectors/ITSMFT/ITS/calibration/include/ITSCalibration/NoiseCalibratorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/calibration/include/ITSCalibration/NoiseSlotCalibrator.h b/Detectors/ITSMFT/ITS/calibration/include/ITSCalibration/NoiseSlotCalibrator.h index fad8c3cbee591..28f58f0341bf9 100644 --- a/Detectors/ITSMFT/ITS/calibration/include/ITSCalibration/NoiseSlotCalibrator.h +++ b/Detectors/ITSMFT/ITS/calibration/include/ITSCalibration/NoiseSlotCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/calibration/macros/CMakeLists.txt b/Detectors/ITSMFT/ITS/calibration/macros/CMakeLists.txt index ef2e78517ace7..1b9f5d87893cb 100644 --- a/Detectors/ITSMFT/ITS/calibration/macros/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/calibration/macros/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(MakeNoiseMapFromDigits.C PUBLIC_LINK_LIBRARIES O2::DataFormatsITSMFT diff --git a/Detectors/ITSMFT/ITS/calibration/src/ITSCalibrationLinkDef.h b/Detectors/ITSMFT/ITS/calibration/src/ITSCalibrationLinkDef.h index 768675dc3f0cc..0cdcb51916a33 100644 --- a/Detectors/ITSMFT/ITS/calibration/src/ITSCalibrationLinkDef.h +++ b/Detectors/ITSMFT/ITS/calibration/src/ITSCalibrationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/calibration/src/NoiseCalibrator.cxx b/Detectors/ITSMFT/ITS/calibration/src/NoiseCalibrator.cxx index 56c10b0eb56ed..9b32169ebd432 100644 --- a/Detectors/ITSMFT/ITS/calibration/src/NoiseCalibrator.cxx +++ b/Detectors/ITSMFT/ITS/calibration/src/NoiseCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/ITS/calibration/src/NoiseCalibratorSpec.cxx index 58b6344ba187d..910643d16cd23 100644 --- a/Detectors/ITSMFT/ITS/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/ITS/calibration/src/NoiseCalibratorSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/calibration/src/NoiseSlotCalibrator.cxx b/Detectors/ITSMFT/ITS/calibration/src/NoiseSlotCalibrator.cxx index 7f0f6335d73c3..54139fab417e8 100644 --- a/Detectors/ITSMFT/ITS/calibration/src/NoiseSlotCalibrator.cxx +++ b/Detectors/ITSMFT/ITS/calibration/src/NoiseSlotCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/calibration/testWorkflow/its-calib-workflow.cxx b/Detectors/ITSMFT/ITS/calibration/testWorkflow/its-calib-workflow.cxx index 855130ca419de..c222b6e196c74 100644 --- a/Detectors/ITSMFT/ITS/calibration/testWorkflow/its-calib-workflow.cxx +++ b/Detectors/ITSMFT/ITS/calibration/testWorkflow/its-calib-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/macros/CMakeLists.txt b/Detectors/ITSMFT/ITS/macros/CMakeLists.txt index b88d9a3a43c4e..8c6767cfdad89 100644 --- a/Detectors/ITSMFT/ITS/macros/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/macros/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(EVE) add_subdirectory(test) diff --git a/Detectors/ITSMFT/ITS/macros/EVE/CMakeLists.txt b/Detectors/ITSMFT/ITS/macros/EVE/CMakeLists.txt index 4e03ff082bc56..c29701ec3b47c 100644 --- a/Detectors/ITSMFT/ITS/macros/EVE/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/macros/EVE/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(DisplayEventsComp.C PUBLIC_LINK_LIBRARIES O2::EventVisualisationView diff --git a/Detectors/ITSMFT/ITS/macros/test/CMakeLists.txt b/Detectors/ITSMFT/ITS/macros/test/CMakeLists.txt index 8f9d96377d768..064ebcbef14b4 100644 --- a/Detectors/ITSMFT/ITS/macros/test/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/macros/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(CheckClusterShape.C PUBLIC_LINK_LIBRARIES O2::ITSBase O2::ITSMFTSimulation diff --git a/Detectors/ITSMFT/ITS/reconstruction/CMakeLists.txt b/Detectors/ITSMFT/ITS/reconstruction/CMakeLists.txt index 8c285186f0597..a5fcd6d475f50 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( ITSReconstruction diff --git a/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/ClustererTask.h b/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/ClustererTask.h index 28ea20383ad1a..a9b6335230f1d 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/ClustererTask.h +++ b/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/ClustererTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/CookedTracker.h b/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/CookedTracker.h index 6a4cfd2b36fd9..d8dff96b30539 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/CookedTracker.h +++ b/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/CookedTracker.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/FastMultEst.h b/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/FastMultEst.h index 0784b3b5b6705..abbee1b63a371 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/FastMultEst.h +++ b/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/FastMultEst.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/FastMultEstConfig.h b/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/FastMultEstConfig.h index b6cbb61e1244c..a22de1d8b97ea 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/FastMultEstConfig.h +++ b/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/FastMultEstConfig.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/RecoGeomHelper.h b/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/RecoGeomHelper.h index 5e927df91c1e1..f4b51fada3efb 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/RecoGeomHelper.h +++ b/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/RecoGeomHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/TrivialVertexer.h b/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/TrivialVertexer.h index 43ed0b905ae43..3eb218dc973f6 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/TrivialVertexer.h +++ b/Detectors/ITSMFT/ITS/reconstruction/include/ITSReconstruction/TrivialVertexer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/reconstruction/src/ClustererTask.cxx b/Detectors/ITSMFT/ITS/reconstruction/src/ClustererTask.cxx index 033e5e2b92b87..27793f8391dea 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/src/ClustererTask.cxx +++ b/Detectors/ITSMFT/ITS/reconstruction/src/ClustererTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/reconstruction/src/CookedTracker.cxx b/Detectors/ITSMFT/ITS/reconstruction/src/CookedTracker.cxx index 0e0303dd97701..8ed4d50d776b9 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/src/CookedTracker.cxx +++ b/Detectors/ITSMFT/ITS/reconstruction/src/CookedTracker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/reconstruction/src/FastMultEst.cxx b/Detectors/ITSMFT/ITS/reconstruction/src/FastMultEst.cxx index 605f3519b66d4..b432c404002aa 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/src/FastMultEst.cxx +++ b/Detectors/ITSMFT/ITS/reconstruction/src/FastMultEst.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/reconstruction/src/FastMultEstConfig.cxx b/Detectors/ITSMFT/ITS/reconstruction/src/FastMultEstConfig.cxx index fc6d6613045a8..5b8fb68b41993 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/src/FastMultEstConfig.cxx +++ b/Detectors/ITSMFT/ITS/reconstruction/src/FastMultEstConfig.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/reconstruction/src/ITSReconstructionLinkDef.h b/Detectors/ITSMFT/ITS/reconstruction/src/ITSReconstructionLinkDef.h index 216a0443e1475..c93cf03d0ed3d 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/src/ITSReconstructionLinkDef.h +++ b/Detectors/ITSMFT/ITS/reconstruction/src/ITSReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/reconstruction/src/RecoGeomHelper.cxx b/Detectors/ITSMFT/ITS/reconstruction/src/RecoGeomHelper.cxx index 678cba0b52fcd..8af5b5efddd25 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/src/RecoGeomHelper.cxx +++ b/Detectors/ITSMFT/ITS/reconstruction/src/RecoGeomHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/reconstruction/src/TrivialVertexer.cxx b/Detectors/ITSMFT/ITS/reconstruction/src/TrivialVertexer.cxx index 6eb0cfbb36f5e..0b0291e53642a 100644 --- a/Detectors/ITSMFT/ITS/reconstruction/src/TrivialVertexer.cxx +++ b/Detectors/ITSMFT/ITS/reconstruction/src/TrivialVertexer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/simulation/CMakeLists.txt b/Detectors/ITSMFT/ITS/simulation/CMakeLists.txt index fbd66ccd7946d..4525f9e40b74e 100644 --- a/Detectors/ITSMFT/ITS/simulation/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITSSimulation SOURCES src/V11Geometry.cxx src/V1Layer.cxx src/V3Layer.cxx diff --git a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/Detector.h b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/Detector.h index 36a1d9de723e0..e28d319a35892 100644 --- a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/Detector.h +++ b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V11Geometry.h b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V11Geometry.h index ff62622b4cd4e..bdbd9f0a5c66a 100644 --- a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V11Geometry.h +++ b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V11Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V1Layer.h b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V1Layer.h index 97e0d120fbb7a..76e9d00e04e68 100644 --- a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V1Layer.h +++ b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V1Layer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V3Layer.h b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V3Layer.h index 20fc6947fb142..15c46e39374d3 100644 --- a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V3Layer.h +++ b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V3Layer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V3Services.h b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V3Services.h index dd99c9389f599..f289e4dbde444 100644 --- a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V3Services.h +++ b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V3Services.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/simulation/src/Detector.cxx b/Detectors/ITSMFT/ITS/simulation/src/Detector.cxx index 81ad8f902d6a5..f8f19da7436ac 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/Detector.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/simulation/src/ITSSimulationLinkDef.h b/Detectors/ITSMFT/ITS/simulation/src/ITSSimulationLinkDef.h index 8b61217aaae02..005efb4c6c3e9 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/ITSSimulationLinkDef.h +++ b/Detectors/ITSMFT/ITS/simulation/src/ITSSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/simulation/src/V11Geometry.cxx b/Detectors/ITSMFT/ITS/simulation/src/V11Geometry.cxx index 9e4377fa226e9..9f39736dfebb3 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/V11Geometry.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/V11Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/simulation/src/V1Layer.cxx b/Detectors/ITSMFT/ITS/simulation/src/V1Layer.cxx index 416d69cdb1562..43fc298dd70c5 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/V1Layer.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/V1Layer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/simulation/src/V3Layer.cxx b/Detectors/ITSMFT/ITS/simulation/src/V3Layer.cxx index 01cf4e06292be..b644b6c4afb0f 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/V3Layer.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/V3Layer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx b/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx index bcce40841c8ed..7f6f67388f0b3 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/simulation/src/digi2raw.cxx b/Detectors/ITSMFT/ITS/simulation/src/digi2raw.cxx index e7df866663740..86fa071e31049 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/digi2raw.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/digi2raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/CMakeLists.txt b/Detectors/ITSMFT/ITS/tracking/CMakeLists.txt index e559af8d64364..c47927c93702d 100644 --- a/Detectors/ITSMFT/ITS/tracking/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/tracking/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITStracking TARGETVARNAME targetName diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/CMakeLists.txt b/Detectors/ITSMFT/ITS/tracking/cuda/CMakeLists.txt index 4b38a02a1da3f..c47aa1f79e32b 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/tracking/cuda/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. message(STATUS "Building ITS CUDA tracker") diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Array.h b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Array.h index 615b1eb3b9d6a..3fafa62281feb 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Array.h +++ b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Array.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/ClusterLinesGPU.h b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/ClusterLinesGPU.h index 02dd6902152e6..8fa1c5a239054 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/ClusterLinesGPU.h +++ b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/ClusterLinesGPU.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Context.h b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Context.h index 4ce54b25b2ac4..9dad67e1013f1 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Context.h +++ b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Context.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/DeviceStoreNV.h b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/DeviceStoreNV.h index a70d69d8fdd55..3cbc767985850 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/DeviceStoreNV.h +++ b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/DeviceStoreNV.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/DeviceStoreVertexerGPU.h b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/DeviceStoreVertexerGPU.h index 568f246bd69c0..f6214d682317d 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/DeviceStoreVertexerGPU.h +++ b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/DeviceStoreVertexerGPU.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/PrimaryVertexContextNV.h b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/PrimaryVertexContextNV.h index 9809b36bebbcb..01b8b9c8d85c5 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/PrimaryVertexContextNV.h +++ b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/PrimaryVertexContextNV.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Stream.h b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Stream.h index f00b5f374c884..f92c9f745420f 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Stream.h +++ b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Stream.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/TrackerTraitsNV.h b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/TrackerTraitsNV.h index b7bac25a170dd..8f0c8306cd21c 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/TrackerTraitsNV.h +++ b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/TrackerTraitsNV.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/UniquePointer.h b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/UniquePointer.h index 74ff53865f36d..447fe9df2ed9f 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/UniquePointer.h +++ b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/UniquePointer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Utils.h b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Utils.h index 54dacb9217207..6b9028bbc5947 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Utils.h +++ b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Utils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Vector.h b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Vector.h index 5e7d58f253eb5..8c9f145e820fe 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Vector.h +++ b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/Vector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/VertexerTraitsGPU.h b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/VertexerTraitsGPU.h index 48c3c7043a598..f77339d9170d2 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/VertexerTraitsGPU.h +++ b/Detectors/ITSMFT/ITS/tracking/cuda/include/ITStrackingCUDA/VertexerTraitsGPU.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/src/ClusterLinesGPU.cu b/Detectors/ITSMFT/ITS/tracking/cuda/src/ClusterLinesGPU.cu index 64d861ad16091..d9028e2a7db7b 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/src/ClusterLinesGPU.cu +++ b/Detectors/ITSMFT/ITS/tracking/cuda/src/ClusterLinesGPU.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/src/Context.cu b/Detectors/ITSMFT/ITS/tracking/cuda/src/Context.cu index 4f76b86f33992..eee8aa878f03e 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/src/Context.cu +++ b/Detectors/ITSMFT/ITS/tracking/cuda/src/Context.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/src/DeviceStoreNV.cu b/Detectors/ITSMFT/ITS/tracking/cuda/src/DeviceStoreNV.cu index a6c5a259be63c..dff128f3b35f2 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/src/DeviceStoreNV.cu +++ b/Detectors/ITSMFT/ITS/tracking/cuda/src/DeviceStoreNV.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/src/DeviceStoreVertexerGPU.cu b/Detectors/ITSMFT/ITS/tracking/cuda/src/DeviceStoreVertexerGPU.cu index 0830ff6d2b529..a7e96fb046c2e 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/src/DeviceStoreVertexerGPU.cu +++ b/Detectors/ITSMFT/ITS/tracking/cuda/src/DeviceStoreVertexerGPU.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/src/Stream.cu b/Detectors/ITSMFT/ITS/tracking/cuda/src/Stream.cu index 1734a5be7a332..94461ab3ed3f0 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/src/Stream.cu +++ b/Detectors/ITSMFT/ITS/tracking/cuda/src/Stream.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/src/TrackerTraitsNV.cu b/Detectors/ITSMFT/ITS/tracking/cuda/src/TrackerTraitsNV.cu index 48bb31053c875..389e42fe05726 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/src/TrackerTraitsNV.cu +++ b/Detectors/ITSMFT/ITS/tracking/cuda/src/TrackerTraitsNV.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/src/Utils.cu b/Detectors/ITSMFT/ITS/tracking/cuda/src/Utils.cu index 26720b80e9193..d93ab64e7623a 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/src/Utils.cu +++ b/Detectors/ITSMFT/ITS/tracking/cuda/src/Utils.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/cuda/src/VertexerTraitsGPU.cu b/Detectors/ITSMFT/ITS/tracking/cuda/src/VertexerTraitsGPU.cu index 975aa9d5eb6f2..c1bf8f49f5fb0 100644 --- a/Detectors/ITSMFT/ITS/tracking/cuda/src/VertexerTraitsGPU.cu +++ b/Detectors/ITSMFT/ITS/tracking/cuda/src/VertexerTraitsGPU.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/CMakeLists.txt b/Detectors/ITSMFT/ITS/tracking/hip/CMakeLists.txt index b857741663c64..6b573722f43a9 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/tracking/hip/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(CMAKE_CXX_COMPILER ${hip_HIPCC_EXECUTABLE}) set(CMAKE_CXX_EXTENSIONS OFF) diff --git a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/ArrayHIP.h b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/ArrayHIP.h index 3002c6b68d9b5..9f96700632fa5 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/ArrayHIP.h +++ b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/ArrayHIP.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/ClusterLinesHIP.h b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/ClusterLinesHIP.h index 2da251e7919b0..6d1d6dd5fb74d 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/ClusterLinesHIP.h +++ b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/ClusterLinesHIP.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/ContextHIP.h b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/ContextHIP.h index 5eb74fe85e16b..c4009f9a8464b 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/ContextHIP.h +++ b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/ContextHIP.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/DeviceStoreVertexerHIP.h b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/DeviceStoreVertexerHIP.h index 7cb29eec95cb2..a930cc331ce52 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/DeviceStoreVertexerHIP.h +++ b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/DeviceStoreVertexerHIP.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/StreamHIP.h b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/StreamHIP.h index 0377e20d3e84e..1707e4e466902 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/StreamHIP.h +++ b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/StreamHIP.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/UniquePointerHIP.h b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/UniquePointerHIP.h index afe6e22af7a8b..282f02ef6c590 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/UniquePointerHIP.h +++ b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/UniquePointerHIP.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/UtilsHIP.h b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/UtilsHIP.h index f1d80e8e7b56b..10a789d136106 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/UtilsHIP.h +++ b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/UtilsHIP.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/VectorHIP.h b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/VectorHIP.h index 9f15ac3ed430c..fa9146234d4ce 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/VectorHIP.h +++ b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/VectorHIP.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/VertexerTraitsHIP.h b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/VertexerTraitsHIP.h index 1f60d02effaad..71cef1be4c075 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/VertexerTraitsHIP.h +++ b/Detectors/ITSMFT/ITS/tracking/hip/include/ITStrackingHIP/VertexerTraitsHIP.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/src/ClusterLinesHIP.hip.cxx b/Detectors/ITSMFT/ITS/tracking/hip/src/ClusterLinesHIP.hip.cxx index 00f5788108660..6c4b7b1c4ebea 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/src/ClusterLinesHIP.hip.cxx +++ b/Detectors/ITSMFT/ITS/tracking/hip/src/ClusterLinesHIP.hip.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/src/ContextHIP.hip.cxx b/Detectors/ITSMFT/ITS/tracking/hip/src/ContextHIP.hip.cxx index d43cfc2320ff2..a6eb6fdac5224 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/src/ContextHIP.hip.cxx +++ b/Detectors/ITSMFT/ITS/tracking/hip/src/ContextHIP.hip.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/src/DeviceStoreVertexerHIP.hip.cxx b/Detectors/ITSMFT/ITS/tracking/hip/src/DeviceStoreVertexerHIP.hip.cxx index e3c00813ece87..28e233ffc570f 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/src/DeviceStoreVertexerHIP.hip.cxx +++ b/Detectors/ITSMFT/ITS/tracking/hip/src/DeviceStoreVertexerHIP.hip.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/src/StreamHIP.hip.cxx b/Detectors/ITSMFT/ITS/tracking/hip/src/StreamHIP.hip.cxx index 28ab175f155d8..8f9d351999331 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/src/StreamHIP.hip.cxx +++ b/Detectors/ITSMFT/ITS/tracking/hip/src/StreamHIP.hip.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/src/UtilsHIP.hip.cxx b/Detectors/ITSMFT/ITS/tracking/hip/src/UtilsHIP.hip.cxx index fb568e3dfd773..2b64e0756b585 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/src/UtilsHIP.hip.cxx +++ b/Detectors/ITSMFT/ITS/tracking/hip/src/UtilsHIP.hip.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/hip/src/VertexerTraitsHIP.hip.cxx b/Detectors/ITSMFT/ITS/tracking/hip/src/VertexerTraitsHIP.hip.cxx index 237824aa05cae..de83c0432c277 100644 --- a/Detectors/ITSMFT/ITS/tracking/hip/src/VertexerTraitsHIP.hip.cxx +++ b/Detectors/ITSMFT/ITS/tracking/hip/src/VertexerTraitsHIP.hip.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/ArrayUtils.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/ArrayUtils.h index 059cde495b013..971ae6a7fe83a 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/ArrayUtils.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/ArrayUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Cell.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Cell.h index 8e71bade83e5f..e345516f07527 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Cell.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Cell.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Cluster.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Cluster.h index 7a64698998b37..9b97bd2d7cae8 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Cluster.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Cluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/ClusterLines.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/ClusterLines.h index 74b2105ecb850..ca05ec41ab143 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/ClusterLines.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/ClusterLines.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Configuration.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Configuration.h index 930aa273d3766..d3fba50eb4b8c 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Configuration.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Configuration.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Constants.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Constants.h index 5f9f22a51e035..1f045f3aa9d13 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Constants.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Constants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Definitions.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Definitions.h index 96ee27299dad1..52b63ac2e6864 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Definitions.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Definitions.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/IOUtils.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/IOUtils.h index 621052f088f91..87e8f2557e87c 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/IOUtils.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/IOUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/IndexTableUtils.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/IndexTableUtils.h index 3f9e85f887896..4ace28b31e490 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/IndexTableUtils.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/IndexTableUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Label.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Label.h index 90c9031d17261..bb39c9349e273 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Label.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Label.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/MathUtils.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/MathUtils.h index 8e8df9e9c7a74..16b839afba49e 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/MathUtils.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/MathUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/PrimaryVertexContext.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/PrimaryVertexContext.h index 112c3fe77d3dd..4338e08609cfa 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/PrimaryVertexContext.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/PrimaryVertexContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/ROframe.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/ROframe.h index 45ba3e4498ce3..a4fcb659f7d6d 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/ROframe.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/ROframe.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Road.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Road.h index 04946fad243e7..ceb799cc82899 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Road.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Road.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/StandaloneDebugger.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/StandaloneDebugger.h index 6ad62f9247a06..c00bf889656d8 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/StandaloneDebugger.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/StandaloneDebugger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Tracker.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Tracker.h index 956856b601588..56b4d5a14212c 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Tracker.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Tracker.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackerTraits.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackerTraits.h index 249d2ea838d36..9bb03bb328a42 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackerTraits.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackerTraits.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackerTraitsCPU.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackerTraitsCPU.h index a43fc44b28ef1..3fbb208e06d27 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackerTraitsCPU.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackerTraitsCPU.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackingConfigParam.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackingConfigParam.h index 82fc7baa41238..e39e22b364197 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackingConfigParam.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/TrackingConfigParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Tracklet.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Tracklet.h index b8773035b8bfb..e8cc02a81dd79 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Tracklet.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Tracklet.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Vertexer.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Vertexer.h index 88984c94daf32..51fda44ffd8b6 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Vertexer.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/Vertexer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/VertexerTraits.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/VertexerTraits.h index 7449fcaccbb52..3d7da70dfc84c 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/VertexerTraits.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/VertexerTraits.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/json.h b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/json.h index f6bf18f6e04e5..d1d246b329907 100644 --- a/Detectors/ITSMFT/ITS/tracking/include/ITStracking/json.h +++ b/Detectors/ITSMFT/ITS/tracking/include/ITStracking/json.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/Cluster.cxx b/Detectors/ITSMFT/ITS/tracking/src/Cluster.cxx index 7f6b4e49d2c79..9e92af4f510d9 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/Cluster.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/Cluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/ClusterLines.cxx b/Detectors/ITSMFT/ITS/tracking/src/ClusterLines.cxx index d152499f74f1b..4b271bea0e5c1 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/ClusterLines.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/ClusterLines.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/IOUtils.cxx b/Detectors/ITSMFT/ITS/tracking/src/IOUtils.cxx index e21d75cf2adb2..fd18501491562 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/IOUtils.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/IOUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/IndexTableUtils.cxx b/Detectors/ITSMFT/ITS/tracking/src/IndexTableUtils.cxx index 47adb50c21520..7152640e9a70f 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/IndexTableUtils.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/IndexTableUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/Label.cxx b/Detectors/ITSMFT/ITS/tracking/src/Label.cxx index f5b560d9b00f5..16812e4c97ac1 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/Label.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/Label.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/PrimaryVertexContext.cxx b/Detectors/ITSMFT/ITS/tracking/src/PrimaryVertexContext.cxx index 9567162b40376..0b70063e550cb 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/PrimaryVertexContext.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/PrimaryVertexContext.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/ROframe.cxx b/Detectors/ITSMFT/ITS/tracking/src/ROframe.cxx index 76ba90171c3cf..19bfabadd605a 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/ROframe.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/ROframe.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/Road.cxx b/Detectors/ITSMFT/ITS/tracking/src/Road.cxx index facb1f43fa1e2..5d1187673bba1 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/Road.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/Road.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/StandaloneDebugger.cxx b/Detectors/ITSMFT/ITS/tracking/src/StandaloneDebugger.cxx index 32625e1ed643d..7be852282841f 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/StandaloneDebugger.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/StandaloneDebugger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/Tracker.cxx b/Detectors/ITSMFT/ITS/tracking/src/Tracker.cxx index 367e2163472be..2eb5dfbb9adfd 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/Tracker.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/Tracker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/TrackerTraitsCPU.cxx b/Detectors/ITSMFT/ITS/tracking/src/TrackerTraitsCPU.cxx index c47db037d6ccd..db1897dfd927b 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/TrackerTraitsCPU.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/TrackerTraitsCPU.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/TrackingConfigParam.cxx b/Detectors/ITSMFT/ITS/tracking/src/TrackingConfigParam.cxx index c903b41843b1e..89b4f79efe554 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/TrackingConfigParam.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/TrackingConfigParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/TrackingLinkDef.h b/Detectors/ITSMFT/ITS/tracking/src/TrackingLinkDef.h index 385cec4ef8450..2a22d8306fdb8 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/TrackingLinkDef.h +++ b/Detectors/ITSMFT/ITS/tracking/src/TrackingLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/Vertexer.cxx b/Detectors/ITSMFT/ITS/tracking/src/Vertexer.cxx index a9d456eee2c9f..f8c723aa2f9ec 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/Vertexer.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/Vertexer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/tracking/src/VertexerTraits.cxx b/Detectors/ITSMFT/ITS/tracking/src/VertexerTraits.cxx index 5e4b1ad94157e..7b89545a07692 100644 --- a/Detectors/ITSMFT/ITS/tracking/src/VertexerTraits.cxx +++ b/Detectors/ITSMFT/ITS/tracking/src/VertexerTraits.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/CMakeLists.txt b/Detectors/ITSMFT/ITS/workflow/CMakeLists.txt index cc968bb1ac0c1..9bc96e9afaa59 100644 --- a/Detectors/ITSMFT/ITS/workflow/CMakeLists.txt +++ b/Detectors/ITSMFT/ITS/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITSWorkflow SOURCES src/RecoWorkflow.cxx diff --git a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/ClusterWriterSpec.h b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/ClusterWriterSpec.h index db85ef5b54bee..42b96786af27a 100644 --- a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/ClusterWriterSpec.h +++ b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/ClusterWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/ClusterWriterWorkflow.h b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/ClusterWriterWorkflow.h index 3ac0c47d5e9c9..15c22f9bcf23d 100644 --- a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/ClusterWriterWorkflow.h +++ b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/ClusterWriterWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/ClustererSpec.h b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/ClustererSpec.h index 475d325f7132d..e9d70c78c5c82 100644 --- a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/ClustererSpec.h +++ b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/ClustererSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/CookedTrackerSpec.h b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/CookedTrackerSpec.h index 77e17fdd6b513..07ab9c1075359 100644 --- a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/CookedTrackerSpec.h +++ b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/CookedTrackerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/IRFrameReaderSpec.h b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/IRFrameReaderSpec.h index 86ce9efb0db03..7d5caf5be6075 100644 --- a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/IRFrameReaderSpec.h +++ b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/IRFrameReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/IRFrameWriterSpec.h b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/IRFrameWriterSpec.h index 3ce347ed405cd..e6c35b9de70e2 100644 --- a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/IRFrameWriterSpec.h +++ b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/IRFrameWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/RecoWorkflow.h b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/RecoWorkflow.h index 6a8a279c3dfb8..ba3c33d0fe0a1 100644 --- a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/RecoWorkflow.h +++ b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/RecoWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackReaderSpec.h b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackReaderSpec.h index 066b679c1c026..42f74943d08d6 100644 --- a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackReaderSpec.h +++ b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackWriterSpec.h b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackWriterSpec.h index 85afb4c6a2e11..686a9f29371f4 100644 --- a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackWriterSpec.h +++ b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackerSpec.h b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackerSpec.h index 0cf34f38039f4..a43ac8edaafe2 100644 --- a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackerSpec.h +++ b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/TrackerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/VertexReaderSpec.h b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/VertexReaderSpec.h index 64ecd2d4453e0..f412640a702ef 100644 --- a/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/VertexReaderSpec.h +++ b/Detectors/ITSMFT/ITS/workflow/include/ITSWorkflow/VertexReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/ClusterWriterSpec.cxx b/Detectors/ITSMFT/ITS/workflow/src/ClusterWriterSpec.cxx index bfd88f2189f01..9aaae6dfca236 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/ClusterWriterSpec.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/ClusterWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/ClusterWriterWorkflow.cxx b/Detectors/ITSMFT/ITS/workflow/src/ClusterWriterWorkflow.cxx index 1330f30f7e42c..ca5db7acd63e1 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/ClusterWriterWorkflow.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/ClusterWriterWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/ClustererSpec.cxx b/Detectors/ITSMFT/ITS/workflow/src/ClustererSpec.cxx index d4f24a2b343e4..010da424a582a 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/ClustererSpec.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/ClustererSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/CookedTrackerSpec.cxx b/Detectors/ITSMFT/ITS/workflow/src/CookedTrackerSpec.cxx index 6c7287fdc492e..b3e00b86a1451 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/CookedTrackerSpec.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/CookedTrackerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/IRFrameReaderSpec.cxx b/Detectors/ITSMFT/ITS/workflow/src/IRFrameReaderSpec.cxx index 3036ebbfe2dea..dd3b64951f604 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/IRFrameReaderSpec.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/IRFrameReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/IRFrameWriterSpec.cxx b/Detectors/ITSMFT/ITS/workflow/src/IRFrameWriterSpec.cxx index 8672e84802369..2ca82c1b0a28a 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/IRFrameWriterSpec.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/IRFrameWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/RecoWorkflow.cxx b/Detectors/ITSMFT/ITS/workflow/src/RecoWorkflow.cxx index e3395967c4ea9..ca829579c4955 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/RecoWorkflow.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/RecoWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/TrackReaderSpec.cxx b/Detectors/ITSMFT/ITS/workflow/src/TrackReaderSpec.cxx index 34190c6766768..acf93477469c8 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/TrackReaderSpec.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/TrackReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/TrackWriterSpec.cxx b/Detectors/ITSMFT/ITS/workflow/src/TrackWriterSpec.cxx index f67dce3a96f79..5e3d24c63d004 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/TrackWriterSpec.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/TrackWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/TrackerSpec.cxx b/Detectors/ITSMFT/ITS/workflow/src/TrackerSpec.cxx index 82045bfa67664..59ac3f0b6dd34 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/TrackerSpec.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/TrackerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/VertexReaderSpec.cxx b/Detectors/ITSMFT/ITS/workflow/src/VertexReaderSpec.cxx index 1f8728d4d38a1..a0359fe6bd2d7 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/VertexReaderSpec.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/VertexReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/its-cluster-reader-workflow.cxx b/Detectors/ITSMFT/ITS/workflow/src/its-cluster-reader-workflow.cxx index 3d921144a4bc2..8c2398bead27e 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/its-cluster-reader-workflow.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/its-cluster-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/its-cluster-writer-workflow.cxx b/Detectors/ITSMFT/ITS/workflow/src/its-cluster-writer-workflow.cxx index 92c538b24283a..0b0dfc6ddaa14 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/its-cluster-writer-workflow.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/its-cluster-writer-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/ITS/workflow/src/its-reco-workflow.cxx b/Detectors/ITSMFT/ITS/workflow/src/its-reco-workflow.cxx index 3280db7cb1f17..4bbec09bfda38 100644 --- a/Detectors/ITSMFT/ITS/workflow/src/its-reco-workflow.cxx +++ b/Detectors/ITSMFT/ITS/workflow/src/its-reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/CMakeLists.txt b/Detectors/ITSMFT/MFT/CMakeLists.txt index 76ac508305e36..38fba1f604036 100644 --- a/Detectors/ITSMFT/MFT/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(simulation) diff --git a/Detectors/ITSMFT/MFT/base/CMakeLists.txt b/Detectors/ITSMFT/MFT/base/CMakeLists.txt index 65b9f988456b1..3a56c77547ca6 100644 --- a/Detectors/ITSMFT/MFT/base/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MFTBase SOURCES src/GeometryTGeo.cxx diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/Barrel.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/Barrel.h index 087aaa23cf1d6..e5fdf9a73ec44 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/Barrel.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/Barrel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/ChipSegmentation.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/ChipSegmentation.h index e66d43d310d1b..5ab22849b4074 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/ChipSegmentation.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/ChipSegmentation.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/Constants.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/Constants.h index 45d1aaee8c71a..34dcc70062298 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/Constants.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/Constants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/Flex.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/Flex.h index dfb91549ae972..4befbdbd20352 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/Flex.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/Flex.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/Geometry.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/Geometry.h index ab129549446b4..73b931269ed26 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/Geometry.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryBuilder.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryBuilder.h index 4fe54cdab99a1..e58615919ae5e 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryBuilder.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryBuilder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryTGeo.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryTGeo.h index c58af0fff841e..a4e40dc3d12f8 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryTGeo.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryTGeo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfCone.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfCone.h index d245e6d43badf..ad4c08cbb1c5c 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfCone.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfCone.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfDetector.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfDetector.h index 8797d4b2e797b..681b41284a370 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfDetector.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfDetector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfDisk.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfDisk.h index 3ec44f196a8e8..17dce4cd6f3c0 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfDisk.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfDisk.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfDiskSegmentation.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfDiskSegmentation.h index ad0b0b2e9d419..2f8082874fb86 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfDiskSegmentation.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfDiskSegmentation.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfSegmentation.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfSegmentation.h index 45a3efd7d6768..4a106361d7d63 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfSegmentation.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfSegmentation.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/HeatExchanger.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/HeatExchanger.h index c6794a1311ed3..37de5393d24cb 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/HeatExchanger.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/HeatExchanger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/Ladder.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/Ladder.h index 5c43f6589f625..7885d9dd666db 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/Ladder.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/Ladder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/LadderSegmentation.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/LadderSegmentation.h index 6662a192b6481..24dcaabd7707c 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/LadderSegmentation.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/LadderSegmentation.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h index adf3eb5a3a576..ac22668b86bba 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/PCBSupport.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/PCBSupport.h index ce17dd13c2a6b..4a442fb0cfc4a 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/PCBSupport.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/PCBSupport.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/PatchPanel.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/PatchPanel.h index 62e36b44af61a..e11b1d9460848 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/PatchPanel.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/PatchPanel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/PowerSupplyUnit.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/PowerSupplyUnit.h index cf894f6ed66ad..762cdc648f15d 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/PowerSupplyUnit.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/PowerSupplyUnit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/Segmentation.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/Segmentation.h index a32a2680a9b28..24af690e7f2ff 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/Segmentation.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/Segmentation.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/Support.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/Support.h index a61575c759358..1b375861a0d96 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/Support.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/Support.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/VSegmentation.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/VSegmentation.h index 6025b58703526..86be974397a48 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/VSegmentation.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/VSegmentation.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/Barrel.cxx b/Detectors/ITSMFT/MFT/base/src/Barrel.cxx index c1b4ba90865c5..f666bc16a8151 100644 --- a/Detectors/ITSMFT/MFT/base/src/Barrel.cxx +++ b/Detectors/ITSMFT/MFT/base/src/Barrel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/ChipSegmentation.cxx b/Detectors/ITSMFT/MFT/base/src/ChipSegmentation.cxx index 974d9c685078c..5eb319aad0636 100644 --- a/Detectors/ITSMFT/MFT/base/src/ChipSegmentation.cxx +++ b/Detectors/ITSMFT/MFT/base/src/ChipSegmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/Flex.cxx b/Detectors/ITSMFT/MFT/base/src/Flex.cxx index ba1849ed1b212..62861743d7641 100644 --- a/Detectors/ITSMFT/MFT/base/src/Flex.cxx +++ b/Detectors/ITSMFT/MFT/base/src/Flex.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/Geometry.cxx b/Detectors/ITSMFT/MFT/base/src/Geometry.cxx index 37e81f9ac3955..177095613caa9 100644 --- a/Detectors/ITSMFT/MFT/base/src/Geometry.cxx +++ b/Detectors/ITSMFT/MFT/base/src/Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/GeometryBuilder.cxx b/Detectors/ITSMFT/MFT/base/src/GeometryBuilder.cxx index 7608c734e6a69..d2242546a7068 100644 --- a/Detectors/ITSMFT/MFT/base/src/GeometryBuilder.cxx +++ b/Detectors/ITSMFT/MFT/base/src/GeometryBuilder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/GeometryTGeo.cxx b/Detectors/ITSMFT/MFT/base/src/GeometryTGeo.cxx index 0001bf7342e44..7aaa53dcb5459 100644 --- a/Detectors/ITSMFT/MFT/base/src/GeometryTGeo.cxx +++ b/Detectors/ITSMFT/MFT/base/src/GeometryTGeo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/HalfCone.cxx b/Detectors/ITSMFT/MFT/base/src/HalfCone.cxx index a057d56efa0f7..e3469f26092c1 100644 --- a/Detectors/ITSMFT/MFT/base/src/HalfCone.cxx +++ b/Detectors/ITSMFT/MFT/base/src/HalfCone.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/HalfDetector.cxx b/Detectors/ITSMFT/MFT/base/src/HalfDetector.cxx index b3a133dbae734..7bf1025e0f801 100644 --- a/Detectors/ITSMFT/MFT/base/src/HalfDetector.cxx +++ b/Detectors/ITSMFT/MFT/base/src/HalfDetector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/HalfDisk.cxx b/Detectors/ITSMFT/MFT/base/src/HalfDisk.cxx index 6783e8440d0a0..4114476562b4b 100644 --- a/Detectors/ITSMFT/MFT/base/src/HalfDisk.cxx +++ b/Detectors/ITSMFT/MFT/base/src/HalfDisk.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/HalfDiskSegmentation.cxx b/Detectors/ITSMFT/MFT/base/src/HalfDiskSegmentation.cxx index 5b5651c566712..80d902c3f8d60 100644 --- a/Detectors/ITSMFT/MFT/base/src/HalfDiskSegmentation.cxx +++ b/Detectors/ITSMFT/MFT/base/src/HalfDiskSegmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/HalfSegmentation.cxx b/Detectors/ITSMFT/MFT/base/src/HalfSegmentation.cxx index 0d6521e6cf3d1..167681724b93d 100644 --- a/Detectors/ITSMFT/MFT/base/src/HalfSegmentation.cxx +++ b/Detectors/ITSMFT/MFT/base/src/HalfSegmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/HeatExchanger.cxx b/Detectors/ITSMFT/MFT/base/src/HeatExchanger.cxx index a728adf3f2763..82e8ef6aaece5 100644 --- a/Detectors/ITSMFT/MFT/base/src/HeatExchanger.cxx +++ b/Detectors/ITSMFT/MFT/base/src/HeatExchanger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/Ladder.cxx b/Detectors/ITSMFT/MFT/base/src/Ladder.cxx index 48dd77c2e2a4f..d57fa411cf556 100644 --- a/Detectors/ITSMFT/MFT/base/src/Ladder.cxx +++ b/Detectors/ITSMFT/MFT/base/src/Ladder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/LadderSegmentation.cxx b/Detectors/ITSMFT/MFT/base/src/LadderSegmentation.cxx index 6791d13307e4d..903db118b5d9a 100644 --- a/Detectors/ITSMFT/MFT/base/src/LadderSegmentation.cxx +++ b/Detectors/ITSMFT/MFT/base/src/LadderSegmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/MFTBaseLinkDef.h b/Detectors/ITSMFT/MFT/base/src/MFTBaseLinkDef.h index 22dc1917c1583..501cddda6cbbc 100644 --- a/Detectors/ITSMFT/MFT/base/src/MFTBaseLinkDef.h +++ b/Detectors/ITSMFT/MFT/base/src/MFTBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/MFTBaseParam.cxx b/Detectors/ITSMFT/MFT/base/src/MFTBaseParam.cxx index 79a25f95dffaa..80cd8b2b03135 100644 --- a/Detectors/ITSMFT/MFT/base/src/MFTBaseParam.cxx +++ b/Detectors/ITSMFT/MFT/base/src/MFTBaseParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/PCBSupport.cxx b/Detectors/ITSMFT/MFT/base/src/PCBSupport.cxx index e6d1ca89ca65a..b3823a173c930 100644 --- a/Detectors/ITSMFT/MFT/base/src/PCBSupport.cxx +++ b/Detectors/ITSMFT/MFT/base/src/PCBSupport.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/PatchPanel.cxx b/Detectors/ITSMFT/MFT/base/src/PatchPanel.cxx index ed32fa490e14f..55fc827f348d3 100644 --- a/Detectors/ITSMFT/MFT/base/src/PatchPanel.cxx +++ b/Detectors/ITSMFT/MFT/base/src/PatchPanel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/PowerSupplyUnit.cxx b/Detectors/ITSMFT/MFT/base/src/PowerSupplyUnit.cxx index efa230c97e14d..fea44b5552948 100644 --- a/Detectors/ITSMFT/MFT/base/src/PowerSupplyUnit.cxx +++ b/Detectors/ITSMFT/MFT/base/src/PowerSupplyUnit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/Segmentation.cxx b/Detectors/ITSMFT/MFT/base/src/Segmentation.cxx index 9da51d9a88b28..2af2722633a4e 100644 --- a/Detectors/ITSMFT/MFT/base/src/Segmentation.cxx +++ b/Detectors/ITSMFT/MFT/base/src/Segmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/Support.cxx b/Detectors/ITSMFT/MFT/base/src/Support.cxx index 7b7f02ddf6568..462ed79464148 100644 --- a/Detectors/ITSMFT/MFT/base/src/Support.cxx +++ b/Detectors/ITSMFT/MFT/base/src/Support.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/base/src/VSegmentation.cxx b/Detectors/ITSMFT/MFT/base/src/VSegmentation.cxx index 646cdf923b3ac..23d18286eaebb 100644 --- a/Detectors/ITSMFT/MFT/base/src/VSegmentation.cxx +++ b/Detectors/ITSMFT/MFT/base/src/VSegmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/calibration/CMakeLists.txt b/Detectors/ITSMFT/MFT/calibration/CMakeLists.txt index 56fcdbec15d3b..5bc4321988b94 100644 --- a/Detectors/ITSMFT/MFT/calibration/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/calibration/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MFTCalibration SOURCES src/NoiseCalibrator.cxx diff --git a/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseCalibrator.h b/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseCalibrator.h index d8b1a1f360c6d..7bd77d6ea14d3 100644 --- a/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseCalibrator.h +++ b/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseCalibratorSpec.h b/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseCalibratorSpec.h index aa86abe435be5..4780a5dadc155 100644 --- a/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseCalibratorSpec.h +++ b/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseCalibratorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseSlotCalibrator.h b/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseSlotCalibrator.h index a53ef78af5ac8..30393a8d8d0c5 100644 --- a/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseSlotCalibrator.h +++ b/Detectors/ITSMFT/MFT/calibration/include/MFTCalibration/NoiseSlotCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/calibration/src/MFTCalibrationLinkDef.h b/Detectors/ITSMFT/MFT/calibration/src/MFTCalibrationLinkDef.h index fa990979fb3e2..4d012b61dd642 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/MFTCalibrationLinkDef.h +++ b/Detectors/ITSMFT/MFT/calibration/src/MFTCalibrationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibrator.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibrator.cxx index f86159f0222eb..0c0aaf59101e8 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibrator.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx index b1606e36ce2d9..98cf7853c8818 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseCalibratorSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/calibration/src/NoiseSlotCalibrator.cxx b/Detectors/ITSMFT/MFT/calibration/src/NoiseSlotCalibrator.cxx index fca4f32dac303..0294878838e8e 100644 --- a/Detectors/ITSMFT/MFT/calibration/src/NoiseSlotCalibrator.cxx +++ b/Detectors/ITSMFT/MFT/calibration/src/NoiseSlotCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/calibration/testWorkflow/mft-calib-workflow.cxx b/Detectors/ITSMFT/MFT/calibration/testWorkflow/mft-calib-workflow.cxx index a26d609be0674..cc78fa200d794 100644 --- a/Detectors/ITSMFT/MFT/calibration/testWorkflow/mft-calib-workflow.cxx +++ b/Detectors/ITSMFT/MFT/calibration/testWorkflow/mft-calib-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/macros/CMakeLists.txt b/Detectors/ITSMFT/MFT/macros/CMakeLists.txt index 016c6ec06431e..3888cf528d7eb 100644 --- a/Detectors/ITSMFT/MFT/macros/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/macros/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(mapping) add_subdirectory(test) diff --git a/Detectors/ITSMFT/MFT/macros/mapping/CMakeLists.txt b/Detectors/ITSMFT/MFT/macros/mapping/CMakeLists.txt index 9a82d0b44a6c3..f4b1a0da5453a 100644 --- a/Detectors/ITSMFT/MFT/macros/mapping/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/macros/mapping/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(extractMFTMapping.C PUBLIC_LINK_LIBRARIES O2::MFTBase diff --git a/Detectors/ITSMFT/MFT/macros/mapping/extractMFTMapping.C b/Detectors/ITSMFT/MFT/macros/mapping/extractMFTMapping.C index 2469ad3deab8d..c121ba1b0aa85 100644 --- a/Detectors/ITSMFT/MFT/macros/mapping/extractMFTMapping.C +++ b/Detectors/ITSMFT/MFT/macros/mapping/extractMFTMapping.C @@ -253,11 +253,12 @@ void createCXXfile(o2::mft::GeometryTGeo* gm) FILE* srcFile = fopen("ChipMappingMFT.cxx", "w"); fprintf(srcFile, - "// Copyright CERN and copyright holders of ALICE O2. This software is\n" - "// distributed under the terms of the GNU General Public License v3 (GPL\n" - "// Version 3), copied verbatim in the file \"COPYING\".\n" + "// Copyright 2019-2020 CERN and copyright holders of ALICE O2.\n" + "// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders.\n" + "// All rights not expressly granted are reserved.\n" "//\n" - "// See http://alice-o2.web.cern.ch/license for full licensing information.\n" + "// This software is distributed under the terms of the GNU General Public\n" + "// License v3 (GPL Version 3), copied verbatim in the file \"COPYING\".\n" "//\n" "// In applying this license CERN does not waive the privileges and immunities\n" "// granted to it by virtue of its status as an Intergovernmental Organization\n" diff --git a/Detectors/ITSMFT/MFT/macros/test/CMakeLists.txt b/Detectors/ITSMFT/MFT/macros/test/CMakeLists.txt index 35af45885b406..4ebcb8cc19762 100644 --- a/Detectors/ITSMFT/MFT/macros/test/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/macros/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(CreateDictionaries.C PUBLIC_LINK_LIBRARIES O2::MathUtils diff --git a/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt b/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt index 2c8386ae463e1..761a27778920e 100644 --- a/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MFTSimulation SOURCES src/Detector.cxx src/DigitizerTask.cxx diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h index 88d59bed17f75..f57073eea3c89 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/DigitizerTask.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/DigitizerTask.h index 0d27ab53764a1..6ada0e21d0858 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/DigitizerTask.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/DigitizerTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx index 2451287927be6..7a6244c2c5a36 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/simulation/src/DigitizerTask.cxx b/Detectors/ITSMFT/MFT/simulation/src/DigitizerTask.cxx index b1070a2a1da18..75e689867188b 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/DigitizerTask.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/DigitizerTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/simulation/src/MFTSimulationLinkDef.h b/Detectors/ITSMFT/MFT/simulation/src/MFTSimulationLinkDef.h index 8d9c88c94ef29..fb9efc51df888 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/MFTSimulationLinkDef.h +++ b/Detectors/ITSMFT/MFT/simulation/src/MFTSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/simulation/src/digi2raw.cxx b/Detectors/ITSMFT/MFT/simulation/src/digi2raw.cxx index 5dd9271b78e88..57dab3e28e1e5 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/digi2raw.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/digi2raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/CMakeLists.txt b/Detectors/ITSMFT/MFT/tracking/CMakeLists.txt index bd38dc6de0270..7f8fcf79d08ae 100644 --- a/Detectors/ITSMFT/MFT/tracking/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/tracking/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MFTTracking TARGETVARNAME targetName diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Cell.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Cell.h index 4b1a78cbb2f32..d80bdd8e7ed7d 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Cell.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Cell.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Cluster.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Cluster.h index a6fb4ac8392ad..711e0a06ba742 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Cluster.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Cluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Constants.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Constants.h index 51ca134d3a204..7651c131b93fa 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Constants.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Constants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/IOUtils.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/IOUtils.h index b11522c6eb496..c78794a363116 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/IOUtils.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/IOUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/MFTTrackingParam.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/MFTTrackingParam.h index af47f2122d629..e0f18704dc12d 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/MFTTrackingParam.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/MFTTrackingParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/ROframe.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/ROframe.h index 6ac9e28d00def..87bb8b8698248 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/ROframe.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/ROframe.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Road.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Road.h index ba1471bbc6d8a..f03bb498586ec 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Road.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Road.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackCA.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackCA.h index 8dc5a213314c0..33911f1c47abd 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackCA.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackCA.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackFitter.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackFitter.h index 613cb75d46068..a952160c74d24 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackFitter.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackFitter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Tracker.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Tracker.h index 33fcd00317f6a..4954d348d92f3 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Tracker.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/Tracker.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackerConfig.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackerConfig.h index 8b75506dd5c21..2f36a73236bb5 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackerConfig.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackerConfig.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/src/Cluster.cxx b/Detectors/ITSMFT/MFT/tracking/src/Cluster.cxx index ac21ab2e30935..c31fb5b6cfa78 100644 --- a/Detectors/ITSMFT/MFT/tracking/src/Cluster.cxx +++ b/Detectors/ITSMFT/MFT/tracking/src/Cluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/src/IOUtils.cxx b/Detectors/ITSMFT/MFT/tracking/src/IOUtils.cxx index 4257235776aeb..9b9cfd27d0344 100644 --- a/Detectors/ITSMFT/MFT/tracking/src/IOUtils.cxx +++ b/Detectors/ITSMFT/MFT/tracking/src/IOUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/src/MFTTrackingLinkDef.h b/Detectors/ITSMFT/MFT/tracking/src/MFTTrackingLinkDef.h index b409fc2de6379..e281b4247a44f 100644 --- a/Detectors/ITSMFT/MFT/tracking/src/MFTTrackingLinkDef.h +++ b/Detectors/ITSMFT/MFT/tracking/src/MFTTrackingLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/src/MFTTrackingParam.cxx b/Detectors/ITSMFT/MFT/tracking/src/MFTTrackingParam.cxx index 1cdd66033c9de..79e7f2aac664a 100644 --- a/Detectors/ITSMFT/MFT/tracking/src/MFTTrackingParam.cxx +++ b/Detectors/ITSMFT/MFT/tracking/src/MFTTrackingParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/src/ROframe.cxx b/Detectors/ITSMFT/MFT/tracking/src/ROframe.cxx index 21b1ae72a27a7..1e62ec0854df8 100644 --- a/Detectors/ITSMFT/MFT/tracking/src/ROframe.cxx +++ b/Detectors/ITSMFT/MFT/tracking/src/ROframe.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx b/Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx index 23dbc8bed039b..8efc53560e656 100644 --- a/Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx +++ b/Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/src/Tracker.cxx b/Detectors/ITSMFT/MFT/tracking/src/Tracker.cxx index 4e3941bcd425a..e891064c5359e 100644 --- a/Detectors/ITSMFT/MFT/tracking/src/Tracker.cxx +++ b/Detectors/ITSMFT/MFT/tracking/src/Tracker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/tracking/src/TrackerConfig.cxx b/Detectors/ITSMFT/MFT/tracking/src/TrackerConfig.cxx index af0384b308ad1..4bb0263d8fcbf 100644 --- a/Detectors/ITSMFT/MFT/tracking/src/TrackerConfig.cxx +++ b/Detectors/ITSMFT/MFT/tracking/src/TrackerConfig.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/CMakeLists.txt b/Detectors/ITSMFT/MFT/workflow/CMakeLists.txt index f0e06915ad699..ade4b9996479a 100644 --- a/Detectors/ITSMFT/MFT/workflow/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MFTWorkflow TARGETVARNAME targetName diff --git a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/ClusterReaderSpec.h b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/ClusterReaderSpec.h index e660512a243fe..7a042fb3caa85 100644 --- a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/ClusterReaderSpec.h +++ b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/ClusterReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/ClusterWriterSpec.h b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/ClusterWriterSpec.h index c4d3614806ece..51dc5a6481eb5 100644 --- a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/ClusterWriterSpec.h +++ b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/ClusterWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/ClustererSpec.h b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/ClustererSpec.h index ab3da58143de9..c63ff6bea51db 100644 --- a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/ClustererSpec.h +++ b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/ClustererSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/RecoWorkflow.h b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/RecoWorkflow.h index 90db32cff2bfe..60504d651bd08 100644 --- a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/RecoWorkflow.h +++ b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/RecoWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/TrackReaderSpec.h b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/TrackReaderSpec.h index 5500cfcdc9891..e18e17f6880f2 100644 --- a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/TrackReaderSpec.h +++ b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/TrackReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/TrackWriterSpec.h b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/TrackWriterSpec.h index df01bfbda4fbb..5a8d50939a25a 100644 --- a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/TrackWriterSpec.h +++ b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/TrackWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/TrackerSpec.h b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/TrackerSpec.h index a18f2f37a766a..971886b25cb57 100644 --- a/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/TrackerSpec.h +++ b/Detectors/ITSMFT/MFT/workflow/include/MFTWorkflow/TrackerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/src/ClusterReaderSpec.cxx b/Detectors/ITSMFT/MFT/workflow/src/ClusterReaderSpec.cxx index 76ff07107d98d..1d4910b423c60 100644 --- a/Detectors/ITSMFT/MFT/workflow/src/ClusterReaderSpec.cxx +++ b/Detectors/ITSMFT/MFT/workflow/src/ClusterReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/src/ClusterWriterSpec.cxx b/Detectors/ITSMFT/MFT/workflow/src/ClusterWriterSpec.cxx index 00eb69f8def94..3c66c349232a8 100644 --- a/Detectors/ITSMFT/MFT/workflow/src/ClusterWriterSpec.cxx +++ b/Detectors/ITSMFT/MFT/workflow/src/ClusterWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/src/ClustererSpec.cxx b/Detectors/ITSMFT/MFT/workflow/src/ClustererSpec.cxx index c61d1aae3bfcb..64bb585383486 100644 --- a/Detectors/ITSMFT/MFT/workflow/src/ClustererSpec.cxx +++ b/Detectors/ITSMFT/MFT/workflow/src/ClustererSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/src/RecoWorkflow.cxx b/Detectors/ITSMFT/MFT/workflow/src/RecoWorkflow.cxx index 3af0fb4568e81..cb603d2afaa64 100644 --- a/Detectors/ITSMFT/MFT/workflow/src/RecoWorkflow.cxx +++ b/Detectors/ITSMFT/MFT/workflow/src/RecoWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/src/TrackReaderSpec.cxx b/Detectors/ITSMFT/MFT/workflow/src/TrackReaderSpec.cxx index ecde8ee6c49d3..1a3e294d8f248 100644 --- a/Detectors/ITSMFT/MFT/workflow/src/TrackReaderSpec.cxx +++ b/Detectors/ITSMFT/MFT/workflow/src/TrackReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/src/TrackWriterSpec.cxx b/Detectors/ITSMFT/MFT/workflow/src/TrackWriterSpec.cxx index 7b99b28e2aab5..99beec65b57ec 100644 --- a/Detectors/ITSMFT/MFT/workflow/src/TrackWriterSpec.cxx +++ b/Detectors/ITSMFT/MFT/workflow/src/TrackWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/src/TrackerSpec.cxx b/Detectors/ITSMFT/MFT/workflow/src/TrackerSpec.cxx index c0994a19c24ce..20205b11b734f 100644 --- a/Detectors/ITSMFT/MFT/workflow/src/TrackerSpec.cxx +++ b/Detectors/ITSMFT/MFT/workflow/src/TrackerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/src/mft-cluster-reader-workflow.cxx b/Detectors/ITSMFT/MFT/workflow/src/mft-cluster-reader-workflow.cxx index 5b038f196608e..f934eb4adfe73 100644 --- a/Detectors/ITSMFT/MFT/workflow/src/mft-cluster-reader-workflow.cxx +++ b/Detectors/ITSMFT/MFT/workflow/src/mft-cluster-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/workflow/src/mft-reco-workflow.cxx b/Detectors/ITSMFT/MFT/workflow/src/mft-reco-workflow.cxx index ee1d26fccd876..a4157376b1dc0 100644 --- a/Detectors/ITSMFT/MFT/workflow/src/mft-reco-workflow.cxx +++ b/Detectors/ITSMFT/MFT/workflow/src/mft-reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/CMakeLists.txt b/Detectors/ITSMFT/common/CMakeLists.txt index 6c0adc0758148..42f580d5ab301 100644 --- a/Detectors/ITSMFT/common/CMakeLists.txt +++ b/Detectors/ITSMFT/common/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(simulation) diff --git a/Detectors/ITSMFT/common/base/CMakeLists.txt b/Detectors/ITSMFT/common/base/CMakeLists.txt index 711683fe88625..a3e0718d64a6b 100644 --- a/Detectors/ITSMFT/common/base/CMakeLists.txt +++ b/Detectors/ITSMFT/common/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITSMFTBase SOURCES src/SegmentationAlpide.cxx diff --git a/Detectors/ITSMFT/common/base/include/ITSMFTBase/DPLAlpideParam.h b/Detectors/ITSMFT/common/base/include/ITSMFTBase/DPLAlpideParam.h index 324bffd7da5f1..a7c74f8864e6d 100644 --- a/Detectors/ITSMFT/common/base/include/ITSMFTBase/DPLAlpideParam.h +++ b/Detectors/ITSMFT/common/base/include/ITSMFTBase/DPLAlpideParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/base/include/ITSMFTBase/GeometryTGeo.h b/Detectors/ITSMFT/common/base/include/ITSMFTBase/GeometryTGeo.h index f83554e17e1bb..d6f32fcdb13eb 100644 --- a/Detectors/ITSMFT/common/base/include/ITSMFTBase/GeometryTGeo.h +++ b/Detectors/ITSMFT/common/base/include/ITSMFTBase/GeometryTGeo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/base/include/ITSMFTBase/SegmentationAlpide.h b/Detectors/ITSMFT/common/base/include/ITSMFTBase/SegmentationAlpide.h index 394aa268d410c..6394794f3a553 100644 --- a/Detectors/ITSMFT/common/base/include/ITSMFTBase/SegmentationAlpide.h +++ b/Detectors/ITSMFT/common/base/include/ITSMFTBase/SegmentationAlpide.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/base/src/DPLAlpideParam.cxx b/Detectors/ITSMFT/common/base/src/DPLAlpideParam.cxx index 77e7934b0a849..1cb9bdf997d68 100644 --- a/Detectors/ITSMFT/common/base/src/DPLAlpideParam.cxx +++ b/Detectors/ITSMFT/common/base/src/DPLAlpideParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/base/src/GeometryTGeo.cxx b/Detectors/ITSMFT/common/base/src/GeometryTGeo.cxx index 4d63b3e245c73..da477a4d30f34 100644 --- a/Detectors/ITSMFT/common/base/src/GeometryTGeo.cxx +++ b/Detectors/ITSMFT/common/base/src/GeometryTGeo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/base/src/ITSMFTBaseLinkDef.h b/Detectors/ITSMFT/common/base/src/ITSMFTBaseLinkDef.h index 1ceb005986ec2..6202f372cf2d3 100644 --- a/Detectors/ITSMFT/common/base/src/ITSMFTBaseLinkDef.h +++ b/Detectors/ITSMFT/common/base/src/ITSMFTBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/base/src/SegmentationAlpide.cxx b/Detectors/ITSMFT/common/base/src/SegmentationAlpide.cxx index 41b7d6dd162e8..301cc81d3f2f3 100644 --- a/Detectors/ITSMFT/common/base/src/SegmentationAlpide.cxx +++ b/Detectors/ITSMFT/common/base/src/SegmentationAlpide.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/CMakeLists.txt b/Detectors/ITSMFT/common/reconstruction/CMakeLists.txt index 9f11aef36173d..89eed96a4107b 100644 --- a/Detectors/ITSMFT/common/reconstruction/CMakeLists.txt +++ b/Detectors/ITSMFT/common/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITSMFTReconstruction TARGETVARNAME targetName diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/AlpideCoder.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/AlpideCoder.h index cb80bfebc791c..5e46f6f6e25fb 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/AlpideCoder.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/AlpideCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/BuildTopologyDictionary.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/BuildTopologyDictionary.h index 97d28e542bd1b..559f1a14b1c8f 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/BuildTopologyDictionary.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/BuildTopologyDictionary.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/CTFCoder.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/CTFCoder.h index 3934e84220578..f98e1bc4b3a0f 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/CTFCoder.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/ChipMappingITS.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/ChipMappingITS.h index be5c40473f405..d941c40a14dd2 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/ChipMappingITS.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/ChipMappingITS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/ChipMappingMFT.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/ChipMappingMFT.h index e61735690075e..04e994da23973 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/ChipMappingMFT.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/ChipMappingMFT.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/Clusterer.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/Clusterer.h index c2c9a3333cb07..1731d811a677d 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/Clusterer.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/Clusterer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/ClustererParam.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/ClustererParam.h index 0de3494988e4a..988443513fcba 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/ClustererParam.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/ClustererParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/DecodingStat.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/DecodingStat.h index 67cf2e592c3ff..f6d72c8d13ba4 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/DecodingStat.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/DecodingStat.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/DigitPixelReader.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/DigitPixelReader.h index 165d149810ed3..5663f48fc497e 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/DigitPixelReader.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/DigitPixelReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/GBTLink.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/GBTLink.h index 88306e067ffe1..fa403ce116f9a 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/GBTLink.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/GBTLink.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/GBTWord.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/GBTWord.h index 43b063ed4baef..d139fbe1641e3 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/GBTWord.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/GBTWord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/LookUp.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/LookUp.h index 44594da48d07b..171e67fa392d5 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/LookUp.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/LookUp.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PayLoadCont.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PayLoadCont.h index f42464c353fe5..adb0339930843 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PayLoadCont.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PayLoadCont.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PayLoadSG.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PayLoadSG.h index 5b9ea8a7ba906..43d6cedeb7817 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PayLoadSG.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PayLoadSG.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PixelData.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PixelData.h index 4e1ad76963ae8..6dc3290668d97 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PixelData.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PixelData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PixelReader.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PixelReader.h index 6a34bd5d1b08a..8eea34ec39bd6 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PixelReader.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/PixelReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RUDecodeData.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RUDecodeData.h index 01044d2726710..edcdc75dc8e59 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RUDecodeData.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RUDecodeData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RUInfo.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RUInfo.h index aad60cdc0909d..cf8ea09711930 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RUInfo.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RUInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RawPixelDecoder.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RawPixelDecoder.h index 63a04da384e55..624f8321d2815 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RawPixelDecoder.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RawPixelDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RawPixelReader.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RawPixelReader.h index 3e8e036377538..02e1bc0507b5c 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RawPixelReader.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RawPixelReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/TopologyFastSimulation.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/TopologyFastSimulation.h index 6c0303b707e39..618a4c5b2024a 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/TopologyFastSimulation.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/TopologyFastSimulation.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/AlpideCoder.cxx b/Detectors/ITSMFT/common/reconstruction/src/AlpideCoder.cxx index 4a39c6674bfbb..f557e1141fd2f 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/AlpideCoder.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/AlpideCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/BuildTopologyDictionary.cxx b/Detectors/ITSMFT/common/reconstruction/src/BuildTopologyDictionary.cxx index 0e553517db7de..8d810256e3baa 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/BuildTopologyDictionary.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/BuildTopologyDictionary.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/CTFCoder.cxx b/Detectors/ITSMFT/common/reconstruction/src/CTFCoder.cxx index f5405c4a4d2d6..ee1074caa2d29 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/CTFCoder.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/ChipMappingITS.cxx b/Detectors/ITSMFT/common/reconstruction/src/ChipMappingITS.cxx index 7620094395870..b7357b2fe5d84 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/ChipMappingITS.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/ChipMappingITS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/ChipMappingMFT.cxx b/Detectors/ITSMFT/common/reconstruction/src/ChipMappingMFT.cxx index e4fe2e9ae95a7..90a862996a490 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/ChipMappingMFT.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/ChipMappingMFT.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/Clusterer.cxx b/Detectors/ITSMFT/common/reconstruction/src/Clusterer.cxx index 741b0fd28d6fc..0aa060cefadd6 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/Clusterer.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/Clusterer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/ClustererParam.cxx b/Detectors/ITSMFT/common/reconstruction/src/ClustererParam.cxx index 05b6123411572..ab7fe235a159d 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/ClustererParam.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/ClustererParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/DecodingStat.cxx b/Detectors/ITSMFT/common/reconstruction/src/DecodingStat.cxx index 0cc702f1f1567..5df0b284254c0 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/DecodingStat.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/DecodingStat.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/DigitPixelReader.cxx b/Detectors/ITSMFT/common/reconstruction/src/DigitPixelReader.cxx index 44fd0cb25f224..93a59b643d71c 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/DigitPixelReader.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/DigitPixelReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/GBTLink.cxx b/Detectors/ITSMFT/common/reconstruction/src/GBTLink.cxx index 088a2358d561e..ca44714b7f0b6 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/GBTLink.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/GBTLink.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/GBTWord.cxx b/Detectors/ITSMFT/common/reconstruction/src/GBTWord.cxx index f11e857fde59f..9970ffa05b307 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/GBTWord.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/GBTWord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/ITSMFTReconstructionLinkDef.h b/Detectors/ITSMFT/common/reconstruction/src/ITSMFTReconstructionLinkDef.h index 695316af1993b..b3eadad76ac6c 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/ITSMFTReconstructionLinkDef.h +++ b/Detectors/ITSMFT/common/reconstruction/src/ITSMFTReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/LookUp.cxx b/Detectors/ITSMFT/common/reconstruction/src/LookUp.cxx index ee7f6be12ee32..66c9d07622556 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/LookUp.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/LookUp.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/PayLoadCont.cxx b/Detectors/ITSMFT/common/reconstruction/src/PayLoadCont.cxx index b38212cc9715a..e3d4cd59d8355 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/PayLoadCont.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/PayLoadCont.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/PixelData.cxx b/Detectors/ITSMFT/common/reconstruction/src/PixelData.cxx index e488c93a9214c..5241a256f7642 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/PixelData.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/PixelData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/RUDecodeData.cxx b/Detectors/ITSMFT/common/reconstruction/src/RUDecodeData.cxx index 8bbc2e1929288..7d67107c1815b 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/RUDecodeData.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/RUDecodeData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/RUInfo.cxx b/Detectors/ITSMFT/common/reconstruction/src/RUInfo.cxx index 3e6e6bbb2ea12..65078d49eb296 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/RUInfo.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/RUInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/RawPixelDecoder.cxx b/Detectors/ITSMFT/common/reconstruction/src/RawPixelDecoder.cxx index 10b3bd358fea0..351103b3eb3e2 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/RawPixelDecoder.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/RawPixelDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/reconstruction/src/TopologyFastSimulation.cxx b/Detectors/ITSMFT/common/reconstruction/src/TopologyFastSimulation.cxx index cf27dea465f4f..35e3967b923d8 100644 --- a/Detectors/ITSMFT/common/reconstruction/src/TopologyFastSimulation.cxx +++ b/Detectors/ITSMFT/common/reconstruction/src/TopologyFastSimulation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/CMakeLists.txt b/Detectors/ITSMFT/common/simulation/CMakeLists.txt index d5f828a460399..3ce3d8b9ab0d6 100644 --- a/Detectors/ITSMFT/common/simulation/CMakeLists.txt +++ b/Detectors/ITSMFT/common/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITSMFTSimulation SOURCES src/Hit.cxx diff --git a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideChip.h b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideChip.h index 190ecba04cded..71d3079204f74 100644 --- a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideChip.h +++ b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideChip.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideSignalTrapezoid.h b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideSignalTrapezoid.h index 404a3fd336541..d95ac5c39b5da 100644 --- a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideSignalTrapezoid.h +++ b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideSignalTrapezoid.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideSimResponse.h b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideSimResponse.h index 09209742a8870..2b57acc65bc81 100644 --- a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideSimResponse.h +++ b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideSimResponse.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/ChipDigitsContainer.h b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/ChipDigitsContainer.h index 9752b7bdb8173..0d00d187e8ea2 100644 --- a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/ChipDigitsContainer.h +++ b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/ChipDigitsContainer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/ClusterShape.h b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/ClusterShape.h index 3d6b85a459fcc..1d81e09979292 100644 --- a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/ClusterShape.h +++ b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/ClusterShape.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/DPLDigitizerParam.h b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/DPLDigitizerParam.h index 46a514a93eb21..cba38a0e27d3e 100644 --- a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/DPLDigitizerParam.h +++ b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/DPLDigitizerParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/DigiParams.h b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/DigiParams.h index 96d805e5907f2..fe4bb2b8519b3 100644 --- a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/DigiParams.h +++ b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/DigiParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/Digitizer.h b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/Digitizer.h index 0e13abf448278..590f78c91f755 100644 --- a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/Digitizer.h +++ b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/Hit.h b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/Hit.h index 5ee373f84a9c1..012849d131aa4 100644 --- a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/Hit.h +++ b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/Hit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/MC2RawEncoder.h b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/MC2RawEncoder.h index d91b677989c79..b702ba89018e5 100644 --- a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/MC2RawEncoder.h +++ b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/MC2RawEncoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/PreDigit.h b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/PreDigit.h index 22df78910a44e..aac9078ecf060 100644 --- a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/PreDigit.h +++ b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/PreDigit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/src/AlpideChip.cxx b/Detectors/ITSMFT/common/simulation/src/AlpideChip.cxx index 6b643b7d0a01f..d35d907e988bf 100644 --- a/Detectors/ITSMFT/common/simulation/src/AlpideChip.cxx +++ b/Detectors/ITSMFT/common/simulation/src/AlpideChip.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/src/AlpideSignalTrapezoid.cxx b/Detectors/ITSMFT/common/simulation/src/AlpideSignalTrapezoid.cxx index 139f2fbf13b0b..882a815fcebc0 100644 --- a/Detectors/ITSMFT/common/simulation/src/AlpideSignalTrapezoid.cxx +++ b/Detectors/ITSMFT/common/simulation/src/AlpideSignalTrapezoid.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/src/AlpideSimResponse.cxx b/Detectors/ITSMFT/common/simulation/src/AlpideSimResponse.cxx index f3e5262d0cb1b..bef083b11c6ac 100644 --- a/Detectors/ITSMFT/common/simulation/src/AlpideSimResponse.cxx +++ b/Detectors/ITSMFT/common/simulation/src/AlpideSimResponse.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/src/ChipDigitsContainer.cxx b/Detectors/ITSMFT/common/simulation/src/ChipDigitsContainer.cxx index 3a93f311ea835..026b67a00ec99 100644 --- a/Detectors/ITSMFT/common/simulation/src/ChipDigitsContainer.cxx +++ b/Detectors/ITSMFT/common/simulation/src/ChipDigitsContainer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/src/ClusterShape.cxx b/Detectors/ITSMFT/common/simulation/src/ClusterShape.cxx index 0a0b2f0cdde37..b633691e529e5 100644 --- a/Detectors/ITSMFT/common/simulation/src/ClusterShape.cxx +++ b/Detectors/ITSMFT/common/simulation/src/ClusterShape.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/src/DPLDigitizerParam.cxx b/Detectors/ITSMFT/common/simulation/src/DPLDigitizerParam.cxx index 15b3175f605b9..99eb30edc0369 100644 --- a/Detectors/ITSMFT/common/simulation/src/DPLDigitizerParam.cxx +++ b/Detectors/ITSMFT/common/simulation/src/DPLDigitizerParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/src/DigiParams.cxx b/Detectors/ITSMFT/common/simulation/src/DigiParams.cxx index 86023fff83424..a6d958e8a3635 100644 --- a/Detectors/ITSMFT/common/simulation/src/DigiParams.cxx +++ b/Detectors/ITSMFT/common/simulation/src/DigiParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/src/Digitizer.cxx b/Detectors/ITSMFT/common/simulation/src/Digitizer.cxx index e9173cd7da3af..b249eedd1b959 100644 --- a/Detectors/ITSMFT/common/simulation/src/Digitizer.cxx +++ b/Detectors/ITSMFT/common/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/src/Hit.cxx b/Detectors/ITSMFT/common/simulation/src/Hit.cxx index 8c9501b5e1219..ddfe1a05f741a 100644 --- a/Detectors/ITSMFT/common/simulation/src/Hit.cxx +++ b/Detectors/ITSMFT/common/simulation/src/Hit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/src/ITSMFTSimulationLinkDef.h b/Detectors/ITSMFT/common/simulation/src/ITSMFTSimulationLinkDef.h index cf5c0ddffcd0b..ead8ba6e6b1ff 100644 --- a/Detectors/ITSMFT/common/simulation/src/ITSMFTSimulationLinkDef.h +++ b/Detectors/ITSMFT/common/simulation/src/ITSMFTSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/src/MC2RawEncoder.cxx b/Detectors/ITSMFT/common/simulation/src/MC2RawEncoder.cxx index d7e97d515ca39..59377c4e55296 100644 --- a/Detectors/ITSMFT/common/simulation/src/MC2RawEncoder.cxx +++ b/Detectors/ITSMFT/common/simulation/src/MC2RawEncoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/simulation/test/testAlpideSimResponse.cxx b/Detectors/ITSMFT/common/simulation/test/testAlpideSimResponse.cxx index c74983807c234..14b7ccedaae37 100644 --- a/Detectors/ITSMFT/common/simulation/test/testAlpideSimResponse.cxx +++ b/Detectors/ITSMFT/common/simulation/test/testAlpideSimResponse.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/CMakeLists.txt b/Detectors/ITSMFT/common/workflow/CMakeLists.txt index b8da79bfad59a..1c2d2ed27919d 100644 --- a/Detectors/ITSMFT/common/workflow/CMakeLists.txt +++ b/Detectors/ITSMFT/common/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITSMFTWorkflow SOURCES src/ClusterReaderSpec.cxx diff --git a/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/ClusterReaderSpec.h b/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/ClusterReaderSpec.h index 1003b8f677f3e..fe6dfd6c75cc7 100644 --- a/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/ClusterReaderSpec.h +++ b/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/ClusterReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/DigitReaderSpec.h b/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/DigitReaderSpec.h index 0464ba4c12792..ac9d02ff693f4 100644 --- a/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/DigitReaderSpec.h +++ b/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/DigitReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/DigitWriterSpec.h b/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/DigitWriterSpec.h index a112337bad0c3..7bef1643ddcbb 100644 --- a/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/DigitWriterSpec.h +++ b/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/DigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/EntropyDecoderSpec.h b/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/EntropyDecoderSpec.h index f624eb1781b1f..636dd5072afbf 100644 --- a/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/EntropyDecoderSpec.h +++ b/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/EntropyEncoderSpec.h b/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/EntropyEncoderSpec.h index 997f0f5eb192b..8ed8276dc2f07 100644 --- a/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/EntropyEncoderSpec.h +++ b/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/STFDecoderSpec.h b/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/STFDecoderSpec.h index 1c5a9dcd953e5..abd7fc636c382 100644 --- a/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/STFDecoderSpec.h +++ b/Detectors/ITSMFT/common/workflow/include/ITSMFTWorkflow/STFDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/src/ClusterReaderSpec.cxx b/Detectors/ITSMFT/common/workflow/src/ClusterReaderSpec.cxx index b1adc7e02f323..610cfb4dc2d88 100644 --- a/Detectors/ITSMFT/common/workflow/src/ClusterReaderSpec.cxx +++ b/Detectors/ITSMFT/common/workflow/src/ClusterReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/src/DigitReaderSpec.cxx b/Detectors/ITSMFT/common/workflow/src/DigitReaderSpec.cxx index 56da02475c29e..6fca828591263 100644 --- a/Detectors/ITSMFT/common/workflow/src/DigitReaderSpec.cxx +++ b/Detectors/ITSMFT/common/workflow/src/DigitReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/src/DigitWriterSpec.cxx b/Detectors/ITSMFT/common/workflow/src/DigitWriterSpec.cxx index 9f260d60e6790..3b4ed14092cba 100644 --- a/Detectors/ITSMFT/common/workflow/src/DigitWriterSpec.cxx +++ b/Detectors/ITSMFT/common/workflow/src/DigitWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/src/EntropyDecoderSpec.cxx b/Detectors/ITSMFT/common/workflow/src/EntropyDecoderSpec.cxx index b50e3f7e9ebd9..7d4beb363e5de 100644 --- a/Detectors/ITSMFT/common/workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/ITSMFT/common/workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/src/EntropyEncoderSpec.cxx b/Detectors/ITSMFT/common/workflow/src/EntropyEncoderSpec.cxx index 17d36b9eead8a..6b04de5cddd4c 100644 --- a/Detectors/ITSMFT/common/workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/ITSMFT/common/workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/src/STFDecoderSpec.cxx b/Detectors/ITSMFT/common/workflow/src/STFDecoderSpec.cxx index ab11dffdf0180..400f56026e545 100644 --- a/Detectors/ITSMFT/common/workflow/src/STFDecoderSpec.cxx +++ b/Detectors/ITSMFT/common/workflow/src/STFDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/src/digit-reader-workflow.cxx b/Detectors/ITSMFT/common/workflow/src/digit-reader-workflow.cxx index 09caf3410eab7..7ebef7b4bbc5b 100644 --- a/Detectors/ITSMFT/common/workflow/src/digit-reader-workflow.cxx +++ b/Detectors/ITSMFT/common/workflow/src/digit-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/src/digit-writer-workflow.cxx b/Detectors/ITSMFT/common/workflow/src/digit-writer-workflow.cxx index dfe7911802b0d..1ec097fa5d7ee 100644 --- a/Detectors/ITSMFT/common/workflow/src/digit-writer-workflow.cxx +++ b/Detectors/ITSMFT/common/workflow/src/digit-writer-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/src/entropy-encoder-workflow.cxx b/Detectors/ITSMFT/common/workflow/src/entropy-encoder-workflow.cxx index 2859ab6bcd0c3..0383458602b02 100644 --- a/Detectors/ITSMFT/common/workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/ITSMFT/common/workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/common/workflow/src/stf-decoder-workflow.cxx b/Detectors/ITSMFT/common/workflow/src/stf-decoder-workflow.cxx index e4cad3119a8d4..b419754b68934 100644 --- a/Detectors/ITSMFT/common/workflow/src/stf-decoder-workflow.cxx +++ b/Detectors/ITSMFT/common/workflow/src/stf-decoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/test/CMakeLists.txt b/Detectors/ITSMFT/test/CMakeLists.txt index 1f39c887404f9..58feb83e80816 100644 --- a/Detectors/ITSMFT/test/CMakeLists.txt +++ b/Detectors/ITSMFT/test/CMakeLists.txt @@ -1,11 +1,12 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(HitAnalysis) diff --git a/Detectors/ITSMFT/test/HitAnalysis/CMakeLists.txt b/Detectors/ITSMFT/test/HitAnalysis/CMakeLists.txt index afc16d98a495d..4155023626774 100644 --- a/Detectors/ITSMFT/test/HitAnalysis/CMakeLists.txt +++ b/Detectors/ITSMFT/test/HitAnalysis/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(HitAnalysis SOURCES src/HitAnalysis.cxx diff --git a/Detectors/ITSMFT/test/HitAnalysis/include/HitAnalysis/HitAnalysis.h b/Detectors/ITSMFT/test/HitAnalysis/include/HitAnalysis/HitAnalysis.h index 35fb89fd71202..a4d8fca7dc41f 100644 --- a/Detectors/ITSMFT/test/HitAnalysis/include/HitAnalysis/HitAnalysis.h +++ b/Detectors/ITSMFT/test/HitAnalysis/include/HitAnalysis/HitAnalysis.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/test/HitAnalysis/src/HitAnalysis.cxx b/Detectors/ITSMFT/test/HitAnalysis/src/HitAnalysis.cxx index 2b8ce3edbd0f6..036e95bee2664 100644 --- a/Detectors/ITSMFT/test/HitAnalysis/src/HitAnalysis.cxx +++ b/Detectors/ITSMFT/test/HitAnalysis/src/HitAnalysis.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/test/HitAnalysis/src/HitAnalysisLinkDef.h b/Detectors/ITSMFT/test/HitAnalysis/src/HitAnalysisLinkDef.h index 179c50e10befb..ee87d6e3c6c62 100644 --- a/Detectors/ITSMFT/test/HitAnalysis/src/HitAnalysisLinkDef.h +++ b/Detectors/ITSMFT/test/HitAnalysis/src/HitAnalysisLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/CMakeLists.txt b/Detectors/MUON/CMakeLists.txt index 110304c31df91..71cee100c850c 100644 --- a/Detectors/MUON/CMakeLists.txt +++ b/Detectors/MUON/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Common) add_subdirectory(MCH) diff --git a/Detectors/MUON/Common/CMakeLists.txt b/Detectors/MUON/Common/CMakeLists.txt index cd006b7399275..88a0c53be43af 100644 --- a/Detectors/MUON/Common/CMakeLists.txt +++ b/Detectors/MUON/Common/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(subsystems "mch;mid") diff --git a/Detectors/MUON/Common/src/dcs-ccdb.cxx b/Detectors/MUON/Common/src/dcs-ccdb.cxx index 241a0512d30a2..35194fd49f046 100644 --- a/Detectors/MUON/Common/src/dcs-ccdb.cxx +++ b/Detectors/MUON/Common/src/dcs-ccdb.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/Common/src/dcs-processor-workflow.cxx b/Detectors/MUON/Common/src/dcs-processor-workflow.cxx index 81d5e95cca1f6..31374ca588cdd 100644 --- a/Detectors/MUON/Common/src/dcs-processor-workflow.cxx +++ b/Detectors/MUON/Common/src/dcs-processor-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/Common/src/mch-dcs-sim-workflow.cxx b/Detectors/MUON/Common/src/mch-dcs-sim-workflow.cxx index e11e446b8ef5b..2e0b500adfbf4 100644 --- a/Detectors/MUON/Common/src/mch-dcs-sim-workflow.cxx +++ b/Detectors/MUON/Common/src/mch-dcs-sim-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/Common/src/mid-dcs-sim-workflow.cxx b/Detectors/MUON/Common/src/mid-dcs-sim-workflow.cxx index 354a79792f159..14cf8e5027f89 100644 --- a/Detectors/MUON/Common/src/mid-dcs-sim-workflow.cxx +++ b/Detectors/MUON/Common/src/mid-dcs-sim-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/Common/src/subsysname.h b/Detectors/MUON/Common/src/subsysname.h index dbeb690838cc6..4d0dc79dfc529 100644 --- a/Detectors/MUON/Common/src/subsysname.h +++ b/Detectors/MUON/Common/src/subsysname.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Base/CMakeLists.txt b/Detectors/MUON/MCH/Base/CMakeLists.txt index 71a39a0917882..5360d26920815 100644 --- a/Detectors/MUON/MCH/Base/CMakeLists.txt +++ b/Detectors/MUON/MCH/Base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHBase SOURCES diff --git a/Detectors/MUON/MCH/Base/include/MCHBase/ClusterBlock.h b/Detectors/MUON/MCH/Base/include/MCHBase/ClusterBlock.h index faec55e699fe0..6377b2ac23797 100644 --- a/Detectors/MUON/MCH/Base/include/MCHBase/ClusterBlock.h +++ b/Detectors/MUON/MCH/Base/include/MCHBase/ClusterBlock.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Base/include/MCHBase/DecoderError.h b/Detectors/MUON/MCH/Base/include/MCHBase/DecoderError.h index 54a056d7974ff..eae663d46bccb 100644 --- a/Detectors/MUON/MCH/Base/include/MCHBase/DecoderError.h +++ b/Detectors/MUON/MCH/Base/include/MCHBase/DecoderError.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Base/include/MCHBase/PreCluster.h b/Detectors/MUON/MCH/Base/include/MCHBase/PreCluster.h index f76016bb5adc8..46c83e3c570b9 100644 --- a/Detectors/MUON/MCH/Base/include/MCHBase/PreCluster.h +++ b/Detectors/MUON/MCH/Base/include/MCHBase/PreCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Base/include/MCHBase/TrackBlock.h b/Detectors/MUON/MCH/Base/include/MCHBase/TrackBlock.h index 2b9b609ca3237..186d70997b33f 100644 --- a/Detectors/MUON/MCH/Base/include/MCHBase/TrackBlock.h +++ b/Detectors/MUON/MCH/Base/include/MCHBase/TrackBlock.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Base/src/ClusterBlock.cxx b/Detectors/MUON/MCH/Base/src/ClusterBlock.cxx index 45e51556a7d6a..31b083ed41d26 100644 --- a/Detectors/MUON/MCH/Base/src/ClusterBlock.cxx +++ b/Detectors/MUON/MCH/Base/src/ClusterBlock.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Base/src/MCHBaseLinkDef.h b/Detectors/MUON/MCH/Base/src/MCHBaseLinkDef.h index 77800e43713f4..ee0562a8c88f1 100644 --- a/Detectors/MUON/MCH/Base/src/MCHBaseLinkDef.h +++ b/Detectors/MUON/MCH/Base/src/MCHBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Base/src/PreCluster.cxx b/Detectors/MUON/MCH/Base/src/PreCluster.cxx index 4f976ce952df0..58381f66ccade 100644 --- a/Detectors/MUON/MCH/Base/src/PreCluster.cxx +++ b/Detectors/MUON/MCH/Base/src/PreCluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Base/src/TrackBlock.cxx b/Detectors/MUON/MCH/Base/src/TrackBlock.cxx index b0cd0806925ab..2b5a7d0440611 100644 --- a/Detectors/MUON/MCH/Base/src/TrackBlock.cxx +++ b/Detectors/MUON/MCH/Base/src/TrackBlock.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/CMakeLists.txt b/Detectors/MUON/MCH/CMakeLists.txt index f8f78fbb9c993..d35c60573f1c1 100644 --- a/Detectors/MUON/MCH/CMakeLists.txt +++ b/Detectors/MUON/MCH/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Base) add_subdirectory(Contour) diff --git a/Detectors/MUON/MCH/CTF/CMakeLists.txt b/Detectors/MUON/MCH/CTF/CMakeLists.txt index f0811da4be70e..9addbd36bd09a 100644 --- a/Detectors/MUON/MCH/CTF/CMakeLists.txt +++ b/Detectors/MUON/MCH/CTF/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHCTF SOURCES src/CTFCoder.cxx src/CTFHelper.cxx diff --git a/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFCoder.h b/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFCoder.h index d1077156c861a..c1b39a608f11c 100644 --- a/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFCoder.h +++ b/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFHelper.h b/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFHelper.h index 1a1ed59888490..7b155b5f954aa 100644 --- a/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFHelper.h +++ b/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/CTF/src/CTFCoder.cxx b/Detectors/MUON/MCH/CTF/src/CTFCoder.cxx index 5f9eb9c1fa4e5..4e01dc3c49f77 100644 --- a/Detectors/MUON/MCH/CTF/src/CTFCoder.cxx +++ b/Detectors/MUON/MCH/CTF/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/CTF/src/CTFHelper.cxx b/Detectors/MUON/MCH/CTF/src/CTFHelper.cxx index 66421f99792a6..5d1f58cc5623a 100644 --- a/Detectors/MUON/MCH/CTF/src/CTFHelper.cxx +++ b/Detectors/MUON/MCH/CTF/src/CTFHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Calibration/CMakeLists.txt b/Detectors/MUON/MCH/Calibration/CMakeLists.txt index 250dac3fc32c8..f62f0abc2838b 100644 --- a/Detectors/MUON/MCH/Calibration/CMakeLists.txt +++ b/Detectors/MUON/MCH/Calibration/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHCalibration SOURCES diff --git a/Detectors/MUON/MCH/Calibration/include/MCHCalibration/MCHChannelCalibrator.h b/Detectors/MUON/MCH/Calibration/include/MCHCalibration/MCHChannelCalibrator.h index 465faeec688a4..ad1e17862179d 100644 --- a/Detectors/MUON/MCH/Calibration/include/MCHCalibration/MCHChannelCalibrator.h +++ b/Detectors/MUON/MCH/Calibration/include/MCHCalibration/MCHChannelCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Calibration/include/MCHCalibration/PedestalCalibrator.h b/Detectors/MUON/MCH/Calibration/include/MCHCalibration/PedestalCalibrator.h index 1fd7a776be8a8..eaf71555a6d4c 100644 --- a/Detectors/MUON/MCH/Calibration/include/MCHCalibration/PedestalCalibrator.h +++ b/Detectors/MUON/MCH/Calibration/include/MCHCalibration/PedestalCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Calibration/include/MCHCalibration/PedestalDigit.h b/Detectors/MUON/MCH/Calibration/include/MCHCalibration/PedestalDigit.h index e5c30e5f847bc..9436a2ffc26f4 100644 --- a/Detectors/MUON/MCH/Calibration/include/MCHCalibration/PedestalDigit.h +++ b/Detectors/MUON/MCH/Calibration/include/MCHCalibration/PedestalDigit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Calibration/include/MCHCalibration/PedestalProcessor.h b/Detectors/MUON/MCH/Calibration/include/MCHCalibration/PedestalProcessor.h index b0d2323d33018..a9ff8a6e83518 100644 --- a/Detectors/MUON/MCH/Calibration/include/MCHCalibration/PedestalProcessor.h +++ b/Detectors/MUON/MCH/Calibration/include/MCHCalibration/PedestalProcessor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Calibration/src/MCHCalibrationLinkDef.h b/Detectors/MUON/MCH/Calibration/src/MCHCalibrationLinkDef.h index 074f8d3a03d07..d15871f55e4fb 100644 --- a/Detectors/MUON/MCH/Calibration/src/MCHCalibrationLinkDef.h +++ b/Detectors/MUON/MCH/Calibration/src/MCHCalibrationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Calibration/src/PedestalCalibSpec.h b/Detectors/MUON/MCH/Calibration/src/PedestalCalibSpec.h index 372a4f5caa621..a4c2713ea77a2 100644 --- a/Detectors/MUON/MCH/Calibration/src/PedestalCalibSpec.h +++ b/Detectors/MUON/MCH/Calibration/src/PedestalCalibSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Calibration/src/PedestalCalibrator.cxx b/Detectors/MUON/MCH/Calibration/src/PedestalCalibrator.cxx index 32d33c8988378..191e7cebeb77e 100644 --- a/Detectors/MUON/MCH/Calibration/src/PedestalCalibrator.cxx +++ b/Detectors/MUON/MCH/Calibration/src/PedestalCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Calibration/src/PedestalDigit.cxx b/Detectors/MUON/MCH/Calibration/src/PedestalDigit.cxx index 89156da0bf04d..d6e37db92d5b4 100644 --- a/Detectors/MUON/MCH/Calibration/src/PedestalDigit.cxx +++ b/Detectors/MUON/MCH/Calibration/src/PedestalDigit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Calibration/src/PedestalProcessor.cxx b/Detectors/MUON/MCH/Calibration/src/PedestalProcessor.cxx index d3c4a64c5026d..f64ea53df2d1e 100644 --- a/Detectors/MUON/MCH/Calibration/src/PedestalProcessor.cxx +++ b/Detectors/MUON/MCH/Calibration/src/PedestalProcessor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Calibration/src/pedestal-calib-workflow.cxx b/Detectors/MUON/MCH/Calibration/src/pedestal-calib-workflow.cxx index 97fd1a968e51c..f56b4b4d1ab5e 100644 --- a/Detectors/MUON/MCH/Calibration/src/pedestal-calib-workflow.cxx +++ b/Detectors/MUON/MCH/Calibration/src/pedestal-calib-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Calibration/src/pedestal-decoding-workflow.cxx b/Detectors/MUON/MCH/Calibration/src/pedestal-decoding-workflow.cxx index 004941731c715..a34f28bf39bc2 100644 --- a/Detectors/MUON/MCH/Calibration/src/pedestal-decoding-workflow.cxx +++ b/Detectors/MUON/MCH/Calibration/src/pedestal-decoding-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Clustering/CMakeLists.txt b/Detectors/MUON/MCH/Clustering/CMakeLists.txt index b4372061abecb..1ad9526ab091f 100644 --- a/Detectors/MUON/MCH/Clustering/CMakeLists.txt +++ b/Detectors/MUON/MCH/Clustering/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHClustering SOURCES src/ClusterOriginal.cxx diff --git a/Detectors/MUON/MCH/Clustering/include/MCHClustering/ClusterFinderOriginal.h b/Detectors/MUON/MCH/Clustering/include/MCHClustering/ClusterFinderOriginal.h index dd41b2f394caf..cea85ab07b515 100644 --- a/Detectors/MUON/MCH/Clustering/include/MCHClustering/ClusterFinderOriginal.h +++ b/Detectors/MUON/MCH/Clustering/include/MCHClustering/ClusterFinderOriginal.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Clustering/include/MCHClustering/ClusterizerParam.h b/Detectors/MUON/MCH/Clustering/include/MCHClustering/ClusterizerParam.h index 830ed3b9a6b9c..24f8322fc9dc9 100644 --- a/Detectors/MUON/MCH/Clustering/include/MCHClustering/ClusterizerParam.h +++ b/Detectors/MUON/MCH/Clustering/include/MCHClustering/ClusterizerParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Clustering/src/ClusterFinderOriginal.cxx b/Detectors/MUON/MCH/Clustering/src/ClusterFinderOriginal.cxx index 3d12f6ba9f849..e9966a0e8efb1 100644 --- a/Detectors/MUON/MCH/Clustering/src/ClusterFinderOriginal.cxx +++ b/Detectors/MUON/MCH/Clustering/src/ClusterFinderOriginal.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Clustering/src/ClusterOriginal.cxx b/Detectors/MUON/MCH/Clustering/src/ClusterOriginal.cxx index ba873f4dff52f..3fb005feaf80f 100644 --- a/Detectors/MUON/MCH/Clustering/src/ClusterOriginal.cxx +++ b/Detectors/MUON/MCH/Clustering/src/ClusterOriginal.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Clustering/src/ClusterOriginal.h b/Detectors/MUON/MCH/Clustering/src/ClusterOriginal.h index e0378123ddf95..1292e4341b3a7 100644 --- a/Detectors/MUON/MCH/Clustering/src/ClusterOriginal.h +++ b/Detectors/MUON/MCH/Clustering/src/ClusterOriginal.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Clustering/src/ClusterizerParam.cxx b/Detectors/MUON/MCH/Clustering/src/ClusterizerParam.cxx index d869874940033..562ed953c6956 100644 --- a/Detectors/MUON/MCH/Clustering/src/ClusterizerParam.cxx +++ b/Detectors/MUON/MCH/Clustering/src/ClusterizerParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Clustering/src/MCHClusteringLinkDef.h b/Detectors/MUON/MCH/Clustering/src/MCHClusteringLinkDef.h index 937b8278e6a8f..d6d754b70bd6d 100644 --- a/Detectors/MUON/MCH/Clustering/src/MCHClusteringLinkDef.h +++ b/Detectors/MUON/MCH/Clustering/src/MCHClusteringLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Clustering/src/MathiesonOriginal.cxx b/Detectors/MUON/MCH/Clustering/src/MathiesonOriginal.cxx index fad01e306743b..d79735faed549 100644 --- a/Detectors/MUON/MCH/Clustering/src/MathiesonOriginal.cxx +++ b/Detectors/MUON/MCH/Clustering/src/MathiesonOriginal.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Clustering/src/MathiesonOriginal.h b/Detectors/MUON/MCH/Clustering/src/MathiesonOriginal.h index 2a06045e66e78..51effdffea0f4 100644 --- a/Detectors/MUON/MCH/Clustering/src/MathiesonOriginal.h +++ b/Detectors/MUON/MCH/Clustering/src/MathiesonOriginal.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Clustering/src/PadOriginal.h b/Detectors/MUON/MCH/Clustering/src/PadOriginal.h index 307f72f5d6bcf..6bea8168bbb2f 100644 --- a/Detectors/MUON/MCH/Clustering/src/PadOriginal.h +++ b/Detectors/MUON/MCH/Clustering/src/PadOriginal.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Conditions/CMakeLists.txt b/Detectors/MUON/MCH/Conditions/CMakeLists.txt index 9f378a5d46c2e..ea084fef7e489 100644 --- a/Detectors/MUON/MCH/Conditions/CMakeLists.txt +++ b/Detectors/MUON/MCH/Conditions/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( MCHConditions diff --git a/Detectors/MUON/MCH/Conditions/include/MCHConditions/DCSNamer.h b/Detectors/MUON/MCH/Conditions/include/MCHConditions/DCSNamer.h index 1b030dc6b3779..79d09f01f0a7a 100644 --- a/Detectors/MUON/MCH/Conditions/include/MCHConditions/DCSNamer.h +++ b/Detectors/MUON/MCH/Conditions/include/MCHConditions/DCSNamer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Conditions/src/DCSNamer.cxx b/Detectors/MUON/MCH/Conditions/src/DCSNamer.cxx index 2174165795711..28a904b6dc160 100644 --- a/Detectors/MUON/MCH/Conditions/src/DCSNamer.cxx +++ b/Detectors/MUON/MCH/Conditions/src/DCSNamer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Conditions/test/HVAliases.cxx b/Detectors/MUON/MCH/Conditions/test/HVAliases.cxx index dd5098cc31de5..f3022d90e205f 100644 --- a/Detectors/MUON/MCH/Conditions/test/HVAliases.cxx +++ b/Detectors/MUON/MCH/Conditions/test/HVAliases.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Conditions/test/HVAliases.h b/Detectors/MUON/MCH/Conditions/test/HVAliases.h index cd673bbe1cf7e..ce756c7213332 100644 --- a/Detectors/MUON/MCH/Conditions/test/HVAliases.h +++ b/Detectors/MUON/MCH/Conditions/test/HVAliases.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Conditions/test/LVAliases.cxx b/Detectors/MUON/MCH/Conditions/test/LVAliases.cxx index fcade8e3b78e2..938cc6b4ed1d4 100644 --- a/Detectors/MUON/MCH/Conditions/test/LVAliases.cxx +++ b/Detectors/MUON/MCH/Conditions/test/LVAliases.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Conditions/test/LVAliases.h b/Detectors/MUON/MCH/Conditions/test/LVAliases.h index 2a720118bc4fe..83cec1dc95f5e 100644 --- a/Detectors/MUON/MCH/Conditions/test/LVAliases.h +++ b/Detectors/MUON/MCH/Conditions/test/LVAliases.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Conditions/test/testDCSNamer.cxx b/Detectors/MUON/MCH/Conditions/test/testDCSNamer.cxx index 0a5f35af154b9..02984214855dd 100644 --- a/Detectors/MUON/MCH/Conditions/test/testDCSNamer.cxx +++ b/Detectors/MUON/MCH/Conditions/test/testDCSNamer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/CMakeLists.txt b/Detectors/MUON/MCH/Contour/CMakeLists.txt index bef75cce0587b..c6ca3b82c39b9 100644 --- a/Detectors/MUON/MCH/Contour/CMakeLists.txt +++ b/Detectors/MUON/MCH/Contour/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_header_only_library(MCHContour) diff --git a/Detectors/MUON/MCH/Contour/include/MCHContour/BBox.h b/Detectors/MUON/MCH/Contour/include/MCHContour/BBox.h index 542d810afe77c..bec5ddb63cd02 100644 --- a/Detectors/MUON/MCH/Contour/include/MCHContour/BBox.h +++ b/Detectors/MUON/MCH/Contour/include/MCHContour/BBox.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/include/MCHContour/Contour.h b/Detectors/MUON/MCH/Contour/include/MCHContour/Contour.h index c271467a4a4ca..3f0c85d71f647 100644 --- a/Detectors/MUON/MCH/Contour/include/MCHContour/Contour.h +++ b/Detectors/MUON/MCH/Contour/include/MCHContour/Contour.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/include/MCHContour/ContourCreator.h b/Detectors/MUON/MCH/Contour/include/MCHContour/ContourCreator.h index 890b998ddb760..a600749d210b6 100644 --- a/Detectors/MUON/MCH/Contour/include/MCHContour/ContourCreator.h +++ b/Detectors/MUON/MCH/Contour/include/MCHContour/ContourCreator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/include/MCHContour/ContourCreator.inl b/Detectors/MUON/MCH/Contour/include/MCHContour/ContourCreator.inl index 67f8e141f8bf3..6d827e2fc5f93 100644 --- a/Detectors/MUON/MCH/Contour/include/MCHContour/ContourCreator.inl +++ b/Detectors/MUON/MCH/Contour/include/MCHContour/ContourCreator.inl @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/include/MCHContour/Edge.h b/Detectors/MUON/MCH/Contour/include/MCHContour/Edge.h index fc6936bd05b15..89b95e69a9fa2 100644 --- a/Detectors/MUON/MCH/Contour/include/MCHContour/Edge.h +++ b/Detectors/MUON/MCH/Contour/include/MCHContour/Edge.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/include/MCHContour/Helper.h b/Detectors/MUON/MCH/Contour/include/MCHContour/Helper.h index 50e89e62d9608..87f52835e0ab3 100644 --- a/Detectors/MUON/MCH/Contour/include/MCHContour/Helper.h +++ b/Detectors/MUON/MCH/Contour/include/MCHContour/Helper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/include/MCHContour/Interval.h b/Detectors/MUON/MCH/Contour/include/MCHContour/Interval.h index 41d8ad01de501..63ef1a70a86b4 100644 --- a/Detectors/MUON/MCH/Contour/include/MCHContour/Interval.h +++ b/Detectors/MUON/MCH/Contour/include/MCHContour/Interval.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/include/MCHContour/Polygon.h b/Detectors/MUON/MCH/Contour/include/MCHContour/Polygon.h index e42ad8b005fce..f2c5c1158f072 100644 --- a/Detectors/MUON/MCH/Contour/include/MCHContour/Polygon.h +++ b/Detectors/MUON/MCH/Contour/include/MCHContour/Polygon.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/include/MCHContour/SVGWriter.h b/Detectors/MUON/MCH/Contour/include/MCHContour/SVGWriter.h index e9cf3a0544a57..dec93eb5622d0 100644 --- a/Detectors/MUON/MCH/Contour/include/MCHContour/SVGWriter.h +++ b/Detectors/MUON/MCH/Contour/include/MCHContour/SVGWriter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/include/MCHContour/SegmentTree.h b/Detectors/MUON/MCH/Contour/include/MCHContour/SegmentTree.h index 172dcf89cbf68..ad072aa373825 100644 --- a/Detectors/MUON/MCH/Contour/include/MCHContour/SegmentTree.h +++ b/Detectors/MUON/MCH/Contour/include/MCHContour/SegmentTree.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/include/MCHContour/Vertex.h b/Detectors/MUON/MCH/Contour/include/MCHContour/Vertex.h index f7691d1f5bd48..484a42f1e02b3 100644 --- a/Detectors/MUON/MCH/Contour/include/MCHContour/Vertex.h +++ b/Detectors/MUON/MCH/Contour/include/MCHContour/Vertex.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/test/BBox.cxx b/Detectors/MUON/MCH/Contour/test/BBox.cxx index c765ba22f7084..6ccce3a3db2c7 100644 --- a/Detectors/MUON/MCH/Contour/test/BBox.cxx +++ b/Detectors/MUON/MCH/Contour/test/BBox.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/test/Contour.cxx b/Detectors/MUON/MCH/Contour/test/Contour.cxx index 05d89bfcb55ed..710598ede487e 100644 --- a/Detectors/MUON/MCH/Contour/test/Contour.cxx +++ b/Detectors/MUON/MCH/Contour/test/Contour.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/test/ContourCreator.cxx b/Detectors/MUON/MCH/Contour/test/ContourCreator.cxx index ae19e93a3a8aa..a8e10bcba384d 100644 --- a/Detectors/MUON/MCH/Contour/test/ContourCreator.cxx +++ b/Detectors/MUON/MCH/Contour/test/ContourCreator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/test/Edge.cxx b/Detectors/MUON/MCH/Contour/test/Edge.cxx index ccb14da6b69b3..168d42ddfc307 100644 --- a/Detectors/MUON/MCH/Contour/test/Edge.cxx +++ b/Detectors/MUON/MCH/Contour/test/Edge.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/test/Interval.cxx b/Detectors/MUON/MCH/Contour/test/Interval.cxx index d35b007d50296..e6028f25e2e98 100644 --- a/Detectors/MUON/MCH/Contour/test/Interval.cxx +++ b/Detectors/MUON/MCH/Contour/test/Interval.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/test/Polygon.cxx b/Detectors/MUON/MCH/Contour/test/Polygon.cxx index 1f2b9b8d4226e..9cfae0c720b29 100644 --- a/Detectors/MUON/MCH/Contour/test/Polygon.cxx +++ b/Detectors/MUON/MCH/Contour/test/Polygon.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/test/SegmentTree.cxx b/Detectors/MUON/MCH/Contour/test/SegmentTree.cxx index 3b6d680bcb590..a5daf8df8645a 100644 --- a/Detectors/MUON/MCH/Contour/test/SegmentTree.cxx +++ b/Detectors/MUON/MCH/Contour/test/SegmentTree.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Contour/test/Vertex.cxx b/Detectors/MUON/MCH/Contour/test/Vertex.cxx index 8a53a0011e943..30f820ef730b2 100644 --- a/Detectors/MUON/MCH/Contour/test/Vertex.cxx +++ b/Detectors/MUON/MCH/Contour/test/Vertex.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/CMakeLists.txt b/Detectors/MUON/MCH/DevIO/CMakeLists.txt index 13685eb8e0cb3..3001c21ea1312 100644 --- a/Detectors/MUON/MCH/DevIO/CMakeLists.txt +++ b/Detectors/MUON/MCH/DevIO/CMakeLists.txt @@ -1,11 +1,12 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Digits) diff --git a/Detectors/MUON/MCH/DevIO/Digits/CMakeLists.txt b/Detectors/MUON/MCH/DevIO/Digits/CMakeLists.txt index d0e9186fc19cf..54f2b33fb6159 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/CMakeLists.txt +++ b/Detectors/MUON/MCH/DevIO/Digits/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHDigitIO SOURCES DigitWriter.cxx DigitReader.cxx DigitFileFormat.cxx diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitD0.h b/Detectors/MUON/MCH/DevIO/Digits/DigitD0.h index 5a9c097ca58dc..46e9902b18c59 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitD0.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitD0.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.cxx b/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.cxx index 4ae0f8fd72a3b..08864de85dafa 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.h b/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.h index 4ea2a627bcc4c..a1a2cd67118ef 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIO.h b/Detectors/MUON/MCH/DevIO/Digits/DigitIO.h index cefe1832a8502..2aa6861e6e417 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIO.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIO.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.cxx b/Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.cxx index f8324878fb0a2..83b281a98a02f 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.h b/Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.h index 3c553c9147c1e..f3b9d7e4f3b33 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.cxx b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.cxx index 18f0856a1c2d9..07a97ee922f7b 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.h b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.h index 25f1bed42a0b9..f6dc786d8f28d 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.cxx b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.cxx index e6e6bc137873b..1fb630e41b614 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.h b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.h index cadb17a201159..95fa3bcb1d968 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.cxx b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.cxx index 5fc579eab29a8..385320fc91635 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.h b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.h index 27a88a73df1be..f45dcb33335fb 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.cxx b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.cxx index 4b22cc7481903..2c4309b470a5c 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.h b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.h index c3117dfad934f..c1e908f91ece7 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitReader.cxx b/Detectors/MUON/MCH/DevIO/Digits/DigitReader.cxx index 0b1da7c7a3bff..733c6171c0e67 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitReader.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitReader.h b/Detectors/MUON/MCH/DevIO/Digits/DigitReader.h index c734291b8aa21..4ed1da87048ab 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitReader.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.cxx b/Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.cxx index cf2d6a50a03a6..07ecd4092b9e3 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.h b/Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.h index 6fcf9a32df89c..a18c0c6c9ed3c 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitWriter.cxx b/Detectors/MUON/MCH/DevIO/Digits/DigitWriter.cxx index ccdda1dd9a4f5..d47b4665078e5 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitWriter.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitWriter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitWriter.h b/Detectors/MUON/MCH/DevIO/Digits/DigitWriter.h index a86f510163d56..cc7a16e13c91a 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitWriter.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitWriter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.cxx b/Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.cxx index baed13829d9be..da3e67ddf4616 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.h b/Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.h index 93d815e4a7c57..1bdaeae0de348 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/IO.cxx b/Detectors/MUON/MCH/DevIO/Digits/IO.cxx index 649d03e447cc7..2adefe6f28b62 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/IO.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/IO.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/IO.h b/Detectors/MUON/MCH/DevIO/Digits/IO.h index 05d9b8e540c68..b19cb4bf6039b 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/IO.h +++ b/Detectors/MUON/MCH/DevIO/Digits/IO.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/IOStruct.h b/Detectors/MUON/MCH/DevIO/Digits/IOStruct.h index 9d2b8cc120ace..a6f6c9cbf24fd 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/IOStruct.h +++ b/Detectors/MUON/MCH/DevIO/Digits/IOStruct.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/ProgOptions.h b/Detectors/MUON/MCH/DevIO/Digits/ProgOptions.h index 7a5be04b057b0..45e2831056b0c 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/ProgOptions.h +++ b/Detectors/MUON/MCH/DevIO/Digits/ProgOptions.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/TestFileV0.cxx b/Detectors/MUON/MCH/DevIO/Digits/TestFileV0.cxx index 9060777bedfb6..2b41081fd7c04 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/TestFileV0.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/TestFileV0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/TestFileV0.h b/Detectors/MUON/MCH/DevIO/Digits/TestFileV0.h index 79483ec0e8d6d..0afaa5c9d159b 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/TestFileV0.h +++ b/Detectors/MUON/MCH/DevIO/Digits/TestFileV0.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/digits-file-dumper.cxx b/Detectors/MUON/MCH/DevIO/Digits/digits-file-dumper.cxx index b4f8f8f1f80e1..7301ff219b305 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/digits-file-dumper.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/digits-file-dumper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/digits-file-reader-workflow.cxx b/Detectors/MUON/MCH/DevIO/Digits/digits-file-reader-workflow.cxx index 0401d37ca8cee..dfade6adbac56 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/digits-file-reader-workflow.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/digits-file-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/digits-r23-workflow.cxx b/Detectors/MUON/MCH/DevIO/Digits/digits-r23-workflow.cxx index 06d8f95b18611..cb23fe3bd9831 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/digits-r23-workflow.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/digits-r23-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/digits-random-generator-workflow.cxx b/Detectors/MUON/MCH/DevIO/Digits/digits-random-generator-workflow.cxx index bbb2d96155053..c27869caa5bd7 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/digits-random-generator-workflow.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/digits-random-generator-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/digits-writer-workflow.cxx b/Detectors/MUON/MCH/DevIO/Digits/digits-writer-workflow.cxx index 45b56c910e55d..b361f650bb3a3 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/digits-writer-workflow.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/digits-writer-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/testDigitIO.cxx b/Detectors/MUON/MCH/DevIO/Digits/testDigitIO.cxx index d6a54f17d2cc8..c48173fb47846 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/testDigitIO.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/testDigitIO.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/DevIO/Digits/testDigitIOV0.cxx b/Detectors/MUON/MCH/DevIO/Digits/testDigitIOV0.cxx index 04f6e4a8566f2..0f721b92daf94 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/testDigitIOV0.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/testDigitIOV0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/CMakeLists.txt b/Detectors/MUON/MCH/Geometry/CMakeLists.txt index 404d396bf2574..a9f6ffc50e062 100644 --- a/Detectors/MUON/MCH/Geometry/CMakeLists.txt +++ b/Detectors/MUON/MCH/Geometry/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Transformer) add_subdirectory(Creator) diff --git a/Detectors/MUON/MCH/Geometry/Creator/CMakeLists.txt b/Detectors/MUON/MCH/Geometry/Creator/CMakeLists.txt index 2790fdf26d6eb..d638562d00707 100644 --- a/Detectors/MUON/MCH/Geometry/Creator/CMakeLists.txt +++ b/Detectors/MUON/MCH/Geometry/Creator/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( MCHGeometryCreator diff --git a/Detectors/MUON/MCH/Geometry/Creator/include/MCHGeometryCreator/Geometry.h b/Detectors/MUON/MCH/Geometry/Creator/include/MCHGeometryCreator/Geometry.h index b645386c8b668..5e8f58cae6031 100644 --- a/Detectors/MUON/MCH/Geometry/Creator/include/MCHGeometryCreator/Geometry.h +++ b/Detectors/MUON/MCH/Geometry/Creator/include/MCHGeometryCreator/Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Creator/src/Geometry.cxx b/Detectors/MUON/MCH/Geometry/Creator/src/Geometry.cxx index d1d019f9a03fb..eafd7af68505d 100644 --- a/Detectors/MUON/MCH/Geometry/Creator/src/Geometry.cxx +++ b/Detectors/MUON/MCH/Geometry/Creator/src/Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Creator/src/MCHGeometryCreatorLinkDef.h b/Detectors/MUON/MCH/Geometry/Creator/src/MCHGeometryCreatorLinkDef.h index e08a6167bd921..f8d4a9d535d03 100644 --- a/Detectors/MUON/MCH/Geometry/Creator/src/MCHGeometryCreatorLinkDef.h +++ b/Detectors/MUON/MCH/Geometry/Creator/src/MCHGeometryCreatorLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Creator/src/Materials.cxx b/Detectors/MUON/MCH/Geometry/Creator/src/Materials.cxx index fab03522b401c..97aa94d00237b 100644 --- a/Detectors/MUON/MCH/Geometry/Creator/src/Materials.cxx +++ b/Detectors/MUON/MCH/Geometry/Creator/src/Materials.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Creator/src/Materials.h b/Detectors/MUON/MCH/Geometry/Creator/src/Materials.h index ed7b94881b0c4..a854a10a04fdd 100644 --- a/Detectors/MUON/MCH/Geometry/Creator/src/Materials.h +++ b/Detectors/MUON/MCH/Geometry/Creator/src/Materials.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Creator/src/Station1Geometry.cxx b/Detectors/MUON/MCH/Geometry/Creator/src/Station1Geometry.cxx index 046f16d23f5f0..1820f22afe25d 100644 --- a/Detectors/MUON/MCH/Geometry/Creator/src/Station1Geometry.cxx +++ b/Detectors/MUON/MCH/Geometry/Creator/src/Station1Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Creator/src/Station1Geometry.h b/Detectors/MUON/MCH/Geometry/Creator/src/Station1Geometry.h index 8018515a0e448..ea17e406b7e82 100644 --- a/Detectors/MUON/MCH/Geometry/Creator/src/Station1Geometry.h +++ b/Detectors/MUON/MCH/Geometry/Creator/src/Station1Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Creator/src/Station2Geometry.cxx b/Detectors/MUON/MCH/Geometry/Creator/src/Station2Geometry.cxx index db98d78535296..e65c832e412de 100644 --- a/Detectors/MUON/MCH/Geometry/Creator/src/Station2Geometry.cxx +++ b/Detectors/MUON/MCH/Geometry/Creator/src/Station2Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Creator/src/Station2Geometry.h b/Detectors/MUON/MCH/Geometry/Creator/src/Station2Geometry.h index da9a1921430d0..59ecfc8c1e383 100644 --- a/Detectors/MUON/MCH/Geometry/Creator/src/Station2Geometry.h +++ b/Detectors/MUON/MCH/Geometry/Creator/src/Station2Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Creator/src/Station345Geometry.cxx b/Detectors/MUON/MCH/Geometry/Creator/src/Station345Geometry.cxx index d672a32f66039..fbfea72ed1ef3 100644 --- a/Detectors/MUON/MCH/Geometry/Creator/src/Station345Geometry.cxx +++ b/Detectors/MUON/MCH/Geometry/Creator/src/Station345Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Creator/src/Station345Geometry.h b/Detectors/MUON/MCH/Geometry/Creator/src/Station345Geometry.h index 9e25c100f796b..21a803661bfcc 100644 --- a/Detectors/MUON/MCH/Geometry/Creator/src/Station345Geometry.h +++ b/Detectors/MUON/MCH/Geometry/Creator/src/Station345Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Test/CMakeLists.txt b/Detectors/MUON/MCH/Geometry/Test/CMakeLists.txt index 096810522a05d..382f8700a544c 100644 --- a/Detectors/MUON/MCH/Geometry/Test/CMakeLists.txt +++ b/Detectors/MUON/MCH/Geometry/Test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( MCHGeometryTest diff --git a/Detectors/MUON/MCH/Geometry/Test/Helpers.cxx b/Detectors/MUON/MCH/Geometry/Test/Helpers.cxx index d5a3530be4be9..1ca1aa76c5124 100644 --- a/Detectors/MUON/MCH/Geometry/Test/Helpers.cxx +++ b/Detectors/MUON/MCH/Geometry/Test/Helpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Test/LinkDef.h b/Detectors/MUON/MCH/Geometry/Test/LinkDef.h index c51f6bec0eb82..f46333ca54ea1 100644 --- a/Detectors/MUON/MCH/Geometry/Test/LinkDef.h +++ b/Detectors/MUON/MCH/Geometry/Test/LinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Test/include/MCHGeometryTest/Helpers.h b/Detectors/MUON/MCH/Geometry/Test/include/MCHGeometryTest/Helpers.h index 9ab8c9bd52cd2..a13b7b21350c7 100644 --- a/Detectors/MUON/MCH/Geometry/Test/include/MCHGeometryTest/Helpers.h +++ b/Detectors/MUON/MCH/Geometry/Test/include/MCHGeometryTest/Helpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Test/testGeometryCreator.cxx b/Detectors/MUON/MCH/Geometry/Test/testGeometryCreator.cxx index af0fe9ebdb581..890ace8795815 100644 --- a/Detectors/MUON/MCH/Geometry/Test/testGeometryCreator.cxx +++ b/Detectors/MUON/MCH/Geometry/Test/testGeometryCreator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Test/testGeometryTransformer.cxx b/Detectors/MUON/MCH/Geometry/Test/testGeometryTransformer.cxx index 1f915f6ac282c..b950c417a51fa 100644 --- a/Detectors/MUON/MCH/Geometry/Test/testGeometryTransformer.cxx +++ b/Detectors/MUON/MCH/Geometry/Test/testGeometryTransformer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Transformer/CMakeLists.txt b/Detectors/MUON/MCH/Geometry/Transformer/CMakeLists.txt index 31d324c8a0d8e..538546db6eb44 100644 --- a/Detectors/MUON/MCH/Geometry/Transformer/CMakeLists.txt +++ b/Detectors/MUON/MCH/Geometry/Transformer/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( MCHGeometryTransformer diff --git a/Detectors/MUON/MCH/Geometry/Transformer/include/MCHGeometryTransformer/Transformations.h b/Detectors/MUON/MCH/Geometry/Transformer/include/MCHGeometryTransformer/Transformations.h index 16e56d6bac296..922c53fcf0dd0 100644 --- a/Detectors/MUON/MCH/Geometry/Transformer/include/MCHGeometryTransformer/Transformations.h +++ b/Detectors/MUON/MCH/Geometry/Transformer/include/MCHGeometryTransformer/Transformations.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Transformer/include/MCHGeometryTransformer/VolumePaths.h b/Detectors/MUON/MCH/Geometry/Transformer/include/MCHGeometryTransformer/VolumePaths.h index edf1630976ffe..8e7c15d192aa6 100644 --- a/Detectors/MUON/MCH/Geometry/Transformer/include/MCHGeometryTransformer/VolumePaths.h +++ b/Detectors/MUON/MCH/Geometry/Transformer/include/MCHGeometryTransformer/VolumePaths.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Transformer/src/Transformations.cxx b/Detectors/MUON/MCH/Geometry/Transformer/src/Transformations.cxx index 448ea24a7580e..399054d9807dd 100644 --- a/Detectors/MUON/MCH/Geometry/Transformer/src/Transformations.cxx +++ b/Detectors/MUON/MCH/Geometry/Transformer/src/Transformations.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Transformer/src/VolumePaths.cxx b/Detectors/MUON/MCH/Geometry/Transformer/src/VolumePaths.cxx index da07e7db7127f..c26b6b72e702e 100644 --- a/Detectors/MUON/MCH/Geometry/Transformer/src/VolumePaths.cxx +++ b/Detectors/MUON/MCH/Geometry/Transformer/src/VolumePaths.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Geometry/Transformer/src/convert-geometry.cxx b/Detectors/MUON/MCH/Geometry/Transformer/src/convert-geometry.cxx index 7bd7b15ed7745..74bb7a1b04dbe 100644 --- a/Detectors/MUON/MCH/Geometry/Transformer/src/convert-geometry.cxx +++ b/Detectors/MUON/MCH/Geometry/Transformer/src/convert-geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/CMakeLists.txt b/Detectors/MUON/MCH/Mapping/CMakeLists.txt index fdfacfe4f702b..99ff094d140d0 100644 --- a/Detectors/MUON/MCH/Mapping/CMakeLists.txt +++ b/Detectors/MUON/MCH/Mapping/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Interface) add_subdirectory(Impl3) diff --git a/Detectors/MUON/MCH/Mapping/Impl3/CMakeLists.txt b/Detectors/MUON/MCH/Mapping/Impl3/CMakeLists.txt index ba56f1f15d42d..787c2550f8797 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/CMakeLists.txt +++ b/Detectors/MUON/MCH/Mapping/Impl3/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHMappingImpl3 SOURCES src/CreateSegmentation.cxx diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationCImpl3.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationCImpl3.cxx index e26cda5e212cf..8072584e0be25 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationCImpl3.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationCImpl3.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationCreator.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationCreator.cxx index 141c089b85d36..930c9c03b6fdd 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationCreator.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationCreator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationCreator.h b/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationCreator.h index b85acd0a4e034..d2d2f67d51799 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationCreator.h +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationCreator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationImpl3.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationImpl3.cxx index 56cbcee3e9864..a7d1620fe2449 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationImpl3.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationImpl3.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationImpl3.h b/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationImpl3.h index d79726938a72d..f0e96dc35ce11 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationImpl3.h +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/CathodeSegmentationImpl3.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/CreateSegmentation.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/CreateSegmentation.cxx index d994edcbfdbb5..0cd34afcdf1ac 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/CreateSegmentation.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/CreateSegmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType0.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType0.cxx index 15b36dc3c5524..92fa5d8fb0bfe 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType0.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType1.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType1.cxx index 9a608ea97ce20..249d7054bb2af 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType1.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType1.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType10.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType10.cxx index 7624f047a1047..b47db85dc3006 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType10.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType10.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType11.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType11.cxx index 832565ded63da..e3efe0fa52d27 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType11.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType11.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType12.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType12.cxx index dd91595b2428f..1596850aa91cb 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType12.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType12.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType13.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType13.cxx index f92253b998558..56fbbfc081c00 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType13.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType13.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType14.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType14.cxx index cea554c2e023b..6be508a34fb39 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType14.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType14.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType15.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType15.cxx index eb0bae3cf42af..9f57033f95a35 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType15.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType15.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType16.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType16.cxx index 41e65095503a5..293e3b49bc94d 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType16.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType16.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType17.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType17.cxx index 83c4a295b7f53..53b106c41c99f 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType17.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType17.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType18.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType18.cxx index 324995381c22d..819eeaba739b9 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType18.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType18.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType19.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType19.cxx index bbc2a29176613..36ca1b7ec99e0 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType19.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType19.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType2.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType2.cxx index 1af01c32f202a..54a14cd8ab956 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType2.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType2.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType20.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType20.cxx index 5ce4c88f26a0e..0f8937a45255c 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType20.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType20.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType3.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType3.cxx index fdf1ad5c2c638..a90c98325559d 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType3.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType3.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType4.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType4.cxx index 01864e7b30675..0a1c5e8363677 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType4.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType4.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType5.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType5.cxx index 399c5e62e6b0e..5decf94b6ae63 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType5.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType5.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType6.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType6.cxx index acb2c2c1ce3a9..005d902a2ff84 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType6.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType6.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType7.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType7.cxx index c8641400387a3..ac483c6a99419 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType7.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType7.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType8.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType8.cxx index 222dc877775e4..6ac5ffb4191b6 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType8.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType8.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType9.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType9.cxx index 432c4677fdc44..e4f9b18cfd2cc 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType9.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenCathodeSegmentationCreatorForSegType9.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenDetElemId2SegType.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/GenDetElemId2SegType.cxx index 32751381ac448..d545aeaeb3029 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenDetElemId2SegType.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenDetElemId2SegType.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/GenDetElemId2SegType.h b/Detectors/MUON/MCH/Mapping/Impl3/src/GenDetElemId2SegType.h index 1a5ef89be1ac9..c9b6376824639 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/GenDetElemId2SegType.h +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/GenDetElemId2SegType.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/PadGroup.h b/Detectors/MUON/MCH/Mapping/Impl3/src/PadGroup.h index 5c52b093c5562..a171d5104ac4f 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/PadGroup.h +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/PadGroup.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/PadGroupType.cxx b/Detectors/MUON/MCH/Mapping/Impl3/src/PadGroupType.cxx index d233ee4abd4b2..66a5b65af465f 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/PadGroupType.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/PadGroupType.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/PadGroupType.h b/Detectors/MUON/MCH/Mapping/Impl3/src/PadGroupType.h index 44a8c6d11d811..84527a2c4a71e 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/PadGroupType.h +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/PadGroupType.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl3/src/PadSize.h b/Detectors/MUON/MCH/Mapping/Impl3/src/PadSize.h index 669482ee524c6..529f3d26775c1 100644 --- a/Detectors/MUON/MCH/Mapping/Impl3/src/PadSize.h +++ b/Detectors/MUON/MCH/Mapping/Impl3/src/PadSize.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/CMakeLists.txt b/Detectors/MUON/MCH/Mapping/Impl4/CMakeLists.txt index 0e3dc3697805e..fc41989642955 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/CMakeLists.txt +++ b/Detectors/MUON/MCH/Mapping/Impl4/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHMappingImpl4 SOURCES src/CreateSegmentation.cxx diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationCImpl4.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationCImpl4.cxx index b440e3345acfb..592d51bba766d 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationCImpl4.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationCImpl4.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationCreator.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationCreator.cxx index 018ee4af36dff..6f370a0896ec6 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationCreator.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationCreator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationCreator.h b/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationCreator.h index b09aaba64f4b8..8a9b6adb95d92 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationCreator.h +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationCreator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationImpl4.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationImpl4.cxx index 62f6bfdcba9d1..de1b0bb389bf1 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationImpl4.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationImpl4.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationImpl4.h b/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationImpl4.h index 909ee640b39ec..d8a09d5fb327e 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationImpl4.h +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/CathodeSegmentationImpl4.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/CreateSegmentation.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/CreateSegmentation.cxx index 17505226ca56c..927e4d94ba052 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/CreateSegmentation.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/CreateSegmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType0.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType0.cxx index 93c9ddfbeff43..58e2eaf5477b6 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType0.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType1.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType1.cxx index c5663474610bc..95acf6a02ece4 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType1.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType1.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType10.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType10.cxx index cc8a508df6ea4..7aa9994c436f4 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType10.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType10.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType11.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType11.cxx index 9d3e9b9375fd3..376447f9c78a2 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType11.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType11.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType12.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType12.cxx index 497d17e2bde5c..83db3a7b77399 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType12.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType12.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType13.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType13.cxx index c100848566938..e1acc4ba2c4f3 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType13.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType13.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType14.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType14.cxx index 7dc264b59d8d6..c7cf594bf0769 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType14.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType14.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType15.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType15.cxx index 76caa9d6d3d31..a9d03a72d8dff 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType15.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType15.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType16.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType16.cxx index 0bb65407a0377..cf884ef4cb265 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType16.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType16.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType17.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType17.cxx index fb6fb148bfee3..adeb2a7a1f3c7 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType17.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType17.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType18.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType18.cxx index f70b3e049834d..74cd7c6c52cab 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType18.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType18.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType19.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType19.cxx index 422b8177fa047..8ad57f452001a 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType19.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType19.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType2.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType2.cxx index 5d1f58ec73d10..2e9c9d146d155 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType2.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType2.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType20.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType20.cxx index 4b4c0ab8a8c2e..b4f58cd366888 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType20.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType20.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType3.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType3.cxx index cf5c8aa9725c8..e5f88c6ad0c84 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType3.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType3.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType4.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType4.cxx index a10fbc8595681..11a1b04709fb4 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType4.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType4.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType5.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType5.cxx index 0557f72a75b25..d20301c88b869 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType5.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType5.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType6.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType6.cxx index d9ba07f21d6fd..41b8cfdb9b1cb 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType6.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType6.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType7.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType7.cxx index e6c1eb4964040..f9ec568acee5e 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType7.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType7.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType8.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType8.cxx index b67dbadd22884..01414acfd81fd 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType8.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType8.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType9.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType9.cxx index a00748da0ebb7..3c0d6f24138e8 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType9.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenCathodeSegmentationCreatorForSegType9.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenDetElemId2SegType.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/GenDetElemId2SegType.cxx index f49a3d7f5a1a9..83ffe2722148e 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenDetElemId2SegType.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenDetElemId2SegType.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/GenDetElemId2SegType.h b/Detectors/MUON/MCH/Mapping/Impl4/src/GenDetElemId2SegType.h index 18ebde9a1cdbe..6c7f0cef68627 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/GenDetElemId2SegType.h +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/GenDetElemId2SegType.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/PadGroup.h b/Detectors/MUON/MCH/Mapping/Impl4/src/PadGroup.h index efbaa8a2e545b..e13a091dd7181 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/PadGroup.h +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/PadGroup.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/PadGroupType.cxx b/Detectors/MUON/MCH/Mapping/Impl4/src/PadGroupType.cxx index 7b72626fb2f89..5d0d2372f33b7 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/PadGroupType.cxx +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/PadGroupType.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/PadGroupType.h b/Detectors/MUON/MCH/Mapping/Impl4/src/PadGroupType.h index 23ed313b60360..d616e973dceaa 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/PadGroupType.h +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/PadGroupType.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Impl4/src/PadSize.h b/Detectors/MUON/MCH/Mapping/Impl4/src/PadSize.h index 2b9411af876be..4641b1c382f37 100644 --- a/Detectors/MUON/MCH/Mapping/Impl4/src/PadSize.h +++ b/Detectors/MUON/MCH/Mapping/Impl4/src/PadSize.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Interface/CMakeLists.txt b/Detectors/MUON/MCH/Mapping/Interface/CMakeLists.txt index 6dda214ccc02f..04e0a69e892d2 100644 --- a/Detectors/MUON/MCH/Mapping/Interface/CMakeLists.txt +++ b/Detectors/MUON/MCH/Mapping/Interface/CMakeLists.txt @@ -1,11 +1,12 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_header_only_library(MCHMappingInterface) diff --git a/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/CathodeSegmentation.h b/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/CathodeSegmentation.h index c5964dc790024..8c800edcb0376 100644 --- a/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/CathodeSegmentation.h +++ b/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/CathodeSegmentation.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/CathodeSegmentationCInterface.h b/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/CathodeSegmentationCInterface.h index 82dfd08f99842..384bed5641e14 100644 --- a/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/CathodeSegmentationCInterface.h +++ b/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/CathodeSegmentationCInterface.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/Segmentation.h b/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/Segmentation.h index e3a15a88fce55..d269677947f2f 100644 --- a/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/Segmentation.h +++ b/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/Segmentation.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/Segmentation.inl b/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/Segmentation.inl index 1de56e0329c89..717ed8fb72128 100644 --- a/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/Segmentation.inl +++ b/Detectors/MUON/MCH/Mapping/Interface/include/MCHMappingInterface/Segmentation.inl @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/SegContour/CMakeLists.txt b/Detectors/MUON/MCH/Mapping/SegContour/CMakeLists.txt index 583e67067370d..595083c5c6af2 100644 --- a/Detectors/MUON/MCH/Mapping/SegContour/CMakeLists.txt +++ b/Detectors/MUON/MCH/Mapping/SegContour/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHMappingSegContour SOURCES src/CathodeSegmentationContours.cxx diff --git a/Detectors/MUON/MCH/Mapping/SegContour/include/MCHMappingSegContour/CathodeSegmentationContours.h b/Detectors/MUON/MCH/Mapping/SegContour/include/MCHMappingSegContour/CathodeSegmentationContours.h index e1e31c8046c9e..7c2ffcb6659b8 100644 --- a/Detectors/MUON/MCH/Mapping/SegContour/include/MCHMappingSegContour/CathodeSegmentationContours.h +++ b/Detectors/MUON/MCH/Mapping/SegContour/include/MCHMappingSegContour/CathodeSegmentationContours.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/SegContour/include/MCHMappingSegContour/CathodeSegmentationSVGWriter.h b/Detectors/MUON/MCH/Mapping/SegContour/include/MCHMappingSegContour/CathodeSegmentationSVGWriter.h index 7fba578c08b2b..b127da99469e5 100644 --- a/Detectors/MUON/MCH/Mapping/SegContour/include/MCHMappingSegContour/CathodeSegmentationSVGWriter.h +++ b/Detectors/MUON/MCH/Mapping/SegContour/include/MCHMappingSegContour/CathodeSegmentationSVGWriter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/SegContour/include/MCHMappingSegContour/SegmentationContours.h b/Detectors/MUON/MCH/Mapping/SegContour/include/MCHMappingSegContour/SegmentationContours.h index 5ddbdf786c0ed..c86472ecdc4d7 100644 --- a/Detectors/MUON/MCH/Mapping/SegContour/include/MCHMappingSegContour/SegmentationContours.h +++ b/Detectors/MUON/MCH/Mapping/SegContour/include/MCHMappingSegContour/SegmentationContours.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/SegContour/src/CathodeSegmentationContours.cxx b/Detectors/MUON/MCH/Mapping/SegContour/src/CathodeSegmentationContours.cxx index ecd6bc3328390..e74f406ede1fd 100644 --- a/Detectors/MUON/MCH/Mapping/SegContour/src/CathodeSegmentationContours.cxx +++ b/Detectors/MUON/MCH/Mapping/SegContour/src/CathodeSegmentationContours.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/SegContour/src/CathodeSegmentationSVGWriter.cxx b/Detectors/MUON/MCH/Mapping/SegContour/src/CathodeSegmentationSVGWriter.cxx index 545814a3cf37c..b614346f1a42a 100644 --- a/Detectors/MUON/MCH/Mapping/SegContour/src/CathodeSegmentationSVGWriter.cxx +++ b/Detectors/MUON/MCH/Mapping/SegContour/src/CathodeSegmentationSVGWriter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/SegContour/src/SVGSegmentation.cxx b/Detectors/MUON/MCH/Mapping/SegContour/src/SVGSegmentation.cxx index 8fea20ecbcb3b..52daf0fa4df59 100644 --- a/Detectors/MUON/MCH/Mapping/SegContour/src/SVGSegmentation.cxx +++ b/Detectors/MUON/MCH/Mapping/SegContour/src/SVGSegmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/SegContour/src/SegmentationContours.cxx b/Detectors/MUON/MCH/Mapping/SegContour/src/SegmentationContours.cxx index 88a4e82e9dc87..ce4fbd7760318 100644 --- a/Detectors/MUON/MCH/Mapping/SegContour/src/SegmentationContours.cxx +++ b/Detectors/MUON/MCH/Mapping/SegContour/src/SegmentationContours.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/SegContour/src/SegmentationSVGWriter.cxx b/Detectors/MUON/MCH/Mapping/SegContour/src/SegmentationSVGWriter.cxx index 545814a3cf37c..b614346f1a42a 100644 --- a/Detectors/MUON/MCH/Mapping/SegContour/src/SegmentationSVGWriter.cxx +++ b/Detectors/MUON/MCH/Mapping/SegContour/src/SegmentationSVGWriter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/cli/CMakeLists.txt b/Detectors/MUON/MCH/Mapping/cli/CMakeLists.txt index da89f1b4a4f28..2a3ce658c3d32 100644 --- a/Detectors/MUON/MCH/Mapping/cli/CMakeLists.txt +++ b/Detectors/MUON/MCH/Mapping/cli/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. foreach(impl RANGE 3 4) o2_add_executable(mapping-cli${impl} diff --git a/Detectors/MUON/MCH/Mapping/cli/cli.cxx b/Detectors/MUON/MCH/Mapping/cli/cli.cxx index e2d98756d68f9..2bcbb036f8b8f 100644 --- a/Detectors/MUON/MCH/Mapping/cli/cli.cxx +++ b/Detectors/MUON/MCH/Mapping/cli/cli.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/cli/export-to-tree.cxx b/Detectors/MUON/MCH/Mapping/cli/export-to-tree.cxx index c49e69003233f..73dc034fdff66 100644 --- a/Detectors/MUON/MCH/Mapping/cli/export-to-tree.cxx +++ b/Detectors/MUON/MCH/Mapping/cli/export-to-tree.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/test/CMakeLists.txt b/Detectors/MUON/MCH/Mapping/test/CMakeLists.txt index dbd339b9696e2..0037b12f62e95 100644 --- a/Detectors/MUON/MCH/Mapping/test/CMakeLists.txt +++ b/Detectors/MUON/MCH/Mapping/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. foreach(impl RANGE 3 4) diff --git a/Detectors/MUON/MCH/Mapping/test/src/BenchCathodeSegmentation.cxx b/Detectors/MUON/MCH/Mapping/test/src/BenchCathodeSegmentation.cxx index 03cb1531a2fa6..1d3e3a8d19ecc 100644 --- a/Detectors/MUON/MCH/Mapping/test/src/BenchCathodeSegmentation.cxx +++ b/Detectors/MUON/MCH/Mapping/test/src/BenchCathodeSegmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/test/src/BenchSegmentation.cxx b/Detectors/MUON/MCH/Mapping/test/src/BenchSegmentation.cxx index 1c1fbe50ad090..9bb117d4158a2 100644 --- a/Detectors/MUON/MCH/Mapping/test/src/BenchSegmentation.cxx +++ b/Detectors/MUON/MCH/Mapping/test/src/BenchSegmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/test/src/CathodeSegmentation.cxx b/Detectors/MUON/MCH/Mapping/test/src/CathodeSegmentation.cxx index ffdf2bfb19b60..db796e5084d9a 100644 --- a/Detectors/MUON/MCH/Mapping/test/src/CathodeSegmentation.cxx +++ b/Detectors/MUON/MCH/Mapping/test/src/CathodeSegmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/test/src/CathodeSegmentationLong.cxx b/Detectors/MUON/MCH/Mapping/test/src/CathodeSegmentationLong.cxx index 6b67af10fe298..062b262f457ba 100644 --- a/Detectors/MUON/MCH/Mapping/test/src/CathodeSegmentationLong.cxx +++ b/Detectors/MUON/MCH/Mapping/test/src/CathodeSegmentationLong.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/test/src/InputDocument.h b/Detectors/MUON/MCH/Mapping/test/src/InputDocument.h index 5386a92161d23..98e5ace886827 100644 --- a/Detectors/MUON/MCH/Mapping/test/src/InputDocument.h +++ b/Detectors/MUON/MCH/Mapping/test/src/InputDocument.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/test/src/Segmentation.cxx b/Detectors/MUON/MCH/Mapping/test/src/Segmentation.cxx index a6fead4d5e294..200bad5e70118 100644 --- a/Detectors/MUON/MCH/Mapping/test/src/Segmentation.cxx +++ b/Detectors/MUON/MCH/Mapping/test/src/Segmentation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/test/src/TestParameters.cxx b/Detectors/MUON/MCH/Mapping/test/src/TestParameters.cxx index 22214a75a4d4f..bbd2dcf99a2fa 100644 --- a/Detectors/MUON/MCH/Mapping/test/src/TestParameters.cxx +++ b/Detectors/MUON/MCH/Mapping/test/src/TestParameters.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/test/src/TestParameters.h b/Detectors/MUON/MCH/Mapping/test/src/TestParameters.h index 617aee19bf8e9..a2d24d4130032 100644 --- a/Detectors/MUON/MCH/Mapping/test/src/TestParameters.h +++ b/Detectors/MUON/MCH/Mapping/test/src/TestParameters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/test/src/generatePadIndices.cxx b/Detectors/MUON/MCH/Mapping/test/src/generatePadIndices.cxx index 96c952616ce08..3ab340ab7cb69 100644 --- a/Detectors/MUON/MCH/Mapping/test/src/generatePadIndices.cxx +++ b/Detectors/MUON/MCH/Mapping/test/src/generatePadIndices.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Mapping/test/src/testPadIndices.cxx b/Detectors/MUON/MCH/Mapping/test/src/testPadIndices.cxx index b1cd88307686b..cc9d504d92e50 100644 --- a/Detectors/MUON/MCH/Mapping/test/src/testPadIndices.cxx +++ b/Detectors/MUON/MCH/Mapping/test/src/testPadIndices.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/PreClustering/CMakeLists.txt b/Detectors/MUON/MCH/PreClustering/CMakeLists.txt index 76c13dd887f24..810988c1ba2a7 100644 --- a/Detectors/MUON/MCH/PreClustering/CMakeLists.txt +++ b/Detectors/MUON/MCH/PreClustering/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHPreClustering SOURCES src/PreClusterFinder.cxx diff --git a/Detectors/MUON/MCH/PreClustering/include/MCHPreClustering/PreClusterFinder.h b/Detectors/MUON/MCH/PreClustering/include/MCHPreClustering/PreClusterFinder.h index c706efc6d0ed2..1f8707ab5b502 100644 --- a/Detectors/MUON/MCH/PreClustering/include/MCHPreClustering/PreClusterFinder.h +++ b/Detectors/MUON/MCH/PreClustering/include/MCHPreClustering/PreClusterFinder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/PreClustering/src/PreClusterFinder.cxx b/Detectors/MUON/MCH/PreClustering/src/PreClusterFinder.cxx index 409e0773d01ea..652dd83c08eb0 100644 --- a/Detectors/MUON/MCH/PreClustering/src/PreClusterFinder.cxx +++ b/Detectors/MUON/MCH/PreClustering/src/PreClusterFinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/PreClustering/src/PreClusterFinderMapping.cxx b/Detectors/MUON/MCH/PreClustering/src/PreClusterFinderMapping.cxx index e5fd7ee3fa773..a29cd2a58064b 100644 --- a/Detectors/MUON/MCH/PreClustering/src/PreClusterFinderMapping.cxx +++ b/Detectors/MUON/MCH/PreClustering/src/PreClusterFinderMapping.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/PreClustering/src/PreClusterFinderMapping.h b/Detectors/MUON/MCH/PreClustering/src/PreClusterFinderMapping.h index eabb626fd48e6..b67cee6d555f0 100644 --- a/Detectors/MUON/MCH/PreClustering/src/PreClusterFinderMapping.h +++ b/Detectors/MUON/MCH/PreClustering/src/PreClusterFinderMapping.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/CMakeLists.txt b/Detectors/MUON/MCH/Raw/CMakeLists.txt index 24c792259d0ff..24e08c92fcccf 100644 --- a/Detectors/MUON/MCH/Raw/CMakeLists.txt +++ b/Detectors/MUON/MCH/Raw/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(ImplHelpers) add_subdirectory(ElecMap) diff --git a/Detectors/MUON/MCH/Raw/Common/CMakeLists.txt b/Detectors/MUON/MCH/Raw/Common/CMakeLists.txt index dad5f901a8479..b9958f6bbddc5 100644 --- a/Detectors/MUON/MCH/Raw/Common/CMakeLists.txt +++ b/Detectors/MUON/MCH/Raw/Common/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHRawCommon SOURCES src/CoDecParam.cxx diff --git a/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/CoDecParam.h b/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/CoDecParam.h index 91ceec20b831f..a29b53588c5f7 100644 --- a/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/CoDecParam.h +++ b/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/CoDecParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/DataFormats.h b/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/DataFormats.h index 859c52429338e..a42d5a0630ed1 100644 --- a/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/DataFormats.h +++ b/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/DataFormats.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaBunchCrossingCounter.h b/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaBunchCrossingCounter.h index 786739d4dcb10..e488cdf47e5f3 100644 --- a/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaBunchCrossingCounter.h +++ b/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaBunchCrossingCounter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaCluster.h b/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaCluster.h index b5a4f659d51d8..d21b487e2dcb4 100644 --- a/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaCluster.h +++ b/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaHeader.h b/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaHeader.h old mode 100755 new mode 100644 index eec6e85fe234f..bc1882cb36f20 --- a/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaHeader.h +++ b/Detectors/MUON/MCH/Raw/Common/include/MCHRawCommon/SampaHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/src/CoDecParam.cxx b/Detectors/MUON/MCH/Raw/Common/src/CoDecParam.cxx index ee5234476d6bc..56804ab99b516 100644 --- a/Detectors/MUON/MCH/Raw/Common/src/CoDecParam.cxx +++ b/Detectors/MUON/MCH/Raw/Common/src/CoDecParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/src/DataFormats.cxx b/Detectors/MUON/MCH/Raw/Common/src/DataFormats.cxx index 75b27d9d3622f..51f103ca51bd8 100644 --- a/Detectors/MUON/MCH/Raw/Common/src/DataFormats.cxx +++ b/Detectors/MUON/MCH/Raw/Common/src/DataFormats.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/src/MCHRawCommonLinkDef.h b/Detectors/MUON/MCH/Raw/Common/src/MCHRawCommonLinkDef.h index d0f2c69850991..8adc3abaaeb8a 100644 --- a/Detectors/MUON/MCH/Raw/Common/src/MCHRawCommonLinkDef.h +++ b/Detectors/MUON/MCH/Raw/Common/src/MCHRawCommonLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/src/SampaBunchCrossingCounter.cxx b/Detectors/MUON/MCH/Raw/Common/src/SampaBunchCrossingCounter.cxx index 7bddce6808a39..f62863901091d 100644 --- a/Detectors/MUON/MCH/Raw/Common/src/SampaBunchCrossingCounter.cxx +++ b/Detectors/MUON/MCH/Raw/Common/src/SampaBunchCrossingCounter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/src/SampaCluster.cxx b/Detectors/MUON/MCH/Raw/Common/src/SampaCluster.cxx index 3ef6cc8e36745..dab3445e4be3b 100644 --- a/Detectors/MUON/MCH/Raw/Common/src/SampaCluster.cxx +++ b/Detectors/MUON/MCH/Raw/Common/src/SampaCluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/src/SampaHeader.cxx b/Detectors/MUON/MCH/Raw/Common/src/SampaHeader.cxx index 6b048c7abb210..aedac48ff4fac 100644 --- a/Detectors/MUON/MCH/Raw/Common/src/SampaHeader.cxx +++ b/Detectors/MUON/MCH/Raw/Common/src/SampaHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/test/CMakeLists.txt b/Detectors/MUON/MCH/Raw/Common/test/CMakeLists.txt index 1323cd6ff436d..63627e95563b1 100644 --- a/Detectors/MUON/MCH/Raw/Common/test/CMakeLists.txt +++ b/Detectors/MUON/MCH/Raw/Common/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test(sampa-header SOURCES testSampaHeader.cxx diff --git a/Detectors/MUON/MCH/Raw/Common/test/benchSampaHeader.cxx b/Detectors/MUON/MCH/Raw/Common/test/benchSampaHeader.cxx index 748058bff4b1f..dc435f82551ae 100644 --- a/Detectors/MUON/MCH/Raw/Common/test/benchSampaHeader.cxx +++ b/Detectors/MUON/MCH/Raw/Common/test/benchSampaHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/test/testSampaBunchCrossingCounter.cxx b/Detectors/MUON/MCH/Raw/Common/test/testSampaBunchCrossingCounter.cxx index c3ace0083d60d..bf01bbd7d129d 100644 --- a/Detectors/MUON/MCH/Raw/Common/test/testSampaBunchCrossingCounter.cxx +++ b/Detectors/MUON/MCH/Raw/Common/test/testSampaBunchCrossingCounter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/test/testSampaCluster.cxx b/Detectors/MUON/MCH/Raw/Common/test/testSampaCluster.cxx index 610e9efdf3529..f03b8f1b3f07e 100644 --- a/Detectors/MUON/MCH/Raw/Common/test/testSampaCluster.cxx +++ b/Detectors/MUON/MCH/Raw/Common/test/testSampaCluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Common/test/testSampaHeader.cxx b/Detectors/MUON/MCH/Raw/Common/test/testSampaHeader.cxx index 6b57a099b89f1..f81b57932e73e 100644 --- a/Detectors/MUON/MCH/Raw/Common/test/testSampaHeader.cxx +++ b/Detectors/MUON/MCH/Raw/Common/test/testSampaHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/CMakeLists.txt b/Detectors/MUON/MCH/Raw/Decoder/CMakeLists.txt index 91533cc6f5969..b12f0d7ad8805 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/CMakeLists.txt +++ b/Detectors/MUON/MCH/Raw/Decoder/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHRawDecoder SOURCES src/BareELinkDecoder.cxx diff --git a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h index f37438fa21b0f..0e12e9a5ba867 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h +++ b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DecodedDataHandlers.h b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DecodedDataHandlers.h index 84d56cba619d3..8fb7f45902f21 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DecodedDataHandlers.h +++ b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DecodedDataHandlers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/ErrorCodes.h b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/ErrorCodes.h index 60da703c981f3..8bbcf33b5560c 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/ErrorCodes.h +++ b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/ErrorCodes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/OrbitInfo.h b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/OrbitInfo.h index 7b75013285e74..17a6dbc2cb5ed 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/OrbitInfo.h +++ b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/OrbitInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/PageDecoder.h b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/PageDecoder.h index 039acaeab6f9e..62c142f89e5b5 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/PageDecoder.h +++ b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/PageDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/ROFFinder.h b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/ROFFinder.h index e85f501b792af..cf80323c30022 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/ROFFinder.h +++ b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/ROFFinder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/BareELinkDecoder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/BareELinkDecoder.cxx index 816708c457288..b007fd2398586 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/BareELinkDecoder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/BareELinkDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/BareElinkDecoder.h b/Detectors/MUON/MCH/Raw/Decoder/src/BareElinkDecoder.h index 5ff2016967d4f..86e384eecd439 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/BareElinkDecoder.h +++ b/Detectors/MUON/MCH/Raw/Decoder/src/BareElinkDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/BareGBTDecoder.h b/Detectors/MUON/MCH/Raw/Decoder/src/BareGBTDecoder.h index f95f4ab6a5899..97a9c91c9f3ce 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/BareGBTDecoder.h +++ b/Detectors/MUON/MCH/Raw/Decoder/src/BareGBTDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx index c47af6ff4e1d9..3a23db3a8392f 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/Debug.h b/Detectors/MUON/MCH/Raw/Decoder/src/Debug.h index a7f2940dc2d30..9177d13736ed6 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/Debug.h +++ b/Detectors/MUON/MCH/Raw/Decoder/src/Debug.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/OrbitInfo.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/OrbitInfo.cxx index bd8c4e5a5e858..1ffb082694239 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/OrbitInfo.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/OrbitInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/PageDecoder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/PageDecoder.cxx index 8e587307333ba..c6e0da5ce166d 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/PageDecoder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/PageDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/PayloadDecoder.h b/Detectors/MUON/MCH/Raw/Decoder/src/PayloadDecoder.h index 78ee061da59ed..c7f4605feb014 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/PayloadDecoder.h +++ b/Detectors/MUON/MCH/Raw/Decoder/src/PayloadDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/RDHManip.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/RDHManip.cxx index 3481b52754b5b..11a69525ce472 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/RDHManip.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/RDHManip.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/RDHManip.h b/Detectors/MUON/MCH/Raw/Decoder/src/RDHManip.h index 09963fc2b87fe..6ec2ffb301370 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/RDHManip.h +++ b/Detectors/MUON/MCH/Raw/Decoder/src/RDHManip.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/ROFFinder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/ROFFinder.cxx index 0ac3552970bbf..3bc5324baf94a 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/ROFFinder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/ROFFinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/UserLogicElinkDecoder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/UserLogicElinkDecoder.cxx index f73590007f3d6..86eb5477d1ef7 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/UserLogicElinkDecoder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/UserLogicElinkDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/UserLogicElinkDecoder.h b/Detectors/MUON/MCH/Raw/Decoder/src/UserLogicElinkDecoder.h index 5d4a7ba9d894c..bba31cdaf94a7 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/UserLogicElinkDecoder.h +++ b/Detectors/MUON/MCH/Raw/Decoder/src/UserLogicElinkDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/UserLogicEndpointDecoder.h b/Detectors/MUON/MCH/Raw/Decoder/src/UserLogicEndpointDecoder.h index 032fbc1e33926..e61007de52691 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/UserLogicEndpointDecoder.h +++ b/Detectors/MUON/MCH/Raw/Decoder/src/UserLogicEndpointDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/testBareElinkDecoder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/testBareElinkDecoder.cxx index 4d6653650f2e0..bc4632fd5065b 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/testBareElinkDecoder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/testBareElinkDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/testDigitsTimeComputation.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/testDigitsTimeComputation.cxx index ca5befc859aed..bb0d61c33e30e 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/testDigitsTimeComputation.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/testDigitsTimeComputation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/testRDHManip.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/testRDHManip.cxx index 34ce4ce93a299..abcd32d9d8be0 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/testRDHManip.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/testRDHManip.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/testROFFinder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/testROFFinder.cxx index 0d427b49bbce9..fbe8f77b924ed 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/testROFFinder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/testROFFinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/testUserLogicEndpointDecoder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/testUserLogicEndpointDecoder.cxx index f34ce1574d72a..750808aaeb5c7 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/testUserLogicEndpointDecoder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/testUserLogicEndpointDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/CMakeLists.txt b/Detectors/MUON/MCH/Raw/ElecMap/CMakeLists.txt index c8c74d93fdf78..e4f90494e7432 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/CMakeLists.txt +++ b/Detectors/MUON/MCH/Raw/ElecMap/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHRawElecMap SOURCES diff --git a/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/DsDetId.h b/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/DsDetId.h index 3b3160d9986d0..cc7163edcb2f1 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/DsDetId.h +++ b/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/DsDetId.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/DsElecId.h b/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/DsElecId.h index f51c24f9cfebf..5f7ad86b555cc 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/DsElecId.h +++ b/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/DsElecId.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/FeeLinkId.h b/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/FeeLinkId.h index b9358340ba489..f7a5aee5369a5 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/FeeLinkId.h +++ b/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/FeeLinkId.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/Mapper.h b/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/Mapper.h index 9f944671f2f68..12ce4b048e397 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/Mapper.h +++ b/Detectors/MUON/MCH/Raw/ElecMap/include/MCHRawElecMap/Mapper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH.cxx index cb956d08d4a0e..eca3dd865aa4a 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH10L.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH10L.cxx index 85463b503d9bb..37b884f371070 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH10L.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH10L.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH10R.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH10R.cxx index 8a2b0e86faf1f..6bfa4b5ec5bf2 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH10R.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH10R.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH5L.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH5L.cxx index e1b3be52ccc3c..c4642284af61d 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH5L.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH5L.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH5R.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH5R.cxx index 332c585cdb801..5c9d62faca2af 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH5R.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH5R.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH6L.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH6L.cxx index d5883b888d440..e3e92e2569627 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH6L.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH6L.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH6R.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH6R.cxx index 9598ec11507d0..ff6d6863d2f02 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH6R.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH6R.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH7L.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH7L.cxx index d5268f1f501bc..1e8675bc340ba 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH7L.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH7L.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH7R.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH7R.cxx index 7471c6f6eaeeb..7be7368e2bc2f 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH7R.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH7R.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH8L.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH8L.cxx index 5693c1d912e30..9a4cd4e8eef7c 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH8L.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH8L.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH8R.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH8R.cxx index fcff36e89f460..4cb0ac2a9330f 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH8R.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH8R.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH9L.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH9L.cxx index 015f5c7a2b870..c29453fdbfddb 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH9L.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH9L.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH9R.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH9R.cxx index e9bb3256fab37..d8621eaa4679c 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH9R.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH9R.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/DsDetId.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/DsDetId.cxx index f33608b6a2268..51bb864f02adf 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/DsDetId.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/DsDetId.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/DsElecId.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/DsElecId.cxx index 6df4aac5b211d..dbd2dcd6f5f1a 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/DsElecId.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/DsElecId.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperDummy.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperDummy.cxx index 595b6b44d6fec..c53f86167c980 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperDummy.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperDummy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperGenerated.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperGenerated.cxx index abf8a7e839dbd..1c85c90faaa00 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperGenerated.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperGenerated.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperImplHelper.h b/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperImplHelper.h index cba8dd113da34..4783c3bdda819 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperImplHelper.h +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperImplHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperString.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperString.cxx index 1a0416b6702a4..f62a03ddcc87b 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperString.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/ElectronicMapperString.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/FeeLinkId.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/FeeLinkId.cxx index 94730272aa2f3..5d39c6fc68d22 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/FeeLinkId.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/FeeLinkId.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/MapCRU.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/MapCRU.cxx index 97f1d89e80176..30eb8fa265514 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/MapCRU.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/MapCRU.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/MapCRU.h b/Detectors/MUON/MCH/Raw/ElecMap/src/MapCRU.h index c2dbec1baa4b0..ae073486e60c0 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/MapCRU.h +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/MapCRU.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/MapFEC.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/MapFEC.cxx index 13f05d1c8622e..d369c8b360570 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/MapFEC.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/MapFEC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/MapFEC.h b/Detectors/MUON/MCH/Raw/ElecMap/src/MapFEC.h index e25c5bd11aba1..7077b2bb4b2da 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/MapFEC.h +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/MapFEC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/Mapper.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/Mapper.cxx index f45da4540771c..a0a0e57ea24e5 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/Mapper.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/Mapper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/cli.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/cli.cxx index d3378afa2c5d8..ce0c97e267043 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/cli.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/cli.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/dslist.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/dslist.cxx index 4fd225c735bba..b149b5907ebc1 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/dslist.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/dslist.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/dslist.h b/Detectors/MUON/MCH/Raw/ElecMap/src/dslist.h index 0475e34604d15..f2f560639099b 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/dslist.h +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/dslist.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/elecmap.py b/Detectors/MUON/MCH/Raw/ElecMap/src/elecmap.py index 2a96bf90d6a4b..221133858d224 100755 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/elecmap.py +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/elecmap.py @@ -30,11 +30,12 @@ def gencode_close_generated(out): def gencode_generated_code(out): """ Add full O2 Copyright to out""" - out.write('''// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". + out.write('''// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/testDsElecId.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/testDsElecId.cxx index 552977def8e51..ef2ac2f45f14d 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/testDsElecId.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/testDsElecId.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/testElectronicMapper.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/testElectronicMapper.cxx index 314baf474f5cf..4edaf16138fe5 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/testElectronicMapper.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/testElectronicMapper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/testElectronicMapperString.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/testElectronicMapperString.cxx index 1fab95e751cd0..cce332cbf3ce6 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/testElectronicMapperString.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/testElectronicMapperString.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/testFeeLinkId.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/testFeeLinkId.cxx index 21b01565be15b..ed08c3bac8b0e 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/testFeeLinkId.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/testFeeLinkId.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/CMakeLists.txt b/Detectors/MUON/MCH/Raw/Encoder/CMakeLists.txt index 75134367fe1e8..28900428b55fe 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/CMakeLists.txt +++ b/Detectors/MUON/MCH/Raw/Encoder/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Payload) add_subdirectory(Digit) diff --git a/Detectors/MUON/MCH/Raw/Encoder/Digit/CMakeLists.txt b/Detectors/MUON/MCH/Raw/Encoder/Digit/CMakeLists.txt index 20a91fa81ac6f..6052c7d9fcbdd 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Digit/CMakeLists.txt +++ b/Detectors/MUON/MCH/Raw/Encoder/Digit/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHRawEncoderDigit SOURCES diff --git a/Detectors/MUON/MCH/Raw/Encoder/Digit/Digit2ElecMapper.cxx b/Detectors/MUON/MCH/Raw/Encoder/Digit/Digit2ElecMapper.cxx index 23ef8f7a9d7d4..d75195d14aec5 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Digit/Digit2ElecMapper.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Digit/Digit2ElecMapper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitPayloadEncoder.cxx b/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitPayloadEncoder.cxx index 1b8128c2cd21f..a5dec7c1f985b 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitPayloadEncoder.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitPayloadEncoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitRawEncoder.cxx b/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitRawEncoder.cxx index 6d1fbc73f1048..da76d74b60932 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitRawEncoder.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitRawEncoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitTreeReader.cxx b/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitTreeReader.cxx index 57c8afb2ca2f3..7b63ac2969e56 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitTreeReader.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitTreeReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitTreeReader.h b/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitTreeReader.h index 7735afcafe311..d7845c539caf9 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitTreeReader.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Digit/DigitTreeReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Digit/digits-to-json.cxx b/Detectors/MUON/MCH/Raw/Encoder/Digit/digits-to-json.cxx index e0589c6118a82..3ac08ab8aab55 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Digit/digits-to-json.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Digit/digits-to-json.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Digit/digits-to-raw.cxx b/Detectors/MUON/MCH/Raw/Encoder/Digit/digits-to-raw.cxx index 5451156ac4a23..d00a1dd268ed8 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Digit/digits-to-raw.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Digit/digits-to-raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Digit/include/MCHRawEncoderDigit/Digit2ElecMapper.h b/Detectors/MUON/MCH/Raw/Encoder/Digit/include/MCHRawEncoderDigit/Digit2ElecMapper.h index c819c3678dfb0..f4f7003dbcc79 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Digit/include/MCHRawEncoderDigit/Digit2ElecMapper.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Digit/include/MCHRawEncoderDigit/Digit2ElecMapper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Digit/include/MCHRawEncoderDigit/DigitPayloadEncoder.h b/Detectors/MUON/MCH/Raw/Encoder/Digit/include/MCHRawEncoderDigit/DigitPayloadEncoder.h index 57352823a9c0c..011cf94f95172 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Digit/include/MCHRawEncoderDigit/DigitPayloadEncoder.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Digit/include/MCHRawEncoderDigit/DigitPayloadEncoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Digit/include/MCHRawEncoderDigit/DigitRawEncoder.h b/Detectors/MUON/MCH/Raw/Encoder/Digit/include/MCHRawEncoderDigit/DigitRawEncoder.h index f6dd822d544c3..1cb616af54a87 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Digit/include/MCHRawEncoderDigit/DigitRawEncoder.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Digit/include/MCHRawEncoderDigit/DigitRawEncoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Digit/testDigitTreeReader.cxx b/Detectors/MUON/MCH/Raw/Encoder/Digit/testDigitTreeReader.cxx index e26b83165e3de..12d2dddfdd326 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Digit/testDigitTreeReader.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Digit/testDigitTreeReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/BareElinkEncoder.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/BareElinkEncoder.cxx index 80c37de47b5fd..ae0d49d21c3d9 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/BareElinkEncoder.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/BareElinkEncoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/BareElinkEncoder.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/BareElinkEncoder.h index c0b41419f9ac9..766f1fe6a91fa 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/BareElinkEncoder.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/BareElinkEncoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/BareElinkEncoderMerger.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/BareElinkEncoderMerger.h index b599eebefadd7..182736e724b6c 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/BareElinkEncoderMerger.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/BareElinkEncoderMerger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/BitSet.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/BitSet.cxx index e1c8908439509..e614cbd75a18b 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/BitSet.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/BitSet.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/BitSet.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/BitSet.h index 3de2bf6fe0b47..5ddacf92bb739 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/BitSet.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/BitSet.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/CMakeLists.txt b/Detectors/MUON/MCH/Raw/Encoder/Payload/CMakeLists.txt index 0d0c1d0ef9b83..fc6f7b1fa6cc5 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/CMakeLists.txt +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHRawEncoderPayload SOURCES diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/DataBlock.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/DataBlock.cxx index b0181c87c5086..604b8c8b9e708 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/DataBlock.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/DataBlock.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/ElinkEncoder.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/ElinkEncoder.h index b1733d00b0049..4e7c1047ffa5a 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/ElinkEncoder.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/ElinkEncoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/ElinkEncoderMerger.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/ElinkEncoderMerger.h index e295d2379e12a..a57b9f6bb54d0 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/ElinkEncoderMerger.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/ElinkEncoderMerger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/EncoderImplHelper.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/EncoderImplHelper.cxx index b028ae0d1f019..12d6d6cbe6bea 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/EncoderImplHelper.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/EncoderImplHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/EncoderImplHelper.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/EncoderImplHelper.h index e97a955ecc029..8fb1265123ca7 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/EncoderImplHelper.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/EncoderImplHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/GBTEncoder.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/GBTEncoder.h index 5d8ad99a1445b..ead33bd3e5f7c 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/GBTEncoder.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/GBTEncoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/PayloadEncoder.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/PayloadEncoder.cxx index 46273bce06834..2a284b851dae1 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/PayloadEncoder.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/PayloadEncoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/PayloadEncoderImpl.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/PayloadEncoderImpl.h index d2fcc8bbc6f80..76a7c668f2577 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/PayloadEncoderImpl.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/PayloadEncoderImpl.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/PayloadPaginator.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/PayloadPaginator.cxx index 327ef8b1d97ab..fced327880d6d 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/PayloadPaginator.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/PayloadPaginator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferCRUBare.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferCRUBare.cxx index 1881213c77a7a..52e4581da1a71 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferCRUBare.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferCRUBare.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferCRUUserLogic.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferCRUUserLogic.cxx index 84a3788b81fa4..3c3781460f4d1 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferCRUUserLogic.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferCRUUserLogic.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferGBTBare.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferGBTBare.cxx index 6673e943a121c..89b1602cb0489 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferGBTBare.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferGBTBare.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferGBTUserLogic.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferGBTUserLogic.cxx index a79d047f73d6b..9487037328ad2 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferGBTUserLogic.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/RefBufferGBTUserLogic.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/UserLogicElinkEncoder.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/UserLogicElinkEncoder.h index 6471a562e9d44..679c0a2c7e5d9 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/UserLogicElinkEncoder.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/UserLogicElinkEncoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/UserLogicElinkEncoderMerger.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/UserLogicElinkEncoderMerger.h index 1862feae92c67..fe3d78cd2c85c 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/UserLogicElinkEncoderMerger.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/UserLogicElinkEncoderMerger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/benchBitSet.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/benchBitSet.cxx index 7a694f670bd41..94174ffd0a5ab 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/benchBitSet.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/benchBitSet.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/include/MCHRawEncoderPayload/DataBlock.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/include/MCHRawEncoderPayload/DataBlock.h index 8e2b6fb6bea6d..0803759e880a0 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/include/MCHRawEncoderPayload/DataBlock.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/include/MCHRawEncoderPayload/DataBlock.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/include/MCHRawEncoderPayload/PayloadEncoder.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/include/MCHRawEncoderPayload/PayloadEncoder.h index 2a6cd3bbc50d8..d510a97387e0e 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/include/MCHRawEncoderPayload/PayloadEncoder.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/include/MCHRawEncoderPayload/PayloadEncoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/include/MCHRawEncoderPayload/PayloadPaginator.h b/Detectors/MUON/MCH/Raw/Encoder/Payload/include/MCHRawEncoderPayload/PayloadPaginator.h index 9ce7e3e4c1461..9f05df48959a6 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/include/MCHRawEncoderPayload/PayloadPaginator.h +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/include/MCHRawEncoderPayload/PayloadPaginator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/testBareElinkEncoder.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/testBareElinkEncoder.cxx index 16e62f227e2d4..a85564c749043 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/testBareElinkEncoder.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/testBareElinkEncoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/testBitSet.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/testBitSet.cxx index 18632438ec3fb..181b2ef08c449 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/testBitSet.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/testBitSet.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/testElinkEncoder.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/testElinkEncoder.cxx index 2787b24d3c3c5..6e0395c893410 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/testElinkEncoder.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/testElinkEncoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/testGBTEncoder.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/testGBTEncoder.cxx index 2920f67f114f1..acaffe27357da 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/testGBTEncoder.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/testGBTEncoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Encoder/Payload/testPayloadEncoder.cxx b/Detectors/MUON/MCH/Raw/Encoder/Payload/testPayloadEncoder.cxx index bbdc37c6bac76..c88a598c5b987 100644 --- a/Detectors/MUON/MCH/Raw/Encoder/Payload/testPayloadEncoder.cxx +++ b/Detectors/MUON/MCH/Raw/Encoder/Payload/testPayloadEncoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ImplHelpers/Assertions.h b/Detectors/MUON/MCH/Raw/ImplHelpers/Assertions.h index 9f12b49abbd8e..af13a2e4f1080 100644 --- a/Detectors/MUON/MCH/Raw/ImplHelpers/Assertions.h +++ b/Detectors/MUON/MCH/Raw/ImplHelpers/Assertions.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ImplHelpers/CMakeLists.txt b/Detectors/MUON/MCH/Raw/ImplHelpers/CMakeLists.txt index a78a8e3602ebf..f7a49f46c74c5 100644 --- a/Detectors/MUON/MCH/Raw/ImplHelpers/CMakeLists.txt +++ b/Detectors/MUON/MCH/Raw/ImplHelpers/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_header_only_library( MCHRawImplHelpers diff --git a/Detectors/MUON/MCH/Raw/ImplHelpers/DumpBuffer.h b/Detectors/MUON/MCH/Raw/ImplHelpers/DumpBuffer.h index 5aaeb18d4e313..7d5bf9b2ceb05 100644 --- a/Detectors/MUON/MCH/Raw/ImplHelpers/DumpBuffer.h +++ b/Detectors/MUON/MCH/Raw/ImplHelpers/DumpBuffer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ImplHelpers/MakeArray.h b/Detectors/MUON/MCH/Raw/ImplHelpers/MakeArray.h index 16b1cc9931dd7..3c94905696278 100644 --- a/Detectors/MUON/MCH/Raw/ImplHelpers/MakeArray.h +++ b/Detectors/MUON/MCH/Raw/ImplHelpers/MakeArray.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ImplHelpers/MoveBuffer.h b/Detectors/MUON/MCH/Raw/ImplHelpers/MoveBuffer.h index dcf36f17e12d0..82579a64deaf1 100644 --- a/Detectors/MUON/MCH/Raw/ImplHelpers/MoveBuffer.h +++ b/Detectors/MUON/MCH/Raw/ImplHelpers/MoveBuffer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ImplHelpers/NofBits.h b/Detectors/MUON/MCH/Raw/ImplHelpers/NofBits.h index 767572f5c3be0..8d4ab5d92aaf2 100644 --- a/Detectors/MUON/MCH/Raw/ImplHelpers/NofBits.h +++ b/Detectors/MUON/MCH/Raw/ImplHelpers/NofBits.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/ImplHelpers/testMoveBuffer.cxx b/Detectors/MUON/MCH/Raw/ImplHelpers/testMoveBuffer.cxx index dadf6ba283c2c..8c6abd755c1e7 100644 --- a/Detectors/MUON/MCH/Raw/ImplHelpers/testMoveBuffer.cxx +++ b/Detectors/MUON/MCH/Raw/ImplHelpers/testMoveBuffer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/Tools/CMakeLists.txt b/Detectors/MUON/MCH/Raw/Tools/CMakeLists.txt index c92bc33677886..a7fb535137c96 100644 --- a/Detectors/MUON/MCH/Raw/Tools/CMakeLists.txt +++ b/Detectors/MUON/MCH/Raw/Tools/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_executable( dump diff --git a/Detectors/MUON/MCH/Raw/Tools/rawdump.cxx b/Detectors/MUON/MCH/Raw/Tools/rawdump.cxx index 3b2846c51c4d0..7892be92f2541 100644 --- a/Detectors/MUON/MCH/Raw/Tools/rawdump.cxx +++ b/Detectors/MUON/MCH/Raw/Tools/rawdump.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/test/CMakeLists.txt b/Detectors/MUON/MCH/Raw/test/CMakeLists.txt index 829f9452da5ee..3f62acb21a5ea 100644 --- a/Detectors/MUON/MCH/Raw/test/CMakeLists.txt +++ b/Detectors/MUON/MCH/Raw/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # closure tests, thus depending on both Encoder and Decoder diff --git a/Detectors/MUON/MCH/Raw/test/testClosureCoDec.cxx b/Detectors/MUON/MCH/Raw/test/testClosureCoDec.cxx index a860eda8061c2..da74b66dc3c59 100644 --- a/Detectors/MUON/MCH/Raw/test/testClosureCoDec.cxx +++ b/Detectors/MUON/MCH/Raw/test/testClosureCoDec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Raw/test/testClosureCoDecDigit.cxx b/Detectors/MUON/MCH/Raw/test/testClosureCoDecDigit.cxx index cb75b4cca2c96..8c0f8783ce2dc 100644 --- a/Detectors/MUON/MCH/Raw/test/testClosureCoDecDigit.cxx +++ b/Detectors/MUON/MCH/Raw/test/testClosureCoDecDigit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/CMakeLists.txt b/Detectors/MUON/MCH/Simulation/CMakeLists.txt index e375988447355..d0692d1f9f20e 100644 --- a/Detectors/MUON/MCH/Simulation/CMakeLists.txt +++ b/Detectors/MUON/MCH/Simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHSimulation SOURCES src/Detector.cxx diff --git a/Detectors/MUON/MCH/Simulation/include/MCHSimulation/DEDigitizer.h b/Detectors/MUON/MCH/Simulation/include/MCHSimulation/DEDigitizer.h index f6824034314de..6433386ab995e 100644 --- a/Detectors/MUON/MCH/Simulation/include/MCHSimulation/DEDigitizer.h +++ b/Detectors/MUON/MCH/Simulation/include/MCHSimulation/DEDigitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Detector.h b/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Detector.h index ed97a16a40975..2c378e0a8e805 100644 --- a/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Detector.h +++ b/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Digitizer.h b/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Digitizer.h index 4aa06ed6f9608..61b19ef9e3b67 100644 --- a/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Digitizer.h +++ b/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/include/MCHSimulation/DigitizerParam.h b/Detectors/MUON/MCH/Simulation/include/MCHSimulation/DigitizerParam.h index d8e3edb806a31..d632625e5fdc8 100644 --- a/Detectors/MUON/MCH/Simulation/include/MCHSimulation/DigitizerParam.h +++ b/Detectors/MUON/MCH/Simulation/include/MCHSimulation/DigitizerParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Hit.h b/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Hit.h index 8d0d639b39271..d216654a36add 100644 --- a/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Hit.h +++ b/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Hit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Response.h b/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Response.h index c5367b530113b..f20643bfe76a5 100644 --- a/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Response.h +++ b/Detectors/MUON/MCH/Simulation/include/MCHSimulation/Response.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/src/DEDigitizer.cxx b/Detectors/MUON/MCH/Simulation/src/DEDigitizer.cxx index 80a8853773997..b687ecdf13e87 100644 --- a/Detectors/MUON/MCH/Simulation/src/DEDigitizer.cxx +++ b/Detectors/MUON/MCH/Simulation/src/DEDigitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/src/Detector.cxx b/Detectors/MUON/MCH/Simulation/src/Detector.cxx index e77e6930837d4..b27cd1106cf0a 100644 --- a/Detectors/MUON/MCH/Simulation/src/Detector.cxx +++ b/Detectors/MUON/MCH/Simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/src/Digitizer.cxx b/Detectors/MUON/MCH/Simulation/src/Digitizer.cxx index fbb1dabccaea7..1bfed6cceb81f 100644 --- a/Detectors/MUON/MCH/Simulation/src/Digitizer.cxx +++ b/Detectors/MUON/MCH/Simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/src/DigitizerParam.cxx b/Detectors/MUON/MCH/Simulation/src/DigitizerParam.cxx index 0add11d170f46..14a2bd2509730 100644 --- a/Detectors/MUON/MCH/Simulation/src/DigitizerParam.cxx +++ b/Detectors/MUON/MCH/Simulation/src/DigitizerParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/src/Hit.cxx b/Detectors/MUON/MCH/Simulation/src/Hit.cxx index bbb80641fc424..820cac53b54e8 100644 --- a/Detectors/MUON/MCH/Simulation/src/Hit.cxx +++ b/Detectors/MUON/MCH/Simulation/src/Hit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/src/MCHSimulationLinkDef.h b/Detectors/MUON/MCH/Simulation/src/MCHSimulationLinkDef.h index 3bdd458c99457..af02450b9a19f 100644 --- a/Detectors/MUON/MCH/Simulation/src/MCHSimulationLinkDef.h +++ b/Detectors/MUON/MCH/Simulation/src/MCHSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/src/Response.cxx b/Detectors/MUON/MCH/Simulation/src/Response.cxx index 12a96afe532eb..4307d53ceb9d9 100644 --- a/Detectors/MUON/MCH/Simulation/src/Response.cxx +++ b/Detectors/MUON/MCH/Simulation/src/Response.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/src/Stepper.cxx b/Detectors/MUON/MCH/Simulation/src/Stepper.cxx index 67c50340f2ac9..b37b862bd88fe 100644 --- a/Detectors/MUON/MCH/Simulation/src/Stepper.cxx +++ b/Detectors/MUON/MCH/Simulation/src/Stepper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/src/Stepper.h b/Detectors/MUON/MCH/Simulation/src/Stepper.h index 02837f32be475..26298ca8fa4de 100644 --- a/Detectors/MUON/MCH/Simulation/src/Stepper.h +++ b/Detectors/MUON/MCH/Simulation/src/Stepper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/src/inspect-collision-context.cxx b/Detectors/MUON/MCH/Simulation/src/inspect-collision-context.cxx index 239676a54c8d4..49fa1f16dd89d 100644 --- a/Detectors/MUON/MCH/Simulation/src/inspect-collision-context.cxx +++ b/Detectors/MUON/MCH/Simulation/src/inspect-collision-context.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/test/CMakeLists.txt b/Detectors/MUON/MCH/Simulation/test/CMakeLists.txt index 5227a50f6ffab..68770197e253e 100644 --- a/Detectors/MUON/MCH/Simulation/test/CMakeLists.txt +++ b/Detectors/MUON/MCH/Simulation/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test(digit-merging COMPONENT_NAME mch diff --git a/Detectors/MUON/MCH/Simulation/test/DigitMerging.cxx b/Detectors/MUON/MCH/Simulation/test/DigitMerging.cxx index 3fef1b9193a86..d0d5730dd3a45 100644 --- a/Detectors/MUON/MCH/Simulation/test/DigitMerging.cxx +++ b/Detectors/MUON/MCH/Simulation/test/DigitMerging.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/test/DigitMerging.h b/Detectors/MUON/MCH/Simulation/test/DigitMerging.h index 8a93a079a3028..ac24148b04acc 100644 --- a/Detectors/MUON/MCH/Simulation/test/DigitMerging.h +++ b/Detectors/MUON/MCH/Simulation/test/DigitMerging.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/test/benchDigitMerging.cxx b/Detectors/MUON/MCH/Simulation/test/benchDigitMerging.cxx index 7592e44662d15..0cf9a0d442bd6 100644 --- a/Detectors/MUON/MCH/Simulation/test/benchDigitMerging.cxx +++ b/Detectors/MUON/MCH/Simulation/test/benchDigitMerging.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/test/testDigitMerging.cxx b/Detectors/MUON/MCH/Simulation/test/testDigitMerging.cxx index fd754a428df3f..2afe53ac38b1c 100644 --- a/Detectors/MUON/MCH/Simulation/test/testDigitMerging.cxx +++ b/Detectors/MUON/MCH/Simulation/test/testDigitMerging.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/test/testDigitizer.cxx b/Detectors/MUON/MCH/Simulation/test/testDigitizer.cxx index bba562f6e5ad8..725e0f5827a65 100644 --- a/Detectors/MUON/MCH/Simulation/test/testDigitizer.cxx +++ b/Detectors/MUON/MCH/Simulation/test/testDigitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/test/testRegularGeometry.cxx b/Detectors/MUON/MCH/Simulation/test/testRegularGeometry.cxx index 271aae7060603..e99e186226dc6 100644 --- a/Detectors/MUON/MCH/Simulation/test/testRegularGeometry.cxx +++ b/Detectors/MUON/MCH/Simulation/test/testRegularGeometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Simulation/test/testResponse.cxx b/Detectors/MUON/MCH/Simulation/test/testResponse.cxx index 2acddbf5f0e5e..eaba42b48cde7 100644 --- a/Detectors/MUON/MCH/Simulation/test/testResponse.cxx +++ b/Detectors/MUON/MCH/Simulation/test/testResponse.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/CMakeLists.txt b/Detectors/MUON/MCH/Tracking/CMakeLists.txt index d35a019def04f..35ba67421bbf5 100644 --- a/Detectors/MUON/MCH/Tracking/CMakeLists.txt +++ b/Detectors/MUON/MCH/Tracking/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHTracking SOURCES diff --git a/Detectors/MUON/MCH/Tracking/include/MCHTracking/Cluster.h b/Detectors/MUON/MCH/Tracking/include/MCHTracking/Cluster.h index d31e907f26c1b..f7741f7259c3e 100644 --- a/Detectors/MUON/MCH/Tracking/include/MCHTracking/Cluster.h +++ b/Detectors/MUON/MCH/Tracking/include/MCHTracking/Cluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/include/MCHTracking/Track.h b/Detectors/MUON/MCH/Tracking/include/MCHTracking/Track.h index df02a10510e39..3f6df03b542e4 100644 --- a/Detectors/MUON/MCH/Tracking/include/MCHTracking/Track.h +++ b/Detectors/MUON/MCH/Tracking/include/MCHTracking/Track.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackExtrap.h b/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackExtrap.h index 431353bb27249..ba85ccfef2997 100644 --- a/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackExtrap.h +++ b/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackExtrap.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackFinder.h b/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackFinder.h index 176e2e17b4ae1..dab59c5a5b966 100644 --- a/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackFinder.h +++ b/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackFinder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackFinderOriginal.h b/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackFinderOriginal.h index e95e62d7f22ea..cb7469873f976 100644 --- a/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackFinderOriginal.h +++ b/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackFinderOriginal.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackFitter.h b/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackFitter.h index 6b1a2fa7468c3..a494e24d75539 100644 --- a/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackFitter.h +++ b/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackFitter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackParam.h b/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackParam.h index 9415f238b54a6..ceaed6dfa9e84 100644 --- a/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackParam.h +++ b/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackerParam.h b/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackerParam.h index c9c335470f735..d85b470989ad8 100644 --- a/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackerParam.h +++ b/Detectors/MUON/MCH/Tracking/include/MCHTracking/TrackerParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/src/Cluster.cxx b/Detectors/MUON/MCH/Tracking/src/Cluster.cxx index 45068974dfd4b..672065f9cd2bf 100644 --- a/Detectors/MUON/MCH/Tracking/src/Cluster.cxx +++ b/Detectors/MUON/MCH/Tracking/src/Cluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/src/MCHTrackingLinkDef.h b/Detectors/MUON/MCH/Tracking/src/MCHTrackingLinkDef.h index df84ef6051e88..21a3c5a8c71ee 100644 --- a/Detectors/MUON/MCH/Tracking/src/MCHTrackingLinkDef.h +++ b/Detectors/MUON/MCH/Tracking/src/MCHTrackingLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/src/Track.cxx b/Detectors/MUON/MCH/Tracking/src/Track.cxx index 44b480cac9b77..10a16942b47d3 100644 --- a/Detectors/MUON/MCH/Tracking/src/Track.cxx +++ b/Detectors/MUON/MCH/Tracking/src/Track.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/src/TrackExtrap.cxx b/Detectors/MUON/MCH/Tracking/src/TrackExtrap.cxx index 9ee0f58a01e87..58eed8255dddf 100644 --- a/Detectors/MUON/MCH/Tracking/src/TrackExtrap.cxx +++ b/Detectors/MUON/MCH/Tracking/src/TrackExtrap.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/src/TrackFinder.cxx b/Detectors/MUON/MCH/Tracking/src/TrackFinder.cxx index 83412434c8c58..18076a02cec62 100644 --- a/Detectors/MUON/MCH/Tracking/src/TrackFinder.cxx +++ b/Detectors/MUON/MCH/Tracking/src/TrackFinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/src/TrackFinderOriginal.cxx b/Detectors/MUON/MCH/Tracking/src/TrackFinderOriginal.cxx index d75126177da99..68529014f1c70 100644 --- a/Detectors/MUON/MCH/Tracking/src/TrackFinderOriginal.cxx +++ b/Detectors/MUON/MCH/Tracking/src/TrackFinderOriginal.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/src/TrackFitter.cxx b/Detectors/MUON/MCH/Tracking/src/TrackFitter.cxx index 8c1c226fd9470..a1bbf34c5d672 100644 --- a/Detectors/MUON/MCH/Tracking/src/TrackFitter.cxx +++ b/Detectors/MUON/MCH/Tracking/src/TrackFitter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/src/TrackParam.cxx b/Detectors/MUON/MCH/Tracking/src/TrackParam.cxx index 2377b9baa59c3..76c0542017106 100644 --- a/Detectors/MUON/MCH/Tracking/src/TrackParam.cxx +++ b/Detectors/MUON/MCH/Tracking/src/TrackParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Tracking/src/TrackerParam.cxx b/Detectors/MUON/MCH/Tracking/src/TrackerParam.cxx index ef59abf10b47a..ca6786711340b 100644 --- a/Detectors/MUON/MCH/Tracking/src/TrackerParam.cxx +++ b/Detectors/MUON/MCH/Tracking/src/TrackerParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/CMakeLists.txt b/Detectors/MUON/MCH/Workflow/CMakeLists.txt index 64a7c3af65bb3..88b530d48039e 100644 --- a/Detectors/MUON/MCH/Workflow/CMakeLists.txt +++ b/Detectors/MUON/MCH/Workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MCHWorkflow SOURCES src/DataDecoderSpec.cxx src/PreClusterFinderSpec.cxx src/ClusterFinderOriginalSpec.cxx diff --git a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/ClusterFinderOriginalSpec.h b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/ClusterFinderOriginalSpec.h index bf6aabcdf7f8e..3f5b69c02e46a 100644 --- a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/ClusterFinderOriginalSpec.h +++ b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/ClusterFinderOriginalSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/DataDecoderSpec.h b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/DataDecoderSpec.h index 57820cd722f47..826ba9977e5c4 100644 --- a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/DataDecoderSpec.h +++ b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/DataDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/EntropyDecoderSpec.h b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/EntropyDecoderSpec.h index 1e0d00e512770..d4b327bec04e0 100644 --- a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/EntropyDecoderSpec.h +++ b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/PreClusterFinderSpec.h b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/PreClusterFinderSpec.h index 586b458688d45..280e3d489c10b 100644 --- a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/PreClusterFinderSpec.h +++ b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/PreClusterFinderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/ClusterFinderOriginalSpec.cxx b/Detectors/MUON/MCH/Workflow/src/ClusterFinderOriginalSpec.cxx index 02b38f80223af..61a784d602733 100644 --- a/Detectors/MUON/MCH/Workflow/src/ClusterFinderOriginalSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/ClusterFinderOriginalSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx b/Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx index 5fc33af67f876..a725c2c050998 100644 --- a/Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/DigitReaderSpec.cxx b/Detectors/MUON/MCH/Workflow/src/DigitReaderSpec.cxx index bce2ab1e80610..662d099d9b7a5 100644 --- a/Detectors/MUON/MCH/Workflow/src/DigitReaderSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/DigitReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/DigitReaderSpec.h b/Detectors/MUON/MCH/Workflow/src/DigitReaderSpec.h index eb9a83c27ff02..c623589b2d2f7 100644 --- a/Detectors/MUON/MCH/Workflow/src/DigitReaderSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/DigitReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/DigitSamplerSpec.cxx b/Detectors/MUON/MCH/Workflow/src/DigitSamplerSpec.cxx index 94367ad14c663..27b66d1b6553f 100644 --- a/Detectors/MUON/MCH/Workflow/src/DigitSamplerSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/DigitSamplerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/DigitSamplerSpec.h b/Detectors/MUON/MCH/Workflow/src/DigitSamplerSpec.h index bc073d1865520..0c4e758012d3e 100644 --- a/Detectors/MUON/MCH/Workflow/src/DigitSamplerSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/DigitSamplerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/EntropyDecoderSpec.cxx b/Detectors/MUON/MCH/Workflow/src/EntropyDecoderSpec.cxx index 38169938a17a9..35ae43a7d05c3 100644 --- a/Detectors/MUON/MCH/Workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/PreClusterFinderSpec.cxx b/Detectors/MUON/MCH/Workflow/src/PreClusterFinderSpec.cxx index 639c1d476c1ff..a39acd4c49a4f 100644 --- a/Detectors/MUON/MCH/Workflow/src/PreClusterFinderSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/PreClusterFinderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/PreClusterSinkSpec.cxx b/Detectors/MUON/MCH/Workflow/src/PreClusterSinkSpec.cxx index 9df565f1b4b2f..2b86965eabc4e 100644 --- a/Detectors/MUON/MCH/Workflow/src/PreClusterSinkSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/PreClusterSinkSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/PreClusterSinkSpec.h b/Detectors/MUON/MCH/Workflow/src/PreClusterSinkSpec.h index 8c8481f16a698..88be7063864ea 100644 --- a/Detectors/MUON/MCH/Workflow/src/PreClusterSinkSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/PreClusterSinkSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx index e19fb1fb643f6..4c3bc2f00a5e6 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.h b/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.h index d311ae4ec3adf..23329027342e9 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/TrackFinderOriginalSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackFinderOriginalSpec.cxx index a654517df8dcd..39af590cf2237 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackFinderOriginalSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/TrackFinderOriginalSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/TrackFinderOriginalSpec.h b/Detectors/MUON/MCH/Workflow/src/TrackFinderOriginalSpec.h index 3861554c661ee..83d9d5e9eeaf8 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackFinderOriginalSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/TrackFinderOriginalSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx index 5771558f62cc7..bf70fc22b47d8 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.h b/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.h index 3f116286e59f5..99ed633be8676 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/TrackFitterSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackFitterSpec.cxx index 7ed0b46ac147d..4704faa5a3c60 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackFitterSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/TrackFitterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/TrackFitterSpec.h b/Detectors/MUON/MCH/Workflow/src/TrackFitterSpec.h index af75dea54db91..5c6623d964bc3 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackFitterSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/TrackFitterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/TrackSamplerSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackSamplerSpec.cxx index bfee5391ab553..4db800b950c0a 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackSamplerSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/TrackSamplerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/TrackSamplerSpec.h b/Detectors/MUON/MCH/Workflow/src/TrackSamplerSpec.h index 993d514dbeac8..ea0f4a034d448 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackSamplerSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/TrackSamplerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/TrackSinkSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackSinkSpec.cxx index ef7f0112449f5..fc7532e9f9df1 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackSinkSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/TrackSinkSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/TrackSinkSpec.h b/Detectors/MUON/MCH/Workflow/src/TrackSinkSpec.h index 64e9ba6af64ac..40b03cf10c871 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackSinkSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/TrackSinkSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.cxx b/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.cxx index 96b5ff3485e15..87ae199b5b5b4 100644 --- a/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.h b/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.h index 2447dd05bf49a..55a54b1ecf571 100644 --- a/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/clusters-sampler-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/clusters-sampler-workflow.cxx index cd769fce19635..bc556486c1563 100644 --- a/Detectors/MUON/MCH/Workflow/src/clusters-sampler-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/clusters-sampler-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/clusters-sink-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/clusters-sink-workflow.cxx index 7b802b1bbc1e7..7c33005e91c40 100644 --- a/Detectors/MUON/MCH/Workflow/src/clusters-sink-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/clusters-sink-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/clusters-to-tracks-original-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/clusters-to-tracks-original-workflow.cxx index 26ada7efc0404..4c7a552a9fec9 100644 --- a/Detectors/MUON/MCH/Workflow/src/clusters-to-tracks-original-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/clusters-to-tracks-original-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/clusters-to-tracks-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/clusters-to-tracks-workflow.cxx index 4bf735b3a6c6f..d63e67647af1c 100644 --- a/Detectors/MUON/MCH/Workflow/src/clusters-to-tracks-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/clusters-to-tracks-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/clusters-transformer-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/clusters-transformer-workflow.cxx index 0205a9317cd05..876e946b28280 100644 --- a/Detectors/MUON/MCH/Workflow/src/clusters-transformer-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/clusters-transformer-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/cru-page-reader-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/cru-page-reader-workflow.cxx index ee5aa6a2a8371..d581bb3a28c94 100644 --- a/Detectors/MUON/MCH/Workflow/src/cru-page-reader-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/cru-page-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/cru-page-to-digits-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/cru-page-to-digits-workflow.cxx index 9e95dad1744c8..a4fc815462d4a 100644 --- a/Detectors/MUON/MCH/Workflow/src/cru-page-to-digits-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/cru-page-to-digits-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/digits-reader-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/digits-reader-workflow.cxx index 2bb49dc00ca02..a518b324956cb 100644 --- a/Detectors/MUON/MCH/Workflow/src/digits-reader-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/digits-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/digits-sink-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/digits-sink-workflow.cxx index 0046e03cf06a8..7edb94f4b12ba 100644 --- a/Detectors/MUON/MCH/Workflow/src/digits-sink-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/digits-sink-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/digits-to-preclusters-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/digits-to-preclusters-workflow.cxx index 9101823200614..e49e4f6a9a667 100644 --- a/Detectors/MUON/MCH/Workflow/src/digits-to-preclusters-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/digits-to-preclusters-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/entropy-encoder-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/entropy-encoder-workflow.cxx index db3f070ddfdf4..d1d32b968739c 100644 --- a/Detectors/MUON/MCH/Workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/preclusters-sink-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/preclusters-sink-workflow.cxx index aafa9a02a1223..b83cbb1d6485b 100644 --- a/Detectors/MUON/MCH/Workflow/src/preclusters-sink-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/preclusters-sink-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/preclusters-to-clusters-original-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/preclusters-to-clusters-original-workflow.cxx index 9c7e2757266ce..7fa4e91b552a2 100644 --- a/Detectors/MUON/MCH/Workflow/src/preclusters-to-clusters-original-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/preclusters-to-clusters-original-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/raw-debug-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/raw-debug-workflow.cxx index f74f83475990e..719440d354368 100644 --- a/Detectors/MUON/MCH/Workflow/src/raw-debug-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/raw-debug-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/raw-to-digits-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/raw-to-digits-workflow.cxx index 39093cb4f80b8..5eecda11052b4 100644 --- a/Detectors/MUON/MCH/Workflow/src/raw-to-digits-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/raw-to-digits-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/sim-digits-reader-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/sim-digits-reader-workflow.cxx index dc84e10d3eb37..80aed0b3490d0 100644 --- a/Detectors/MUON/MCH/Workflow/src/sim-digits-reader-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/sim-digits-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/tracks-sampler-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/tracks-sampler-workflow.cxx index 1f1c59af61ff9..dc6a59913ba81 100644 --- a/Detectors/MUON/MCH/Workflow/src/tracks-sampler-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/tracks-sampler-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/tracks-sink-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/tracks-sink-workflow.cxx index 16e3b9572f39d..7d4753ca712c1 100644 --- a/Detectors/MUON/MCH/Workflow/src/tracks-sink-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/tracks-sink-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/tracks-to-tracks-at-vertex-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/tracks-to-tracks-at-vertex-workflow.cxx index 71e5b22ca231e..87288a800092c 100644 --- a/Detectors/MUON/MCH/Workflow/src/tracks-to-tracks-at-vertex-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/tracks-to-tracks-at-vertex-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/tracks-to-tracks-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/tracks-to-tracks-workflow.cxx index 6f3673cd35f7d..ee9ade4eac73f 100644 --- a/Detectors/MUON/MCH/Workflow/src/tracks-to-tracks-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/tracks-to-tracks-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MCH/Workflow/src/vertex-sampler-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/vertex-sampler-workflow.cxx index f43ded9067fc2..4a6a79d7af0e1 100644 --- a/Detectors/MUON/MCH/Workflow/src/vertex-sampler-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/vertex-sampler-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/CMakeLists.txt b/Detectors/MUON/MID/Base/CMakeLists.txt index e67fab19f958d..e835a5ecad1c5 100644 --- a/Detectors/MUON/MID/Base/CMakeLists.txt +++ b/Detectors/MUON/MID/Base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MIDBase SOURCES src/ChamberEfficiency.cxx diff --git a/Detectors/MUON/MID/Base/include/MIDBase/ChamberEfficiency.h b/Detectors/MUON/MID/Base/include/MIDBase/ChamberEfficiency.h index 171e01189c7ad..9052411206093 100644 --- a/Detectors/MUON/MID/Base/include/MIDBase/ChamberEfficiency.h +++ b/Detectors/MUON/MID/Base/include/MIDBase/ChamberEfficiency.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/include/MIDBase/DetectorParameters.h b/Detectors/MUON/MID/Base/include/MIDBase/DetectorParameters.h index 4eb21d8f9aab4..383c4f1a921df 100644 --- a/Detectors/MUON/MID/Base/include/MIDBase/DetectorParameters.h +++ b/Detectors/MUON/MID/Base/include/MIDBase/DetectorParameters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/include/MIDBase/GeometryParameters.h b/Detectors/MUON/MID/Base/include/MIDBase/GeometryParameters.h index ba36354a65444..cb2407a533038 100644 --- a/Detectors/MUON/MID/Base/include/MIDBase/GeometryParameters.h +++ b/Detectors/MUON/MID/Base/include/MIDBase/GeometryParameters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/include/MIDBase/GeometryTransformer.h b/Detectors/MUON/MID/Base/include/MIDBase/GeometryTransformer.h index 141f936d14da0..877f08faa6590 100644 --- a/Detectors/MUON/MID/Base/include/MIDBase/GeometryTransformer.h +++ b/Detectors/MUON/MID/Base/include/MIDBase/GeometryTransformer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/include/MIDBase/Mapping.h b/Detectors/MUON/MID/Base/include/MIDBase/Mapping.h index 4a86e286ff5b3..d0844087fc137 100644 --- a/Detectors/MUON/MID/Base/include/MIDBase/Mapping.h +++ b/Detectors/MUON/MID/Base/include/MIDBase/Mapping.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/include/MIDBase/MpArea.h b/Detectors/MUON/MID/Base/include/MIDBase/MpArea.h index 963a935f962ef..ee86ca30a04a5 100644 --- a/Detectors/MUON/MID/Base/include/MIDBase/MpArea.h +++ b/Detectors/MUON/MID/Base/include/MIDBase/MpArea.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/src/ChamberEfficiency.cxx b/Detectors/MUON/MID/Base/src/ChamberEfficiency.cxx index de29dffa37a06..59e3582000c59 100644 --- a/Detectors/MUON/MID/Base/src/ChamberEfficiency.cxx +++ b/Detectors/MUON/MID/Base/src/ChamberEfficiency.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/src/DetectorParameters.cxx b/Detectors/MUON/MID/Base/src/DetectorParameters.cxx index 07d7c7b3105ad..cf5b42bef913f 100644 --- a/Detectors/MUON/MID/Base/src/DetectorParameters.cxx +++ b/Detectors/MUON/MID/Base/src/DetectorParameters.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/src/GeometryParameters.cxx b/Detectors/MUON/MID/Base/src/GeometryParameters.cxx index 97631fa9f60d4..61ea4b13bba46 100644 --- a/Detectors/MUON/MID/Base/src/GeometryParameters.cxx +++ b/Detectors/MUON/MID/Base/src/GeometryParameters.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/src/GeometryTransformer.cxx b/Detectors/MUON/MID/Base/src/GeometryTransformer.cxx index a379ec2d646ee..7d1836744c953 100644 --- a/Detectors/MUON/MID/Base/src/GeometryTransformer.cxx +++ b/Detectors/MUON/MID/Base/src/GeometryTransformer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/src/Mapping.cxx b/Detectors/MUON/MID/Base/src/Mapping.cxx index 43c2723355b68..b2f1be0596f7b 100644 --- a/Detectors/MUON/MID/Base/src/Mapping.cxx +++ b/Detectors/MUON/MID/Base/src/Mapping.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/src/MpArea.cxx b/Detectors/MUON/MID/Base/src/MpArea.cxx index cc8880339ab15..e82abeded5a52 100644 --- a/Detectors/MUON/MID/Base/src/MpArea.cxx +++ b/Detectors/MUON/MID/Base/src/MpArea.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/test/CMakeLists.txt b/Detectors/MUON/MID/Base/test/CMakeLists.txt index d86f7fd6d8b76..ca3d5c02497f5 100644 --- a/Detectors/MUON/MID/Base/test/CMakeLists.txt +++ b/Detectors/MUON/MID/Base/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test(Mapping SOURCES src/testMapping.cxx diff --git a/Detectors/MUON/MID/Base/test/src/Positions.cxx b/Detectors/MUON/MID/Base/test/src/Positions.cxx index 26f4af756d6cc..e060d708c8e6f 100644 --- a/Detectors/MUON/MID/Base/test/src/Positions.cxx +++ b/Detectors/MUON/MID/Base/test/src/Positions.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Base/test/src/testMapping.cxx b/Detectors/MUON/MID/Base/test/src/testMapping.cxx index ba17be2bec33b..86565dc4cc2e3 100644 --- a/Detectors/MUON/MID/Base/test/src/testMapping.cxx +++ b/Detectors/MUON/MID/Base/test/src/testMapping.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/CMakeLists.txt b/Detectors/MUON/MID/CMakeLists.txt index 484050242bafa..679866eb39be3 100644 --- a/Detectors/MUON/MID/CMakeLists.txt +++ b/Detectors/MUON/MID/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Base) add_subdirectory(Clustering) diff --git a/Detectors/MUON/MID/CTF/CMakeLists.txt b/Detectors/MUON/MID/CTF/CMakeLists.txt index 70e5c2533c9ea..af8333651cbb6 100644 --- a/Detectors/MUON/MID/CTF/CMakeLists.txt +++ b/Detectors/MUON/MID/CTF/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MIDCTF SOURCES src/CTFCoder.cxx src/CTFHelper.cxx diff --git a/Detectors/MUON/MID/CTF/include/MIDCTF/CTFCoder.h b/Detectors/MUON/MID/CTF/include/MIDCTF/CTFCoder.h index d58f4beaa7d82..a11485b26bd6e 100644 --- a/Detectors/MUON/MID/CTF/include/MIDCTF/CTFCoder.h +++ b/Detectors/MUON/MID/CTF/include/MIDCTF/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/CTF/include/MIDCTF/CTFHelper.h b/Detectors/MUON/MID/CTF/include/MIDCTF/CTFHelper.h index 832870fa9f5e5..a09da3041f51a 100644 --- a/Detectors/MUON/MID/CTF/include/MIDCTF/CTFHelper.h +++ b/Detectors/MUON/MID/CTF/include/MIDCTF/CTFHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/CTF/src/CTFCoder.cxx b/Detectors/MUON/MID/CTF/src/CTFCoder.cxx index 0dc55d6763ae1..fbc2168ed0edd 100644 --- a/Detectors/MUON/MID/CTF/src/CTFCoder.cxx +++ b/Detectors/MUON/MID/CTF/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/CTF/src/CTFHelper.cxx b/Detectors/MUON/MID/CTF/src/CTFHelper.cxx index e512ac535fff4..962de4c766051 100644 --- a/Detectors/MUON/MID/CTF/src/CTFHelper.cxx +++ b/Detectors/MUON/MID/CTF/src/CTFHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Clustering/CMakeLists.txt b/Detectors/MUON/MID/Clustering/CMakeLists.txt index d2418c22d396a..e44586ca9e762 100644 --- a/Detectors/MUON/MID/Clustering/CMakeLists.txt +++ b/Detectors/MUON/MID/Clustering/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MIDClustering SOURCES src/Clusterizer.cxx src/PreClusterizer.cxx diff --git a/Detectors/MUON/MID/Clustering/include/MIDClustering/Clusterizer.h b/Detectors/MUON/MID/Clustering/include/MIDClustering/Clusterizer.h index 99a97c8f78c9f..6d564e862959c 100644 --- a/Detectors/MUON/MID/Clustering/include/MIDClustering/Clusterizer.h +++ b/Detectors/MUON/MID/Clustering/include/MIDClustering/Clusterizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Clustering/include/MIDClustering/PreCluster.h b/Detectors/MUON/MID/Clustering/include/MIDClustering/PreCluster.h index c72cf7a7164d3..51390cafa4841 100644 --- a/Detectors/MUON/MID/Clustering/include/MIDClustering/PreCluster.h +++ b/Detectors/MUON/MID/Clustering/include/MIDClustering/PreCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Clustering/include/MIDClustering/PreClusterHelper.h b/Detectors/MUON/MID/Clustering/include/MIDClustering/PreClusterHelper.h index 55b831ef728ae..f6f57e03bf5c2 100644 --- a/Detectors/MUON/MID/Clustering/include/MIDClustering/PreClusterHelper.h +++ b/Detectors/MUON/MID/Clustering/include/MIDClustering/PreClusterHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Clustering/include/MIDClustering/PreClusterizer.h b/Detectors/MUON/MID/Clustering/include/MIDClustering/PreClusterizer.h index dcdef95c2d909..94de59cb297a6 100644 --- a/Detectors/MUON/MID/Clustering/include/MIDClustering/PreClusterizer.h +++ b/Detectors/MUON/MID/Clustering/include/MIDClustering/PreClusterizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Clustering/include/MIDClustering/PreClustersDE.h b/Detectors/MUON/MID/Clustering/include/MIDClustering/PreClustersDE.h index 800d8a100e85a..c861082c3410e 100644 --- a/Detectors/MUON/MID/Clustering/include/MIDClustering/PreClustersDE.h +++ b/Detectors/MUON/MID/Clustering/include/MIDClustering/PreClustersDE.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Clustering/src/Clusterizer.cxx b/Detectors/MUON/MID/Clustering/src/Clusterizer.cxx index e841b3b0cd105..c1a9e7718e833 100644 --- a/Detectors/MUON/MID/Clustering/src/Clusterizer.cxx +++ b/Detectors/MUON/MID/Clustering/src/Clusterizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Clustering/src/PreCluster.cxx b/Detectors/MUON/MID/Clustering/src/PreCluster.cxx index edb055f9a9db9..8510a25987d32 100644 --- a/Detectors/MUON/MID/Clustering/src/PreCluster.cxx +++ b/Detectors/MUON/MID/Clustering/src/PreCluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Clustering/src/PreClusterHelper.cxx b/Detectors/MUON/MID/Clustering/src/PreClusterHelper.cxx index b0c90c065769d..6612bbe92439f 100644 --- a/Detectors/MUON/MID/Clustering/src/PreClusterHelper.cxx +++ b/Detectors/MUON/MID/Clustering/src/PreClusterHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Clustering/src/PreClusterizer.cxx b/Detectors/MUON/MID/Clustering/src/PreClusterizer.cxx index e4fa364ce6d27..43d60f2ce490e 100644 --- a/Detectors/MUON/MID/Clustering/src/PreClusterizer.cxx +++ b/Detectors/MUON/MID/Clustering/src/PreClusterizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Clustering/src/PreClustersDE.cxx b/Detectors/MUON/MID/Clustering/src/PreClustersDE.cxx index c2716aec0b83e..86c05f82b634e 100644 --- a/Detectors/MUON/MID/Clustering/src/PreClustersDE.cxx +++ b/Detectors/MUON/MID/Clustering/src/PreClustersDE.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Clustering/test/CMakeLists.txt b/Detectors/MUON/MID/Clustering/test/CMakeLists.txt index 3ccd5f4155621..6c995c18fa658 100644 --- a/Detectors/MUON/MID/Clustering/test/CMakeLists.txt +++ b/Detectors/MUON/MID/Clustering/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test(Clusterizer SOURCES testClusterizer.cxx diff --git a/Detectors/MUON/MID/Clustering/test/bench_Clusterizer.cxx b/Detectors/MUON/MID/Clustering/test/bench_Clusterizer.cxx index 5903155066e42..9a3c34ee252d5 100644 --- a/Detectors/MUON/MID/Clustering/test/bench_Clusterizer.cxx +++ b/Detectors/MUON/MID/Clustering/test/bench_Clusterizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Clustering/test/testClusterizer.cxx b/Detectors/MUON/MID/Clustering/test/testClusterizer.cxx index 16b7b52053e4d..a0d76d10f62d5 100644 --- a/Detectors/MUON/MID/Clustering/test/testClusterizer.cxx +++ b/Detectors/MUON/MID/Clustering/test/testClusterizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Conditions/CMakeLists.txt b/Detectors/MUON/MID/Conditions/CMakeLists.txt index d5916f7508444..49234661d6de7 100644 --- a/Detectors/MUON/MID/Conditions/CMakeLists.txt +++ b/Detectors/MUON/MID/Conditions/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( MIDConditions diff --git a/Detectors/MUON/MID/Conditions/include/MIDConditions/DCSNamer.h b/Detectors/MUON/MID/Conditions/include/MIDConditions/DCSNamer.h index 8208dff5f2c9e..cf862ba4472a5 100644 --- a/Detectors/MUON/MID/Conditions/include/MIDConditions/DCSNamer.h +++ b/Detectors/MUON/MID/Conditions/include/MIDConditions/DCSNamer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Conditions/src/DCSNamer.cxx b/Detectors/MUON/MID/Conditions/src/DCSNamer.cxx index 1bbc9cee2af85..e70ec743bc4dd 100644 --- a/Detectors/MUON/MID/Conditions/src/DCSNamer.cxx +++ b/Detectors/MUON/MID/Conditions/src/DCSNamer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Conditions/test/HVAliases.cxx b/Detectors/MUON/MID/Conditions/test/HVAliases.cxx index 23aef49457695..244223a0532ec 100644 --- a/Detectors/MUON/MID/Conditions/test/HVAliases.cxx +++ b/Detectors/MUON/MID/Conditions/test/HVAliases.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Conditions/test/HVAliases.h b/Detectors/MUON/MID/Conditions/test/HVAliases.h index 986aa7ee3c71b..b4561fa9631d2 100644 --- a/Detectors/MUON/MID/Conditions/test/HVAliases.h +++ b/Detectors/MUON/MID/Conditions/test/HVAliases.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Conditions/test/testDCSNamer.cxx b/Detectors/MUON/MID/Conditions/test/testDCSNamer.cxx index 1df100d5e9d67..f0a136add20ce 100644 --- a/Detectors/MUON/MID/Conditions/test/testDCSNamer.cxx +++ b/Detectors/MUON/MID/Conditions/test/testDCSNamer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/QC/CMakeLists.txt b/Detectors/MUON/MID/QC/CMakeLists.txt index 64f9e7a303797..f87af8930f243 100644 --- a/Detectors/MUON/MID/QC/CMakeLists.txt +++ b/Detectors/MUON/MID/QC/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( MIDQC diff --git a/Detectors/MUON/MID/QC/exe/CMakeLists.txt b/Detectors/MUON/MID/QC/exe/CMakeLists.txt index fefc170396334..083e5febeacff 100644 --- a/Detectors/MUON/MID/QC/exe/CMakeLists.txt +++ b/Detectors/MUON/MID/QC/exe/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_executable( raw-checker diff --git a/Detectors/MUON/MID/QC/exe/raw-checker.cxx b/Detectors/MUON/MID/QC/exe/raw-checker.cxx index 4c4e3e5d5c0dd..116111661ccfe 100644 --- a/Detectors/MUON/MID/QC/exe/raw-checker.cxx +++ b/Detectors/MUON/MID/QC/exe/raw-checker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/QC/exe/raw-ul-checker.cxx b/Detectors/MUON/MID/QC/exe/raw-ul-checker.cxx index 4fd1e32427420..c424070e81d6a 100644 --- a/Detectors/MUON/MID/QC/exe/raw-ul-checker.cxx +++ b/Detectors/MUON/MID/QC/exe/raw-ul-checker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/QC/include/MIDQC/GBTRawDataChecker.h b/Detectors/MUON/MID/QC/include/MIDQC/GBTRawDataChecker.h index 4eeccc5987f2b..91b3d56050191 100644 --- a/Detectors/MUON/MID/QC/include/MIDQC/GBTRawDataChecker.h +++ b/Detectors/MUON/MID/QC/include/MIDQC/GBTRawDataChecker.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/QC/include/MIDQC/RawDataChecker.h b/Detectors/MUON/MID/QC/include/MIDQC/RawDataChecker.h index 1a7b94ffc7e90..29a51d6a1cb55 100644 --- a/Detectors/MUON/MID/QC/include/MIDQC/RawDataChecker.h +++ b/Detectors/MUON/MID/QC/include/MIDQC/RawDataChecker.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/QC/include/MIDQC/UserLogicChecker.h b/Detectors/MUON/MID/QC/include/MIDQC/UserLogicChecker.h index 1efe1f9794f0b..c1eed36a99427 100644 --- a/Detectors/MUON/MID/QC/include/MIDQC/UserLogicChecker.h +++ b/Detectors/MUON/MID/QC/include/MIDQC/UserLogicChecker.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/QC/src/GBTRawDataChecker.cxx b/Detectors/MUON/MID/QC/src/GBTRawDataChecker.cxx index daef75257f6f3..2705969b12433 100644 --- a/Detectors/MUON/MID/QC/src/GBTRawDataChecker.cxx +++ b/Detectors/MUON/MID/QC/src/GBTRawDataChecker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/QC/src/RawDataChecker.cxx b/Detectors/MUON/MID/QC/src/RawDataChecker.cxx index 9a06a6c858637..e3b40ee7dfe34 100644 --- a/Detectors/MUON/MID/QC/src/RawDataChecker.cxx +++ b/Detectors/MUON/MID/QC/src/RawDataChecker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/QC/src/UserLogicChecker.cxx b/Detectors/MUON/MID/QC/src/UserLogicChecker.cxx index 326864abb647e..53352dae15deb 100644 --- a/Detectors/MUON/MID/QC/src/UserLogicChecker.cxx +++ b/Detectors/MUON/MID/QC/src/UserLogicChecker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/CMakeLists.txt b/Detectors/MUON/MID/Raw/CMakeLists.txt index 94a5381e625a1..97c124f1c37df 100644 --- a/Detectors/MUON/MID/Raw/CMakeLists.txt +++ b/Detectors/MUON/MID/Raw/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( MIDRaw diff --git a/Detectors/MUON/MID/Raw/exe/CMakeLists.txt b/Detectors/MUON/MID/Raw/exe/CMakeLists.txt index cd2f0dabeda44..a53f14b809edb 100644 --- a/Detectors/MUON/MID/Raw/exe/CMakeLists.txt +++ b/Detectors/MUON/MID/Raw/exe/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_executable( rawdump diff --git a/Detectors/MUON/MID/Raw/exe/rawdump.cxx b/Detectors/MUON/MID/Raw/exe/rawdump.cxx index d42f3ee6c1add..107cad8a96ff7 100644 --- a/Detectors/MUON/MID/Raw/exe/rawdump.cxx +++ b/Detectors/MUON/MID/Raw/exe/rawdump.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/ColumnDataToLocalBoard.h b/Detectors/MUON/MID/Raw/include/MIDRaw/ColumnDataToLocalBoard.h index d1fcc83e34cdb..a1f4d4d4e5b81 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/ColumnDataToLocalBoard.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/ColumnDataToLocalBoard.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/CrateMapper.h b/Detectors/MUON/MID/Raw/include/MIDRaw/CrateMapper.h index dc6a8bda346f2..580702d0b20cb 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/CrateMapper.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/CrateMapper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/CrateMasks.h b/Detectors/MUON/MID/Raw/include/MIDRaw/CrateMasks.h index 0c94f6dfe7a6e..072bc092e21e5 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/CrateMasks.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/CrateMasks.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/CrateParameters.h b/Detectors/MUON/MID/Raw/include/MIDRaw/CrateParameters.h index 14081ce08381d..2b570e2520a8f 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/CrateParameters.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/CrateParameters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/DecodedDataAggregator.h b/Detectors/MUON/MID/Raw/include/MIDRaw/DecodedDataAggregator.h index 183c4fa92f676..3dda82114bac4 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/DecodedDataAggregator.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/DecodedDataAggregator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/Decoder.h b/Detectors/MUON/MID/Raw/include/MIDRaw/Decoder.h index 82e7224e81c14..3bae82bcc93d9 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/Decoder.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/Decoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/ELinkDataShaper.h b/Detectors/MUON/MID/Raw/include/MIDRaw/ELinkDataShaper.h index 1a2099067ce49..aa478ad38ee8d 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/ELinkDataShaper.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/ELinkDataShaper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/ELinkDecoder.h b/Detectors/MUON/MID/Raw/include/MIDRaw/ELinkDecoder.h index f5b6857459556..3fce2b1e61822 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/ELinkDecoder.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/ELinkDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/ELinkManager.h b/Detectors/MUON/MID/Raw/include/MIDRaw/ELinkManager.h index de619ede936da..f55d808dd46bb 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/ELinkManager.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/ELinkManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/ElectronicsDelay.h b/Detectors/MUON/MID/Raw/include/MIDRaw/ElectronicsDelay.h index a689ed2a6d033..bb5adf244994f 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/ElectronicsDelay.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/ElectronicsDelay.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/Encoder.h b/Detectors/MUON/MID/Raw/include/MIDRaw/Encoder.h index f2445844b9bfb..1c1300e3d09f5 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/Encoder.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/Encoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/FEEIdConfig.h b/Detectors/MUON/MID/Raw/include/MIDRaw/FEEIdConfig.h index 42e71de87e84d..d782bd72571ca 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/FEEIdConfig.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/FEEIdConfig.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/GBTOutputHandler.h b/Detectors/MUON/MID/Raw/include/MIDRaw/GBTOutputHandler.h index 58f4cba3952ca..49cb470fc0dae 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/GBTOutputHandler.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/GBTOutputHandler.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/GBTUserLogicEncoder.h b/Detectors/MUON/MID/Raw/include/MIDRaw/GBTUserLogicEncoder.h index 21afb0622d46f..be15911a79364 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/GBTUserLogicEncoder.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/GBTUserLogicEncoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/LinkDecoder.h b/Detectors/MUON/MID/Raw/include/MIDRaw/LinkDecoder.h index d38390ad5202a..8df566f96215a 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/LinkDecoder.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/LinkDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/RawFileReader.h b/Detectors/MUON/MID/Raw/include/MIDRaw/RawFileReader.h index 0df1da74bc6c8..9e61d2176141f 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/RawFileReader.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/RawFileReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/include/MIDRaw/Utils.h b/Detectors/MUON/MID/Raw/include/MIDRaw/Utils.h index 89055f4e6919f..5c79e2ca4bd48 100644 --- a/Detectors/MUON/MID/Raw/include/MIDRaw/Utils.h +++ b/Detectors/MUON/MID/Raw/include/MIDRaw/Utils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/ColumnDataToLocalBoard.cxx b/Detectors/MUON/MID/Raw/src/ColumnDataToLocalBoard.cxx index f93ded33ae448..3e225f3eaa69b 100644 --- a/Detectors/MUON/MID/Raw/src/ColumnDataToLocalBoard.cxx +++ b/Detectors/MUON/MID/Raw/src/ColumnDataToLocalBoard.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/CrateMapper.cxx b/Detectors/MUON/MID/Raw/src/CrateMapper.cxx index 94ebd2ff175ea..c2a1ab06e8445 100644 --- a/Detectors/MUON/MID/Raw/src/CrateMapper.cxx +++ b/Detectors/MUON/MID/Raw/src/CrateMapper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/CrateMasks.cxx b/Detectors/MUON/MID/Raw/src/CrateMasks.cxx index 7a03728310ac9..00360711e609f 100644 --- a/Detectors/MUON/MID/Raw/src/CrateMasks.cxx +++ b/Detectors/MUON/MID/Raw/src/CrateMasks.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/DecodedDataAggregator.cxx b/Detectors/MUON/MID/Raw/src/DecodedDataAggregator.cxx index ff286c1761a0c..1f951c18048c4 100644 --- a/Detectors/MUON/MID/Raw/src/DecodedDataAggregator.cxx +++ b/Detectors/MUON/MID/Raw/src/DecodedDataAggregator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/Decoder.cxx b/Detectors/MUON/MID/Raw/src/Decoder.cxx index 582720805017d..b5d75c47ff6b5 100644 --- a/Detectors/MUON/MID/Raw/src/Decoder.cxx +++ b/Detectors/MUON/MID/Raw/src/Decoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/ELinkDataShaper.cxx b/Detectors/MUON/MID/Raw/src/ELinkDataShaper.cxx index bafa61b2aa0c7..de8eb93a593bd 100644 --- a/Detectors/MUON/MID/Raw/src/ELinkDataShaper.cxx +++ b/Detectors/MUON/MID/Raw/src/ELinkDataShaper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/ELinkDecoder.cxx b/Detectors/MUON/MID/Raw/src/ELinkDecoder.cxx index 6b3dcb9400f68..e9166702b1622 100644 --- a/Detectors/MUON/MID/Raw/src/ELinkDecoder.cxx +++ b/Detectors/MUON/MID/Raw/src/ELinkDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/ELinkManager.cxx b/Detectors/MUON/MID/Raw/src/ELinkManager.cxx index 6efeda73fd86c..306f8365908a2 100644 --- a/Detectors/MUON/MID/Raw/src/ELinkManager.cxx +++ b/Detectors/MUON/MID/Raw/src/ELinkManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/ElectronicsDelay.cxx b/Detectors/MUON/MID/Raw/src/ElectronicsDelay.cxx index 48a7955e2ef5d..20a70759e0b68 100644 --- a/Detectors/MUON/MID/Raw/src/ElectronicsDelay.cxx +++ b/Detectors/MUON/MID/Raw/src/ElectronicsDelay.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/Encoder.cxx b/Detectors/MUON/MID/Raw/src/Encoder.cxx index 6e45a6d815bf7..851f84a4b9109 100644 --- a/Detectors/MUON/MID/Raw/src/Encoder.cxx +++ b/Detectors/MUON/MID/Raw/src/Encoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/FEEIdConfig.cxx b/Detectors/MUON/MID/Raw/src/FEEIdConfig.cxx index 1b0b7b9d48b5f..8711296a4962e 100644 --- a/Detectors/MUON/MID/Raw/src/FEEIdConfig.cxx +++ b/Detectors/MUON/MID/Raw/src/FEEIdConfig.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/GBTOutputHandler.cxx b/Detectors/MUON/MID/Raw/src/GBTOutputHandler.cxx index baeaaef60e357..95ca9d217016b 100644 --- a/Detectors/MUON/MID/Raw/src/GBTOutputHandler.cxx +++ b/Detectors/MUON/MID/Raw/src/GBTOutputHandler.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/GBTUserLogicEncoder.cxx b/Detectors/MUON/MID/Raw/src/GBTUserLogicEncoder.cxx index e0005dc88391a..e7f07f5ec58ee 100644 --- a/Detectors/MUON/MID/Raw/src/GBTUserLogicEncoder.cxx +++ b/Detectors/MUON/MID/Raw/src/GBTUserLogicEncoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/LinkDecoder.cxx b/Detectors/MUON/MID/Raw/src/LinkDecoder.cxx index 2064eeacb92ac..59a468c239c03 100644 --- a/Detectors/MUON/MID/Raw/src/LinkDecoder.cxx +++ b/Detectors/MUON/MID/Raw/src/LinkDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/src/RawFileReader.cxx b/Detectors/MUON/MID/Raw/src/RawFileReader.cxx index a039749839075..96d5b468f189e 100644 --- a/Detectors/MUON/MID/Raw/src/RawFileReader.cxx +++ b/Detectors/MUON/MID/Raw/src/RawFileReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/test/CMakeLists.txt b/Detectors/MUON/MID/Raw/test/CMakeLists.txt index 1099125bfc68c..45ba91f220103 100644 --- a/Detectors/MUON/MID/Raw/test/CMakeLists.txt +++ b/Detectors/MUON/MID/Raw/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test( Raw diff --git a/Detectors/MUON/MID/Raw/test/bench_Raw.cxx b/Detectors/MUON/MID/Raw/test/bench_Raw.cxx index 4ebc6145da42a..7c502a0573b46 100644 --- a/Detectors/MUON/MID/Raw/test/bench_Raw.cxx +++ b/Detectors/MUON/MID/Raw/test/bench_Raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/test/testCrateMapper.cxx b/Detectors/MUON/MID/Raw/test/testCrateMapper.cxx index 1aeb372a5fdd8..7d5342714d4eb 100644 --- a/Detectors/MUON/MID/Raw/test/testCrateMapper.cxx +++ b/Detectors/MUON/MID/Raw/test/testCrateMapper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Raw/test/testRaw.cxx b/Detectors/MUON/MID/Raw/test/testRaw.cxx index 5981278bc1d5f..47e68669909c6 100644 --- a/Detectors/MUON/MID/Raw/test/testRaw.cxx +++ b/Detectors/MUON/MID/Raw/test/testRaw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/CMakeLists.txt b/Detectors/MUON/MID/Simulation/CMakeLists.txt index 3b0519916d51d..27c65224b42c3 100644 --- a/Detectors/MUON/MID/Simulation/CMakeLists.txt +++ b/Detectors/MUON/MID/Simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( MIDSimulation diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberEfficiencyResponse.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberEfficiencyResponse.h index e60352415286c..5b744654b917c 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberEfficiencyResponse.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberEfficiencyResponse.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberHV.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberHV.h index 6592fd92052af..d6f7667e0624d 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberHV.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberHV.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberResponse.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberResponse.h index 8d8fbc4b0f325..550264ceb6306 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberResponse.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberResponse.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberResponseParams.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberResponseParams.h index ff5569a4801bf..dbbc02ffef691 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberResponseParams.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/ChamberResponseParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/ClusterLabeler.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/ClusterLabeler.h index bbf0a4db6ecbb..8bd50f078c54d 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/ClusterLabeler.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/ClusterLabeler.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/ColumnDataMC.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/ColumnDataMC.h index dc3f357357433..903259be608d9 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/ColumnDataMC.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/ColumnDataMC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/Detector.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/Detector.h index 20a9cb4782278..f44093fce0bfa 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/Detector.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/Digitizer.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/Digitizer.h index e1165f727198d..50f0abbfe4151 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/Digitizer.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/DigitsMerger.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/DigitsMerger.h index 4e6d39857867b..4ec957f220bde 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/DigitsMerger.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/DigitsMerger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/Geometry.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/Geometry.h index 5938808441fc1..e53d01a4c1a03 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/Geometry.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/Hit.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/Hit.h index 62c5623018a49..01a3bf8d0fab4 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/Hit.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/Hit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/MCClusterLabel.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/MCClusterLabel.h index 4c1a625c811ec..2aaa49c7d7a2a 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/MCClusterLabel.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/MCClusterLabel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/MCLabel.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/MCLabel.h index 1baf65bac060a..ecc03459406a6 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/MCLabel.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/MCLabel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/PreClusterLabeler.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/PreClusterLabeler.h index 0d2fc7cdf117a..733b29c971fdc 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/PreClusterLabeler.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/PreClusterLabeler.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/Stepper.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/Stepper.h index 1c3551563f930..fdc712ed26496 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/Stepper.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/Stepper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/include/MIDSimulation/TrackLabeler.h b/Detectors/MUON/MID/Simulation/include/MIDSimulation/TrackLabeler.h index 7793d7488d3b4..cb100113b8ff5 100644 --- a/Detectors/MUON/MID/Simulation/include/MIDSimulation/TrackLabeler.h +++ b/Detectors/MUON/MID/Simulation/include/MIDSimulation/TrackLabeler.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/ChamberEfficiencyResponse.cxx b/Detectors/MUON/MID/Simulation/src/ChamberEfficiencyResponse.cxx index bc3b6de5751ae..69a8fca3ab6fa 100644 --- a/Detectors/MUON/MID/Simulation/src/ChamberEfficiencyResponse.cxx +++ b/Detectors/MUON/MID/Simulation/src/ChamberEfficiencyResponse.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/ChamberHV.cxx b/Detectors/MUON/MID/Simulation/src/ChamberHV.cxx index b6e4cf5bc8449..78a6d12d37fbc 100644 --- a/Detectors/MUON/MID/Simulation/src/ChamberHV.cxx +++ b/Detectors/MUON/MID/Simulation/src/ChamberHV.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/ChamberResponse.cxx b/Detectors/MUON/MID/Simulation/src/ChamberResponse.cxx index 638f00d791138..fa86401c12b75 100644 --- a/Detectors/MUON/MID/Simulation/src/ChamberResponse.cxx +++ b/Detectors/MUON/MID/Simulation/src/ChamberResponse.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/ChamberResponseParams.cxx b/Detectors/MUON/MID/Simulation/src/ChamberResponseParams.cxx index adb7902bfcffb..11118529ed005 100644 --- a/Detectors/MUON/MID/Simulation/src/ChamberResponseParams.cxx +++ b/Detectors/MUON/MID/Simulation/src/ChamberResponseParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/ClusterLabeler.cxx b/Detectors/MUON/MID/Simulation/src/ClusterLabeler.cxx index f07712770b7e5..ae599f31441c9 100644 --- a/Detectors/MUON/MID/Simulation/src/ClusterLabeler.cxx +++ b/Detectors/MUON/MID/Simulation/src/ClusterLabeler.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/Detector.cxx b/Detectors/MUON/MID/Simulation/src/Detector.cxx index e25b22ddbd5ef..0f2fc9e3512e1 100644 --- a/Detectors/MUON/MID/Simulation/src/Detector.cxx +++ b/Detectors/MUON/MID/Simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/Digitizer.cxx b/Detectors/MUON/MID/Simulation/src/Digitizer.cxx index 210440d9ac147..9001c2cf874d5 100644 --- a/Detectors/MUON/MID/Simulation/src/Digitizer.cxx +++ b/Detectors/MUON/MID/Simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/DigitsMerger.cxx b/Detectors/MUON/MID/Simulation/src/DigitsMerger.cxx index b2dc8c66eb93f..727556228484d 100644 --- a/Detectors/MUON/MID/Simulation/src/DigitsMerger.cxx +++ b/Detectors/MUON/MID/Simulation/src/DigitsMerger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/Geometry.cxx b/Detectors/MUON/MID/Simulation/src/Geometry.cxx index 2376de68794cf..8452d4e5a7f49 100644 --- a/Detectors/MUON/MID/Simulation/src/Geometry.cxx +++ b/Detectors/MUON/MID/Simulation/src/Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/Hit.cxx b/Detectors/MUON/MID/Simulation/src/Hit.cxx index 395f7566835a0..cb25b978034dd 100644 --- a/Detectors/MUON/MID/Simulation/src/Hit.cxx +++ b/Detectors/MUON/MID/Simulation/src/Hit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/MCClusterLabel.cxx b/Detectors/MUON/MID/Simulation/src/MCClusterLabel.cxx index 0c55d19a12f96..eb1625db928ea 100644 --- a/Detectors/MUON/MID/Simulation/src/MCClusterLabel.cxx +++ b/Detectors/MUON/MID/Simulation/src/MCClusterLabel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/MCLabel.cxx b/Detectors/MUON/MID/Simulation/src/MCLabel.cxx index 89fedb866c719..379d6dffcd320 100644 --- a/Detectors/MUON/MID/Simulation/src/MCLabel.cxx +++ b/Detectors/MUON/MID/Simulation/src/MCLabel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/MIDSimulationLinkDef.h b/Detectors/MUON/MID/Simulation/src/MIDSimulationLinkDef.h index 6e13937856a27..16f7cd630fcb0 100644 --- a/Detectors/MUON/MID/Simulation/src/MIDSimulationLinkDef.h +++ b/Detectors/MUON/MID/Simulation/src/MIDSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/Materials.cxx b/Detectors/MUON/MID/Simulation/src/Materials.cxx index 4a9bc172b9976..b6aeac75f8da8 100644 --- a/Detectors/MUON/MID/Simulation/src/Materials.cxx +++ b/Detectors/MUON/MID/Simulation/src/Materials.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/Materials.h b/Detectors/MUON/MID/Simulation/src/Materials.h index 7662eab694e60..7461669f25e74 100644 --- a/Detectors/MUON/MID/Simulation/src/Materials.h +++ b/Detectors/MUON/MID/Simulation/src/Materials.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/PreClusterLabeler.cxx b/Detectors/MUON/MID/Simulation/src/PreClusterLabeler.cxx index 7311d97b70ce3..18021d3c35cb5 100644 --- a/Detectors/MUON/MID/Simulation/src/PreClusterLabeler.cxx +++ b/Detectors/MUON/MID/Simulation/src/PreClusterLabeler.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/Stepper.cxx b/Detectors/MUON/MID/Simulation/src/Stepper.cxx index 59451eafbc6a8..0fb6367fe6598 100644 --- a/Detectors/MUON/MID/Simulation/src/Stepper.cxx +++ b/Detectors/MUON/MID/Simulation/src/Stepper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/src/TrackLabeler.cxx b/Detectors/MUON/MID/Simulation/src/TrackLabeler.cxx index 8508e2c2a2680..88abcf7853292 100644 --- a/Detectors/MUON/MID/Simulation/src/TrackLabeler.cxx +++ b/Detectors/MUON/MID/Simulation/src/TrackLabeler.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/test/CMakeLists.txt b/Detectors/MUON/MID/Simulation/test/CMakeLists.txt index 124440c7bbbc7..0f12657282388 100644 --- a/Detectors/MUON/MID/Simulation/test/CMakeLists.txt +++ b/Detectors/MUON/MID/Simulation/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test(Geometry SOURCES testGeometry.cxx diff --git a/Detectors/MUON/MID/Simulation/test/testGeometry.cxx b/Detectors/MUON/MID/Simulation/test/testGeometry.cxx index 785e030925c3d..3c5a0f99ed379 100644 --- a/Detectors/MUON/MID/Simulation/test/testGeometry.cxx +++ b/Detectors/MUON/MID/Simulation/test/testGeometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Simulation/test/testSimulation.cxx b/Detectors/MUON/MID/Simulation/test/testSimulation.cxx index 11443a4c6080b..97402ed0475e1 100644 --- a/Detectors/MUON/MID/Simulation/test/testSimulation.cxx +++ b/Detectors/MUON/MID/Simulation/test/testSimulation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/TestingSimTools/CMakeLists.txt b/Detectors/MUON/MID/TestingSimTools/CMakeLists.txt index e4ee6bc51ab62..fe3eff865f3c0 100644 --- a/Detectors/MUON/MID/TestingSimTools/CMakeLists.txt +++ b/Detectors/MUON/MID/TestingSimTools/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MIDTestingSimTools SOURCES src/HitFinder.cxx src/TrackGenerator.cxx diff --git a/Detectors/MUON/MID/TestingSimTools/include/MIDTestingSimTools/HitFinder.h b/Detectors/MUON/MID/TestingSimTools/include/MIDTestingSimTools/HitFinder.h index b86ddb96984fa..45ccea9b908d9 100644 --- a/Detectors/MUON/MID/TestingSimTools/include/MIDTestingSimTools/HitFinder.h +++ b/Detectors/MUON/MID/TestingSimTools/include/MIDTestingSimTools/HitFinder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/TestingSimTools/include/MIDTestingSimTools/TrackGenerator.h b/Detectors/MUON/MID/TestingSimTools/include/MIDTestingSimTools/TrackGenerator.h index 2e2a6869e80bf..8ac849fb54691 100644 --- a/Detectors/MUON/MID/TestingSimTools/include/MIDTestingSimTools/TrackGenerator.h +++ b/Detectors/MUON/MID/TestingSimTools/include/MIDTestingSimTools/TrackGenerator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/TestingSimTools/src/HitFinder.cxx b/Detectors/MUON/MID/TestingSimTools/src/HitFinder.cxx index 6f39180deaa2b..5d5cf6fdf4db4 100644 --- a/Detectors/MUON/MID/TestingSimTools/src/HitFinder.cxx +++ b/Detectors/MUON/MID/TestingSimTools/src/HitFinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/TestingSimTools/src/TrackGenerator.cxx b/Detectors/MUON/MID/TestingSimTools/src/TrackGenerator.cxx index cc715959f6a6d..a8ed2a69720ef 100644 --- a/Detectors/MUON/MID/TestingSimTools/src/TrackGenerator.cxx +++ b/Detectors/MUON/MID/TestingSimTools/src/TrackGenerator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Tracking/CMakeLists.txt b/Detectors/MUON/MID/Tracking/CMakeLists.txt index 7ffac8fd4671b..8746383935667 100644 --- a/Detectors/MUON/MID/Tracking/CMakeLists.txt +++ b/Detectors/MUON/MID/Tracking/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(MIDTracking SOURCES src/Tracker.cxx diff --git a/Detectors/MUON/MID/Tracking/include/MIDTracking/Tracker.h b/Detectors/MUON/MID/Tracking/include/MIDTracking/Tracker.h index 52fa2a0b8eee2..076a9f21180dc 100644 --- a/Detectors/MUON/MID/Tracking/include/MIDTracking/Tracker.h +++ b/Detectors/MUON/MID/Tracking/include/MIDTracking/Tracker.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Tracking/src/Tracker.cxx b/Detectors/MUON/MID/Tracking/src/Tracker.cxx index dc7396f9465f4..7ad27419951f9 100644 --- a/Detectors/MUON/MID/Tracking/src/Tracker.cxx +++ b/Detectors/MUON/MID/Tracking/src/Tracker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Tracking/test/CMakeLists.txt b/Detectors/MUON/MID/Tracking/test/CMakeLists.txt index 537f347f8c9fa..996534bcf70b5 100644 --- a/Detectors/MUON/MID/Tracking/test/CMakeLists.txt +++ b/Detectors/MUON/MID/Tracking/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test(Tracker SOURCES testTracker.cxx diff --git a/Detectors/MUON/MID/Tracking/test/bench_Tracker.cxx b/Detectors/MUON/MID/Tracking/test/bench_Tracker.cxx index 1ce5c34203959..1d90dc7351018 100644 --- a/Detectors/MUON/MID/Tracking/test/bench_Tracker.cxx +++ b/Detectors/MUON/MID/Tracking/test/bench_Tracker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Tracking/test/testTracker.cxx b/Detectors/MUON/MID/Tracking/test/testTracker.cxx index 13d20ef05341b..4ca369664043e 100644 --- a/Detectors/MUON/MID/Tracking/test/testTracker.cxx +++ b/Detectors/MUON/MID/Tracking/test/testTracker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/CMakeLists.txt b/Detectors/MUON/MID/Workflow/CMakeLists.txt index d29204a226bd4..ca50021afd853 100644 --- a/Detectors/MUON/MID/Workflow/CMakeLists.txt +++ b/Detectors/MUON/MID/Workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library( MIDWorkflow diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/ClusterizerMCSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/ClusterizerMCSpec.h index de91d9eb07b70..c46eab712cee5 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/ClusterizerMCSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/ClusterizerMCSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/ClusterizerSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/ClusterizerSpec.h index 4a7ee5691f465..c904dfcf49511 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/ClusterizerSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/ClusterizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/DigitReaderSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/DigitReaderSpec.h index 334e61e1c61c7..f2a91d3ee7808 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/DigitReaderSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/DigitReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/EntropyDecoderSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/EntropyDecoderSpec.h index 97c413ae8b37d..0d206dbd1ed52 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/EntropyDecoderSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/EntropyEncoderSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/EntropyEncoderSpec.h index 7dc6a90be029d..4784477ab15fc 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/EntropyEncoderSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawAggregatorSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawAggregatorSpec.h index e32e7ab1f2f9b..b5a6b33530c8f 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawAggregatorSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawAggregatorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawCheckerSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawCheckerSpec.h index bef7bf0f5c2c4..1d52253291cec 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawCheckerSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawCheckerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawDecoderSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawDecoderSpec.h index 8fa3aab1c17e2..dc40831eef7f3 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawDecoderSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawGBTDecoderSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawGBTDecoderSpec.h index a4096f5071c8f..53c527ad06fd7 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawGBTDecoderSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawGBTDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawWriterSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawWriterSpec.h index 753cd2130df30..e5df6adf0fe57 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawWriterSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/TrackerMCSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/TrackerMCSpec.h index 38088d9fc0396..2cdbc91a1ea77 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/TrackerMCSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/TrackerMCSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/TrackerSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/TrackerSpec.h index f8b31930154a6..c02d27f5cda50 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/TrackerSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/TrackerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/ZeroSuppressionSpec.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/ZeroSuppressionSpec.h index b819acafaccfd..a440397553003 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/ZeroSuppressionSpec.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/ZeroSuppressionSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/ClusterizerMCSpec.cxx b/Detectors/MUON/MID/Workflow/src/ClusterizerMCSpec.cxx index 9111e2ad11c89..4621871a2ae71 100644 --- a/Detectors/MUON/MID/Workflow/src/ClusterizerMCSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/ClusterizerMCSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/ClusterizerSpec.cxx b/Detectors/MUON/MID/Workflow/src/ClusterizerSpec.cxx index 67ed691d7a8f0..26b09fc6ced12 100644 --- a/Detectors/MUON/MID/Workflow/src/ClusterizerSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/ClusterizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/DigitReaderSpec.cxx b/Detectors/MUON/MID/Workflow/src/DigitReaderSpec.cxx index 1d91deaa03a0a..0eede1b95a8de 100644 --- a/Detectors/MUON/MID/Workflow/src/DigitReaderSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/DigitReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/EntropyDecoderSpec.cxx b/Detectors/MUON/MID/Workflow/src/EntropyDecoderSpec.cxx index 4578318351c62..8e518187af75c 100644 --- a/Detectors/MUON/MID/Workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/EntropyEncoderSpec.cxx b/Detectors/MUON/MID/Workflow/src/EntropyEncoderSpec.cxx index a77ae737a3b48..f3879828cf996 100644 --- a/Detectors/MUON/MID/Workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/RawAggregatorSpec.cxx b/Detectors/MUON/MID/Workflow/src/RawAggregatorSpec.cxx index fcf06e975a288..96dd54308d91e 100644 --- a/Detectors/MUON/MID/Workflow/src/RawAggregatorSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/RawAggregatorSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/RawCheckerSpec.cxx b/Detectors/MUON/MID/Workflow/src/RawCheckerSpec.cxx index 69680f8258e24..490134f084c20 100644 --- a/Detectors/MUON/MID/Workflow/src/RawCheckerSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/RawCheckerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/RawDecoderSpec.cxx b/Detectors/MUON/MID/Workflow/src/RawDecoderSpec.cxx index bb6804ef3757b..21081e7359bfc 100644 --- a/Detectors/MUON/MID/Workflow/src/RawDecoderSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/RawDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/RawGBTDecoderSpec.cxx b/Detectors/MUON/MID/Workflow/src/RawGBTDecoderSpec.cxx index 10fa9a3afd067..01213c57b5aa0 100644 --- a/Detectors/MUON/MID/Workflow/src/RawGBTDecoderSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/RawGBTDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/RawWriterSpec.cxx b/Detectors/MUON/MID/Workflow/src/RawWriterSpec.cxx index 471b97199d572..8586a283ef2a3 100644 --- a/Detectors/MUON/MID/Workflow/src/RawWriterSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/RawWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/TrackerMCSpec.cxx b/Detectors/MUON/MID/Workflow/src/TrackerMCSpec.cxx index 4aa7615651b66..9712ba4660dae 100644 --- a/Detectors/MUON/MID/Workflow/src/TrackerMCSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/TrackerMCSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/TrackerSpec.cxx b/Detectors/MUON/MID/Workflow/src/TrackerSpec.cxx index 8d651ab0fc84e..de43a3af72dfd 100644 --- a/Detectors/MUON/MID/Workflow/src/TrackerSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/TrackerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/ZeroSuppressionSpec.cxx b/Detectors/MUON/MID/Workflow/src/ZeroSuppressionSpec.cxx index b7cde870e854d..3ae1b4d9cde88 100644 --- a/Detectors/MUON/MID/Workflow/src/ZeroSuppressionSpec.cxx +++ b/Detectors/MUON/MID/Workflow/src/ZeroSuppressionSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/digits-reader-workflow.cxx b/Detectors/MUON/MID/Workflow/src/digits-reader-workflow.cxx index beabde191a115..4832efafcc1fb 100644 --- a/Detectors/MUON/MID/Workflow/src/digits-reader-workflow.cxx +++ b/Detectors/MUON/MID/Workflow/src/digits-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/digits-to-raw-workflow.cxx b/Detectors/MUON/MID/Workflow/src/digits-to-raw-workflow.cxx index c4ba816d07097..faa8ccf89a7f7 100644 --- a/Detectors/MUON/MID/Workflow/src/digits-to-raw-workflow.cxx +++ b/Detectors/MUON/MID/Workflow/src/digits-to-raw-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/entropy-encoder-workflow.cxx b/Detectors/MUON/MID/Workflow/src/entropy-encoder-workflow.cxx index 171291272c322..077c44ff0db93 100644 --- a/Detectors/MUON/MID/Workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/MUON/MID/Workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/raw-checker-workflow.cxx b/Detectors/MUON/MID/Workflow/src/raw-checker-workflow.cxx index 0832eb7509fc2..04a007c6ccd6d 100644 --- a/Detectors/MUON/MID/Workflow/src/raw-checker-workflow.cxx +++ b/Detectors/MUON/MID/Workflow/src/raw-checker-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/raw-to-digits-workflow.cxx b/Detectors/MUON/MID/Workflow/src/raw-to-digits-workflow.cxx index f1a65e26a702f..54f70deae9ac1 100644 --- a/Detectors/MUON/MID/Workflow/src/raw-to-digits-workflow.cxx +++ b/Detectors/MUON/MID/Workflow/src/raw-to-digits-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/reco-workflow.cxx b/Detectors/MUON/MID/Workflow/src/reco-workflow.cxx index d9d4b5d8b9cfe..c7bff4def2ea4 100644 --- a/Detectors/MUON/MID/Workflow/src/reco-workflow.cxx +++ b/Detectors/MUON/MID/Workflow/src/reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/CMakeLists.txt b/Detectors/PHOS/CMakeLists.txt index 1a5260de68324..72cfdf2ef2b9c 100644 --- a/Detectors/PHOS/CMakeLists.txt +++ b/Detectors/PHOS/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(calib) diff --git a/Detectors/PHOS/base/CMakeLists.txt b/Detectors/PHOS/base/CMakeLists.txt index cd8ee57bc8a17..93023e90ffd92 100644 --- a/Detectors/PHOS/base/CMakeLists.txt +++ b/Detectors/PHOS/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(PHOSBase SOURCES src/Geometry.cxx diff --git a/Detectors/PHOS/base/include/PHOSBase/Geometry.h b/Detectors/PHOS/base/include/PHOSBase/Geometry.h index d80fed8fa7cc4..79d9c99dd7128 100644 --- a/Detectors/PHOS/base/include/PHOSBase/Geometry.h +++ b/Detectors/PHOS/base/include/PHOSBase/Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/base/include/PHOSBase/Hit.h b/Detectors/PHOS/base/include/PHOSBase/Hit.h index f987158686a1f..84f10f15a431c 100644 --- a/Detectors/PHOS/base/include/PHOSBase/Hit.h +++ b/Detectors/PHOS/base/include/PHOSBase/Hit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/base/include/PHOSBase/Mapping.h b/Detectors/PHOS/base/include/PHOSBase/Mapping.h index ce24572a02e6a..3a5ef5a944e40 100644 --- a/Detectors/PHOS/base/include/PHOSBase/Mapping.h +++ b/Detectors/PHOS/base/include/PHOSBase/Mapping.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/base/include/PHOSBase/PHOSSimParams.h b/Detectors/PHOS/base/include/PHOSBase/PHOSSimParams.h index 82261b7fb3a96..c53a4360071a2 100644 --- a/Detectors/PHOS/base/include/PHOSBase/PHOSSimParams.h +++ b/Detectors/PHOS/base/include/PHOSBase/PHOSSimParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/base/include/PHOSBase/RCUTrailer.h b/Detectors/PHOS/base/include/PHOSBase/RCUTrailer.h index 566ab1141a328..3f3ffece96623 100644 --- a/Detectors/PHOS/base/include/PHOSBase/RCUTrailer.h +++ b/Detectors/PHOS/base/include/PHOSBase/RCUTrailer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/base/src/Geometry.cxx b/Detectors/PHOS/base/src/Geometry.cxx index 31cbcd842aaed..d1ac031981e0a 100644 --- a/Detectors/PHOS/base/src/Geometry.cxx +++ b/Detectors/PHOS/base/src/Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/base/src/Hit.cxx b/Detectors/PHOS/base/src/Hit.cxx index 9c767ab3db959..04cf613293c51 100644 --- a/Detectors/PHOS/base/src/Hit.cxx +++ b/Detectors/PHOS/base/src/Hit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/base/src/Mapping.cxx b/Detectors/PHOS/base/src/Mapping.cxx index b8df3ae3817ea..4fe7f7b9648d1 100644 --- a/Detectors/PHOS/base/src/Mapping.cxx +++ b/Detectors/PHOS/base/src/Mapping.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/base/src/PHOSBaseLinkDef.h b/Detectors/PHOS/base/src/PHOSBaseLinkDef.h index 3bd0b052130d1..742ae82379a74 100644 --- a/Detectors/PHOS/base/src/PHOSBaseLinkDef.h +++ b/Detectors/PHOS/base/src/PHOSBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/base/src/PHOSSimParams.cxx b/Detectors/PHOS/base/src/PHOSSimParams.cxx index 4b2817a9d12ed..edf4c8fdca869 100644 --- a/Detectors/PHOS/base/src/PHOSSimParams.cxx +++ b/Detectors/PHOS/base/src/PHOSSimParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/base/src/RCUTrailer.cxx b/Detectors/PHOS/base/src/RCUTrailer.cxx index 6295023ecbf53..818930a46b832 100644 --- a/Detectors/PHOS/base/src/RCUTrailer.cxx +++ b/Detectors/PHOS/base/src/RCUTrailer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/CMakeLists.txt b/Detectors/PHOS/calib/CMakeLists.txt index 13a392fd0f6db..bb65608093e82 100644 --- a/Detectors/PHOS/calib/CMakeLists.txt +++ b/Detectors/PHOS/calib/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(PHOSCalibWorkflow SOURCES src/PHOSPedestalCalibDevice.cxx diff --git a/Detectors/PHOS/calib/include/PHOSCalib/BadChannelMap.h b/Detectors/PHOS/calib/include/PHOSCalib/BadChannelMap.h index f7241c677bcb5..7019e2686d598 100644 --- a/Detectors/PHOS/calib/include/PHOSCalib/BadChannelMap.h +++ b/Detectors/PHOS/calib/include/PHOSCalib/BadChannelMap.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/ETCalibHistos.h b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/ETCalibHistos.h index b4ef9e898509f..c4714cc58d0d1 100644 --- a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/ETCalibHistos.h +++ b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/ETCalibHistos.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSEnergyCalibDevice.h b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSEnergyCalibDevice.h index b1c28056ca6e9..397555ab0efc0 100644 --- a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSEnergyCalibDevice.h +++ b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSEnergyCalibDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSEnergyCalibrator.h b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSEnergyCalibrator.h index b2581aec1a106..3fb685e7668b5 100644 --- a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSEnergyCalibrator.h +++ b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSEnergyCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSHGLGRatioCalibDevice.h b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSHGLGRatioCalibDevice.h index fa6ca23130e44..562c1840d37ad 100644 --- a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSHGLGRatioCalibDevice.h +++ b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSHGLGRatioCalibDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSPedestalCalibDevice.h b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSPedestalCalibDevice.h index bb77c4278c3bc..93dd2ec152da5 100644 --- a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSPedestalCalibDevice.h +++ b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSPedestalCalibDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSRunbyrunCalibDevice.h b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSRunbyrunCalibDevice.h index 86f7ab42a7803..f862f7ece4eb0 100644 --- a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSRunbyrunCalibDevice.h +++ b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSRunbyrunCalibDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSRunbyrunCalibrator.h b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSRunbyrunCalibrator.h index e5cbaa2052f7e..e6094308c1512 100644 --- a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSRunbyrunCalibrator.h +++ b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSRunbyrunCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSTurnonCalibDevice.h b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSTurnonCalibDevice.h index 9fb6873372f08..a8c9b58f56aaf 100644 --- a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSTurnonCalibDevice.h +++ b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSTurnonCalibDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSTurnonCalibrator.h b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSTurnonCalibrator.h index dfebb0029286b..e1656c2a19af8 100644 --- a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSTurnonCalibrator.h +++ b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/PHOSTurnonCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/RingBuffer.h b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/RingBuffer.h index 14e345c57edcd..8f075d0de57c7 100644 --- a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/RingBuffer.h +++ b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/RingBuffer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/TurnOnHistos.h b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/TurnOnHistos.h index 32af2d3e0b7ce..4457da2e100ad 100644 --- a/Detectors/PHOS/calib/include/PHOSCalibWorkflow/TurnOnHistos.h +++ b/Detectors/PHOS/calib/include/PHOSCalibWorkflow/TurnOnHistos.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/src/PHOSBadMapCalibDevice.cxx b/Detectors/PHOS/calib/src/PHOSBadMapCalibDevice.cxx index 9e9d22f58c7cb..e611069684b7c 100644 --- a/Detectors/PHOS/calib/src/PHOSBadMapCalibDevice.cxx +++ b/Detectors/PHOS/calib/src/PHOSBadMapCalibDevice.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/src/PHOSCalibWorkflowLinkDef.h b/Detectors/PHOS/calib/src/PHOSCalibWorkflowLinkDef.h index 7ad3d5c4842bf..db66c6bb39c57 100644 --- a/Detectors/PHOS/calib/src/PHOSCalibWorkflowLinkDef.h +++ b/Detectors/PHOS/calib/src/PHOSCalibWorkflowLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/src/PHOSEnergyCalibDevice.cxx b/Detectors/PHOS/calib/src/PHOSEnergyCalibDevice.cxx index 619ebbdd593eb..a9608c6086323 100644 --- a/Detectors/PHOS/calib/src/PHOSEnergyCalibDevice.cxx +++ b/Detectors/PHOS/calib/src/PHOSEnergyCalibDevice.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/src/PHOSEnergyCalibrator.cxx b/Detectors/PHOS/calib/src/PHOSEnergyCalibrator.cxx index 22e847d4af526..9cc4443171779 100644 --- a/Detectors/PHOS/calib/src/PHOSEnergyCalibrator.cxx +++ b/Detectors/PHOS/calib/src/PHOSEnergyCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/src/PHOSHGLGRatioCalibDevice.cxx b/Detectors/PHOS/calib/src/PHOSHGLGRatioCalibDevice.cxx index 997d082277a4f..ee36a2a44a023 100644 --- a/Detectors/PHOS/calib/src/PHOSHGLGRatioCalibDevice.cxx +++ b/Detectors/PHOS/calib/src/PHOSHGLGRatioCalibDevice.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/src/PHOSPedestalCalibDevice.cxx b/Detectors/PHOS/calib/src/PHOSPedestalCalibDevice.cxx index 84a73bd25bc60..10eaec1fed4fb 100644 --- a/Detectors/PHOS/calib/src/PHOSPedestalCalibDevice.cxx +++ b/Detectors/PHOS/calib/src/PHOSPedestalCalibDevice.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/src/PHOSRunbyrunCalibDevice.cxx b/Detectors/PHOS/calib/src/PHOSRunbyrunCalibDevice.cxx index 7f4c039ad537b..6d0caba4f2913 100644 --- a/Detectors/PHOS/calib/src/PHOSRunbyrunCalibDevice.cxx +++ b/Detectors/PHOS/calib/src/PHOSRunbyrunCalibDevice.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/src/PHOSRunbyrunCalibrator.cxx b/Detectors/PHOS/calib/src/PHOSRunbyrunCalibrator.cxx index 29648a56305d2..a22977a1165a4 100644 --- a/Detectors/PHOS/calib/src/PHOSRunbyrunCalibrator.cxx +++ b/Detectors/PHOS/calib/src/PHOSRunbyrunCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/src/PHOSTurnonCalibDevice.cxx b/Detectors/PHOS/calib/src/PHOSTurnonCalibDevice.cxx index 6eab59d01bf2d..8ee05bebcebbb 100644 --- a/Detectors/PHOS/calib/src/PHOSTurnonCalibDevice.cxx +++ b/Detectors/PHOS/calib/src/PHOSTurnonCalibDevice.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/src/PHOSTurnonCalibrator.cxx b/Detectors/PHOS/calib/src/PHOSTurnonCalibrator.cxx index 307dc80d0080e..94c6d09206c03 100644 --- a/Detectors/PHOS/calib/src/PHOSTurnonCalibrator.cxx +++ b/Detectors/PHOS/calib/src/PHOSTurnonCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/src/TurnOnHistos.cxx b/Detectors/PHOS/calib/src/TurnOnHistos.cxx index 30b55c5f002d1..86d3ba79d5508 100644 --- a/Detectors/PHOS/calib/src/TurnOnHistos.cxx +++ b/Detectors/PHOS/calib/src/TurnOnHistos.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/calib/src/phos-calib-workflow.cxx b/Detectors/PHOS/calib/src/phos-calib-workflow.cxx index 3e5b6a847362c..429456336727e 100644 --- a/Detectors/PHOS/calib/src/phos-calib-workflow.cxx +++ b/Detectors/PHOS/calib/src/phos-calib-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/CMakeLists.txt b/Detectors/PHOS/reconstruction/CMakeLists.txt index 3532317c062ca..e24b0e1e91b28 100644 --- a/Detectors/PHOS/reconstruction/CMakeLists.txt +++ b/Detectors/PHOS/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -#Copyright CERN and copyright holders of ALICE O2.This software is distributed -#under the terms of the GNU General Public License v3(GPL Version 3), copied -#verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -#See http: //alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # -#In applying this license CERN does not waive the privileges and immunities -#granted to it by virtue of its status as an Intergovernmental Organization or -#submit itself to any jurisdiction. +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(PHOSReconstruction SOURCES src/Clusterer.cxx diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/AltroDecoder.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/AltroDecoder.h index d6d203250bb28..8be2a6333513f 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/AltroDecoder.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/AltroDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFCoder.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFCoder.h index 5bb76dd7dcc31..774b4845bba70 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFCoder.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFHelper.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFHelper.h index 9a127b4f00b8f..438095206e48c 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFHelper.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CaloRawFitter.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CaloRawFitter.h index 477ceb921d72d..edbac3f043473 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CaloRawFitter.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CaloRawFitter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CaloRawFitterGS.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CaloRawFitterGS.h index 5138bb7c71678..8e7526494a9ff 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CaloRawFitterGS.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CaloRawFitterGS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/Clusterer.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/Clusterer.h index 4cd0e90f0ab69..de307bb329646 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/Clusterer.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/Clusterer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawBuffer.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawBuffer.h index 734632a1e3fee..9e06a1fd36887 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawBuffer.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawBuffer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawDecodingError.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawDecodingError.h index 11e53aa22faff..27eac69cc59ce 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawDecodingError.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawDecodingError.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawHeaderStream.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawHeaderStream.h index f96d478dc84fe..ecb057e66acbb 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawHeaderStream.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawHeaderStream.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawPayload.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawPayload.h index 8340d9dd66bcc..d95d092f85141 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawPayload.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawPayload.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawReaderError.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawReaderError.h index 1663145e510e7..7f8aa1e881359 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawReaderError.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawReaderError.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawReaderMemory.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawReaderMemory.h index 30f4852603639..5cf17db569e9a 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawReaderMemory.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/RawReaderMemory.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/src/AltroDecoder.cxx b/Detectors/PHOS/reconstruction/src/AltroDecoder.cxx index f0a5d860020c9..bb2c5b02e3f40 100644 --- a/Detectors/PHOS/reconstruction/src/AltroDecoder.cxx +++ b/Detectors/PHOS/reconstruction/src/AltroDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/src/CTFCoder.cxx b/Detectors/PHOS/reconstruction/src/CTFCoder.cxx index 921dfb1de8f83..2d89517ba9173 100644 --- a/Detectors/PHOS/reconstruction/src/CTFCoder.cxx +++ b/Detectors/PHOS/reconstruction/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/src/CTFHelper.cxx b/Detectors/PHOS/reconstruction/src/CTFHelper.cxx index d682ddea97349..36e1839ceeb52 100644 --- a/Detectors/PHOS/reconstruction/src/CTFHelper.cxx +++ b/Detectors/PHOS/reconstruction/src/CTFHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/src/CaloRawFitter.cxx b/Detectors/PHOS/reconstruction/src/CaloRawFitter.cxx index f9cf0c8f26b39..afcdd41906125 100644 --- a/Detectors/PHOS/reconstruction/src/CaloRawFitter.cxx +++ b/Detectors/PHOS/reconstruction/src/CaloRawFitter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/src/CaloRawFitterGS.cxx b/Detectors/PHOS/reconstruction/src/CaloRawFitterGS.cxx index 238c618f533a5..11b9a423c6f79 100644 --- a/Detectors/PHOS/reconstruction/src/CaloRawFitterGS.cxx +++ b/Detectors/PHOS/reconstruction/src/CaloRawFitterGS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/src/Clusterer.cxx b/Detectors/PHOS/reconstruction/src/Clusterer.cxx index cbb11217b5e31..34571ae2aa38d 100644 --- a/Detectors/PHOS/reconstruction/src/Clusterer.cxx +++ b/Detectors/PHOS/reconstruction/src/Clusterer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/src/PHOSReconstructionLinkDef.h b/Detectors/PHOS/reconstruction/src/PHOSReconstructionLinkDef.h index ec3fe39de20e2..25a42a3b43132 100644 --- a/Detectors/PHOS/reconstruction/src/PHOSReconstructionLinkDef.h +++ b/Detectors/PHOS/reconstruction/src/PHOSReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/src/RawBuffer.cxx b/Detectors/PHOS/reconstruction/src/RawBuffer.cxx index 8df5d66998ad1..2de79e1a90ab5 100644 --- a/Detectors/PHOS/reconstruction/src/RawBuffer.cxx +++ b/Detectors/PHOS/reconstruction/src/RawBuffer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/src/RawHeaderStream.cxx b/Detectors/PHOS/reconstruction/src/RawHeaderStream.cxx index 59714a5293d82..57daf7d626fa0 100644 --- a/Detectors/PHOS/reconstruction/src/RawHeaderStream.cxx +++ b/Detectors/PHOS/reconstruction/src/RawHeaderStream.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/src/RawPayload.cxx b/Detectors/PHOS/reconstruction/src/RawPayload.cxx index 5818b4e124054..bbd8d4479e69a 100644 --- a/Detectors/PHOS/reconstruction/src/RawPayload.cxx +++ b/Detectors/PHOS/reconstruction/src/RawPayload.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/reconstruction/src/RawReaderMemory.cxx b/Detectors/PHOS/reconstruction/src/RawReaderMemory.cxx index 99c48aff52d7c..0d0e55f352ee2 100644 --- a/Detectors/PHOS/reconstruction/src/RawReaderMemory.cxx +++ b/Detectors/PHOS/reconstruction/src/RawReaderMemory.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/simulation/CMakeLists.txt b/Detectors/PHOS/simulation/CMakeLists.txt index 4111b76119765..feef887df38a8 100644 --- a/Detectors/PHOS/simulation/CMakeLists.txt +++ b/Detectors/PHOS/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -#Copyright CERN and copyright holders of ALICE O2.This software is distributed -#under the terms of the GNU General Public License v3(GPL Version 3), copied -#verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -#See http: //alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # -#In applying this license CERN does not waive the privileges and immunities -#granted to it by virtue of its status as an Intergovernmental Organization or -#submit itself to any jurisdiction. +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(PHOSSimulation SOURCES src/Detector.cxx diff --git a/Detectors/PHOS/simulation/include/PHOSSimulation/Detector.h b/Detectors/PHOS/simulation/include/PHOSSimulation/Detector.h index 34d7dfc138a40..cba3a1a7e9c6a 100644 --- a/Detectors/PHOS/simulation/include/PHOSSimulation/Detector.h +++ b/Detectors/PHOS/simulation/include/PHOSSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/simulation/include/PHOSSimulation/Digitizer.h b/Detectors/PHOS/simulation/include/PHOSSimulation/Digitizer.h index 55bddfc6fc93c..62e14086109dc 100644 --- a/Detectors/PHOS/simulation/include/PHOSSimulation/Digitizer.h +++ b/Detectors/PHOS/simulation/include/PHOSSimulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/simulation/include/PHOSSimulation/GeometryParams.h b/Detectors/PHOS/simulation/include/PHOSSimulation/GeometryParams.h index a0d82f1fb5136..a0a1928c2ea18 100644 --- a/Detectors/PHOS/simulation/include/PHOSSimulation/GeometryParams.h +++ b/Detectors/PHOS/simulation/include/PHOSSimulation/GeometryParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/simulation/include/PHOSSimulation/RawWriter.h b/Detectors/PHOS/simulation/include/PHOSSimulation/RawWriter.h index 1f6470ff4c354..829f040830925 100644 --- a/Detectors/PHOS/simulation/include/PHOSSimulation/RawWriter.h +++ b/Detectors/PHOS/simulation/include/PHOSSimulation/RawWriter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/simulation/src/Detector.cxx b/Detectors/PHOS/simulation/src/Detector.cxx index 7f0d7679b1a3f..3cee6411e3217 100644 --- a/Detectors/PHOS/simulation/src/Detector.cxx +++ b/Detectors/PHOS/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/simulation/src/Digitizer.cxx b/Detectors/PHOS/simulation/src/Digitizer.cxx index 59ede259e6827..a401bddbb2668 100644 --- a/Detectors/PHOS/simulation/src/Digitizer.cxx +++ b/Detectors/PHOS/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/simulation/src/GeometryParams.cxx b/Detectors/PHOS/simulation/src/GeometryParams.cxx index 44677161dbef5..88eef57c35a9d 100644 --- a/Detectors/PHOS/simulation/src/GeometryParams.cxx +++ b/Detectors/PHOS/simulation/src/GeometryParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/simulation/src/PHOSSimulationLinkDef.h b/Detectors/PHOS/simulation/src/PHOSSimulationLinkDef.h index e6f39d31db820..b8e973aad849e 100644 --- a/Detectors/PHOS/simulation/src/PHOSSimulationLinkDef.h +++ b/Detectors/PHOS/simulation/src/PHOSSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/simulation/src/RawCreator.cxx b/Detectors/PHOS/simulation/src/RawCreator.cxx index d3b5c1951bec4..a63f300bcd3cc 100644 --- a/Detectors/PHOS/simulation/src/RawCreator.cxx +++ b/Detectors/PHOS/simulation/src/RawCreator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/simulation/src/RawWriter.cxx b/Detectors/PHOS/simulation/src/RawWriter.cxx index 54d0930b14ac3..09f67ccfb064a 100644 --- a/Detectors/PHOS/simulation/src/RawWriter.cxx +++ b/Detectors/PHOS/simulation/src/RawWriter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/testsimulation/CMakeLists.txt b/Detectors/PHOS/testsimulation/CMakeLists.txt index b69dbcb572725..bfeca6123b55d 100644 --- a/Detectors/PHOS/testsimulation/CMakeLists.txt +++ b/Detectors/PHOS/testsimulation/CMakeLists.txt @@ -1,12 +1,13 @@ -#Copyright CERN and copyright holders of ALICE O2.This software is distributed -#under the terms of the GNU General Public License v3(GPL Version 3), copied -#verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -#See http: //alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # -#In applying this license CERN does not waive the privileges and immunities -#granted to it by virtue of its status as an Intergovernmental Organization or -#submit itself to any jurisdiction. +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(PutPhosInTop.C PUBLIC_LINK_LIBRARIES O2::DetectorsPassive FairRoot::Base diff --git a/Detectors/PHOS/workflow/CMakeLists.txt b/Detectors/PHOS/workflow/CMakeLists.txt index c86ca710ceb35..32c8a76f42568 100644 --- a/Detectors/PHOS/workflow/CMakeLists.txt +++ b/Detectors/PHOS/workflow/CMakeLists.txt @@ -1,8 +1,9 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is -# distributed under the terms of the GNU General Public License v3 (GPL -# Version 3), copied verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/ for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities # granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/include/PHOSWorkflow/CellConverterSpec.h b/Detectors/PHOS/workflow/include/PHOSWorkflow/CellConverterSpec.h index e4fab9ebbbef9..f75dd42375151 100644 --- a/Detectors/PHOS/workflow/include/PHOSWorkflow/CellConverterSpec.h +++ b/Detectors/PHOS/workflow/include/PHOSWorkflow/CellConverterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/include/PHOSWorkflow/ClusterizerSpec.h b/Detectors/PHOS/workflow/include/PHOSWorkflow/ClusterizerSpec.h index c8d0ff9fceafb..0917242ad3d56 100644 --- a/Detectors/PHOS/workflow/include/PHOSWorkflow/ClusterizerSpec.h +++ b/Detectors/PHOS/workflow/include/PHOSWorkflow/ClusterizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/include/PHOSWorkflow/DigitsPrinterSpec.h b/Detectors/PHOS/workflow/include/PHOSWorkflow/DigitsPrinterSpec.h index e9cfe87347d60..7ea91c1dee595 100644 --- a/Detectors/PHOS/workflow/include/PHOSWorkflow/DigitsPrinterSpec.h +++ b/Detectors/PHOS/workflow/include/PHOSWorkflow/DigitsPrinterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/include/PHOSWorkflow/EntropyDecoderSpec.h b/Detectors/PHOS/workflow/include/PHOSWorkflow/EntropyDecoderSpec.h index 386a70bf596ce..775057806bde7 100644 --- a/Detectors/PHOS/workflow/include/PHOSWorkflow/EntropyDecoderSpec.h +++ b/Detectors/PHOS/workflow/include/PHOSWorkflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/include/PHOSWorkflow/EntropyEncoderSpec.h b/Detectors/PHOS/workflow/include/PHOSWorkflow/EntropyEncoderSpec.h index a61197a8a4ed6..fef1c8625e50c 100644 --- a/Detectors/PHOS/workflow/include/PHOSWorkflow/EntropyEncoderSpec.h +++ b/Detectors/PHOS/workflow/include/PHOSWorkflow/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/include/PHOSWorkflow/RawToCellConverterSpec.h b/Detectors/PHOS/workflow/include/PHOSWorkflow/RawToCellConverterSpec.h index 8cb72da4970ce..7ffdcbe195cd3 100644 --- a/Detectors/PHOS/workflow/include/PHOSWorkflow/RawToCellConverterSpec.h +++ b/Detectors/PHOS/workflow/include/PHOSWorkflow/RawToCellConverterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/include/PHOSWorkflow/RawWriterSpec.h b/Detectors/PHOS/workflow/include/PHOSWorkflow/RawWriterSpec.h index 2712177c38600..f5e403d274a5a 100644 --- a/Detectors/PHOS/workflow/include/PHOSWorkflow/RawWriterSpec.h +++ b/Detectors/PHOS/workflow/include/PHOSWorkflow/RawWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/include/PHOSWorkflow/ReaderSpec.h b/Detectors/PHOS/workflow/include/PHOSWorkflow/ReaderSpec.h index 58a127fbd9c48..9dacec2a249ef 100644 --- a/Detectors/PHOS/workflow/include/PHOSWorkflow/ReaderSpec.h +++ b/Detectors/PHOS/workflow/include/PHOSWorkflow/ReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/include/PHOSWorkflow/RecoWorkflow.h b/Detectors/PHOS/workflow/include/PHOSWorkflow/RecoWorkflow.h index 392376fe69b43..dbf49d9ab0efc 100644 --- a/Detectors/PHOS/workflow/include/PHOSWorkflow/RecoWorkflow.h +++ b/Detectors/PHOS/workflow/include/PHOSWorkflow/RecoWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/include/PHOSWorkflow/WriterSpec.h b/Detectors/PHOS/workflow/include/PHOSWorkflow/WriterSpec.h index 076496bbf676e..e86089af75859 100644 --- a/Detectors/PHOS/workflow/include/PHOSWorkflow/WriterSpec.h +++ b/Detectors/PHOS/workflow/include/PHOSWorkflow/WriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/src/CellConverterSpec.cxx b/Detectors/PHOS/workflow/src/CellConverterSpec.cxx index a2ab1f1d4fb11..a7a438f610cda 100644 --- a/Detectors/PHOS/workflow/src/CellConverterSpec.cxx +++ b/Detectors/PHOS/workflow/src/CellConverterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/src/ClusterizerSpec.cxx b/Detectors/PHOS/workflow/src/ClusterizerSpec.cxx index 2ac1c0d7a6ac8..6718f0c4a6901 100644 --- a/Detectors/PHOS/workflow/src/ClusterizerSpec.cxx +++ b/Detectors/PHOS/workflow/src/ClusterizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/src/DigitsPrinterSpec.cxx b/Detectors/PHOS/workflow/src/DigitsPrinterSpec.cxx index fd95b46e415b5..e74730e7b4c96 100644 --- a/Detectors/PHOS/workflow/src/DigitsPrinterSpec.cxx +++ b/Detectors/PHOS/workflow/src/DigitsPrinterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/src/EntropyDecoderSpec.cxx b/Detectors/PHOS/workflow/src/EntropyDecoderSpec.cxx index c61eae2a6ff02..78350f74c3b9e 100644 --- a/Detectors/PHOS/workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/PHOS/workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/src/EntropyEncoderSpec.cxx b/Detectors/PHOS/workflow/src/EntropyEncoderSpec.cxx index 799bc68c75f3c..4beede08b054c 100644 --- a/Detectors/PHOS/workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/PHOS/workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/src/RawToCellConverterSpec.cxx b/Detectors/PHOS/workflow/src/RawToCellConverterSpec.cxx index 8a644a64b1290..77dc8fa4d54b1 100644 --- a/Detectors/PHOS/workflow/src/RawToCellConverterSpec.cxx +++ b/Detectors/PHOS/workflow/src/RawToCellConverterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/src/RawWriterSpec.cxx b/Detectors/PHOS/workflow/src/RawWriterSpec.cxx index e26bdce955fed..248c2f0ed42de 100644 --- a/Detectors/PHOS/workflow/src/RawWriterSpec.cxx +++ b/Detectors/PHOS/workflow/src/RawWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/src/ReaderSpec.cxx b/Detectors/PHOS/workflow/src/ReaderSpec.cxx index b4b568ee62344..7607fa34b494b 100644 --- a/Detectors/PHOS/workflow/src/ReaderSpec.cxx +++ b/Detectors/PHOS/workflow/src/ReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/src/RecoWorkflow.cxx b/Detectors/PHOS/workflow/src/RecoWorkflow.cxx index 7da7ec7ada279..345078191b033 100644 --- a/Detectors/PHOS/workflow/src/RecoWorkflow.cxx +++ b/Detectors/PHOS/workflow/src/RecoWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/src/WriterSpec.cxx b/Detectors/PHOS/workflow/src/WriterSpec.cxx index c3cc63f56c4ad..a686cf535e2ac 100644 --- a/Detectors/PHOS/workflow/src/WriterSpec.cxx +++ b/Detectors/PHOS/workflow/src/WriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/src/entropy-encoder-workflow.cxx b/Detectors/PHOS/workflow/src/entropy-encoder-workflow.cxx index e59400287359a..c1a5dba036b12 100644 --- a/Detectors/PHOS/workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/PHOS/workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/PHOS/workflow/src/phos-reco-workflow.cxx b/Detectors/PHOS/workflow/src/phos-reco-workflow.cxx index a6fbffb75ec09..c9e1eda90977c 100644 --- a/Detectors/PHOS/workflow/src/phos-reco-workflow.cxx +++ b/Detectors/PHOS/workflow/src/phos-reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/CMakeLists.txt b/Detectors/Passive/CMakeLists.txt index c53f2c75ad0a2..95bb39118cb20 100644 --- a/Detectors/Passive/CMakeLists.txt +++ b/Detectors/Passive/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DetectorsPassive SOURCES src/Absorber.cxx diff --git a/Detectors/Passive/include/DetectorsPassive/Absorber.h b/Detectors/Passive/include/DetectorsPassive/Absorber.h index 5b90be40b6729..81d74fb8d843f 100644 --- a/Detectors/Passive/include/DetectorsPassive/Absorber.h +++ b/Detectors/Passive/include/DetectorsPassive/Absorber.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/include/DetectorsPassive/Cave.h b/Detectors/Passive/include/DetectorsPassive/Cave.h index d060e210952c6..760c9c5b535fd 100644 --- a/Detectors/Passive/include/DetectorsPassive/Cave.h +++ b/Detectors/Passive/include/DetectorsPassive/Cave.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/include/DetectorsPassive/Compensator.h b/Detectors/Passive/include/DetectorsPassive/Compensator.h index 1bf50664e81ba..75b86b3d29c6a 100644 --- a/Detectors/Passive/include/DetectorsPassive/Compensator.h +++ b/Detectors/Passive/include/DetectorsPassive/Compensator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/include/DetectorsPassive/Dipole.h b/Detectors/Passive/include/DetectorsPassive/Dipole.h index e4583c1611e37..8ebc87e47cbbb 100644 --- a/Detectors/Passive/include/DetectorsPassive/Dipole.h +++ b/Detectors/Passive/include/DetectorsPassive/Dipole.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/include/DetectorsPassive/FrameStructure.h b/Detectors/Passive/include/DetectorsPassive/FrameStructure.h index 60c129893acc1..451d15612cf72 100644 --- a/Detectors/Passive/include/DetectorsPassive/FrameStructure.h +++ b/Detectors/Passive/include/DetectorsPassive/FrameStructure.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/include/DetectorsPassive/Hall.h b/Detectors/Passive/include/DetectorsPassive/Hall.h index 04ab16c282158..2133859b27d22 100644 --- a/Detectors/Passive/include/DetectorsPassive/Hall.h +++ b/Detectors/Passive/include/DetectorsPassive/Hall.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/include/DetectorsPassive/HallSimParam.h b/Detectors/Passive/include/DetectorsPassive/HallSimParam.h index ffa15d9c673a3..66fa7d96e6e2b 100644 --- a/Detectors/Passive/include/DetectorsPassive/HallSimParam.h +++ b/Detectors/Passive/include/DetectorsPassive/HallSimParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/include/DetectorsPassive/Magnet.h b/Detectors/Passive/include/DetectorsPassive/Magnet.h index 4238198e58e8b..81c9e4cfb835c 100644 --- a/Detectors/Passive/include/DetectorsPassive/Magnet.h +++ b/Detectors/Passive/include/DetectorsPassive/Magnet.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/include/DetectorsPassive/PassiveBase.h b/Detectors/Passive/include/DetectorsPassive/PassiveBase.h index 5a3ebc75e0893..1baf72d085cab 100644 --- a/Detectors/Passive/include/DetectorsPassive/PassiveBase.h +++ b/Detectors/Passive/include/DetectorsPassive/PassiveBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/include/DetectorsPassive/PassiveContFact.h b/Detectors/Passive/include/DetectorsPassive/PassiveContFact.h index e44033d1ab96c..a68f2b8090dfe 100644 --- a/Detectors/Passive/include/DetectorsPassive/PassiveContFact.h +++ b/Detectors/Passive/include/DetectorsPassive/PassiveContFact.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/include/DetectorsPassive/Pipe.h b/Detectors/Passive/include/DetectorsPassive/Pipe.h index e05a0d80b0d00..1c03ed589a1b0 100644 --- a/Detectors/Passive/include/DetectorsPassive/Pipe.h +++ b/Detectors/Passive/include/DetectorsPassive/Pipe.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/include/DetectorsPassive/Shil.h b/Detectors/Passive/include/DetectorsPassive/Shil.h index 12cf24d85d1ba..38cd3b7ae755a 100644 --- a/Detectors/Passive/include/DetectorsPassive/Shil.h +++ b/Detectors/Passive/include/DetectorsPassive/Shil.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/Absorber.cxx b/Detectors/Passive/src/Absorber.cxx index 959fea59a8449..97b091f5965a6 100644 --- a/Detectors/Passive/src/Absorber.cxx +++ b/Detectors/Passive/src/Absorber.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/Cave.cxx b/Detectors/Passive/src/Cave.cxx index 80f5a2be02cc7..774657f01b31e 100644 --- a/Detectors/Passive/src/Cave.cxx +++ b/Detectors/Passive/src/Cave.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/Compensator.cxx b/Detectors/Passive/src/Compensator.cxx index deba512284a5d..68e344495aaab 100644 --- a/Detectors/Passive/src/Compensator.cxx +++ b/Detectors/Passive/src/Compensator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/Dipole.cxx b/Detectors/Passive/src/Dipole.cxx index 694cf1e1d8844..eb9ee9e640373 100644 --- a/Detectors/Passive/src/Dipole.cxx +++ b/Detectors/Passive/src/Dipole.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/FrameStructure.cxx b/Detectors/Passive/src/FrameStructure.cxx index c9290e061b889..ac9f273275769 100644 --- a/Detectors/Passive/src/FrameStructure.cxx +++ b/Detectors/Passive/src/FrameStructure.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/Hall.cxx b/Detectors/Passive/src/Hall.cxx index 316488a8c6a8a..52d6c2c324d56 100644 --- a/Detectors/Passive/src/Hall.cxx +++ b/Detectors/Passive/src/Hall.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/HallSimParam.cxx b/Detectors/Passive/src/HallSimParam.cxx index 5c1679984bc12..c24d8b7491937 100644 --- a/Detectors/Passive/src/HallSimParam.cxx +++ b/Detectors/Passive/src/HallSimParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/Magnet.cxx b/Detectors/Passive/src/Magnet.cxx index 13faacbcbb08b..e4cea9d4b00da 100644 --- a/Detectors/Passive/src/Magnet.cxx +++ b/Detectors/Passive/src/Magnet.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/PassiveBase.cxx b/Detectors/Passive/src/PassiveBase.cxx index 2952b335d98bd..65e74de98f08f 100644 --- a/Detectors/Passive/src/PassiveBase.cxx +++ b/Detectors/Passive/src/PassiveBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/PassiveContFact.cxx b/Detectors/Passive/src/PassiveContFact.cxx index 2542ad1467a35..1fce6d48536a0 100644 --- a/Detectors/Passive/src/PassiveContFact.cxx +++ b/Detectors/Passive/src/PassiveContFact.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/PassiveLinkDef.h b/Detectors/Passive/src/PassiveLinkDef.h index 9169834b8cb49..4ecb54ec2cb34 100644 --- a/Detectors/Passive/src/PassiveLinkDef.h +++ b/Detectors/Passive/src/PassiveLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/Pipe.cxx b/Detectors/Passive/src/Pipe.cxx index d7095b14f70f7..e813a9751582c 100644 --- a/Detectors/Passive/src/Pipe.cxx +++ b/Detectors/Passive/src/Pipe.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Passive/src/Shil.cxx b/Detectors/Passive/src/Shil.cxx index d8dc7b2401396..c81560b48862a 100644 --- a/Detectors/Passive/src/Shil.cxx +++ b/Detectors/Passive/src/Shil.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/CMakeLists.txt b/Detectors/Raw/CMakeLists.txt index 1ced5d24283cc..4e6b71cc1be3b 100644 --- a/Detectors/Raw/CMakeLists.txt +++ b/Detectors/Raw/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DetectorsRaw SOURCES src/RawFileReader.cxx diff --git a/Detectors/Raw/include/DetectorsRaw/HBFUtils.h b/Detectors/Raw/include/DetectorsRaw/HBFUtils.h index 4544d539bc280..013c84a80a1b5 100644 --- a/Detectors/Raw/include/DetectorsRaw/HBFUtils.h +++ b/Detectors/Raw/include/DetectorsRaw/HBFUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/include/DetectorsRaw/HBFUtilsInitializer.h b/Detectors/Raw/include/DetectorsRaw/HBFUtilsInitializer.h index 46ee322e3982f..70cb8ff9f3164 100644 --- a/Detectors/Raw/include/DetectorsRaw/HBFUtilsInitializer.h +++ b/Detectors/Raw/include/DetectorsRaw/HBFUtilsInitializer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/include/DetectorsRaw/RDHUtils.h b/Detectors/Raw/include/DetectorsRaw/RDHUtils.h index 6636d625c4737..34ef8ae22d622 100644 --- a/Detectors/Raw/include/DetectorsRaw/RDHUtils.h +++ b/Detectors/Raw/include/DetectorsRaw/RDHUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/include/DetectorsRaw/RawFileReader.h b/Detectors/Raw/include/DetectorsRaw/RawFileReader.h index 4386b89c8d906..1f6c5a463c154 100644 --- a/Detectors/Raw/include/DetectorsRaw/RawFileReader.h +++ b/Detectors/Raw/include/DetectorsRaw/RawFileReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/include/DetectorsRaw/RawFileWriter.h b/Detectors/Raw/include/DetectorsRaw/RawFileWriter.h index c6da1c20cc7ac..0e5f74b568019 100644 --- a/Detectors/Raw/include/DetectorsRaw/RawFileWriter.h +++ b/Detectors/Raw/include/DetectorsRaw/RawFileWriter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/include/DetectorsRaw/SimpleRawReader.h b/Detectors/Raw/include/DetectorsRaw/SimpleRawReader.h index 91904e44da2bd..ffa2a32be9df1 100644 --- a/Detectors/Raw/include/DetectorsRaw/SimpleRawReader.h +++ b/Detectors/Raw/include/DetectorsRaw/SimpleRawReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/include/DetectorsRaw/SimpleSTF.h b/Detectors/Raw/include/DetectorsRaw/SimpleSTF.h index be788f49c24ac..affb6689f348f 100644 --- a/Detectors/Raw/include/DetectorsRaw/SimpleSTF.h +++ b/Detectors/Raw/include/DetectorsRaw/SimpleSTF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/DetectorsRawLinkDef.h b/Detectors/Raw/src/DetectorsRawLinkDef.h index e7459d6e89f18..6bd49e431ae6d 100644 --- a/Detectors/Raw/src/DetectorsRawLinkDef.h +++ b/Detectors/Raw/src/DetectorsRawLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/HBFUtils.cxx b/Detectors/Raw/src/HBFUtils.cxx index 23a117001c120..848966b557d6e 100644 --- a/Detectors/Raw/src/HBFUtils.cxx +++ b/Detectors/Raw/src/HBFUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/HBFUtilsInitializer.cxx b/Detectors/Raw/src/HBFUtilsInitializer.cxx index a094378385ddd..4a8676558d3fd 100644 --- a/Detectors/Raw/src/HBFUtilsInitializer.cxx +++ b/Detectors/Raw/src/HBFUtilsInitializer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/RDHUtils.cxx b/Detectors/Raw/src/RDHUtils.cxx index c00f793c0b4f1..2eef9f3ea19e2 100644 --- a/Detectors/Raw/src/RDHUtils.cxx +++ b/Detectors/Raw/src/RDHUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/RawFileReader.cxx b/Detectors/Raw/src/RawFileReader.cxx index 510fac8eec7e0..bb4be40e0abbb 100644 --- a/Detectors/Raw/src/RawFileReader.cxx +++ b/Detectors/Raw/src/RawFileReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/RawFileReaderWorkflow.cxx b/Detectors/Raw/src/RawFileReaderWorkflow.cxx index 010547b48a142..f6dc24546cb3b 100644 --- a/Detectors/Raw/src/RawFileReaderWorkflow.cxx +++ b/Detectors/Raw/src/RawFileReaderWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/RawFileReaderWorkflow.h b/Detectors/Raw/src/RawFileReaderWorkflow.h index d4858f858495d..aefee0f3bf3b4 100644 --- a/Detectors/Raw/src/RawFileReaderWorkflow.h +++ b/Detectors/Raw/src/RawFileReaderWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/RawFileWriter.cxx b/Detectors/Raw/src/RawFileWriter.cxx index c8182cc740da2..528ff51c44ddc 100644 --- a/Detectors/Raw/src/RawFileWriter.cxx +++ b/Detectors/Raw/src/RawFileWriter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/SimpleRawReader.cxx b/Detectors/Raw/src/SimpleRawReader.cxx index 4bd2af95c6ff8..ed5f2d90d4ac3 100644 --- a/Detectors/Raw/src/SimpleRawReader.cxx +++ b/Detectors/Raw/src/SimpleRawReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/SimpleSTF.cxx b/Detectors/Raw/src/SimpleSTF.cxx index e13de4b5d5dd8..4511c3dba2d58 100644 --- a/Detectors/Raw/src/SimpleSTF.cxx +++ b/Detectors/Raw/src/SimpleSTF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/rawfile-reader-workflow.cxx b/Detectors/Raw/src/rawfile-reader-workflow.cxx index 762c21e805372..8e2312d062f49 100644 --- a/Detectors/Raw/src/rawfile-reader-workflow.cxx +++ b/Detectors/Raw/src/rawfile-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/rawfileCheck.cxx b/Detectors/Raw/src/rawfileCheck.cxx index 48f53f6557b92..7b4b42c9b1dae 100644 --- a/Detectors/Raw/src/rawfileCheck.cxx +++ b/Detectors/Raw/src/rawfileCheck.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/src/rawfileSplit.cxx b/Detectors/Raw/src/rawfileSplit.cxx index 498d3ec682e9d..4ba937247719a 100644 --- a/Detectors/Raw/src/rawfileSplit.cxx +++ b/Detectors/Raw/src/rawfileSplit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/test/testHBFUtils.cxx b/Detectors/Raw/test/testHBFUtils.cxx index cdccf4ab91a9e..07e42dc60b4e3 100644 --- a/Detectors/Raw/test/testHBFUtils.cxx +++ b/Detectors/Raw/test/testHBFUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Raw/test/testRawReaderWriter.cxx b/Detectors/Raw/test/testRawReaderWriter.cxx index 9c2ad6256e7a1..49890dc537a48 100644 --- a/Detectors/Raw/test/testRawReaderWriter.cxx +++ b/Detectors/Raw/test/testRawReaderWriter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/CMakeLists.txt b/Detectors/TOF/CMakeLists.txt index 681b335789966..fa27efaa02c6e 100644 --- a/Detectors/TOF/CMakeLists.txt +++ b/Detectors/TOF/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(calibration) diff --git a/Detectors/TOF/base/CMakeLists.txt b/Detectors/TOF/base/CMakeLists.txt index 0b40423872f9b..8df86bca1370c 100644 --- a/Detectors/TOF/base/CMakeLists.txt +++ b/Detectors/TOF/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TOFBase SOURCES src/Geo.cxx diff --git a/Detectors/TOF/base/include/TOFBase/Digit.h b/Detectors/TOF/base/include/TOFBase/Digit.h index fbaa37fe5714e..d23c138012e81 100644 --- a/Detectors/TOF/base/include/TOFBase/Digit.h +++ b/Detectors/TOF/base/include/TOFBase/Digit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/base/include/TOFBase/Geo.h b/Detectors/TOF/base/include/TOFBase/Geo.h index 27ed8f32f5ab9..eabf34aed1bd2 100644 --- a/Detectors/TOF/base/include/TOFBase/Geo.h +++ b/Detectors/TOF/base/include/TOFBase/Geo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/base/include/TOFBase/Strip.h b/Detectors/TOF/base/include/TOFBase/Strip.h index 7b38c757c9e53..994635b13dc5a 100644 --- a/Detectors/TOF/base/include/TOFBase/Strip.h +++ b/Detectors/TOF/base/include/TOFBase/Strip.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/base/include/TOFBase/WindowFiller.h b/Detectors/TOF/base/include/TOFBase/WindowFiller.h index 9bc3d8f163295..d712cff22caa4 100644 --- a/Detectors/TOF/base/include/TOFBase/WindowFiller.h +++ b/Detectors/TOF/base/include/TOFBase/WindowFiller.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/base/src/CableLength.cxx b/Detectors/TOF/base/src/CableLength.cxx index 9f59fff9ae48c..450a0cbe8495d 100644 --- a/Detectors/TOF/base/src/CableLength.cxx +++ b/Detectors/TOF/base/src/CableLength.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/base/src/Digit.cxx b/Detectors/TOF/base/src/Digit.cxx index e1de38006e59d..ed58623877e8d 100644 --- a/Detectors/TOF/base/src/Digit.cxx +++ b/Detectors/TOF/base/src/Digit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/base/src/Geo.cxx b/Detectors/TOF/base/src/Geo.cxx index e7f3f6e838f13..823da6217ab9c 100644 --- a/Detectors/TOF/base/src/Geo.cxx +++ b/Detectors/TOF/base/src/Geo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/base/src/Mapping.cxx b/Detectors/TOF/base/src/Mapping.cxx index b20eebd81e8b4..3c9dca3ff90eb 100644 --- a/Detectors/TOF/base/src/Mapping.cxx +++ b/Detectors/TOF/base/src/Mapping.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/base/src/Strip.cxx b/Detectors/TOF/base/src/Strip.cxx index 82eedd5c561ed..a008776c2690f 100644 --- a/Detectors/TOF/base/src/Strip.cxx +++ b/Detectors/TOF/base/src/Strip.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/base/src/TOFBaseLinkDef.h b/Detectors/TOF/base/src/TOFBaseLinkDef.h index f5cc651c66c47..57c0e232ad8b5 100644 --- a/Detectors/TOF/base/src/TOFBaseLinkDef.h +++ b/Detectors/TOF/base/src/TOFBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/base/src/WindowFiller.cxx b/Detectors/TOF/base/src/WindowFiller.cxx index a4dda48f99712..f7d1e9a5be77c 100644 --- a/Detectors/TOF/base/src/WindowFiller.cxx +++ b/Detectors/TOF/base/src/WindowFiller.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/base/test/testTOFIndex.cxx b/Detectors/TOF/base/test/testTOFIndex.cxx index beec1680ef462..9bf206509ead2 100644 --- a/Detectors/TOF/base/test/testTOFIndex.cxx +++ b/Detectors/TOF/base/test/testTOFIndex.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/CMakeLists.txt b/Detectors/TOF/calibration/CMakeLists.txt index 6fa0e5845a873..0f538d3f07020 100644 --- a/Detectors/TOF/calibration/CMakeLists.txt +++ b/Detectors/TOF/calibration/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TOFCalibration SOURCES src/CalibTOFapi.cxx diff --git a/Detectors/TOF/calibration/include/TOFCalibration/CalibTOF.h b/Detectors/TOF/calibration/include/TOFCalibration/CalibTOF.h index 20b3c9383501b..229b79d1ac442 100644 --- a/Detectors/TOF/calibration/include/TOFCalibration/CalibTOF.h +++ b/Detectors/TOF/calibration/include/TOFCalibration/CalibTOF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/include/TOFCalibration/CalibTOFapi.h b/Detectors/TOF/calibration/include/TOFCalibration/CalibTOFapi.h index 564d7590feb0a..c2d3e397ef1cb 100644 --- a/Detectors/TOF/calibration/include/TOFCalibration/CalibTOFapi.h +++ b/Detectors/TOF/calibration/include/TOFCalibration/CalibTOFapi.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/include/TOFCalibration/CollectCalibInfoTOF.h b/Detectors/TOF/calibration/include/TOFCalibration/CollectCalibInfoTOF.h index 702961afc0f21..a566bc509f8f7 100644 --- a/Detectors/TOF/calibration/include/TOFCalibration/CollectCalibInfoTOF.h +++ b/Detectors/TOF/calibration/include/TOFCalibration/CollectCalibInfoTOF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/include/TOFCalibration/LHCClockCalibrator.h b/Detectors/TOF/calibration/include/TOFCalibration/LHCClockCalibrator.h index 09ef16b5dc1b9..e1803ccd740ea 100644 --- a/Detectors/TOF/calibration/include/TOFCalibration/LHCClockCalibrator.h +++ b/Detectors/TOF/calibration/include/TOFCalibration/LHCClockCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/include/TOFCalibration/TOFCalibCollector.h b/Detectors/TOF/calibration/include/TOFCalibration/TOFCalibCollector.h index 7028fb0d0bf08..230e17d771192 100644 --- a/Detectors/TOF/calibration/include/TOFCalibration/TOFCalibCollector.h +++ b/Detectors/TOF/calibration/include/TOFCalibration/TOFCalibCollector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/include/TOFCalibration/TOFChannelCalibrator.h b/Detectors/TOF/calibration/include/TOFCalibration/TOFChannelCalibrator.h index e9e5df1849f9e..b5f5502a7bb63 100644 --- a/Detectors/TOF/calibration/include/TOFCalibration/TOFChannelCalibrator.h +++ b/Detectors/TOF/calibration/include/TOFCalibration/TOFChannelCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/include/TOFCalibration/TOFDCSProcessor.h b/Detectors/TOF/calibration/include/TOFCalibration/TOFDCSProcessor.h index 8c3aa8bb8bbb1..fc9c34fa41c88 100644 --- a/Detectors/TOF/calibration/include/TOFCalibration/TOFDCSProcessor.h +++ b/Detectors/TOF/calibration/include/TOFCalibration/TOFDCSProcessor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/include/TOFCalibration/TOFFEElightConfig.h b/Detectors/TOF/calibration/include/TOFCalibration/TOFFEElightConfig.h index 5c44902a981fd..4706c29570288 100644 --- a/Detectors/TOF/calibration/include/TOFCalibration/TOFFEElightConfig.h +++ b/Detectors/TOF/calibration/include/TOFCalibration/TOFFEElightConfig.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/include/TOFCalibration/TOFFEElightReader.h b/Detectors/TOF/calibration/include/TOFCalibration/TOFFEElightReader.h index 468716a0f75fc..3aee85a3b0faf 100644 --- a/Detectors/TOF/calibration/include/TOFCalibration/TOFFEElightReader.h +++ b/Detectors/TOF/calibration/include/TOFCalibration/TOFFEElightReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/macros/CMakeLists.txt b/Detectors/TOF/calibration/macros/CMakeLists.txt index 50b847dfb883b..473ad71bbe793 100644 --- a/Detectors/TOF/calibration/macros/CMakeLists.txt +++ b/Detectors/TOF/calibration/macros/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro( makeTOFCCDBEntryForDCS.C diff --git a/Detectors/TOF/calibration/macros/makeTOFCCDBEntryForDCS.C b/Detectors/TOF/calibration/macros/makeTOFCCDBEntryForDCS.C index 24cd6fa3180b4..99c06059561cc 100644 --- a/Detectors/TOF/calibration/macros/makeTOFCCDBEntryForDCS.C +++ b/Detectors/TOF/calibration/macros/makeTOFCCDBEntryForDCS.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/macros/readTOFDCSentries.C b/Detectors/TOF/calibration/macros/readTOFDCSentries.C index 3946a67cdbe82..6559e14b1e825 100644 --- a/Detectors/TOF/calibration/macros/readTOFDCSentries.C +++ b/Detectors/TOF/calibration/macros/readTOFDCSentries.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/src/CalibTOF.cxx b/Detectors/TOF/calibration/src/CalibTOF.cxx index 2a1c5890ab108..21e2dac859fd9 100644 --- a/Detectors/TOF/calibration/src/CalibTOF.cxx +++ b/Detectors/TOF/calibration/src/CalibTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/src/CalibTOFapi.cxx b/Detectors/TOF/calibration/src/CalibTOFapi.cxx index 2e994bc802675..719767c5d4b5f 100644 --- a/Detectors/TOF/calibration/src/CalibTOFapi.cxx +++ b/Detectors/TOF/calibration/src/CalibTOFapi.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/src/CollectCalibInfoTOF.cxx b/Detectors/TOF/calibration/src/CollectCalibInfoTOF.cxx index 3c96a22781f82..f7bfbf45147c6 100644 --- a/Detectors/TOF/calibration/src/CollectCalibInfoTOF.cxx +++ b/Detectors/TOF/calibration/src/CollectCalibInfoTOF.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/src/LHCClockCalibrator.cxx b/Detectors/TOF/calibration/src/LHCClockCalibrator.cxx index 5391071dd833b..e3636c8aefdfb 100644 --- a/Detectors/TOF/calibration/src/LHCClockCalibrator.cxx +++ b/Detectors/TOF/calibration/src/LHCClockCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/src/TOFCalibCollector.cxx b/Detectors/TOF/calibration/src/TOFCalibCollector.cxx index f8d0eec71ed5a..315bfab133db8 100644 --- a/Detectors/TOF/calibration/src/TOFCalibCollector.cxx +++ b/Detectors/TOF/calibration/src/TOFCalibCollector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/src/TOFCalibrationLinkDef.h b/Detectors/TOF/calibration/src/TOFCalibrationLinkDef.h index e42875626cc87..5af9e6ef5eaf6 100644 --- a/Detectors/TOF/calibration/src/TOFCalibrationLinkDef.h +++ b/Detectors/TOF/calibration/src/TOFCalibrationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/src/TOFChannelCalibrator.cxx b/Detectors/TOF/calibration/src/TOFChannelCalibrator.cxx index 52655f785959f..24d6cae02f0aa 100644 --- a/Detectors/TOF/calibration/src/TOFChannelCalibrator.cxx +++ b/Detectors/TOF/calibration/src/TOFChannelCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/src/TOFDCSProcessor.cxx b/Detectors/TOF/calibration/src/TOFDCSProcessor.cxx index 02913395affe8..66c2eebdd5423 100644 --- a/Detectors/TOF/calibration/src/TOFDCSProcessor.cxx +++ b/Detectors/TOF/calibration/src/TOFDCSProcessor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/src/TOFFEElightConfig.cxx b/Detectors/TOF/calibration/src/TOFFEElightConfig.cxx index 0a952c03b7925..13c2a92966c82 100644 --- a/Detectors/TOF/calibration/src/TOFFEElightConfig.cxx +++ b/Detectors/TOF/calibration/src/TOFFEElightConfig.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/src/TOFFEElightReader.cxx b/Detectors/TOF/calibration/src/TOFFEElightReader.cxx index 0031c467215b8..96f2829ef688e 100644 --- a/Detectors/TOF/calibration/src/TOFFEElightReader.cxx +++ b/Detectors/TOF/calibration/src/TOFFEElightReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/DataGeneratorSpec.h b/Detectors/TOF/calibration/testWorkflow/DataGeneratorSpec.h index 7244ad1643838..63610c82973aa 100644 --- a/Detectors/TOF/calibration/testWorkflow/DataGeneratorSpec.h +++ b/Detectors/TOF/calibration/testWorkflow/DataGeneratorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/LHCClockCalibratorSpec.h b/Detectors/TOF/calibration/testWorkflow/LHCClockCalibratorSpec.h index a4ef0ea22fe16..bdda7c029e92a 100644 --- a/Detectors/TOF/calibration/testWorkflow/LHCClockCalibratorSpec.h +++ b/Detectors/TOF/calibration/testWorkflow/LHCClockCalibratorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/TOFCalibCollectorSpec.h b/Detectors/TOF/calibration/testWorkflow/TOFCalibCollectorSpec.h index 2b99d14bbdbe3..22ec312e64137 100644 --- a/Detectors/TOF/calibration/testWorkflow/TOFCalibCollectorSpec.h +++ b/Detectors/TOF/calibration/testWorkflow/TOFCalibCollectorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/TOFCalibCollectorWriterSpec.h b/Detectors/TOF/calibration/testWorkflow/TOFCalibCollectorWriterSpec.h index fc126b0fc1670..fabb41408a0ee 100644 --- a/Detectors/TOF/calibration/testWorkflow/TOFCalibCollectorWriterSpec.h +++ b/Detectors/TOF/calibration/testWorkflow/TOFCalibCollectorWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/TOFChannelCalibratorSpec.h b/Detectors/TOF/calibration/testWorkflow/TOFChannelCalibratorSpec.h index 17d8b138c3421..2d583ab8217fc 100644 --- a/Detectors/TOF/calibration/testWorkflow/TOFChannelCalibratorSpec.h +++ b/Detectors/TOF/calibration/testWorkflow/TOFChannelCalibratorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/TOFDCSConfigProcessorSpec.h b/Detectors/TOF/calibration/testWorkflow/TOFDCSConfigProcessorSpec.h index 6dfeaa0e44436..13f0739ecc24e 100644 --- a/Detectors/TOF/calibration/testWorkflow/TOFDCSConfigProcessorSpec.h +++ b/Detectors/TOF/calibration/testWorkflow/TOFDCSConfigProcessorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/TOFDCSDataProcessorSpec.h b/Detectors/TOF/calibration/testWorkflow/TOFDCSDataProcessorSpec.h index d839ad14a2e1a..a5aa75d4a4607 100644 --- a/Detectors/TOF/calibration/testWorkflow/TOFDCSDataProcessorSpec.h +++ b/Detectors/TOF/calibration/testWorkflow/TOFDCSDataProcessorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/data-generator-workflow.cxx b/Detectors/TOF/calibration/testWorkflow/data-generator-workflow.cxx index 4ffdaf6c9f11e..ccafbb704ed9f 100644 --- a/Detectors/TOF/calibration/testWorkflow/data-generator-workflow.cxx +++ b/Detectors/TOF/calibration/testWorkflow/data-generator-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/lhc-clockphase-workflow.cxx b/Detectors/TOF/calibration/testWorkflow/lhc-clockphase-workflow.cxx index 46a8e12b3045f..4f3e44a7779e4 100644 --- a/Detectors/TOF/calibration/testWorkflow/lhc-clockphase-workflow.cxx +++ b/Detectors/TOF/calibration/testWorkflow/lhc-clockphase-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/tof-calib-workflow.cxx b/Detectors/TOF/calibration/testWorkflow/tof-calib-workflow.cxx index 010494138d178..99a4eee1f0641 100644 --- a/Detectors/TOF/calibration/testWorkflow/tof-calib-workflow.cxx +++ b/Detectors/TOF/calibration/testWorkflow/tof-calib-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/tof-channel-calib-workflow.cxx b/Detectors/TOF/calibration/testWorkflow/tof-channel-calib-workflow.cxx index da2beba5df8fa..9195f057f49fc 100644 --- a/Detectors/TOF/calibration/testWorkflow/tof-channel-calib-workflow.cxx +++ b/Detectors/TOF/calibration/testWorkflow/tof-channel-calib-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/tof-collect-calib-workflow.cxx b/Detectors/TOF/calibration/testWorkflow/tof-collect-calib-workflow.cxx index f31c9ce7984ae..fec7a06f6519c 100644 --- a/Detectors/TOF/calibration/testWorkflow/tof-collect-calib-workflow.cxx +++ b/Detectors/TOF/calibration/testWorkflow/tof-collect-calib-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/tof-dcs-config-processor-workflow.cxx b/Detectors/TOF/calibration/testWorkflow/tof-dcs-config-processor-workflow.cxx index 3995c5565f736..7200cda867d69 100644 --- a/Detectors/TOF/calibration/testWorkflow/tof-dcs-config-processor-workflow.cxx +++ b/Detectors/TOF/calibration/testWorkflow/tof-dcs-config-processor-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/tof-dcs-data-workflow.cxx b/Detectors/TOF/calibration/testWorkflow/tof-dcs-data-workflow.cxx index 29826c1b66505..f1ff87c70bfe1 100644 --- a/Detectors/TOF/calibration/testWorkflow/tof-dcs-data-workflow.cxx +++ b/Detectors/TOF/calibration/testWorkflow/tof-dcs-data-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/tof-dcs-sim-workflow.cxx b/Detectors/TOF/calibration/testWorkflow/tof-dcs-sim-workflow.cxx index 3445c06508b76..99cede5367218 100644 --- a/Detectors/TOF/calibration/testWorkflow/tof-dcs-sim-workflow.cxx +++ b/Detectors/TOF/calibration/testWorkflow/tof-dcs-sim-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/calibration/testWorkflow/tof-dummy-ccdb-for-calib.cxx b/Detectors/TOF/calibration/testWorkflow/tof-dummy-ccdb-for-calib.cxx index 1ad9eb8662b1e..9bdb59ace622e 100644 --- a/Detectors/TOF/calibration/testWorkflow/tof-dummy-ccdb-for-calib.cxx +++ b/Detectors/TOF/calibration/testWorkflow/tof-dummy-ccdb-for-calib.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/compression/CMakeLists.txt b/Detectors/TOF/compression/CMakeLists.txt index 58070e8bf5270..8ea77eb8028ba 100644 --- a/Detectors/TOF/compression/CMakeLists.txt +++ b/Detectors/TOF/compression/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TOFCompression SOURCES src/Compressor.cxx diff --git a/Detectors/TOF/compression/include/TOFCompression/Compressor.h b/Detectors/TOF/compression/include/TOFCompression/Compressor.h index 79cf7758b0e09..9b39b765c223f 100644 --- a/Detectors/TOF/compression/include/TOFCompression/Compressor.h +++ b/Detectors/TOF/compression/include/TOFCompression/Compressor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/compression/include/TOFCompression/CompressorTask.h b/Detectors/TOF/compression/include/TOFCompression/CompressorTask.h index 1af67b9155fcd..e18cde9d3dc4e 100644 --- a/Detectors/TOF/compression/include/TOFCompression/CompressorTask.h +++ b/Detectors/TOF/compression/include/TOFCompression/CompressorTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/compression/src/Compressor.cxx b/Detectors/TOF/compression/src/Compressor.cxx index 61f3d202dbe82..17a9cdffa6a4b 100644 --- a/Detectors/TOF/compression/src/Compressor.cxx +++ b/Detectors/TOF/compression/src/Compressor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/compression/src/CompressorTask.cxx b/Detectors/TOF/compression/src/CompressorTask.cxx index 88f4ece239a62..a87b7f18be325 100644 --- a/Detectors/TOF/compression/src/CompressorTask.cxx +++ b/Detectors/TOF/compression/src/CompressorTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/compression/src/tof-compressed-analysis.cxx b/Detectors/TOF/compression/src/tof-compressed-analysis.cxx index 905dbe1f93e9b..4d76626ba8a43 100644 --- a/Detectors/TOF/compression/src/tof-compressed-analysis.cxx +++ b/Detectors/TOF/compression/src/tof-compressed-analysis.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/compression/src/tof-compressed-inspector.cxx b/Detectors/TOF/compression/src/tof-compressed-inspector.cxx index e32d078c8836e..9f1d918932fd8 100644 --- a/Detectors/TOF/compression/src/tof-compressed-inspector.cxx +++ b/Detectors/TOF/compression/src/tof-compressed-inspector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/compression/src/tof-compressor.cxx b/Detectors/TOF/compression/src/tof-compressor.cxx index 318daf9871a9c..0c466c63bbe74 100644 --- a/Detectors/TOF/compression/src/tof-compressor.cxx +++ b/Detectors/TOF/compression/src/tof-compressor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/prototyping/CMakeLists.txt b/Detectors/TOF/prototyping/CMakeLists.txt index 7ed9c7157a7d9..eff28025f5f8c 100644 --- a/Detectors/TOF/prototyping/CMakeLists.txt +++ b/Detectors/TOF/prototyping/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(checkRotation.C PUBLIC_LINK_LIBRARIES O2::TOFBase diff --git a/Detectors/TOF/prototyping/drawTOFgeometry.C b/Detectors/TOF/prototyping/drawTOFgeometry.C index 97ea964efe595..ca13d8b72470f 100644 --- a/Detectors/TOF/prototyping/drawTOFgeometry.C +++ b/Detectors/TOF/prototyping/drawTOFgeometry.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/CMakeLists.txt b/Detectors/TOF/reconstruction/CMakeLists.txt index e9314d979544c..3b1cf2577c47b 100644 --- a/Detectors/TOF/reconstruction/CMakeLists.txt +++ b/Detectors/TOF/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TOFReconstruction SOURCES src/DataReader.cxx src/Clusterer.cxx diff --git a/Detectors/TOF/reconstruction/include/TOFReconstruction/CTFCoder.h b/Detectors/TOF/reconstruction/include/TOFReconstruction/CTFCoder.h index 0b7a9992732b5..c93f2f679c6e0 100644 --- a/Detectors/TOF/reconstruction/include/TOFReconstruction/CTFCoder.h +++ b/Detectors/TOF/reconstruction/include/TOFReconstruction/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/include/TOFReconstruction/Clusterer.h b/Detectors/TOF/reconstruction/include/TOFReconstruction/Clusterer.h index ea06e85eb6bfb..de67538617429 100644 --- a/Detectors/TOF/reconstruction/include/TOFReconstruction/Clusterer.h +++ b/Detectors/TOF/reconstruction/include/TOFReconstruction/Clusterer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/include/TOFReconstruction/ClustererTask.h b/Detectors/TOF/reconstruction/include/TOFReconstruction/ClustererTask.h index 45b0caffa4a24..b44388e98aebd 100644 --- a/Detectors/TOF/reconstruction/include/TOFReconstruction/ClustererTask.h +++ b/Detectors/TOF/reconstruction/include/TOFReconstruction/ClustererTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/include/TOFReconstruction/CosmicProcessor.h b/Detectors/TOF/reconstruction/include/TOFReconstruction/CosmicProcessor.h index 9536ba719cf22..7342447c5ede7 100644 --- a/Detectors/TOF/reconstruction/include/TOFReconstruction/CosmicProcessor.h +++ b/Detectors/TOF/reconstruction/include/TOFReconstruction/CosmicProcessor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/include/TOFReconstruction/DataReader.h b/Detectors/TOF/reconstruction/include/TOFReconstruction/DataReader.h index 48f6bde962b4c..6b8de627544d8 100644 --- a/Detectors/TOF/reconstruction/include/TOFReconstruction/DataReader.h +++ b/Detectors/TOF/reconstruction/include/TOFReconstruction/DataReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/include/TOFReconstruction/Decoder.h b/Detectors/TOF/reconstruction/include/TOFReconstruction/Decoder.h index 735273db631f4..67215d19b1dc6 100644 --- a/Detectors/TOF/reconstruction/include/TOFReconstruction/Decoder.h +++ b/Detectors/TOF/reconstruction/include/TOFReconstruction/Decoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/include/TOFReconstruction/DecoderBase.h b/Detectors/TOF/reconstruction/include/TOFReconstruction/DecoderBase.h index a4346afb59298..348b864ab1f70 100644 --- a/Detectors/TOF/reconstruction/include/TOFReconstruction/DecoderBase.h +++ b/Detectors/TOF/reconstruction/include/TOFReconstruction/DecoderBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/include/TOFReconstruction/Encoder.h b/Detectors/TOF/reconstruction/include/TOFReconstruction/Encoder.h index 98de71d3adadb..8f33a6a3f90a6 100644 --- a/Detectors/TOF/reconstruction/include/TOFReconstruction/Encoder.h +++ b/Detectors/TOF/reconstruction/include/TOFReconstruction/Encoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/src/CTFCoder.cxx b/Detectors/TOF/reconstruction/src/CTFCoder.cxx index 6f3f03736e999..c883f0dbe5b55 100644 --- a/Detectors/TOF/reconstruction/src/CTFCoder.cxx +++ b/Detectors/TOF/reconstruction/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/src/Clusterer.cxx b/Detectors/TOF/reconstruction/src/Clusterer.cxx index 3081b2fc5ea0a..19e0884cce425 100644 --- a/Detectors/TOF/reconstruction/src/Clusterer.cxx +++ b/Detectors/TOF/reconstruction/src/Clusterer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/src/ClustererTask.cxx b/Detectors/TOF/reconstruction/src/ClustererTask.cxx index 2410a47b349d1..c78e3e3dd0b4c 100644 --- a/Detectors/TOF/reconstruction/src/ClustererTask.cxx +++ b/Detectors/TOF/reconstruction/src/ClustererTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/src/CosmicProcessor.cxx b/Detectors/TOF/reconstruction/src/CosmicProcessor.cxx index d82e95a758bf9..108727b6f02f2 100644 --- a/Detectors/TOF/reconstruction/src/CosmicProcessor.cxx +++ b/Detectors/TOF/reconstruction/src/CosmicProcessor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/src/DataReader.cxx b/Detectors/TOF/reconstruction/src/DataReader.cxx index e8f55bda34e6a..cdb9b339ae5c9 100644 --- a/Detectors/TOF/reconstruction/src/DataReader.cxx +++ b/Detectors/TOF/reconstruction/src/DataReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/src/Decoder.cxx b/Detectors/TOF/reconstruction/src/Decoder.cxx index 46cb81b1ab31f..153e9d6c554c5 100644 --- a/Detectors/TOF/reconstruction/src/Decoder.cxx +++ b/Detectors/TOF/reconstruction/src/Decoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/src/DecoderBase.cxx b/Detectors/TOF/reconstruction/src/DecoderBase.cxx index 442b86e5ff3aa..00dcbf131139f 100644 --- a/Detectors/TOF/reconstruction/src/DecoderBase.cxx +++ b/Detectors/TOF/reconstruction/src/DecoderBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/src/Encoder.cxx b/Detectors/TOF/reconstruction/src/Encoder.cxx index 92bd34e08051b..c40a73d4accd0 100644 --- a/Detectors/TOF/reconstruction/src/Encoder.cxx +++ b/Detectors/TOF/reconstruction/src/Encoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/reconstruction/src/TOFReconstructionLinkDef.h b/Detectors/TOF/reconstruction/src/TOFReconstructionLinkDef.h index 37d2cb9495708..d0a7b4b527c1c 100644 --- a/Detectors/TOF/reconstruction/src/TOFReconstructionLinkDef.h +++ b/Detectors/TOF/reconstruction/src/TOFReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/simulation/CMakeLists.txt b/Detectors/TOF/simulation/CMakeLists.txt index 0b02ad8df9897..6d18790cee362 100644 --- a/Detectors/TOF/simulation/CMakeLists.txt +++ b/Detectors/TOF/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TOFSimulation SOURCES src/Detector.cxx src/Digitizer.cxx src/DigitizerTask.cxx src/TOFSimParams.cxx diff --git a/Detectors/TOF/simulation/include/TOFSimulation/Detector.h b/Detectors/TOF/simulation/include/TOFSimulation/Detector.h index 04e9c9dd09e12..86f86acc61846 100644 --- a/Detectors/TOF/simulation/include/TOFSimulation/Detector.h +++ b/Detectors/TOF/simulation/include/TOFSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/simulation/include/TOFSimulation/Digitizer.h b/Detectors/TOF/simulation/include/TOFSimulation/Digitizer.h index 453475bd775ee..59ab55b7bbf47 100644 --- a/Detectors/TOF/simulation/include/TOFSimulation/Digitizer.h +++ b/Detectors/TOF/simulation/include/TOFSimulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/simulation/include/TOFSimulation/DigitizerTask.h b/Detectors/TOF/simulation/include/TOFSimulation/DigitizerTask.h index e229b964208bf..0e5b40e2905e6 100644 --- a/Detectors/TOF/simulation/include/TOFSimulation/DigitizerTask.h +++ b/Detectors/TOF/simulation/include/TOFSimulation/DigitizerTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/simulation/include/TOFSimulation/MCLabel.h b/Detectors/TOF/simulation/include/TOFSimulation/MCLabel.h index ca78700e74c49..99317b02c1a47 100644 --- a/Detectors/TOF/simulation/include/TOFSimulation/MCLabel.h +++ b/Detectors/TOF/simulation/include/TOFSimulation/MCLabel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/simulation/include/TOFSimulation/TOFSimParams.h b/Detectors/TOF/simulation/include/TOFSimulation/TOFSimParams.h index 9103b3a341f32..de67cabfce474 100644 --- a/Detectors/TOF/simulation/include/TOFSimulation/TOFSimParams.h +++ b/Detectors/TOF/simulation/include/TOFSimulation/TOFSimParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/simulation/src/Detector.cxx b/Detectors/TOF/simulation/src/Detector.cxx index 5001fda818ef6..5300b73461b22 100644 --- a/Detectors/TOF/simulation/src/Detector.cxx +++ b/Detectors/TOF/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/simulation/src/Digitizer.cxx b/Detectors/TOF/simulation/src/Digitizer.cxx index a6d9ed89fbf26..30f39b31b287c 100644 --- a/Detectors/TOF/simulation/src/Digitizer.cxx +++ b/Detectors/TOF/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/simulation/src/DigitizerTask.cxx b/Detectors/TOF/simulation/src/DigitizerTask.cxx index 80470b4e6a548..1c53d2257b97b 100644 --- a/Detectors/TOF/simulation/src/DigitizerTask.cxx +++ b/Detectors/TOF/simulation/src/DigitizerTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/simulation/src/TOFSimParams.cxx b/Detectors/TOF/simulation/src/TOFSimParams.cxx index b2fd20ceb4e97..ab6cfa671611d 100644 --- a/Detectors/TOF/simulation/src/TOFSimParams.cxx +++ b/Detectors/TOF/simulation/src/TOFSimParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/simulation/src/TOFSimulationLinkDef.h b/Detectors/TOF/simulation/src/TOFSimulationLinkDef.h index 9e656b7eb03ff..aa6dc59f59671 100644 --- a/Detectors/TOF/simulation/src/TOFSimulationLinkDef.h +++ b/Detectors/TOF/simulation/src/TOFSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/simulation/src/digi2raw.cxx b/Detectors/TOF/simulation/src/digi2raw.cxx index 1d4843b995750..385fd5f110129 100644 --- a/Detectors/TOF/simulation/src/digi2raw.cxx +++ b/Detectors/TOF/simulation/src/digi2raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/CMakeLists.txt b/Detectors/TOF/workflow/CMakeLists.txt index 7f00e06ceaf13..ee77b7cbb2e66 100644 --- a/Detectors/TOF/workflow/CMakeLists.txt +++ b/Detectors/TOF/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TOFWorkflowUtils SOURCES src/TOFClusterizerSpec.cxx diff --git a/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedAnalysis.h b/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedAnalysis.h index 32d5a28f63ff9..7315e7977d35c 100644 --- a/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedAnalysis.h +++ b/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedAnalysis.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedAnalysisTask.h b/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedAnalysisTask.h index 367ba19b2aa43..1332ee2effb85 100644 --- a/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedAnalysisTask.h +++ b/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedAnalysisTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedDecodingTask.h b/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedDecodingTask.h index e3551d6a6429d..562df639e132e 100644 --- a/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedDecodingTask.h +++ b/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedDecodingTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedInspectorTask.h b/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedInspectorTask.h index 535bdd61f2d47..993487764033d 100644 --- a/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedInspectorTask.h +++ b/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedInspectorTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/include/TOFWorkflowUtils/EntropyDecoderSpec.h b/Detectors/TOF/workflow/include/TOFWorkflowUtils/EntropyDecoderSpec.h index e699549ab2147..b365dc0589936 100644 --- a/Detectors/TOF/workflow/include/TOFWorkflowUtils/EntropyDecoderSpec.h +++ b/Detectors/TOF/workflow/include/TOFWorkflowUtils/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/include/TOFWorkflowUtils/EntropyEncoderSpec.h b/Detectors/TOF/workflow/include/TOFWorkflowUtils/EntropyEncoderSpec.h index 2a535abde1eb5..4c915052a2489 100644 --- a/Detectors/TOF/workflow/include/TOFWorkflowUtils/EntropyEncoderSpec.h +++ b/Detectors/TOF/workflow/include/TOFWorkflowUtils/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/include/TOFWorkflowUtils/TOFClusterizerSpec.h b/Detectors/TOF/workflow/include/TOFWorkflowUtils/TOFClusterizerSpec.h index fb646d643fb3b..edbb927bd2808 100644 --- a/Detectors/TOF/workflow/include/TOFWorkflowUtils/TOFClusterizerSpec.h +++ b/Detectors/TOF/workflow/include/TOFWorkflowUtils/TOFClusterizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/src/CompressedAnalysisTask.cxx b/Detectors/TOF/workflow/src/CompressedAnalysisTask.cxx index efd9efc9198ef..1d98d16427dd5 100644 --- a/Detectors/TOF/workflow/src/CompressedAnalysisTask.cxx +++ b/Detectors/TOF/workflow/src/CompressedAnalysisTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/src/CompressedDecodingTask.cxx b/Detectors/TOF/workflow/src/CompressedDecodingTask.cxx index 6d81a11cdf9d0..7b6649ff5112b 100644 --- a/Detectors/TOF/workflow/src/CompressedDecodingTask.cxx +++ b/Detectors/TOF/workflow/src/CompressedDecodingTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/src/CompressedInspectorTask.cxx b/Detectors/TOF/workflow/src/CompressedInspectorTask.cxx index bebb1a8908641..3a2c53b4722aa 100644 --- a/Detectors/TOF/workflow/src/CompressedInspectorTask.cxx +++ b/Detectors/TOF/workflow/src/CompressedInspectorTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/src/EntropyDecoderSpec.cxx b/Detectors/TOF/workflow/src/EntropyDecoderSpec.cxx index 8542029b9c1a1..86b35f09d3473 100644 --- a/Detectors/TOF/workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/TOF/workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/src/EntropyEncoderSpec.cxx b/Detectors/TOF/workflow/src/EntropyEncoderSpec.cxx index 4b28755cbbd6e..6ba5b7da392ad 100644 --- a/Detectors/TOF/workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/TOF/workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/src/TOFClusterizerSpec.cxx b/Detectors/TOF/workflow/src/TOFClusterizerSpec.cxx index 646a91e5fca8f..b0e30f28e9788 100644 --- a/Detectors/TOF/workflow/src/TOFClusterizerSpec.cxx +++ b/Detectors/TOF/workflow/src/TOFClusterizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/src/cluscal-reader.cxx b/Detectors/TOF/workflow/src/cluscal-reader.cxx index 37de223a9d8ea..f6ce01759c3b3 100644 --- a/Detectors/TOF/workflow/src/cluscal-reader.cxx +++ b/Detectors/TOF/workflow/src/cluscal-reader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/src/cluster-calib.cxx b/Detectors/TOF/workflow/src/cluster-calib.cxx index 69df5a1711ff7..a53554c06c119 100644 --- a/Detectors/TOF/workflow/src/cluster-calib.cxx +++ b/Detectors/TOF/workflow/src/cluster-calib.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/src/cluster-writer-commissioning.cxx b/Detectors/TOF/workflow/src/cluster-writer-commissioning.cxx index cdb47ee3f712c..6a2c4f6210787 100644 --- a/Detectors/TOF/workflow/src/cluster-writer-commissioning.cxx +++ b/Detectors/TOF/workflow/src/cluster-writer-commissioning.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/src/digit-writer-commissioning.cxx b/Detectors/TOF/workflow/src/digit-writer-commissioning.cxx index c18b0d302e53d..5e70f51dcc22b 100644 --- a/Detectors/TOF/workflow/src/digit-writer-commissioning.cxx +++ b/Detectors/TOF/workflow/src/digit-writer-commissioning.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/src/entropy-encoder-workflow.cxx b/Detectors/TOF/workflow/src/entropy-encoder-workflow.cxx index aaa303de91e00..d679fc665a82a 100644 --- a/Detectors/TOF/workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/TOF/workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflow/src/file-proxy.cxx b/Detectors/TOF/workflow/src/file-proxy.cxx index a54bd2677257f..ada51fc281d09 100644 --- a/Detectors/TOF/workflow/src/file-proxy.cxx +++ b/Detectors/TOF/workflow/src/file-proxy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/CMakeLists.txt b/Detectors/TOF/workflowIO/CMakeLists.txt index 828edaa5ba4ab..39cd64fcfe3fa 100644 --- a/Detectors/TOF/workflowIO/CMakeLists.txt +++ b/Detectors/TOF/workflowIO/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TOFWorkflowIO SOURCES src/DigitReaderSpec.cxx diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/CalibClusReaderSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/CalibClusReaderSpec.h index 3df135e0a1747..339a27cb1331a 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/CalibClusReaderSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/CalibClusReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/CalibInfoReaderSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/CalibInfoReaderSpec.h index 3e72aa4cab713..c8331beb7e424 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/CalibInfoReaderSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/CalibInfoReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/ClusterReaderSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/ClusterReaderSpec.h index 7d9728c00a92b..b75bee035b8c5 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/ClusterReaderSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/ClusterReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/DigitReaderSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/DigitReaderSpec.h index f61ad3c60eead..9f97f25019e1f 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/DigitReaderSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/DigitReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFCalClusInfoWriterSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFCalClusInfoWriterSpec.h index 1ab220bd5dd52..2836ff5207e9e 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFCalClusInfoWriterSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFCalClusInfoWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFCalibWriterSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFCalibWriterSpec.h index 3bc4ef1be1b4a..756cfb71c90ed 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFCalibWriterSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFCalibWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFClusterWriterSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFClusterWriterSpec.h index 12d8525da6d9a..13b23c136013f 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFClusterWriterSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFClusterWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFClusterWriterSplitterSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFClusterWriterSplitterSpec.h index eecb8c842fc70..be1b9db82c9ec 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFClusterWriterSplitterSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFClusterWriterSplitterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFDigitWriterSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFDigitWriterSpec.h index d45d2e4c95509..d9fcdf399ab68 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFDigitWriterSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFDigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFDigitWriterSplitterSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFDigitWriterSplitterSpec.h index 9be1ed64361e7..c59aaa2c60aea 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFDigitWriterSplitterSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFDigitWriterSplitterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFMatchedReaderSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFMatchedReaderSpec.h index 30d4ed601bd97..e159a0fe25234 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFMatchedReaderSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFMatchedReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFMatchedWriterSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFMatchedWriterSpec.h index 9ca0a38a172e1..7f2347d2616a7 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFMatchedWriterSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFMatchedWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFRawWriterSpec.h b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFRawWriterSpec.h index d58c3a49db6fc..e558284435334 100644 --- a/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFRawWriterSpec.h +++ b/Detectors/TOF/workflowIO/include/TOFWorkflowIO/TOFRawWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/src/CalibClusReaderSpec.cxx b/Detectors/TOF/workflowIO/src/CalibClusReaderSpec.cxx index a207b5f036b67..4d9b8a1324d06 100644 --- a/Detectors/TOF/workflowIO/src/CalibClusReaderSpec.cxx +++ b/Detectors/TOF/workflowIO/src/CalibClusReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/src/CalibInfoReaderSpec.cxx b/Detectors/TOF/workflowIO/src/CalibInfoReaderSpec.cxx index 7ab6862b5dc7c..d79bf23c3f629 100644 --- a/Detectors/TOF/workflowIO/src/CalibInfoReaderSpec.cxx +++ b/Detectors/TOF/workflowIO/src/CalibInfoReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/src/ClusterReaderSpec.cxx b/Detectors/TOF/workflowIO/src/ClusterReaderSpec.cxx index c88c28ec37845..3fd59bc940109 100644 --- a/Detectors/TOF/workflowIO/src/ClusterReaderSpec.cxx +++ b/Detectors/TOF/workflowIO/src/ClusterReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/src/DigitReaderSpec.cxx b/Detectors/TOF/workflowIO/src/DigitReaderSpec.cxx index a35e579012c33..fae339c797495 100644 --- a/Detectors/TOF/workflowIO/src/DigitReaderSpec.cxx +++ b/Detectors/TOF/workflowIO/src/DigitReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/src/TOFCalClusInfoWriterSpec.cxx b/Detectors/TOF/workflowIO/src/TOFCalClusInfoWriterSpec.cxx index c8342552546f1..08b88d1354e25 100644 --- a/Detectors/TOF/workflowIO/src/TOFCalClusInfoWriterSpec.cxx +++ b/Detectors/TOF/workflowIO/src/TOFCalClusInfoWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/src/TOFCalibWriterSpec.cxx b/Detectors/TOF/workflowIO/src/TOFCalibWriterSpec.cxx index 85cd27b4003e7..4084278a4dc89 100644 --- a/Detectors/TOF/workflowIO/src/TOFCalibWriterSpec.cxx +++ b/Detectors/TOF/workflowIO/src/TOFCalibWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/src/TOFClusterWriterSpec.cxx b/Detectors/TOF/workflowIO/src/TOFClusterWriterSpec.cxx index f4583efd3a6cc..ec0ae777dc5da 100644 --- a/Detectors/TOF/workflowIO/src/TOFClusterWriterSpec.cxx +++ b/Detectors/TOF/workflowIO/src/TOFClusterWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/src/TOFDigitWriterSpec.cxx b/Detectors/TOF/workflowIO/src/TOFDigitWriterSpec.cxx index e13a6abb104e1..a11f7535e3225 100644 --- a/Detectors/TOF/workflowIO/src/TOFDigitWriterSpec.cxx +++ b/Detectors/TOF/workflowIO/src/TOFDigitWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/src/TOFMatchedReaderSpec.cxx b/Detectors/TOF/workflowIO/src/TOFMatchedReaderSpec.cxx index c4bcf3b0ff9d1..06b76f470eb87 100644 --- a/Detectors/TOF/workflowIO/src/TOFMatchedReaderSpec.cxx +++ b/Detectors/TOF/workflowIO/src/TOFMatchedReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/src/TOFMatchedWriterSpec.cxx b/Detectors/TOF/workflowIO/src/TOFMatchedWriterSpec.cxx index 74699eb3b6257..a2dc22849588b 100644 --- a/Detectors/TOF/workflowIO/src/TOFMatchedWriterSpec.cxx +++ b/Detectors/TOF/workflowIO/src/TOFMatchedWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TOF/workflowIO/src/TOFRawWriterSpec.cxx b/Detectors/TOF/workflowIO/src/TOFRawWriterSpec.cxx index 77a6c90df81f6..d3ed702cd74be 100644 --- a/Detectors/TOF/workflowIO/src/TOFRawWriterSpec.cxx +++ b/Detectors/TOF/workflowIO/src/TOFRawWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/CMakeLists.txt b/Detectors/TPC/CMakeLists.txt index a07460ecae1c0..bdbca321a978b 100644 --- a/Detectors/TPC/CMakeLists.txt +++ b/Detectors/TPC/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(reconstruction) diff --git a/Detectors/TPC/base/CMakeLists.txt b/Detectors/TPC/base/CMakeLists.txt index 14a22d5517194..281c7fb0cd88c 100644 --- a/Detectors/TPC/base/CMakeLists.txt +++ b/Detectors/TPC/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TPCBase SOURCES src/CalArray.cxx diff --git a/Detectors/TPC/base/include/TPCBase/CDBInterface.h b/Detectors/TPC/base/include/TPCBase/CDBInterface.h index 57eeb90c2cb4e..e032485a45176 100644 --- a/Detectors/TPC/base/include/TPCBase/CDBInterface.h +++ b/Detectors/TPC/base/include/TPCBase/CDBInterface.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/CRU.h b/Detectors/TPC/base/include/TPCBase/CRU.h index 55e6224512a68..d9e6f2b7f0368 100644 --- a/Detectors/TPC/base/include/TPCBase/CRU.h +++ b/Detectors/TPC/base/include/TPCBase/CRU.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/CalArray.h b/Detectors/TPC/base/include/TPCBase/CalArray.h index be6449dab8299..e68559edc4007 100644 --- a/Detectors/TPC/base/include/TPCBase/CalArray.h +++ b/Detectors/TPC/base/include/TPCBase/CalArray.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/CalDet.h b/Detectors/TPC/base/include/TPCBase/CalDet.h index e61bb4548024d..96229abe60a45 100644 --- a/Detectors/TPC/base/include/TPCBase/CalDet.h +++ b/Detectors/TPC/base/include/TPCBase/CalDet.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/ContainerFactory.h b/Detectors/TPC/base/include/TPCBase/ContainerFactory.h index 11f98ac18a595..fc03683117af2 100644 --- a/Detectors/TPC/base/include/TPCBase/ContainerFactory.h +++ b/Detectors/TPC/base/include/TPCBase/ContainerFactory.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/DigitPos.h b/Detectors/TPC/base/include/TPCBase/DigitPos.h index 318f954e04a81..0d8adcc646fd6 100644 --- a/Detectors/TPC/base/include/TPCBase/DigitPos.h +++ b/Detectors/TPC/base/include/TPCBase/DigitPos.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/FECInfo.h b/Detectors/TPC/base/include/TPCBase/FECInfo.h index 72af837b31ca1..250ab514660dc 100644 --- a/Detectors/TPC/base/include/TPCBase/FECInfo.h +++ b/Detectors/TPC/base/include/TPCBase/FECInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/Mapper.h b/Detectors/TPC/base/include/TPCBase/Mapper.h index ac61cb40880c5..a6b7726af4561 100644 --- a/Detectors/TPC/base/include/TPCBase/Mapper.h +++ b/Detectors/TPC/base/include/TPCBase/Mapper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/ModelGEM.h b/Detectors/TPC/base/include/TPCBase/ModelGEM.h index 4bb2aec2413d5..f832acbfc0a70 100644 --- a/Detectors/TPC/base/include/TPCBase/ModelGEM.h +++ b/Detectors/TPC/base/include/TPCBase/ModelGEM.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/PadInfo.h b/Detectors/TPC/base/include/TPCBase/PadInfo.h index f89893caade69..f87601fd7a50b 100644 --- a/Detectors/TPC/base/include/TPCBase/PadInfo.h +++ b/Detectors/TPC/base/include/TPCBase/PadInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/PadPos.h b/Detectors/TPC/base/include/TPCBase/PadPos.h index b9046bf77ba60..53c5df2f83d11 100644 --- a/Detectors/TPC/base/include/TPCBase/PadPos.h +++ b/Detectors/TPC/base/include/TPCBase/PadPos.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/PadROCPos.h b/Detectors/TPC/base/include/TPCBase/PadROCPos.h index cb76a725591db..62a6a119253db 100644 --- a/Detectors/TPC/base/include/TPCBase/PadROCPos.h +++ b/Detectors/TPC/base/include/TPCBase/PadROCPos.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/PadRegionInfo.h b/Detectors/TPC/base/include/TPCBase/PadRegionInfo.h index 8e12fa7b30659..acb25f03ac9bf 100644 --- a/Detectors/TPC/base/include/TPCBase/PadRegionInfo.h +++ b/Detectors/TPC/base/include/TPCBase/PadRegionInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/PadSecPos.h b/Detectors/TPC/base/include/TPCBase/PadSecPos.h index d23fc43d12365..7808a81f31f37 100644 --- a/Detectors/TPC/base/include/TPCBase/PadSecPos.h +++ b/Detectors/TPC/base/include/TPCBase/PadSecPos.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/Painter.h b/Detectors/TPC/base/include/TPCBase/Painter.h index 42f038cda6ca6..2ebba8c02eef7 100644 --- a/Detectors/TPC/base/include/TPCBase/Painter.h +++ b/Detectors/TPC/base/include/TPCBase/Painter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/ParameterDetector.h b/Detectors/TPC/base/include/TPCBase/ParameterDetector.h index 5b0cee663be96..d9c521eed04a9 100644 --- a/Detectors/TPC/base/include/TPCBase/ParameterDetector.h +++ b/Detectors/TPC/base/include/TPCBase/ParameterDetector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/ParameterElectronics.h b/Detectors/TPC/base/include/TPCBase/ParameterElectronics.h index 3946084f72784..dc98da103e4f3 100644 --- a/Detectors/TPC/base/include/TPCBase/ParameterElectronics.h +++ b/Detectors/TPC/base/include/TPCBase/ParameterElectronics.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/ParameterGEM.h b/Detectors/TPC/base/include/TPCBase/ParameterGEM.h index 1cba7a8a029f5..7e926c1e09988 100644 --- a/Detectors/TPC/base/include/TPCBase/ParameterGEM.h +++ b/Detectors/TPC/base/include/TPCBase/ParameterGEM.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/ParameterGas.h b/Detectors/TPC/base/include/TPCBase/ParameterGas.h index 94244d3cae872..8e47391e39096 100644 --- a/Detectors/TPC/base/include/TPCBase/ParameterGas.h +++ b/Detectors/TPC/base/include/TPCBase/ParameterGas.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/PartitionInfo.h b/Detectors/TPC/base/include/TPCBase/PartitionInfo.h index 1da24d2bf633f..be7f6058710c2 100644 --- a/Detectors/TPC/base/include/TPCBase/PartitionInfo.h +++ b/Detectors/TPC/base/include/TPCBase/PartitionInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/RDHUtils.h b/Detectors/TPC/base/include/TPCBase/RDHUtils.h index a0e5ee90cc5ea..87bf274204289 100644 --- a/Detectors/TPC/base/include/TPCBase/RDHUtils.h +++ b/Detectors/TPC/base/include/TPCBase/RDHUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/ROC.h b/Detectors/TPC/base/include/TPCBase/ROC.h index 3445b6feabfee..3ed0cf388eb72 100644 --- a/Detectors/TPC/base/include/TPCBase/ROC.h +++ b/Detectors/TPC/base/include/TPCBase/ROC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/Sector.h b/Detectors/TPC/base/include/TPCBase/Sector.h index 4a4fde29ff4ae..cd6da7917c3c1 100644 --- a/Detectors/TPC/base/include/TPCBase/Sector.h +++ b/Detectors/TPC/base/include/TPCBase/Sector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/Utils.h b/Detectors/TPC/base/include/TPCBase/Utils.h index d2bc09914f25f..36aeec922f8c4 100644 --- a/Detectors/TPC/base/include/TPCBase/Utils.h +++ b/Detectors/TPC/base/include/TPCBase/Utils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/include/TPCBase/ZeroSuppress.h b/Detectors/TPC/base/include/TPCBase/ZeroSuppress.h index b29dce34c52c6..814021fd6ea8c 100644 --- a/Detectors/TPC/base/include/TPCBase/ZeroSuppress.h +++ b/Detectors/TPC/base/include/TPCBase/ZeroSuppress.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/CDBInterface.cxx b/Detectors/TPC/base/src/CDBInterface.cxx index 861fad9052a2d..d2e9f77e6bc8f 100644 --- a/Detectors/TPC/base/src/CDBInterface.cxx +++ b/Detectors/TPC/base/src/CDBInterface.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/CRU.cxx b/Detectors/TPC/base/src/CRU.cxx index 891962adcbfa3..bbf9a60e88dc2 100644 --- a/Detectors/TPC/base/src/CRU.cxx +++ b/Detectors/TPC/base/src/CRU.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/CalArray.cxx b/Detectors/TPC/base/src/CalArray.cxx index de37abbaaee7f..59cf2d3a1d930 100644 --- a/Detectors/TPC/base/src/CalArray.cxx +++ b/Detectors/TPC/base/src/CalArray.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/CalDet.cxx b/Detectors/TPC/base/src/CalDet.cxx index 0fdf0a6afca37..e4ceef112f940 100644 --- a/Detectors/TPC/base/src/CalDet.cxx +++ b/Detectors/TPC/base/src/CalDet.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/ContainerFactory.cxx b/Detectors/TPC/base/src/ContainerFactory.cxx index 97349ec7f2eb4..47555bd72be51 100644 --- a/Detectors/TPC/base/src/ContainerFactory.cxx +++ b/Detectors/TPC/base/src/ContainerFactory.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/DigitPos.cxx b/Detectors/TPC/base/src/DigitPos.cxx index 2bab8b5e40ba1..e0c6bc134deb1 100644 --- a/Detectors/TPC/base/src/DigitPos.cxx +++ b/Detectors/TPC/base/src/DigitPos.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/FECInfo.cxx b/Detectors/TPC/base/src/FECInfo.cxx index 3b95d069216ab..6e58931163f22 100644 --- a/Detectors/TPC/base/src/FECInfo.cxx +++ b/Detectors/TPC/base/src/FECInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/Mapper.cxx b/Detectors/TPC/base/src/Mapper.cxx index 3acc10d73edd2..9e55c037b9678 100644 --- a/Detectors/TPC/base/src/Mapper.cxx +++ b/Detectors/TPC/base/src/Mapper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/ModelGEM.cxx b/Detectors/TPC/base/src/ModelGEM.cxx index 0b1b2778bd76b..eb75b432b9fc3 100644 --- a/Detectors/TPC/base/src/ModelGEM.cxx +++ b/Detectors/TPC/base/src/ModelGEM.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/PadInfo.cxx b/Detectors/TPC/base/src/PadInfo.cxx index 8c801745f0efd..22f3ab527a201 100644 --- a/Detectors/TPC/base/src/PadInfo.cxx +++ b/Detectors/TPC/base/src/PadInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/PadPos.cxx b/Detectors/TPC/base/src/PadPos.cxx index 165aa94d126b3..e57055579785b 100644 --- a/Detectors/TPC/base/src/PadPos.cxx +++ b/Detectors/TPC/base/src/PadPos.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/PadROCPos.cxx b/Detectors/TPC/base/src/PadROCPos.cxx index e5f3e25a274fe..12f4a6c2f0b21 100644 --- a/Detectors/TPC/base/src/PadROCPos.cxx +++ b/Detectors/TPC/base/src/PadROCPos.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/PadRegionInfo.cxx b/Detectors/TPC/base/src/PadRegionInfo.cxx index 6a3117ad53730..78657507f3a83 100644 --- a/Detectors/TPC/base/src/PadRegionInfo.cxx +++ b/Detectors/TPC/base/src/PadRegionInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/PadSecPos.cxx b/Detectors/TPC/base/src/PadSecPos.cxx index 0673a83a8822d..938a3a7fffb11 100644 --- a/Detectors/TPC/base/src/PadSecPos.cxx +++ b/Detectors/TPC/base/src/PadSecPos.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/Painter.cxx b/Detectors/TPC/base/src/Painter.cxx index efeb3042425a3..79f6206a34f28 100644 --- a/Detectors/TPC/base/src/Painter.cxx +++ b/Detectors/TPC/base/src/Painter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/ParameterDetector.cxx b/Detectors/TPC/base/src/ParameterDetector.cxx index a69d9f55f6387..171156d7f6eba 100644 --- a/Detectors/TPC/base/src/ParameterDetector.cxx +++ b/Detectors/TPC/base/src/ParameterDetector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/ParameterElectronics.cxx b/Detectors/TPC/base/src/ParameterElectronics.cxx index 01662a3ae632e..aee59708d0bc8 100644 --- a/Detectors/TPC/base/src/ParameterElectronics.cxx +++ b/Detectors/TPC/base/src/ParameterElectronics.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/ParameterGEM.cxx b/Detectors/TPC/base/src/ParameterGEM.cxx index 1f4bbe760a755..fcdd3a844f0ff 100644 --- a/Detectors/TPC/base/src/ParameterGEM.cxx +++ b/Detectors/TPC/base/src/ParameterGEM.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/ParameterGas.cxx b/Detectors/TPC/base/src/ParameterGas.cxx index a816b68cc2fe8..37d7b6da05730 100644 --- a/Detectors/TPC/base/src/ParameterGas.cxx +++ b/Detectors/TPC/base/src/ParameterGas.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/PartitionInfo.cxx b/Detectors/TPC/base/src/PartitionInfo.cxx index fead21f05c668..961433a21a389 100644 --- a/Detectors/TPC/base/src/PartitionInfo.cxx +++ b/Detectors/TPC/base/src/PartitionInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/ROC.cxx b/Detectors/TPC/base/src/ROC.cxx index 07d57eddc1e2d..2edc35c043218 100644 --- a/Detectors/TPC/base/src/ROC.cxx +++ b/Detectors/TPC/base/src/ROC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/Sector.cxx b/Detectors/TPC/base/src/Sector.cxx index 07d57eddc1e2d..2edc35c043218 100644 --- a/Detectors/TPC/base/src/Sector.cxx +++ b/Detectors/TPC/base/src/Sector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/TPCBaseLinkDef.h b/Detectors/TPC/base/src/TPCBaseLinkDef.h index b491ccc535606..a68bac674fd3a 100644 --- a/Detectors/TPC/base/src/TPCBaseLinkDef.h +++ b/Detectors/TPC/base/src/TPCBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/Utils.cxx b/Detectors/TPC/base/src/Utils.cxx index 6469639e34171..46a2501422597 100644 --- a/Detectors/TPC/base/src/Utils.cxx +++ b/Detectors/TPC/base/src/Utils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/src/ZeroSuppress.cxx b/Detectors/TPC/base/src/ZeroSuppress.cxx index 70cb7ca21b6c2..948d4b254cb8c 100644 --- a/Detectors/TPC/base/src/ZeroSuppress.cxx +++ b/Detectors/TPC/base/src/ZeroSuppress.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/test/testRDHUtils.cxx b/Detectors/TPC/base/test/testRDHUtils.cxx index fc33bf5318438..9c5bab1866c5b 100644 --- a/Detectors/TPC/base/test/testRDHUtils.cxx +++ b/Detectors/TPC/base/test/testRDHUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/test/testTPCBase.cxx b/Detectors/TPC/base/test/testTPCBase.cxx index 37b0bca8129b1..46de2af2f680e 100644 --- a/Detectors/TPC/base/test/testTPCBase.cxx +++ b/Detectors/TPC/base/test/testTPCBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/test/testTPCCDBInterface.cxx b/Detectors/TPC/base/test/testTPCCDBInterface.cxx index 026b3c40a15d8..3074c5e90a00c 100644 --- a/Detectors/TPC/base/test/testTPCCDBInterface.cxx +++ b/Detectors/TPC/base/test/testTPCCDBInterface.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/test/testTPCCalDet.cxx b/Detectors/TPC/base/test/testTPCCalDet.cxx index f5d3d60269d2f..ffba10844c482 100644 --- a/Detectors/TPC/base/test/testTPCCalDet.cxx +++ b/Detectors/TPC/base/test/testTPCCalDet.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/test/testTPCMapper.cxx b/Detectors/TPC/base/test/testTPCMapper.cxx index 54682abb179ee..64711968d27fe 100644 --- a/Detectors/TPC/base/test/testTPCMapper.cxx +++ b/Detectors/TPC/base/test/testTPCMapper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/base/test/testTPCParameters.cxx b/Detectors/TPC/base/test/testTPCParameters.cxx index 643e9d148ac6d..fd9eb6c9a2104 100644 --- a/Detectors/TPC/base/test/testTPCParameters.cxx +++ b/Detectors/TPC/base/test/testTPCParameters.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/CMakeLists.txt b/Detectors/TPC/calibration/CMakeLists.txt index b1b073585b18e..ce1177ad262d4 100644 --- a/Detectors/TPC/calibration/CMakeLists.txt +++ b/Detectors/TPC/calibration/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(SpacePoints) diff --git a/Detectors/TPC/calibration/SpacePoints/CMakeLists.txt b/Detectors/TPC/calibration/SpacePoints/CMakeLists.txt index 5e6ddbeafe346..cd52a6cdf3438 100644 --- a/Detectors/TPC/calibration/SpacePoints/CMakeLists.txt +++ b/Detectors/TPC/calibration/SpacePoints/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(SpacePoints SOURCES src/SpacePointsCalibParam.cxx diff --git a/Detectors/TPC/calibration/SpacePoints/include/SpacePoints/SpacePointsCalibParam.h b/Detectors/TPC/calibration/SpacePoints/include/SpacePoints/SpacePointsCalibParam.h index 4f1eeb9be16bb..b4ad377041685 100644 --- a/Detectors/TPC/calibration/SpacePoints/include/SpacePoints/SpacePointsCalibParam.h +++ b/Detectors/TPC/calibration/SpacePoints/include/SpacePoints/SpacePointsCalibParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/SpacePoints/include/SpacePoints/TrackInterpolation.h b/Detectors/TPC/calibration/SpacePoints/include/SpacePoints/TrackInterpolation.h index 0ff93475cb93e..9c01c92a6fce0 100644 --- a/Detectors/TPC/calibration/SpacePoints/include/SpacePoints/TrackInterpolation.h +++ b/Detectors/TPC/calibration/SpacePoints/include/SpacePoints/TrackInterpolation.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/SpacePoints/include/SpacePoints/TrackResiduals.h b/Detectors/TPC/calibration/SpacePoints/include/SpacePoints/TrackResiduals.h index 5be72b9045e5e..0a5ec7b1cbbab 100644 --- a/Detectors/TPC/calibration/SpacePoints/include/SpacePoints/TrackResiduals.h +++ b/Detectors/TPC/calibration/SpacePoints/include/SpacePoints/TrackResiduals.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/SpacePoints/src/SpacePointCalibLinkDef.h b/Detectors/TPC/calibration/SpacePoints/src/SpacePointCalibLinkDef.h index 2ed783553e4ef..cb5fd51e6940a 100644 --- a/Detectors/TPC/calibration/SpacePoints/src/SpacePointCalibLinkDef.h +++ b/Detectors/TPC/calibration/SpacePoints/src/SpacePointCalibLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/SpacePoints/src/SpacePointsCalibParam.cxx b/Detectors/TPC/calibration/SpacePoints/src/SpacePointsCalibParam.cxx index af61a01a92a42..a2d8606af065f 100644 --- a/Detectors/TPC/calibration/SpacePoints/src/SpacePointsCalibParam.cxx +++ b/Detectors/TPC/calibration/SpacePoints/src/SpacePointsCalibParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/SpacePoints/src/TrackInterpolation.cxx b/Detectors/TPC/calibration/SpacePoints/src/TrackInterpolation.cxx index 5e1b970e980ec..c653a337557b4 100644 --- a/Detectors/TPC/calibration/SpacePoints/src/TrackInterpolation.cxx +++ b/Detectors/TPC/calibration/SpacePoints/src/TrackInterpolation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/SpacePoints/src/TrackResiduals.cxx b/Detectors/TPC/calibration/SpacePoints/src/TrackResiduals.cxx index 76d23c027831d..1aa293d1e61ab 100644 --- a/Detectors/TPC/calibration/SpacePoints/src/TrackResiduals.cxx +++ b/Detectors/TPC/calibration/SpacePoints/src/TrackResiduals.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/CalibPadGainTracks.h b/Detectors/TPC/calibration/include/TPCCalibration/CalibPadGainTracks.h index c88f6b1251fe1..617c9658d9234 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/CalibPadGainTracks.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/CalibPadGainTracks.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/CalibPedestal.h b/Detectors/TPC/calibration/include/TPCCalibration/CalibPedestal.h index f5074e1f4e47c..bba3e2215e7aa 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/CalibPedestal.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/CalibPedestal.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/CalibPedestalParam.h b/Detectors/TPC/calibration/include/TPCCalibration/CalibPedestalParam.h index c1278f4862d1e..d49241568b79e 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/CalibPedestalParam.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/CalibPedestalParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/CalibPulser.h b/Detectors/TPC/calibration/include/TPCCalibration/CalibPulser.h index 4928604b3b490..3adfdb5b96972 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/CalibPulser.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/CalibPulser.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/CalibPulserParam.h b/Detectors/TPC/calibration/include/TPCCalibration/CalibPulserParam.h index 8aac9fedd51a4..5127a58d969ca 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/CalibPulserParam.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/CalibPulserParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/CalibRawBase.h b/Detectors/TPC/calibration/include/TPCCalibration/CalibRawBase.h index 6428e2bef93d5..a9cf4bc032cd5 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/CalibRawBase.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/CalibRawBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/CalibTreeDump.h b/Detectors/TPC/calibration/include/TPCCalibration/CalibTreeDump.h index 9579e3d81a69c..8a1e14ed8f327 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/CalibTreeDump.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/CalibTreeDump.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/DigitDump.h b/Detectors/TPC/calibration/include/TPCCalibration/DigitDump.h index e981d28d2b1c1..d646f5eddc3ca 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/DigitDump.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/DigitDump.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/DigitDumpParam.h b/Detectors/TPC/calibration/include/TPCCalibration/DigitDumpParam.h index 4054504480e3d..3d2e9cb2557d5 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/DigitDumpParam.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/DigitDumpParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/FastHisto.h b/Detectors/TPC/calibration/include/TPCCalibration/FastHisto.h index 7318eda963ee5..495887ca62623 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/FastHisto.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/FastHisto.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/IDCAverageGroup.h b/Detectors/TPC/calibration/include/TPCCalibration/IDCAverageGroup.h index 104cd9ec9001f..c0b5adcfc966a 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/IDCAverageGroup.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/IDCAverageGroup.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/IDCCCDBHelper.h b/Detectors/TPC/calibration/include/TPCCalibration/IDCCCDBHelper.h index 38099fca70302..5a717e0c53dd3 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/IDCCCDBHelper.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/IDCCCDBHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/IDCContainer.h b/Detectors/TPC/calibration/include/TPCCalibration/IDCContainer.h index 89747b0f48e14..0db340c57611b 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/IDCContainer.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/IDCContainer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/IDCFactorization.h b/Detectors/TPC/calibration/include/TPCCalibration/IDCFactorization.h index 7a9137ff85ddf..ed17f1be7c925 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/IDCFactorization.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/IDCFactorization.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/IDCFourierTransform.h b/Detectors/TPC/calibration/include/TPCCalibration/IDCFourierTransform.h index cc3010c2e4802..bdad813c572ba 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/IDCFourierTransform.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/IDCFourierTransform.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/IDCGroup.h b/Detectors/TPC/calibration/include/TPCCalibration/IDCGroup.h index f7acc382cb2df..4d3fff34a7383 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/IDCGroup.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/IDCGroup.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/IDCGroupHelperRegion.h b/Detectors/TPC/calibration/include/TPCCalibration/IDCGroupHelperRegion.h index 4dab91b8583a0..be0d1a3a08504 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/IDCGroupHelperRegion.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/IDCGroupHelperRegion.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/IDCGroupHelperSector.h b/Detectors/TPC/calibration/include/TPCCalibration/IDCGroupHelperSector.h index a5975503ef9cf..89662d8184b6d 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/IDCGroupHelperSector.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/IDCGroupHelperSector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/IDCGroupingParameter.h b/Detectors/TPC/calibration/include/TPCCalibration/IDCGroupingParameter.h index 643a267f34d85..8dc6781fb55a0 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/IDCGroupingParameter.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/IDCGroupingParameter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/RobustAverage.h b/Detectors/TPC/calibration/include/TPCCalibration/RobustAverage.h index d1e8ab8a8aa34..995f69437264f 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/RobustAverage.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/RobustAverage.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/macro/comparePedestalsAndNoise.C b/Detectors/TPC/calibration/macro/comparePedestalsAndNoise.C index dcb6a398a47ac..5f998453d9515 100644 --- a/Detectors/TPC/calibration/macro/comparePedestalsAndNoise.C +++ b/Detectors/TPC/calibration/macro/comparePedestalsAndNoise.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/macro/drawNoiseAndPedestal.C b/Detectors/TPC/calibration/macro/drawNoiseAndPedestal.C index 273d6abc16936..2232808ff275a 100644 --- a/Detectors/TPC/calibration/macro/drawNoiseAndPedestal.C +++ b/Detectors/TPC/calibration/macro/drawNoiseAndPedestal.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/macro/drawPulser.C b/Detectors/TPC/calibration/macro/drawPulser.C index 485bb5e222c5a..77b8951a40efe 100644 --- a/Detectors/TPC/calibration/macro/drawPulser.C +++ b/Detectors/TPC/calibration/macro/drawPulser.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/macro/dumpDigits.C b/Detectors/TPC/calibration/macro/dumpDigits.C index 730c1f9ce2844..526c2cd85fb98 100644 --- a/Detectors/TPC/calibration/macro/dumpDigits.C +++ b/Detectors/TPC/calibration/macro/dumpDigits.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/macro/extractGainMap.C b/Detectors/TPC/calibration/macro/extractGainMap.C index 35ea78192e8df..fe326154c2ea6 100644 --- a/Detectors/TPC/calibration/macro/extractGainMap.C +++ b/Detectors/TPC/calibration/macro/extractGainMap.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/macro/mergeNoiseAndPedestal.C b/Detectors/TPC/calibration/macro/mergeNoiseAndPedestal.C index 9384c48ab91b3..3e48b8ddced9c 100644 --- a/Detectors/TPC/calibration/macro/mergeNoiseAndPedestal.C +++ b/Detectors/TPC/calibration/macro/mergeNoiseAndPedestal.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/macro/preparePedestalFiles.C b/Detectors/TPC/calibration/macro/preparePedestalFiles.C index 91d2e8a13e962..3fb1f969f38ec 100644 --- a/Detectors/TPC/calibration/macro/preparePedestalFiles.C +++ b/Detectors/TPC/calibration/macro/preparePedestalFiles.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/macro/runPedestal.C b/Detectors/TPC/calibration/macro/runPedestal.C index 47d131b94c62c..7578e9ff666ac 100644 --- a/Detectors/TPC/calibration/macro/runPedestal.C +++ b/Detectors/TPC/calibration/macro/runPedestal.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/macro/runPulser.C b/Detectors/TPC/calibration/macro/runPulser.C index 4b4ded15cf3f8..3b5b0b36ecb33 100644 --- a/Detectors/TPC/calibration/macro/runPulser.C +++ b/Detectors/TPC/calibration/macro/runPulser.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/CalibPadGainTracks.cxx b/Detectors/TPC/calibration/src/CalibPadGainTracks.cxx index 2b688b63df6ad..3687d1bbda885 100644 --- a/Detectors/TPC/calibration/src/CalibPadGainTracks.cxx +++ b/Detectors/TPC/calibration/src/CalibPadGainTracks.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/CalibPedestal.cxx b/Detectors/TPC/calibration/src/CalibPedestal.cxx index df8f5496d0b64..03c27ad5569d4 100644 --- a/Detectors/TPC/calibration/src/CalibPedestal.cxx +++ b/Detectors/TPC/calibration/src/CalibPedestal.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/CalibPedestalParam.cxx b/Detectors/TPC/calibration/src/CalibPedestalParam.cxx index 6fd2f3e8c915e..ad05d41f45467 100644 --- a/Detectors/TPC/calibration/src/CalibPedestalParam.cxx +++ b/Detectors/TPC/calibration/src/CalibPedestalParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/CalibPulser.cxx b/Detectors/TPC/calibration/src/CalibPulser.cxx index d3e2bbb618067..3bd3db8183b88 100644 --- a/Detectors/TPC/calibration/src/CalibPulser.cxx +++ b/Detectors/TPC/calibration/src/CalibPulser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/CalibPulserParam.cxx b/Detectors/TPC/calibration/src/CalibPulserParam.cxx index f2be19cc95851..62ff1d0081658 100644 --- a/Detectors/TPC/calibration/src/CalibPulserParam.cxx +++ b/Detectors/TPC/calibration/src/CalibPulserParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/CalibRawBase.cxx b/Detectors/TPC/calibration/src/CalibRawBase.cxx index 811d68edb03cd..b430572320636 100644 --- a/Detectors/TPC/calibration/src/CalibRawBase.cxx +++ b/Detectors/TPC/calibration/src/CalibRawBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/CalibTreeDump.cxx b/Detectors/TPC/calibration/src/CalibTreeDump.cxx index 3dc4709f9b7fc..3290cda5ab184 100644 --- a/Detectors/TPC/calibration/src/CalibTreeDump.cxx +++ b/Detectors/TPC/calibration/src/CalibTreeDump.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/DigitDump.cxx b/Detectors/TPC/calibration/src/DigitDump.cxx index 81e54cdfba5c1..b45e848fd672a 100644 --- a/Detectors/TPC/calibration/src/DigitDump.cxx +++ b/Detectors/TPC/calibration/src/DigitDump.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/DigitDumpParam.cxx b/Detectors/TPC/calibration/src/DigitDumpParam.cxx index b9cc21ab4eb25..d80a95b74b8b3 100644 --- a/Detectors/TPC/calibration/src/DigitDumpParam.cxx +++ b/Detectors/TPC/calibration/src/DigitDumpParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/IDCAverageGroup.cxx b/Detectors/TPC/calibration/src/IDCAverageGroup.cxx index ba2334b4b13fc..568194d3104e7 100644 --- a/Detectors/TPC/calibration/src/IDCAverageGroup.cxx +++ b/Detectors/TPC/calibration/src/IDCAverageGroup.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/IDCCCDBHelper.cxx b/Detectors/TPC/calibration/src/IDCCCDBHelper.cxx index 7cb06cce78d70..27c74826bfcde 100644 --- a/Detectors/TPC/calibration/src/IDCCCDBHelper.cxx +++ b/Detectors/TPC/calibration/src/IDCCCDBHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/IDCFactorization.cxx b/Detectors/TPC/calibration/src/IDCFactorization.cxx index 5aa876470111e..9d532e0d57447 100644 --- a/Detectors/TPC/calibration/src/IDCFactorization.cxx +++ b/Detectors/TPC/calibration/src/IDCFactorization.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/IDCFourierTransform.cxx b/Detectors/TPC/calibration/src/IDCFourierTransform.cxx index 72c57329851b1..f94457d0a6b0e 100644 --- a/Detectors/TPC/calibration/src/IDCFourierTransform.cxx +++ b/Detectors/TPC/calibration/src/IDCFourierTransform.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/IDCGroup.cxx b/Detectors/TPC/calibration/src/IDCGroup.cxx index 969a9e9f886ff..a0996babe833c 100644 --- a/Detectors/TPC/calibration/src/IDCGroup.cxx +++ b/Detectors/TPC/calibration/src/IDCGroup.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/IDCGroupHelperRegion.cxx b/Detectors/TPC/calibration/src/IDCGroupHelperRegion.cxx index c5f0f5a444340..c2f5d411c446d 100644 --- a/Detectors/TPC/calibration/src/IDCGroupHelperRegion.cxx +++ b/Detectors/TPC/calibration/src/IDCGroupHelperRegion.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/IDCGroupingParameter.cxx b/Detectors/TPC/calibration/src/IDCGroupingParameter.cxx index 6ec05d9bd9c0e..c2ecf9cf21a2e 100644 --- a/Detectors/TPC/calibration/src/IDCGroupingParameter.cxx +++ b/Detectors/TPC/calibration/src/IDCGroupingParameter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/RobustAverage.cxx b/Detectors/TPC/calibration/src/RobustAverage.cxx index cfb1385a0f33b..044f612bf209a 100644 --- a/Detectors/TPC/calibration/src/RobustAverage.cxx +++ b/Detectors/TPC/calibration/src/RobustAverage.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/TPCCalibrationLinkDef.h b/Detectors/TPC/calibration/src/TPCCalibrationLinkDef.h index d18e7f9aedda4..3a0ed78285c36 100644 --- a/Detectors/TPC/calibration/src/TPCCalibrationLinkDef.h +++ b/Detectors/TPC/calibration/src/TPCCalibrationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/test/testO2TPCIDCFourierTransform.cxx b/Detectors/TPC/calibration/test/testO2TPCIDCFourierTransform.cxx index 4995e0d82da3f..faa6e94458510 100644 --- a/Detectors/TPC/calibration/test/testO2TPCIDCFourierTransform.cxx +++ b/Detectors/TPC/calibration/test/testO2TPCIDCFourierTransform.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/monitor/CMakeLists.txt b/Detectors/TPC/monitor/CMakeLists.txt index a124280fa27c3..6721572f695aa 100644 --- a/Detectors/TPC/monitor/CMakeLists.txt +++ b/Detectors/TPC/monitor/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TPCMonitor SOURCES src/SimpleEventDisplay.cxx diff --git a/Detectors/TPC/monitor/include/TPCMonitor/SimpleEventDisplay.h b/Detectors/TPC/monitor/include/TPCMonitor/SimpleEventDisplay.h index 54a66f69c0d45..f1c0760e7dca9 100644 --- a/Detectors/TPC/monitor/include/TPCMonitor/SimpleEventDisplay.h +++ b/Detectors/TPC/monitor/include/TPCMonitor/SimpleEventDisplay.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/monitor/macro/RunCompareMode3.C b/Detectors/TPC/monitor/macro/RunCompareMode3.C index ff7ae2bc2ab2a..62b221deb06f2 100644 --- a/Detectors/TPC/monitor/macro/RunCompareMode3.C +++ b/Detectors/TPC/monitor/macro/RunCompareMode3.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/monitor/macro/RunFindAdcError.C b/Detectors/TPC/monitor/macro/RunFindAdcError.C index 09c3deb05593e..ad44d72f2ab9c 100644 --- a/Detectors/TPC/monitor/macro/RunFindAdcError.C +++ b/Detectors/TPC/monitor/macro/RunFindAdcError.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/monitor/macro/RunSimpleEventDisplay.C b/Detectors/TPC/monitor/macro/RunSimpleEventDisplay.C index 7d203bae30596..e9264ef12f955 100644 --- a/Detectors/TPC/monitor/macro/RunSimpleEventDisplay.C +++ b/Detectors/TPC/monitor/macro/RunSimpleEventDisplay.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/monitor/run/runMonitor.cxx b/Detectors/TPC/monitor/run/runMonitor.cxx index 7e92a8bae2a6f..40e4973bdfc3f 100644 --- a/Detectors/TPC/monitor/run/runMonitor.cxx +++ b/Detectors/TPC/monitor/run/runMonitor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/monitor/src/SimpleEventDisplay.cxx b/Detectors/TPC/monitor/src/SimpleEventDisplay.cxx index bd85cb9bb057c..35d399d40977c 100644 --- a/Detectors/TPC/monitor/src/SimpleEventDisplay.cxx +++ b/Detectors/TPC/monitor/src/SimpleEventDisplay.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/monitor/src/TPCMonitorLinkDef.h b/Detectors/TPC/monitor/src/TPCMonitorLinkDef.h index 638972c7e784b..c61ec6d4096ca 100644 --- a/Detectors/TPC/monitor/src/TPCMonitorLinkDef.h +++ b/Detectors/TPC/monitor/src/TPCMonitorLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/CMakeLists.txt b/Detectors/TPC/qc/CMakeLists.txt index 7386f730747eb..64d40ff0f229a 100644 --- a/Detectors/TPC/qc/CMakeLists.txt +++ b/Detectors/TPC/qc/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TPCQC SOURCES src/PID.cxx diff --git a/Detectors/TPC/qc/include/TPCQC/CalPadWrapper.h b/Detectors/TPC/qc/include/TPCQC/CalPadWrapper.h index 77afbc8909b4b..9fa814e2737b4 100644 --- a/Detectors/TPC/qc/include/TPCQC/CalPadWrapper.h +++ b/Detectors/TPC/qc/include/TPCQC/CalPadWrapper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/include/TPCQC/Clusters.h b/Detectors/TPC/qc/include/TPCQC/Clusters.h index 8225abf9c1749..ee780b5095f7d 100644 --- a/Detectors/TPC/qc/include/TPCQC/Clusters.h +++ b/Detectors/TPC/qc/include/TPCQC/Clusters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/include/TPCQC/Helpers.h b/Detectors/TPC/qc/include/TPCQC/Helpers.h index 454b8b3431afd..571b3c850c682 100644 --- a/Detectors/TPC/qc/include/TPCQC/Helpers.h +++ b/Detectors/TPC/qc/include/TPCQC/Helpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/include/TPCQC/PID.h b/Detectors/TPC/qc/include/TPCQC/PID.h index 0aff27e1ec9a3..e6be781ff9986 100644 --- a/Detectors/TPC/qc/include/TPCQC/PID.h +++ b/Detectors/TPC/qc/include/TPCQC/PID.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/include/TPCQC/TrackCuts.h b/Detectors/TPC/qc/include/TPCQC/TrackCuts.h index 1cbe50b80ea23..c8691d77f21f9 100644 --- a/Detectors/TPC/qc/include/TPCQC/TrackCuts.h +++ b/Detectors/TPC/qc/include/TPCQC/TrackCuts.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/include/TPCQC/Tracking.h b/Detectors/TPC/qc/include/TPCQC/Tracking.h index 64b9f05ad9c7e..27070d72b5971 100644 --- a/Detectors/TPC/qc/include/TPCQC/Tracking.h +++ b/Detectors/TPC/qc/include/TPCQC/Tracking.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/include/TPCQC/Tracks.h b/Detectors/TPC/qc/include/TPCQC/Tracks.h index 94c1bf3043be6..4107c8007f306 100644 --- a/Detectors/TPC/qc/include/TPCQC/Tracks.h +++ b/Detectors/TPC/qc/include/TPCQC/Tracks.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/macro/runClusters.C b/Detectors/TPC/qc/macro/runClusters.C index 60ff6bb000bae..d1d1b09af5b1f 100644 --- a/Detectors/TPC/qc/macro/runClusters.C +++ b/Detectors/TPC/qc/macro/runClusters.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/macro/runPID.C b/Detectors/TPC/qc/macro/runPID.C index 26266b00e3669..aa9b3700efc5e 100644 --- a/Detectors/TPC/qc/macro/runPID.C +++ b/Detectors/TPC/qc/macro/runPID.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/macro/runTracks.C b/Detectors/TPC/qc/macro/runTracks.C index d4c55c638f7b5..f69be51acb77d 100644 --- a/Detectors/TPC/qc/macro/runTracks.C +++ b/Detectors/TPC/qc/macro/runTracks.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/src/Clusters.cxx b/Detectors/TPC/qc/src/Clusters.cxx index b8ec4de122d87..e6c4f9d16aef5 100644 --- a/Detectors/TPC/qc/src/Clusters.cxx +++ b/Detectors/TPC/qc/src/Clusters.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/src/Helpers.cxx b/Detectors/TPC/qc/src/Helpers.cxx index f80cffd9aba3d..50f77f60100e7 100644 --- a/Detectors/TPC/qc/src/Helpers.cxx +++ b/Detectors/TPC/qc/src/Helpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/src/PID.cxx b/Detectors/TPC/qc/src/PID.cxx index 6f63471129b96..1076744aa5eae 100644 --- a/Detectors/TPC/qc/src/PID.cxx +++ b/Detectors/TPC/qc/src/PID.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/src/TPCQCLinkDef.h b/Detectors/TPC/qc/src/TPCQCLinkDef.h index 955563373e617..c4ca8ff5222e5 100644 --- a/Detectors/TPC/qc/src/TPCQCLinkDef.h +++ b/Detectors/TPC/qc/src/TPCQCLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/src/TrackCuts.cxx b/Detectors/TPC/qc/src/TrackCuts.cxx index 07cc2cbdba894..2419809203b86 100644 --- a/Detectors/TPC/qc/src/TrackCuts.cxx +++ b/Detectors/TPC/qc/src/TrackCuts.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/src/Tracking.cxx b/Detectors/TPC/qc/src/Tracking.cxx index f3b07eb89cb8f..3685ba4abb07f 100644 --- a/Detectors/TPC/qc/src/Tracking.cxx +++ b/Detectors/TPC/qc/src/Tracking.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/src/Tracks.cxx b/Detectors/TPC/qc/src/Tracks.cxx index 6b24975cd88a3..da505e258ca2e 100644 --- a/Detectors/TPC/qc/src/Tracks.cxx +++ b/Detectors/TPC/qc/src/Tracks.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/test/test_Clusters.cxx b/Detectors/TPC/qc/test/test_Clusters.cxx index 429c6ce8f72d0..25a7c8b6d7f63 100644 --- a/Detectors/TPC/qc/test/test_Clusters.cxx +++ b/Detectors/TPC/qc/test/test_Clusters.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/test/test_PID.cxx b/Detectors/TPC/qc/test/test_PID.cxx index f0a830af868ca..0393e466a2458 100644 --- a/Detectors/TPC/qc/test/test_PID.cxx +++ b/Detectors/TPC/qc/test/test_PID.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/test/test_TrackCuts.cxx b/Detectors/TPC/qc/test/test_TrackCuts.cxx index a86ad7fe56754..f3d15873b7de5 100644 --- a/Detectors/TPC/qc/test/test_TrackCuts.cxx +++ b/Detectors/TPC/qc/test/test_TrackCuts.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/qc/test/test_Tracks.cxx b/Detectors/TPC/qc/test/test_Tracks.cxx index 23278497fb32e..fef57df15c62e 100644 --- a/Detectors/TPC/qc/test/test_Tracks.cxx +++ b/Detectors/TPC/qc/test/test_Tracks.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/CMakeLists.txt b/Detectors/TPC/reconstruction/CMakeLists.txt index b0ff73c77d645..83b012f34b738 100644 --- a/Detectors/TPC/reconstruction/CMakeLists.txt +++ b/Detectors/TPC/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TPCReconstruction TARGETVARNAME targetName diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/AdcClockMonitor.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/AdcClockMonitor.h index 3fd010dd7e724..caf13e1c4e5bc 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/AdcClockMonitor.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/AdcClockMonitor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/CTFCoder.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/CTFCoder.h index 0a7ca9c581deb..2bc787db513be 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/CTFCoder.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/ClusterContainer.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/ClusterContainer.h index 84d3acc55e2c2..d86a845b0fe4c 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/ClusterContainer.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/ClusterContainer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/Clusterer.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/Clusterer.h index 34405c1de783f..02c7094c25a2d 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/Clusterer.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/Clusterer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/ClustererTask.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/ClustererTask.h index 071ded988bdf7..00bddef53dfb1 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/ClustererTask.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/ClustererTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/DigitalCurrentClusterIntegrator.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/DigitalCurrentClusterIntegrator.h index e30ea4e2ff186..e1b597e3dab2e 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/DigitalCurrentClusterIntegrator.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/DigitalCurrentClusterIntegrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/GBTFrame.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/GBTFrame.h index 289faa3b44272..68b0104f3dd62 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/GBTFrame.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/GBTFrame.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/GBTFrameContainer.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/GBTFrameContainer.h index c5f6a7afa26e8..c30ab8a14e371 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/GBTFrameContainer.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/GBTFrameContainer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/HalfSAMPAData.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/HalfSAMPAData.h index c5c2b98a42325..bfd3ae3417c72 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/HalfSAMPAData.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/HalfSAMPAData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/HardwareClusterDecoder.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/HardwareClusterDecoder.h index 84d1b2b5ed643..cf53f6295aac5 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/HardwareClusterDecoder.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/HardwareClusterDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/HwClusterer.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/HwClusterer.h index 3d9fe3c9a2c76..11e6b442cae7e 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/HwClusterer.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/HwClusterer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/HwClustererParam.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/HwClustererParam.h index 5a48f31ee4a1b..2f426aa5a2b68 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/HwClustererParam.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/HwClustererParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/KrBoxClusterFinder.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/KrBoxClusterFinder.h index 8ff72ac94d999..7637bd584005e 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/KrBoxClusterFinder.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/KrBoxClusterFinder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/KrBoxClusterFinderParam.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/KrBoxClusterFinderParam.h index 2101808472a9e..9cfef8846c4e4 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/KrBoxClusterFinderParam.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/KrBoxClusterFinderParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/KrCluster.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/KrCluster.h index ff5fca17bc4c9..20014ce65c642 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/KrCluster.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/KrCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawProcessingHelpers.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawProcessingHelpers.h index 6cd4050fed286..4cc4f10f9ce76 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawProcessingHelpers.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawProcessingHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReader.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReader.h index b75c4c0fcbb9b..958e25787b159 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReader.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderCRU.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderCRU.h index ec5a15639d199..ff2b0988d4679 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderCRU.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderCRU.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderEventSync.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderEventSync.h index 05585dedf8a9a..65e2135d84548 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderEventSync.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderEventSync.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/SyncPatternMonitor.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/SyncPatternMonitor.h index a788d63da9722..061a101e1bd54 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/SyncPatternMonitor.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/SyncPatternMonitor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/TPCFastTransformHelperO2.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/TPCFastTransformHelperO2.h index 1ec1a9c8a155c..51f2ea91fe0a6 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/TPCFastTransformHelperO2.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/TPCFastTransformHelperO2.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/TPCTrackingDigitsPreCheck.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/TPCTrackingDigitsPreCheck.h index 8420790c8c48c..7ba4765e6169d 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/TPCTrackingDigitsPreCheck.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/TPCTrackingDigitsPreCheck.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/macro/addInclude.C b/Detectors/TPC/reconstruction/macro/addInclude.C index eda7a2bcc35d7..eedf132892e6a 100644 --- a/Detectors/TPC/reconstruction/macro/addInclude.C +++ b/Detectors/TPC/reconstruction/macro/addInclude.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/macro/createTPCSpaceChargeCorrection.C b/Detectors/TPC/reconstruction/macro/createTPCSpaceChargeCorrection.C index afd75f772ab10..3af61fc492527 100644 --- a/Detectors/TPC/reconstruction/macro/createTPCSpaceChargeCorrection.C +++ b/Detectors/TPC/reconstruction/macro/createTPCSpaceChargeCorrection.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/macro/findKrBoxCluster.C b/Detectors/TPC/reconstruction/macro/findKrBoxCluster.C index 6212eeb43b5fd..6be474c30ffa5 100644 --- a/Detectors/TPC/reconstruction/macro/findKrBoxCluster.C +++ b/Detectors/TPC/reconstruction/macro/findKrBoxCluster.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/macro/getTPCTransformationExample.C b/Detectors/TPC/reconstruction/macro/getTPCTransformationExample.C index a33a5f90f83cc..e69c0905f45eb 100644 --- a/Detectors/TPC/reconstruction/macro/getTPCTransformationExample.C +++ b/Detectors/TPC/reconstruction/macro/getTPCTransformationExample.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/macro/readClusters.C b/Detectors/TPC/reconstruction/macro/readClusters.C index b92021aba8dc3..c11c72455cdfc 100644 --- a/Detectors/TPC/reconstruction/macro/readClusters.C +++ b/Detectors/TPC/reconstruction/macro/readClusters.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/macro/testRawRead.C b/Detectors/TPC/reconstruction/macro/testRawRead.C index e7a34167e9a15..a9cec9984bc1a 100644 --- a/Detectors/TPC/reconstruction/macro/testRawRead.C +++ b/Detectors/TPC/reconstruction/macro/testRawRead.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/run/rawReaderCRU.cxx b/Detectors/TPC/reconstruction/run/rawReaderCRU.cxx index 660bda628c31e..03322cd3b4d32 100644 --- a/Detectors/TPC/reconstruction/run/rawReaderCRU.cxx +++ b/Detectors/TPC/reconstruction/run/rawReaderCRU.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/run/readGBTFrames.cxx b/Detectors/TPC/reconstruction/run/readGBTFrames.cxx index 96cac97f2adff..39b817e0d7906 100644 --- a/Detectors/TPC/reconstruction/run/readGBTFrames.cxx +++ b/Detectors/TPC/reconstruction/run/readGBTFrames.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/run/readRawData.cxx b/Detectors/TPC/reconstruction/run/readRawData.cxx index 137d5d40486c6..441d651b093fe 100644 --- a/Detectors/TPC/reconstruction/run/readRawData.cxx +++ b/Detectors/TPC/reconstruction/run/readRawData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/AdcClockMonitor.cxx b/Detectors/TPC/reconstruction/src/AdcClockMonitor.cxx index 8b0f3be173da4..183a76a6129a2 100644 --- a/Detectors/TPC/reconstruction/src/AdcClockMonitor.cxx +++ b/Detectors/TPC/reconstruction/src/AdcClockMonitor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/CTFCoder.cxx b/Detectors/TPC/reconstruction/src/CTFCoder.cxx index 20873f20bcdbf..5b39585c4602f 100644 --- a/Detectors/TPC/reconstruction/src/CTFCoder.cxx +++ b/Detectors/TPC/reconstruction/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/ClustererTask.cxx b/Detectors/TPC/reconstruction/src/ClustererTask.cxx index 67bbb1b207dbc..b7c39610941f3 100644 --- a/Detectors/TPC/reconstruction/src/ClustererTask.cxx +++ b/Detectors/TPC/reconstruction/src/ClustererTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/DigitalCurrentClusterIntegrator.cxx b/Detectors/TPC/reconstruction/src/DigitalCurrentClusterIntegrator.cxx index 23e53d0817058..6acefe467e9ba 100644 --- a/Detectors/TPC/reconstruction/src/DigitalCurrentClusterIntegrator.cxx +++ b/Detectors/TPC/reconstruction/src/DigitalCurrentClusterIntegrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/GBTFrame.cxx b/Detectors/TPC/reconstruction/src/GBTFrame.cxx index 113327cac75be..26a77b02d7cfa 100644 --- a/Detectors/TPC/reconstruction/src/GBTFrame.cxx +++ b/Detectors/TPC/reconstruction/src/GBTFrame.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/GBTFrameContainer.cxx b/Detectors/TPC/reconstruction/src/GBTFrameContainer.cxx index cce8657deeb46..95a0cb57c2162 100644 --- a/Detectors/TPC/reconstruction/src/GBTFrameContainer.cxx +++ b/Detectors/TPC/reconstruction/src/GBTFrameContainer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/HalfSAMPAData.cxx b/Detectors/TPC/reconstruction/src/HalfSAMPAData.cxx index facd04332b2d2..8b57f9bfd4569 100644 --- a/Detectors/TPC/reconstruction/src/HalfSAMPAData.cxx +++ b/Detectors/TPC/reconstruction/src/HalfSAMPAData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/HardwareClusterDecoder.cxx b/Detectors/TPC/reconstruction/src/HardwareClusterDecoder.cxx index a11156a2e0d05..85f58c5dd6c8f 100644 --- a/Detectors/TPC/reconstruction/src/HardwareClusterDecoder.cxx +++ b/Detectors/TPC/reconstruction/src/HardwareClusterDecoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/HwClusterer.cxx b/Detectors/TPC/reconstruction/src/HwClusterer.cxx index f7016bf40ea45..fc804eb1a60db 100644 --- a/Detectors/TPC/reconstruction/src/HwClusterer.cxx +++ b/Detectors/TPC/reconstruction/src/HwClusterer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/HwClustererParam.cxx b/Detectors/TPC/reconstruction/src/HwClustererParam.cxx index 29190bea020ba..a5553042a276b 100644 --- a/Detectors/TPC/reconstruction/src/HwClustererParam.cxx +++ b/Detectors/TPC/reconstruction/src/HwClustererParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/KrBoxClusterFinder.cxx b/Detectors/TPC/reconstruction/src/KrBoxClusterFinder.cxx index df4229c36f52c..c1afd79279853 100644 --- a/Detectors/TPC/reconstruction/src/KrBoxClusterFinder.cxx +++ b/Detectors/TPC/reconstruction/src/KrBoxClusterFinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/KrBoxClusterFinderParam.cxx b/Detectors/TPC/reconstruction/src/KrBoxClusterFinderParam.cxx index 57e5c0633ad87..54178e42cc961 100644 --- a/Detectors/TPC/reconstruction/src/KrBoxClusterFinderParam.cxx +++ b/Detectors/TPC/reconstruction/src/KrBoxClusterFinderParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/RawProcessingHelpers.cxx b/Detectors/TPC/reconstruction/src/RawProcessingHelpers.cxx index 3020a9164b398..7eb419fe6b507 100644 --- a/Detectors/TPC/reconstruction/src/RawProcessingHelpers.cxx +++ b/Detectors/TPC/reconstruction/src/RawProcessingHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/RawReader.cxx b/Detectors/TPC/reconstruction/src/RawReader.cxx index 5e0aeb6994314..f1943226bfb0d 100644 --- a/Detectors/TPC/reconstruction/src/RawReader.cxx +++ b/Detectors/TPC/reconstruction/src/RawReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx b/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx index d693d4df19294..4323393b76acf 100644 --- a/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx +++ b/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/RawReaderEventSync.cxx b/Detectors/TPC/reconstruction/src/RawReaderEventSync.cxx index c8e383f75ba13..b5805e7206dab 100644 --- a/Detectors/TPC/reconstruction/src/RawReaderEventSync.cxx +++ b/Detectors/TPC/reconstruction/src/RawReaderEventSync.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/SyncPatternMonitor.cxx b/Detectors/TPC/reconstruction/src/SyncPatternMonitor.cxx index 3f03df5d14f2a..357e0bc909991 100644 --- a/Detectors/TPC/reconstruction/src/SyncPatternMonitor.cxx +++ b/Detectors/TPC/reconstruction/src/SyncPatternMonitor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/TPCFastTransformHelperO2.cxx b/Detectors/TPC/reconstruction/src/TPCFastTransformHelperO2.cxx index e8b5979231b8d..7a2bcf21d5536 100644 --- a/Detectors/TPC/reconstruction/src/TPCFastTransformHelperO2.cxx +++ b/Detectors/TPC/reconstruction/src/TPCFastTransformHelperO2.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/TPCReconstructionLinkDef.h b/Detectors/TPC/reconstruction/src/TPCReconstructionLinkDef.h index 7b474199c7898..05ed03a5f7462 100644 --- a/Detectors/TPC/reconstruction/src/TPCReconstructionLinkDef.h +++ b/Detectors/TPC/reconstruction/src/TPCReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/src/TPCTrackingDigitsPreCheck.cxx b/Detectors/TPC/reconstruction/src/TPCTrackingDigitsPreCheck.cxx index 0e8baa4a8d133..376298417de23 100644 --- a/Detectors/TPC/reconstruction/src/TPCTrackingDigitsPreCheck.cxx +++ b/Detectors/TPC/reconstruction/src/TPCTrackingDigitsPreCheck.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/test/testGPUCATracking.cxx b/Detectors/TPC/reconstruction/test/testGPUCATracking.cxx index 18d81dc14f047..43e64896ff436 100644 --- a/Detectors/TPC/reconstruction/test/testGPUCATracking.cxx +++ b/Detectors/TPC/reconstruction/test/testGPUCATracking.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/test/testTPCAdcClockMonitor.cxx b/Detectors/TPC/reconstruction/test/testTPCAdcClockMonitor.cxx index b2730918e8b48..e21baee28f2a7 100644 --- a/Detectors/TPC/reconstruction/test/testTPCAdcClockMonitor.cxx +++ b/Detectors/TPC/reconstruction/test/testTPCAdcClockMonitor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/test/testTPCFastTransform.cxx b/Detectors/TPC/reconstruction/test/testTPCFastTransform.cxx index ae088c52054b5..89d81a42cf543 100644 --- a/Detectors/TPC/reconstruction/test/testTPCFastTransform.cxx +++ b/Detectors/TPC/reconstruction/test/testTPCFastTransform.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/test/testTPCHwClusterer.cxx b/Detectors/TPC/reconstruction/test/testTPCHwClusterer.cxx index d6edfe6507f42..407bc203ab08c 100644 --- a/Detectors/TPC/reconstruction/test/testTPCHwClusterer.cxx +++ b/Detectors/TPC/reconstruction/test/testTPCHwClusterer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/reconstruction/test/testTPCSyncPatternMonitor.cxx b/Detectors/TPC/reconstruction/test/testTPCSyncPatternMonitor.cxx index 68ce8581f0f11..b1651d4f5f6e1 100644 --- a/Detectors/TPC/reconstruction/test/testTPCSyncPatternMonitor.cxx +++ b/Detectors/TPC/reconstruction/test/testTPCSyncPatternMonitor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/CMakeLists.txt b/Detectors/TPC/simulation/CMakeLists.txt index dc946a86c19fb..9e1150b9de204 100644 --- a/Detectors/TPC/simulation/CMakeLists.txt +++ b/Detectors/TPC/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TPCSimulation SOURCES src/CommonMode.cxx diff --git a/Detectors/TPC/simulation/include/TPCSimulation/CommonMode.h b/Detectors/TPC/simulation/include/TPCSimulation/CommonMode.h index 5b57401b0de96..ed9e231dc7a7f 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/CommonMode.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/CommonMode.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/include/TPCSimulation/Detector.h b/Detectors/TPC/simulation/include/TPCSimulation/Detector.h index ca94e58779bde..85d43328d087a 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/Detector.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/include/TPCSimulation/DigitContainer.h b/Detectors/TPC/simulation/include/TPCSimulation/DigitContainer.h index 218f2598785a4..4de12c76b8e22 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/DigitContainer.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/DigitContainer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/include/TPCSimulation/DigitGlobalPad.h b/Detectors/TPC/simulation/include/TPCSimulation/DigitGlobalPad.h index 1c046279de6c0..b943ebadf98d1 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/DigitGlobalPad.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/DigitGlobalPad.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/include/TPCSimulation/DigitMCMetaData.h b/Detectors/TPC/simulation/include/TPCSimulation/DigitMCMetaData.h index 5d468ed50ca07..e54957ded73ee 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/DigitMCMetaData.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/DigitMCMetaData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/include/TPCSimulation/DigitTime.h b/Detectors/TPC/simulation/include/TPCSimulation/DigitTime.h index 3d190c5907646..38292bdb2dacf 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/DigitTime.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/DigitTime.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/include/TPCSimulation/Digitizer.h b/Detectors/TPC/simulation/include/TPCSimulation/Digitizer.h index e1120bc242c92..611fee39cd16d 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/Digitizer.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/include/TPCSimulation/ElectronTransport.h b/Detectors/TPC/simulation/include/TPCSimulation/ElectronTransport.h index 19da546c95264..f4a720f630ee4 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/ElectronTransport.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/ElectronTransport.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/include/TPCSimulation/GEMAmplification.h b/Detectors/TPC/simulation/include/TPCSimulation/GEMAmplification.h index d48af5705832f..974324aeac469 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/GEMAmplification.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/GEMAmplification.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/include/TPCSimulation/IDCSim.h b/Detectors/TPC/simulation/include/TPCSimulation/IDCSim.h index 6848a7f61bfd7..7ad150fe69261 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/IDCSim.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/IDCSim.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/include/TPCSimulation/PadResponse.h b/Detectors/TPC/simulation/include/TPCSimulation/PadResponse.h index 072030391aade..159bfef57461e 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/PadResponse.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/PadResponse.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/include/TPCSimulation/Point.h b/Detectors/TPC/simulation/include/TPCSimulation/Point.h index baad3a38fede9..dd477d1d20c33 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/Point.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/Point.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/include/TPCSimulation/SAMPAProcessing.h b/Detectors/TPC/simulation/include/TPCSimulation/SAMPAProcessing.h index 1c1bc2c85b0ee..ca96ff703f1f0 100644 --- a/Detectors/TPC/simulation/include/TPCSimulation/SAMPAProcessing.h +++ b/Detectors/TPC/simulation/include/TPCSimulation/SAMPAProcessing.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/macro/laserTrackGenerator.C b/Detectors/TPC/simulation/macro/laserTrackGenerator.C index 8d4cf36837fb3..cec46b51ad539 100644 --- a/Detectors/TPC/simulation/macro/laserTrackGenerator.C +++ b/Detectors/TPC/simulation/macro/laserTrackGenerator.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/macro/readMCtruth.C b/Detectors/TPC/simulation/macro/readMCtruth.C index b2d0b297a2587..7571187c72fe3 100644 --- a/Detectors/TPC/simulation/macro/readMCtruth.C +++ b/Detectors/TPC/simulation/macro/readMCtruth.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/CommonMode.cxx b/Detectors/TPC/simulation/src/CommonMode.cxx index 82cc1a678ec9e..08fcd3eee873d 100644 --- a/Detectors/TPC/simulation/src/CommonMode.cxx +++ b/Detectors/TPC/simulation/src/CommonMode.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/Detector.cxx b/Detectors/TPC/simulation/src/Detector.cxx index 3d0799faee480..f602c205261f1 100644 --- a/Detectors/TPC/simulation/src/Detector.cxx +++ b/Detectors/TPC/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/DigitContainer.cxx b/Detectors/TPC/simulation/src/DigitContainer.cxx index bcb8d9447736e..44e774358fe2e 100644 --- a/Detectors/TPC/simulation/src/DigitContainer.cxx +++ b/Detectors/TPC/simulation/src/DigitContainer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/DigitGlobalPad.cxx b/Detectors/TPC/simulation/src/DigitGlobalPad.cxx index 302f7f42ae64e..48201f12e1117 100644 --- a/Detectors/TPC/simulation/src/DigitGlobalPad.cxx +++ b/Detectors/TPC/simulation/src/DigitGlobalPad.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/DigitMCMetaData.cxx b/Detectors/TPC/simulation/src/DigitMCMetaData.cxx index 05004e6038c48..97757706e8594 100644 --- a/Detectors/TPC/simulation/src/DigitMCMetaData.cxx +++ b/Detectors/TPC/simulation/src/DigitMCMetaData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/DigitTime.cxx b/Detectors/TPC/simulation/src/DigitTime.cxx index b070708afc63b..9829927178a3f 100644 --- a/Detectors/TPC/simulation/src/DigitTime.cxx +++ b/Detectors/TPC/simulation/src/DigitTime.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/Digitizer.cxx b/Detectors/TPC/simulation/src/Digitizer.cxx index 37ce7bc00bbaa..de3a01c40de7d 100644 --- a/Detectors/TPC/simulation/src/Digitizer.cxx +++ b/Detectors/TPC/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/ElectronTransport.cxx b/Detectors/TPC/simulation/src/ElectronTransport.cxx index fe4ed7a76f5ca..fc871fd3fecee 100644 --- a/Detectors/TPC/simulation/src/ElectronTransport.cxx +++ b/Detectors/TPC/simulation/src/ElectronTransport.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/GEMAmplification.cxx b/Detectors/TPC/simulation/src/GEMAmplification.cxx index d586281acb0ac..a3882bf5f2816 100644 --- a/Detectors/TPC/simulation/src/GEMAmplification.cxx +++ b/Detectors/TPC/simulation/src/GEMAmplification.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/IDCSim.cxx b/Detectors/TPC/simulation/src/IDCSim.cxx index 17bf9269b8849..6dbaded3a513c 100644 --- a/Detectors/TPC/simulation/src/IDCSim.cxx +++ b/Detectors/TPC/simulation/src/IDCSim.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/PadResponse.cxx b/Detectors/TPC/simulation/src/PadResponse.cxx index ebcc2b3fb722a..6b302f419b99f 100644 --- a/Detectors/TPC/simulation/src/PadResponse.cxx +++ b/Detectors/TPC/simulation/src/PadResponse.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/Point.cxx b/Detectors/TPC/simulation/src/Point.cxx index a72669370a741..d3d3ee18b00bd 100644 --- a/Detectors/TPC/simulation/src/Point.cxx +++ b/Detectors/TPC/simulation/src/Point.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/SAMPAProcessing.cxx b/Detectors/TPC/simulation/src/SAMPAProcessing.cxx index 7de42c442243f..ce5122effc258 100644 --- a/Detectors/TPC/simulation/src/SAMPAProcessing.cxx +++ b/Detectors/TPC/simulation/src/SAMPAProcessing.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/src/TPCSimulationLinkDef.h b/Detectors/TPC/simulation/src/TPCSimulationLinkDef.h index 0b010c35e6c6d..104c32e6bdde9 100644 --- a/Detectors/TPC/simulation/src/TPCSimulationLinkDef.h +++ b/Detectors/TPC/simulation/src/TPCSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/test/CMakeLists.txt b/Detectors/TPC/simulation/test/CMakeLists.txt index f3ecb10b4f9aa..cac0c1ef5b839 100644 --- a/Detectors/TPC/simulation/test/CMakeLists.txt +++ b/Detectors/TPC/simulation/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test(DigitContainer LABELS tpc diff --git a/Detectors/TPC/simulation/test/testTPCDigitContainer.cxx b/Detectors/TPC/simulation/test/testTPCDigitContainer.cxx index ed298b4d9bfba..fb333977cb927 100644 --- a/Detectors/TPC/simulation/test/testTPCDigitContainer.cxx +++ b/Detectors/TPC/simulation/test/testTPCDigitContainer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/test/testTPCElectronTransport.cxx b/Detectors/TPC/simulation/test/testTPCElectronTransport.cxx index 69ffede6bd79f..12732a52d7fa7 100644 --- a/Detectors/TPC/simulation/test/testTPCElectronTransport.cxx +++ b/Detectors/TPC/simulation/test/testTPCElectronTransport.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/test/testTPCGEMAmplification.cxx b/Detectors/TPC/simulation/test/testTPCGEMAmplification.cxx index e67857f5c5af1..88db4d3fc5bea 100644 --- a/Detectors/TPC/simulation/test/testTPCGEMAmplification.cxx +++ b/Detectors/TPC/simulation/test/testTPCGEMAmplification.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/test/testTPCSAMPAProcessing.cxx b/Detectors/TPC/simulation/test/testTPCSAMPAProcessing.cxx index ef540e21ea8f8..e92a04be4e51b 100644 --- a/Detectors/TPC/simulation/test/testTPCSAMPAProcessing.cxx +++ b/Detectors/TPC/simulation/test/testTPCSAMPAProcessing.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/simulation/test/testTPCSimulation.cxx b/Detectors/TPC/simulation/test/testTPCSimulation.cxx index 0982ffa7c8c96..1aa20e0472c14 100644 --- a/Detectors/TPC/simulation/test/testTPCSimulation.cxx +++ b/Detectors/TPC/simulation/test/testTPCSimulation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/CMakeLists.txt b/Detectors/TPC/spacecharge/CMakeLists.txt index 5bbf773e2e3c3..431a2c42123dd 100644 --- a/Detectors/TPC/spacecharge/CMakeLists.txt +++ b/Detectors/TPC/spacecharge/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TPCSpaceCharge TARGETVARNAME targetName diff --git a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/DataContainer3D.h b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/DataContainer3D.h index 2f2cbff101cf3..34b29a078876c 100644 --- a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/DataContainer3D.h +++ b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/DataContainer3D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/PoissonSolver.h b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/PoissonSolver.h index c708ea88c1fe2..25dd1f53bd309 100644 --- a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/PoissonSolver.h +++ b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/PoissonSolver.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/PoissonSolverHelpers.h b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/PoissonSolverHelpers.h index 13034c0ba1e16..c000783152edb 100644 --- a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/PoissonSolverHelpers.h +++ b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/PoissonSolverHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/RegularGrid3D.h b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/RegularGrid3D.h index f9a5948ece0ad..3785d6b7b0b86 100644 --- a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/RegularGrid3D.h +++ b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/RegularGrid3D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/SpaceCharge.h b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/SpaceCharge.h index 6c6164b8a7848..41fd9ce4f1895 100644 --- a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/SpaceCharge.h +++ b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/SpaceCharge.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/SpaceChargeHelpers.h b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/SpaceChargeHelpers.h index 2fe08a684ba4a..475608601f148 100644 --- a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/SpaceChargeHelpers.h +++ b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/SpaceChargeHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/TriCubic.h b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/TriCubic.h index 6cef68f2a1b55..f946da4fe2bd3 100644 --- a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/TriCubic.h +++ b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/TriCubic.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/Vector.h b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/Vector.h index a6862291d84dc..a98d0d3050218 100644 --- a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/Vector.h +++ b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/Vector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/Vector3D.h b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/Vector3D.h index bd00405f1c9a7..9338230130932 100644 --- a/Detectors/TPC/spacecharge/include/TPCSpaceCharge/Vector3D.h +++ b/Detectors/TPC/spacecharge/include/TPCSpaceCharge/Vector3D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/macro/createResidualDistortionObject.C b/Detectors/TPC/spacecharge/macro/createResidualDistortionObject.C index f3b7d02f0c750..2ed62df4ab82a 100644 --- a/Detectors/TPC/spacecharge/macro/createResidualDistortionObject.C +++ b/Detectors/TPC/spacecharge/macro/createResidualDistortionObject.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/macro/createSCHistosFromHits.C b/Detectors/TPC/spacecharge/macro/createSCHistosFromHits.C index 8a067ecf8b7a9..dde2adaf237f1 100644 --- a/Detectors/TPC/spacecharge/macro/createSCHistosFromHits.C +++ b/Detectors/TPC/spacecharge/macro/createSCHistosFromHits.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/src/PoissonSolver.cxx b/Detectors/TPC/spacecharge/src/PoissonSolver.cxx index 1a52719225b88..6b6fb8972fd2f 100644 --- a/Detectors/TPC/spacecharge/src/PoissonSolver.cxx +++ b/Detectors/TPC/spacecharge/src/PoissonSolver.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/src/SpaceCharge.cxx b/Detectors/TPC/spacecharge/src/SpaceCharge.cxx index 40aa9307e3d95..4733472aace22 100644 --- a/Detectors/TPC/spacecharge/src/SpaceCharge.cxx +++ b/Detectors/TPC/spacecharge/src/SpaceCharge.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/src/TPCSpacechargeLinkDef.h b/Detectors/TPC/spacecharge/src/TPCSpacechargeLinkDef.h index 1dd77a5bcafd9..1483c98a893d0 100644 --- a/Detectors/TPC/spacecharge/src/TPCSpacechargeLinkDef.h +++ b/Detectors/TPC/spacecharge/src/TPCSpacechargeLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/spacecharge/test/testO2TPCPoissonSolver.cxx b/Detectors/TPC/spacecharge/test/testO2TPCPoissonSolver.cxx index fddd0377db334..906981bd83b33 100644 --- a/Detectors/TPC/spacecharge/test/testO2TPCPoissonSolver.cxx +++ b/Detectors/TPC/spacecharge/test/testO2TPCPoissonSolver.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/CMakeLists.txt b/Detectors/TPC/workflow/CMakeLists.txt index 002c733238eba..6b503bb5aa700 100644 --- a/Detectors/TPC/workflow/CMakeLists.txt +++ b/Detectors/TPC/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TPCWorkflow SOURCES src/RecoWorkflow.cxx diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/CalDetMergerPublisherSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/CalDetMergerPublisherSpec.h index a4f5659f88b61..9d365700582b3 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/CalDetMergerPublisherSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/CalDetMergerPublisherSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/CalibProcessingHelper.h b/Detectors/TPC/workflow/include/TPCWorkflow/CalibProcessingHelper.h index 83a7323e2980c..c1949a6754afa 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/CalibProcessingHelper.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/CalibProcessingHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/ClusterDecoderRawSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/ClusterDecoderRawSpec.h index dc30bfe4f22b4..f1fb0be5ceae5 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/ClusterDecoderRawSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/ClusterDecoderRawSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/ClusterSharingMapSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/ClusterSharingMapSpec.h index c0900b03ea86f..1bade0eec9c4d 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/ClusterSharingMapSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/ClusterSharingMapSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/ClustererSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/ClustererSpec.h index c56324ff14ab4..7ef24528bb651 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/ClustererSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/ClustererSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/EntropyDecoderSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/EntropyDecoderSpec.h index f4f7c2d146ebb..fcd4017e9d8be 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/EntropyDecoderSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/EntropyEncoderSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/EntropyEncoderSpec.h index 50da4378372ca..3425da02686d0 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/EntropyEncoderSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/KryptonClustererSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/KryptonClustererSpec.h index 6792eb932b82c..06aeec965f294 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/KryptonClustererSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/KryptonClustererSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/LinkZSToDigitsSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/LinkZSToDigitsSpec.h index b3439d3f21861..1b9e3fefe77ea 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/LinkZSToDigitsSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/LinkZSToDigitsSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/RawToDigitsSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/RawToDigitsSpec.h index ffacb3a870af2..4cb76f8baa61a 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/RawToDigitsSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/RawToDigitsSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/RecoWorkflow.h b/Detectors/TPC/workflow/include/TPCWorkflow/RecoWorkflow.h index 7136299d7ed0c..5c23bf3f8e8d3 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/RecoWorkflow.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/RecoWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/TPCAggregateGroupedIDCSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/TPCAggregateGroupedIDCSpec.h index 7f1fc9c6651af..3a510b446d5f4 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/TPCAggregateGroupedIDCSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/TPCAggregateGroupedIDCSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/TPCAverageGroupIDCSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/TPCAverageGroupIDCSpec.h index d9e058fcd26cd..23c4cfa696580 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/TPCAverageGroupIDCSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/TPCAverageGroupIDCSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/TPCCalibPedestalSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/TPCCalibPedestalSpec.h index d0bb736c8f2bc..499821a7b98e2 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/TPCCalibPedestalSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/TPCCalibPedestalSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/TPCIntegrateIDCSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/TPCIntegrateIDCSpec.h index 977f7ae3ceb15..99d64220a2238 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/TPCIntegrateIDCSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/TPCIntegrateIDCSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/ZSSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/ZSSpec.h index 7b9eed75a658f..f33ef5d96485a 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/ZSSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/ZSSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/readers/CMakeLists.txt b/Detectors/TPC/workflow/readers/CMakeLists.txt index a1a5293e440b4..f6129a23989d0 100644 --- a/Detectors/TPC/workflow/readers/CMakeLists.txt +++ b/Detectors/TPC/workflow/readers/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TPCReaderWorkflow SOURCES src/ClusterReaderSpec.cxx diff --git a/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/ClusterReaderSpec.h b/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/ClusterReaderSpec.h index 1a24c0748763f..53e2fdee48445 100644 --- a/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/ClusterReaderSpec.h +++ b/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/ClusterReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/PublisherSpec.h b/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/PublisherSpec.h index 4b865c655aada..531bf635a1e5b 100644 --- a/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/PublisherSpec.h +++ b/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/PublisherSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/TPCSectorCompletionPolicy.h b/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/TPCSectorCompletionPolicy.h index eed5e9ca3037a..14dfeb3abab30 100644 --- a/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/TPCSectorCompletionPolicy.h +++ b/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/TPCSectorCompletionPolicy.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/TrackReaderSpec.h b/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/TrackReaderSpec.h index 5858ada6e2f93..b073cff8bdb12 100644 --- a/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/TrackReaderSpec.h +++ b/Detectors/TPC/workflow/readers/include/TPCReaderWorkflow/TrackReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/readers/src/ClusterReaderSpec.cxx b/Detectors/TPC/workflow/readers/src/ClusterReaderSpec.cxx index 7e6f38d1e88cb..fd52412ea05c4 100644 --- a/Detectors/TPC/workflow/readers/src/ClusterReaderSpec.cxx +++ b/Detectors/TPC/workflow/readers/src/ClusterReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/readers/src/PublisherSpec.cxx b/Detectors/TPC/workflow/readers/src/PublisherSpec.cxx index f5a0bc7ba0174..6816a0e607894 100644 --- a/Detectors/TPC/workflow/readers/src/PublisherSpec.cxx +++ b/Detectors/TPC/workflow/readers/src/PublisherSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/readers/src/TrackReaderSpec.cxx b/Detectors/TPC/workflow/readers/src/TrackReaderSpec.cxx index c01c606ebdca3..d3c1eb76a5f63 100644 --- a/Detectors/TPC/workflow/readers/src/TrackReaderSpec.cxx +++ b/Detectors/TPC/workflow/readers/src/TrackReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/CalDetMergerPublisherSpec.cxx b/Detectors/TPC/workflow/src/CalDetMergerPublisherSpec.cxx index cab9f103fb9cc..ff5159b200db2 100644 --- a/Detectors/TPC/workflow/src/CalDetMergerPublisherSpec.cxx +++ b/Detectors/TPC/workflow/src/CalDetMergerPublisherSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/CalibProcessingHelper.cxx b/Detectors/TPC/workflow/src/CalibProcessingHelper.cxx index 15e058497e4f6..7d72bd36a478e 100644 --- a/Detectors/TPC/workflow/src/CalibProcessingHelper.cxx +++ b/Detectors/TPC/workflow/src/CalibProcessingHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/ChunkedDigitPublisher.cxx b/Detectors/TPC/workflow/src/ChunkedDigitPublisher.cxx index 871eded8ed70d..926c85f8d7465 100644 --- a/Detectors/TPC/workflow/src/ChunkedDigitPublisher.cxx +++ b/Detectors/TPC/workflow/src/ChunkedDigitPublisher.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/ClusterDecoderRawSpec.cxx b/Detectors/TPC/workflow/src/ClusterDecoderRawSpec.cxx index 66d9b25966598..015cfdf48f892 100644 --- a/Detectors/TPC/workflow/src/ClusterDecoderRawSpec.cxx +++ b/Detectors/TPC/workflow/src/ClusterDecoderRawSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/ClusterSharingMapSpec.cxx b/Detectors/TPC/workflow/src/ClusterSharingMapSpec.cxx index 512a671e9e9fb..6c49fe5539984 100644 --- a/Detectors/TPC/workflow/src/ClusterSharingMapSpec.cxx +++ b/Detectors/TPC/workflow/src/ClusterSharingMapSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/ClustererSpec.cxx b/Detectors/TPC/workflow/src/ClustererSpec.cxx index 59b3336a840cf..c35b474b2e53d 100644 --- a/Detectors/TPC/workflow/src/ClustererSpec.cxx +++ b/Detectors/TPC/workflow/src/ClustererSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/EntropyDecoderSpec.cxx b/Detectors/TPC/workflow/src/EntropyDecoderSpec.cxx index 1a35e5ea5c1e3..ca1a1d021abeb 100644 --- a/Detectors/TPC/workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/TPC/workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/EntropyEncoderSpec.cxx b/Detectors/TPC/workflow/src/EntropyEncoderSpec.cxx index 575a250dd263e..5ef7b58dfc858 100644 --- a/Detectors/TPC/workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/TPC/workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/FileReaderWorkflow.cxx b/Detectors/TPC/workflow/src/FileReaderWorkflow.cxx index 052485f66d3e8..b083a5133fae9 100644 --- a/Detectors/TPC/workflow/src/FileReaderWorkflow.cxx +++ b/Detectors/TPC/workflow/src/FileReaderWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/KryptonClustererSpec.cxx b/Detectors/TPC/workflow/src/KryptonClustererSpec.cxx index 70182c003a420..b951e022132b2 100644 --- a/Detectors/TPC/workflow/src/KryptonClustererSpec.cxx +++ b/Detectors/TPC/workflow/src/KryptonClustererSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/LinkZSToDigitsSpec.cxx b/Detectors/TPC/workflow/src/LinkZSToDigitsSpec.cxx index 9403cba5f4959..5aec22a921c9a 100644 --- a/Detectors/TPC/workflow/src/LinkZSToDigitsSpec.cxx +++ b/Detectors/TPC/workflow/src/LinkZSToDigitsSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/RawToDigitsSpec.cxx b/Detectors/TPC/workflow/src/RawToDigitsSpec.cxx index b2dd4ceba2b29..fc0456645d976 100644 --- a/Detectors/TPC/workflow/src/RawToDigitsSpec.cxx +++ b/Detectors/TPC/workflow/src/RawToDigitsSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/RecoWorkflow.cxx b/Detectors/TPC/workflow/src/RecoWorkflow.cxx index 7c9b81827f9e1..6d1b88ba7fee5 100644 --- a/Detectors/TPC/workflow/src/RecoWorkflow.cxx +++ b/Detectors/TPC/workflow/src/RecoWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/TrackReaderWorkflow.cxx b/Detectors/TPC/workflow/src/TrackReaderWorkflow.cxx index 8bfa355446f4a..13cf1eaa6b722 100644 --- a/Detectors/TPC/workflow/src/TrackReaderWorkflow.cxx +++ b/Detectors/TPC/workflow/src/TrackReaderWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/ZSSpec.cxx b/Detectors/TPC/workflow/src/ZSSpec.cxx index 2b840f46146b0..1020f5273fe74 100644 --- a/Detectors/TPC/workflow/src/ZSSpec.cxx +++ b/Detectors/TPC/workflow/src/ZSSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/convertDigitsToRawZS.cxx b/Detectors/TPC/workflow/src/convertDigitsToRawZS.cxx index 0d0764bcf1f39..7757f8f9cb155 100644 --- a/Detectors/TPC/workflow/src/convertDigitsToRawZS.cxx +++ b/Detectors/TPC/workflow/src/convertDigitsToRawZS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/tpc-aggregate-grouped-idc.cxx b/Detectors/TPC/workflow/src/tpc-aggregate-grouped-idc.cxx index d7fbf35ac1004..eb368e555c52f 100644 --- a/Detectors/TPC/workflow/src/tpc-aggregate-grouped-idc.cxx +++ b/Detectors/TPC/workflow/src/tpc-aggregate-grouped-idc.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/tpc-averagegroup-idc.cxx b/Detectors/TPC/workflow/src/tpc-averagegroup-idc.cxx index 7c89e821a0751..e7faa373c8647 100644 --- a/Detectors/TPC/workflow/src/tpc-averagegroup-idc.cxx +++ b/Detectors/TPC/workflow/src/tpc-averagegroup-idc.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/tpc-calib-pedestal.cxx b/Detectors/TPC/workflow/src/tpc-calib-pedestal.cxx index f97e6abc1f6ce..02e61a5c88be7 100644 --- a/Detectors/TPC/workflow/src/tpc-calib-pedestal.cxx +++ b/Detectors/TPC/workflow/src/tpc-calib-pedestal.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/tpc-integrate-idc.cxx b/Detectors/TPC/workflow/src/tpc-integrate-idc.cxx index 4c59051e15b00..766d04820e513 100644 --- a/Detectors/TPC/workflow/src/tpc-integrate-idc.cxx +++ b/Detectors/TPC/workflow/src/tpc-integrate-idc.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/tpc-krypton-clusterer.cxx b/Detectors/TPC/workflow/src/tpc-krypton-clusterer.cxx index 704da500c8886..09f5b7036b3c6 100644 --- a/Detectors/TPC/workflow/src/tpc-krypton-clusterer.cxx +++ b/Detectors/TPC/workflow/src/tpc-krypton-clusterer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/tpc-raw-to-digits-workflow.cxx b/Detectors/TPC/workflow/src/tpc-raw-to-digits-workflow.cxx index 2b0431286798f..c3e5e8cc8a4c6 100644 --- a/Detectors/TPC/workflow/src/tpc-raw-to-digits-workflow.cxx +++ b/Detectors/TPC/workflow/src/tpc-raw-to-digits-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/tpc-reco-workflow.cxx b/Detectors/TPC/workflow/src/tpc-reco-workflow.cxx index 069b48896ea71..a490581e2be3f 100644 --- a/Detectors/TPC/workflow/src/tpc-reco-workflow.cxx +++ b/Detectors/TPC/workflow/src/tpc-reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/test/test_TPCWorkflow.cxx b/Detectors/TPC/workflow/test/test_TPCWorkflow.cxx index 83c156851f91b..c7b47ebf4e2e6 100644 --- a/Detectors/TPC/workflow/test/test_TPCWorkflow.cxx +++ b/Detectors/TPC/workflow/test/test_TPCWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/CMakeLists.txt b/Detectors/TRD/CMakeLists.txt index 6adbc1c43d277..fa3b572150a41 100644 --- a/Detectors/TRD/CMakeLists.txt +++ b/Detectors/TRD/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(calibration) diff --git a/Detectors/TRD/base/include/TRDBase/CalDet.h b/Detectors/TRD/base/include/TRDBase/CalDet.h index 9affc767fdcdc..f11423a3aa343 100644 --- a/Detectors/TRD/base/include/TRDBase/CalDet.h +++ b/Detectors/TRD/base/include/TRDBase/CalDet.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/CalOnlineGainTables.h b/Detectors/TRD/base/include/TRDBase/CalOnlineGainTables.h index 2537830bac80c..6dddbbdd92326 100644 --- a/Detectors/TRD/base/include/TRDBase/CalOnlineGainTables.h +++ b/Detectors/TRD/base/include/TRDBase/CalOnlineGainTables.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/CalPad.h b/Detectors/TRD/base/include/TRDBase/CalPad.h index a9708af8d1f49..ecfb062898f9f 100644 --- a/Detectors/TRD/base/include/TRDBase/CalPad.h +++ b/Detectors/TRD/base/include/TRDBase/CalPad.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/CalPadStatus.h b/Detectors/TRD/base/include/TRDBase/CalPadStatus.h index 32a61b5285a61..589e4984331b9 100644 --- a/Detectors/TRD/base/include/TRDBase/CalPadStatus.h +++ b/Detectors/TRD/base/include/TRDBase/CalPadStatus.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/CalROC.h b/Detectors/TRD/base/include/TRDBase/CalROC.h index 3c50ea1c19aa3..02b2d02e7060b 100644 --- a/Detectors/TRD/base/include/TRDBase/CalROC.h +++ b/Detectors/TRD/base/include/TRDBase/CalROC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/CalSingleChamberStatus.h b/Detectors/TRD/base/include/TRDBase/CalSingleChamberStatus.h index d1566ab1b0266..214ae27bfc2dc 100644 --- a/Detectors/TRD/base/include/TRDBase/CalSingleChamberStatus.h +++ b/Detectors/TRD/base/include/TRDBase/CalSingleChamberStatus.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/Calibrations.h b/Detectors/TRD/base/include/TRDBase/Calibrations.h index 3a513b399aa3c..b77e9e34060a2 100644 --- a/Detectors/TRD/base/include/TRDBase/Calibrations.h +++ b/Detectors/TRD/base/include/TRDBase/Calibrations.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/ChamberCalibrations.h b/Detectors/TRD/base/include/TRDBase/ChamberCalibrations.h index 9c433deb76c2e..b946f1646220e 100644 --- a/Detectors/TRD/base/include/TRDBase/ChamberCalibrations.h +++ b/Detectors/TRD/base/include/TRDBase/ChamberCalibrations.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/ChamberNoise.h b/Detectors/TRD/base/include/TRDBase/ChamberNoise.h index a6f4df8785fb6..e8c6e16e49c43 100644 --- a/Detectors/TRD/base/include/TRDBase/ChamberNoise.h +++ b/Detectors/TRD/base/include/TRDBase/ChamberNoise.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/ChamberStatus.h b/Detectors/TRD/base/include/TRDBase/ChamberStatus.h index 642a1a56995c4..7c9965612f81c 100644 --- a/Detectors/TRD/base/include/TRDBase/ChamberStatus.h +++ b/Detectors/TRD/base/include/TRDBase/ChamberStatus.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/CommonParam.h b/Detectors/TRD/base/include/TRDBase/CommonParam.h index e0bc8182ca422..226cc1b20a880 100644 --- a/Detectors/TRD/base/include/TRDBase/CommonParam.h +++ b/Detectors/TRD/base/include/TRDBase/CommonParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/DiffAndTimeStructEstimator.h b/Detectors/TRD/base/include/TRDBase/DiffAndTimeStructEstimator.h index 33f339ec6e3e1..2f6bed81a5c6c 100644 --- a/Detectors/TRD/base/include/TRDBase/DiffAndTimeStructEstimator.h +++ b/Detectors/TRD/base/include/TRDBase/DiffAndTimeStructEstimator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/Digit.h b/Detectors/TRD/base/include/TRDBase/Digit.h index c9cf990c22adb..ff154e6208e05 100644 --- a/Detectors/TRD/base/include/TRDBase/Digit.h +++ b/Detectors/TRD/base/include/TRDBase/Digit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/FeeParam.h b/Detectors/TRD/base/include/TRDBase/FeeParam.h index 216a37f5ad562..01b5c660940ea 100644 --- a/Detectors/TRD/base/include/TRDBase/FeeParam.h +++ b/Detectors/TRD/base/include/TRDBase/FeeParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/Geometry.h b/Detectors/TRD/base/include/TRDBase/Geometry.h index eb9c6573424cf..7a313a220830f 100644 --- a/Detectors/TRD/base/include/TRDBase/Geometry.h +++ b/Detectors/TRD/base/include/TRDBase/Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/GeometryBase.h b/Detectors/TRD/base/include/TRDBase/GeometryBase.h index c40720c9df4b6..c817d21cb7c48 100644 --- a/Detectors/TRD/base/include/TRDBase/GeometryBase.h +++ b/Detectors/TRD/base/include/TRDBase/GeometryBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/GeometryFlat.h b/Detectors/TRD/base/include/TRDBase/GeometryFlat.h index 394c4be5595af..73dd11247dd66 100644 --- a/Detectors/TRD/base/include/TRDBase/GeometryFlat.h +++ b/Detectors/TRD/base/include/TRDBase/GeometryFlat.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/LocalGainFactor.h b/Detectors/TRD/base/include/TRDBase/LocalGainFactor.h index 1129445afc9a2..7d737291a1b64 100644 --- a/Detectors/TRD/base/include/TRDBase/LocalGainFactor.h +++ b/Detectors/TRD/base/include/TRDBase/LocalGainFactor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/LocalT0.h b/Detectors/TRD/base/include/TRDBase/LocalT0.h index ff46a1ad35607..68117af19d239 100644 --- a/Detectors/TRD/base/include/TRDBase/LocalT0.h +++ b/Detectors/TRD/base/include/TRDBase/LocalT0.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/LocalVDrift.h b/Detectors/TRD/base/include/TRDBase/LocalVDrift.h index ee3907f17a474..19dcbae89c057 100644 --- a/Detectors/TRD/base/include/TRDBase/LocalVDrift.h +++ b/Detectors/TRD/base/include/TRDBase/LocalVDrift.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/PadCalibrations.h b/Detectors/TRD/base/include/TRDBase/PadCalibrations.h index f0523a6e9d53f..75e51364bf6eb 100644 --- a/Detectors/TRD/base/include/TRDBase/PadCalibrations.h +++ b/Detectors/TRD/base/include/TRDBase/PadCalibrations.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/PadNoise.h b/Detectors/TRD/base/include/TRDBase/PadNoise.h index aee57cddb85ad..4ac79ecb5c865 100644 --- a/Detectors/TRD/base/include/TRDBase/PadNoise.h +++ b/Detectors/TRD/base/include/TRDBase/PadNoise.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/PadParameters.h b/Detectors/TRD/base/include/TRDBase/PadParameters.h index a147d21f19c99..abbc9e64667d6 100644 --- a/Detectors/TRD/base/include/TRDBase/PadParameters.h +++ b/Detectors/TRD/base/include/TRDBase/PadParameters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/PadPlane.h b/Detectors/TRD/base/include/TRDBase/PadPlane.h index c81053a97cee4..da17ccb8c7c43 100644 --- a/Detectors/TRD/base/include/TRDBase/PadPlane.h +++ b/Detectors/TRD/base/include/TRDBase/PadPlane.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/PadResponse.h b/Detectors/TRD/base/include/TRDBase/PadResponse.h index b655ba847b119..081ed888970f0 100644 --- a/Detectors/TRD/base/include/TRDBase/PadResponse.h +++ b/Detectors/TRD/base/include/TRDBase/PadResponse.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/PadStatus.h b/Detectors/TRD/base/include/TRDBase/PadStatus.h index 1a126185a5c21..b87670fd21175 100644 --- a/Detectors/TRD/base/include/TRDBase/PadStatus.h +++ b/Detectors/TRD/base/include/TRDBase/PadStatus.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/RecoParam.h b/Detectors/TRD/base/include/TRDBase/RecoParam.h index 5c3b478247271..1828a0b1724e9 100644 --- a/Detectors/TRD/base/include/TRDBase/RecoParam.h +++ b/Detectors/TRD/base/include/TRDBase/RecoParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/SimParam.h b/Detectors/TRD/base/include/TRDBase/SimParam.h index cddae38d7f1df..b0c3647ee78f3 100644 --- a/Detectors/TRD/base/include/TRDBase/SimParam.h +++ b/Detectors/TRD/base/include/TRDBase/SimParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/Tracklet.h b/Detectors/TRD/base/include/TRDBase/Tracklet.h index 88d6d042ff35f..934a5ba06494a 100644 --- a/Detectors/TRD/base/include/TRDBase/Tracklet.h +++ b/Detectors/TRD/base/include/TRDBase/Tracklet.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/include/TRDBase/TrackletTransformer.h b/Detectors/TRD/base/include/TRDBase/TrackletTransformer.h index 51588c36146b4..0270cddc9851f 100644 --- a/Detectors/TRD/base/include/TRDBase/TrackletTransformer.h +++ b/Detectors/TRD/base/include/TRDBase/TrackletTransformer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/CalDet.cxx b/Detectors/TRD/base/src/CalDet.cxx index 7fdf6ecd2a6fb..a82233f8853eb 100644 --- a/Detectors/TRD/base/src/CalDet.cxx +++ b/Detectors/TRD/base/src/CalDet.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/CalOnlineGainTables.cxx b/Detectors/TRD/base/src/CalOnlineGainTables.cxx index 6164137870c2f..988c9e27fa79d 100644 --- a/Detectors/TRD/base/src/CalOnlineGainTables.cxx +++ b/Detectors/TRD/base/src/CalOnlineGainTables.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/CalPad.cxx b/Detectors/TRD/base/src/CalPad.cxx index 418e36c51c247..86457092c475c 100644 --- a/Detectors/TRD/base/src/CalPad.cxx +++ b/Detectors/TRD/base/src/CalPad.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/CalPadStatus.cxx b/Detectors/TRD/base/src/CalPadStatus.cxx index de82b5155ba33..16d2ac4ce6660 100644 --- a/Detectors/TRD/base/src/CalPadStatus.cxx +++ b/Detectors/TRD/base/src/CalPadStatus.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/CalROC.cxx b/Detectors/TRD/base/src/CalROC.cxx index 7c52cba96daa3..74ef75a8e2db2 100644 --- a/Detectors/TRD/base/src/CalROC.cxx +++ b/Detectors/TRD/base/src/CalROC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/CalSingleChamberStatus.cxx b/Detectors/TRD/base/src/CalSingleChamberStatus.cxx index f74a3817df95f..33fa4ee9149c7 100644 --- a/Detectors/TRD/base/src/CalSingleChamberStatus.cxx +++ b/Detectors/TRD/base/src/CalSingleChamberStatus.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/Calibrations.cxx b/Detectors/TRD/base/src/Calibrations.cxx index fe251323adfc6..1458562e403b8 100644 --- a/Detectors/TRD/base/src/Calibrations.cxx +++ b/Detectors/TRD/base/src/Calibrations.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/ChamberNoise.cxx b/Detectors/TRD/base/src/ChamberNoise.cxx index f1e48b53fd5db..9e7e87f4afc44 100644 --- a/Detectors/TRD/base/src/ChamberNoise.cxx +++ b/Detectors/TRD/base/src/ChamberNoise.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/ChamberStatus.cxx b/Detectors/TRD/base/src/ChamberStatus.cxx index 46e0a1a83ced0..6a6679d38c3ff 100644 --- a/Detectors/TRD/base/src/ChamberStatus.cxx +++ b/Detectors/TRD/base/src/ChamberStatus.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/CommonParam.cxx b/Detectors/TRD/base/src/CommonParam.cxx index 0e8db565d2661..690a92f39c7eb 100644 --- a/Detectors/TRD/base/src/CommonParam.cxx +++ b/Detectors/TRD/base/src/CommonParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/DiffAndTimeStructEstimator.cxx b/Detectors/TRD/base/src/DiffAndTimeStructEstimator.cxx index 4ed62572f8470..b84ae15eb992b 100644 --- a/Detectors/TRD/base/src/DiffAndTimeStructEstimator.cxx +++ b/Detectors/TRD/base/src/DiffAndTimeStructEstimator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/FeeParam.cxx b/Detectors/TRD/base/src/FeeParam.cxx index f09f46c9fa255..ae1884d65726d 100644 --- a/Detectors/TRD/base/src/FeeParam.cxx +++ b/Detectors/TRD/base/src/FeeParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/Geometry.cxx b/Detectors/TRD/base/src/Geometry.cxx index 361644709bf73..c9f72d203cef7 100644 --- a/Detectors/TRD/base/src/Geometry.cxx +++ b/Detectors/TRD/base/src/Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/GeometryBase.cxx b/Detectors/TRD/base/src/GeometryBase.cxx index 167c9f73899c5..081f818821ff7 100644 --- a/Detectors/TRD/base/src/GeometryBase.cxx +++ b/Detectors/TRD/base/src/GeometryBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/GeometryFlat.cxx b/Detectors/TRD/base/src/GeometryFlat.cxx index 34ca9ee05db9f..b9867e57a0751 100644 --- a/Detectors/TRD/base/src/GeometryFlat.cxx +++ b/Detectors/TRD/base/src/GeometryFlat.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/LocalGainFactor.cxx b/Detectors/TRD/base/src/LocalGainFactor.cxx index 9d187784891f6..1b43c41d48e66 100644 --- a/Detectors/TRD/base/src/LocalGainFactor.cxx +++ b/Detectors/TRD/base/src/LocalGainFactor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/LocalT0.cxx b/Detectors/TRD/base/src/LocalT0.cxx index 04071027523f9..d9f55022ced45 100644 --- a/Detectors/TRD/base/src/LocalT0.cxx +++ b/Detectors/TRD/base/src/LocalT0.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/LocalVDrift.cxx b/Detectors/TRD/base/src/LocalVDrift.cxx index 6f4d9029a9414..f1bd370565f96 100644 --- a/Detectors/TRD/base/src/LocalVDrift.cxx +++ b/Detectors/TRD/base/src/LocalVDrift.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/PadNoise.cxx b/Detectors/TRD/base/src/PadNoise.cxx index ca91e7cb4107f..3913daa0ae859 100644 --- a/Detectors/TRD/base/src/PadNoise.cxx +++ b/Detectors/TRD/base/src/PadNoise.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/PadPlane.cxx b/Detectors/TRD/base/src/PadPlane.cxx index cbbf67258d5cd..3f63562a64e3d 100644 --- a/Detectors/TRD/base/src/PadPlane.cxx +++ b/Detectors/TRD/base/src/PadPlane.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/PadResponse.cxx b/Detectors/TRD/base/src/PadResponse.cxx index c011add451b66..458a16b2e0fe7 100644 --- a/Detectors/TRD/base/src/PadResponse.cxx +++ b/Detectors/TRD/base/src/PadResponse.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/PadStatus.cxx b/Detectors/TRD/base/src/PadStatus.cxx index 2f5e3d1ad6f75..d3a38fbe6433c 100644 --- a/Detectors/TRD/base/src/PadStatus.cxx +++ b/Detectors/TRD/base/src/PadStatus.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/RecoParam.cxx b/Detectors/TRD/base/src/RecoParam.cxx index 8726bda7b0b13..2bca5d0327f5f 100644 --- a/Detectors/TRD/base/src/RecoParam.cxx +++ b/Detectors/TRD/base/src/RecoParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/SimParam.cxx b/Detectors/TRD/base/src/SimParam.cxx index 4555b6788bced..97fb36ed3365c 100644 --- a/Detectors/TRD/base/src/SimParam.cxx +++ b/Detectors/TRD/base/src/SimParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/TRDBaseLinkDef.h b/Detectors/TRD/base/src/TRDBaseLinkDef.h index 04d866e698058..065290df7ecb3 100644 --- a/Detectors/TRD/base/src/TRDBaseLinkDef.h +++ b/Detectors/TRD/base/src/TRDBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/Tracklet.cxx b/Detectors/TRD/base/src/Tracklet.cxx index 723cdffcae627..a7933f49cc1d0 100644 --- a/Detectors/TRD/base/src/Tracklet.cxx +++ b/Detectors/TRD/base/src/Tracklet.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/src/TrackletTransformer.cxx b/Detectors/TRD/base/src/TrackletTransformer.cxx index a1a546a4faad6..275593725dab2 100644 --- a/Detectors/TRD/base/src/TrackletTransformer.cxx +++ b/Detectors/TRD/base/src/TrackletTransformer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/test/testCoordinateTransforms.cxx b/Detectors/TRD/base/test/testCoordinateTransforms.cxx index 1bcfbd56314ed..1e71a86b39560 100644 --- a/Detectors/TRD/base/test/testCoordinateTransforms.cxx +++ b/Detectors/TRD/base/test/testCoordinateTransforms.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/test/testRawData.cxx b/Detectors/TRD/base/test/testRawData.cxx index 145d2db7a761d..e3384d0a42255 100644 --- a/Detectors/TRD/base/test/testRawData.cxx +++ b/Detectors/TRD/base/test/testRawData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/test/testTRDDiffusionCoefficient.cxx b/Detectors/TRD/base/test/testTRDDiffusionCoefficient.cxx index 8b18ada89fb61..d36f9324b0c97 100644 --- a/Detectors/TRD/base/test/testTRDDiffusionCoefficient.cxx +++ b/Detectors/TRD/base/test/testTRDDiffusionCoefficient.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/base/test/testTRDGeometry.cxx b/Detectors/TRD/base/test/testTRDGeometry.cxx index 976f20b9a2699..d37da2efa5148 100644 --- a/Detectors/TRD/base/test/testTRDGeometry.cxx +++ b/Detectors/TRD/base/test/testTRDGeometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/calibration/CMakeLists.txt b/Detectors/TRD/calibration/CMakeLists.txt index 1c70727691f57..9030e88395518 100644 --- a/Detectors/TRD/calibration/CMakeLists.txt +++ b/Detectors/TRD/calibration/CMakeLists.txt @@ -1,12 +1,13 @@ -#Copyright CERN and copyright holders of ALICE O2.This software is distributed -#under the terms of the GNU General Public License v3(GPL Version 3), copied -#verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -#See http: //alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # -#In applying this license CERN does not waive the privileges and immunities -#granted to it by virtue of its status as an Intergovernmental Organization or -#submit itself to any jurisdiction. +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TRDCalibration SOURCES src/TrackBasedCalib.cxx diff --git a/Detectors/TRD/calibration/include/TRDCalibration/CalibratorVdExB.h b/Detectors/TRD/calibration/include/TRDCalibration/CalibratorVdExB.h index d3afc58b2e2bd..d13bd13ab6ff4 100644 --- a/Detectors/TRD/calibration/include/TRDCalibration/CalibratorVdExB.h +++ b/Detectors/TRD/calibration/include/TRDCalibration/CalibratorVdExB.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/calibration/include/TRDCalibration/TrackBasedCalib.h b/Detectors/TRD/calibration/include/TRDCalibration/TrackBasedCalib.h index 39199d0c5cebb..b9b2fa327fdd6 100644 --- a/Detectors/TRD/calibration/include/TRDCalibration/TrackBasedCalib.h +++ b/Detectors/TRD/calibration/include/TRDCalibration/TrackBasedCalib.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/calibration/src/CalibratorVdExB.cxx b/Detectors/TRD/calibration/src/CalibratorVdExB.cxx index 159d2f3b0fd2c..512a574263939 100644 --- a/Detectors/TRD/calibration/src/CalibratorVdExB.cxx +++ b/Detectors/TRD/calibration/src/CalibratorVdExB.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/calibration/src/TRDCalibrationLinkDef.h b/Detectors/TRD/calibration/src/TRDCalibrationLinkDef.h index ae05aa629c319..989a89c58d2de 100644 --- a/Detectors/TRD/calibration/src/TRDCalibrationLinkDef.h +++ b/Detectors/TRD/calibration/src/TRDCalibrationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/calibration/src/TrackBasedCalib.cxx b/Detectors/TRD/calibration/src/TrackBasedCalib.cxx index 025712083a834..cc02c633f6697 100644 --- a/Detectors/TRD/calibration/src/TrackBasedCalib.cxx +++ b/Detectors/TRD/calibration/src/TrackBasedCalib.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/macros/CMakeLists.txt b/Detectors/TRD/macros/CMakeLists.txt index 405687d0f308f..1f91996037189 100644 --- a/Detectors/TRD/macros/CMakeLists.txt +++ b/Detectors/TRD/macros/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(CheckCCDBvalues.C PUBLIC_LINK_LIBRARIES O2::TRDBase diff --git a/Detectors/TRD/macros/CheckCCDBvalues.C b/Detectors/TRD/macros/CheckCCDBvalues.C index 9a9c292ea32e1..80eabc4f1edc6 100644 --- a/Detectors/TRD/macros/CheckCCDBvalues.C +++ b/Detectors/TRD/macros/CheckCCDBvalues.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/macros/CheckDigits.C b/Detectors/TRD/macros/CheckDigits.C index 49fa6d3d07466..14d4c43642c97 100644 --- a/Detectors/TRD/macros/CheckDigits.C +++ b/Detectors/TRD/macros/CheckDigits.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/macros/CheckHits.C b/Detectors/TRD/macros/CheckHits.C index b5c9628fec73d..227f3095e6674 100644 --- a/Detectors/TRD/macros/CheckHits.C +++ b/Detectors/TRD/macros/CheckHits.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/CMakeLists.txt b/Detectors/TRD/reconstruction/CMakeLists.txt index 0245b77a3b481..9d6c550590c37 100644 --- a/Detectors/TRD/reconstruction/CMakeLists.txt +++ b/Detectors/TRD/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -#Copyright CERN and copyright holders of ALICE O2.This software is distributed -#under the terms of the GNU General Public License v3(GPL Version 3), copied -#verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -#See http: //alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # -#In applying this license CERN does not waive the privileges and immunities -#granted to it by virtue of its status as an Intergovernmental Organization or -#submit itself to any jurisdiction. +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TRDReconstruction diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFCoder.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFCoder.h index 7949011f5b495..9274f1871dc74 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFCoder.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFHelper.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFHelper.h index 2d2f67cecf78c..2c81ffc52ce93 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFHelper.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CompressedRawReader.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CompressedRawReader.h index 45b029be6f020..233335a5192d2 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CompressedRawReader.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CompressedRawReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/ConfigEventParser.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/ConfigEventParser.h index 620ca018fe927..f37a6a012e90a 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/ConfigEventParser.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/ConfigEventParser.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruCompressorTask.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruCompressorTask.h index b4a86982f3305..0aa0c0b7932d6 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruCompressorTask.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruCompressorTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h index 0b3ef0f43d841..73e0b3b574413 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h index 406ae1f84ec5b..27fd10b9eb685 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/DigitsParser.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/DigitsParser.h index 1f476ab8e071b..204de6fca7f3a 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/DigitsParser.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/DigitsParser.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/TrackletsParser.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/TrackletsParser.h index 1952d70fd3d5d..1b34eda6c07b1 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/TrackletsParser.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/TrackletsParser.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/src/CTFCoder.cxx b/Detectors/TRD/reconstruction/src/CTFCoder.cxx index f3f90f0a43084..99f8d0109ff78 100644 --- a/Detectors/TRD/reconstruction/src/CTFCoder.cxx +++ b/Detectors/TRD/reconstruction/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/src/CTFHelper.cxx b/Detectors/TRD/reconstruction/src/CTFHelper.cxx index 3fbbb491eef78..e5055694834ab 100644 --- a/Detectors/TRD/reconstruction/src/CTFHelper.cxx +++ b/Detectors/TRD/reconstruction/src/CTFHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/src/CompressedRawReader.cxx b/Detectors/TRD/reconstruction/src/CompressedRawReader.cxx index 5957076fbbd18..23b3fdb21817d 100644 --- a/Detectors/TRD/reconstruction/src/CompressedRawReader.cxx +++ b/Detectors/TRD/reconstruction/src/CompressedRawReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/src/CruCompressor.cxx b/Detectors/TRD/reconstruction/src/CruCompressor.cxx index 79f7ca89f3333..85fd3baceb8f4 100644 --- a/Detectors/TRD/reconstruction/src/CruCompressor.cxx +++ b/Detectors/TRD/reconstruction/src/CruCompressor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/src/CruCompressorTask.cxx b/Detectors/TRD/reconstruction/src/CruCompressorTask.cxx index 714b896124e28..76467cb076df8 100644 --- a/Detectors/TRD/reconstruction/src/CruCompressorTask.cxx +++ b/Detectors/TRD/reconstruction/src/CruCompressorTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/src/CruRawReader.cxx b/Detectors/TRD/reconstruction/src/CruRawReader.cxx index 8aa193cbfe468..ffa7dbf1dd8d5 100644 --- a/Detectors/TRD/reconstruction/src/CruRawReader.cxx +++ b/Detectors/TRD/reconstruction/src/CruRawReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/src/DataReader.cxx b/Detectors/TRD/reconstruction/src/DataReader.cxx index ee913ee1b4423..a83d61554018a 100644 --- a/Detectors/TRD/reconstruction/src/DataReader.cxx +++ b/Detectors/TRD/reconstruction/src/DataReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/src/DataReaderTask.cxx b/Detectors/TRD/reconstruction/src/DataReaderTask.cxx index 43a6d893ba047..9641bee9715c3 100644 --- a/Detectors/TRD/reconstruction/src/DataReaderTask.cxx +++ b/Detectors/TRD/reconstruction/src/DataReaderTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/src/DigitsParser.cxx b/Detectors/TRD/reconstruction/src/DigitsParser.cxx index 5e35939287ece..98ad1175bbd80 100644 --- a/Detectors/TRD/reconstruction/src/DigitsParser.cxx +++ b/Detectors/TRD/reconstruction/src/DigitsParser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/src/TRDReconstructionLinkDef.h b/Detectors/TRD/reconstruction/src/TRDReconstructionLinkDef.h index 71519a02a652e..c85dd2d378ccb 100644 --- a/Detectors/TRD/reconstruction/src/TRDReconstructionLinkDef.h +++ b/Detectors/TRD/reconstruction/src/TRDReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/reconstruction/src/TrackletsParser.cxx b/Detectors/TRD/reconstruction/src/TrackletsParser.cxx index 1bd35d02d14c7..65bab2bf6b2a4 100644 --- a/Detectors/TRD/reconstruction/src/TrackletsParser.cxx +++ b/Detectors/TRD/reconstruction/src/TrackletsParser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/CMakeLists.txt b/Detectors/TRD/simulation/CMakeLists.txt index b253478a60c4e..74fc0d27f2425 100644 --- a/Detectors/TRD/simulation/CMakeLists.txt +++ b/Detectors/TRD/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TRDSimulation TARGETVARNAME targetName diff --git a/Detectors/TRD/simulation/include/TRDSimulation/Detector.h b/Detectors/TRD/simulation/include/TRDSimulation/Detector.h index e3b87657ebf4c..0341e0a96fce6 100644 --- a/Detectors/TRD/simulation/include/TRDSimulation/Detector.h +++ b/Detectors/TRD/simulation/include/TRDSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/include/TRDSimulation/Digitizer.h b/Detectors/TRD/simulation/include/TRDSimulation/Digitizer.h index 480eada2b84dd..d3c9154443140 100644 --- a/Detectors/TRD/simulation/include/TRDSimulation/Digitizer.h +++ b/Detectors/TRD/simulation/include/TRDSimulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/include/TRDSimulation/PileupTool.h b/Detectors/TRD/simulation/include/TRDSimulation/PileupTool.h index eb0010b4e065e..5ad5b5620e152 100644 --- a/Detectors/TRD/simulation/include/TRDSimulation/PileupTool.h +++ b/Detectors/TRD/simulation/include/TRDSimulation/PileupTool.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/include/TRDSimulation/TRDSimParams.h b/Detectors/TRD/simulation/include/TRDSimulation/TRDSimParams.h index ed70e61b5d062..9be3e46f69956 100644 --- a/Detectors/TRD/simulation/include/TRDSimulation/TRDSimParams.h +++ b/Detectors/TRD/simulation/include/TRDSimulation/TRDSimParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/include/TRDSimulation/TRsim.h b/Detectors/TRD/simulation/include/TRDSimulation/TRsim.h index f182e1d4f05a9..9c7eb8b61f24d 100644 --- a/Detectors/TRD/simulation/include/TRDSimulation/TRsim.h +++ b/Detectors/TRD/simulation/include/TRDSimulation/TRsim.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/include/TRDSimulation/Trap2CRU.h b/Detectors/TRD/simulation/include/TRDSimulation/Trap2CRU.h index 49932fa839087..e30013d965721 100644 --- a/Detectors/TRD/simulation/include/TRDSimulation/Trap2CRU.h +++ b/Detectors/TRD/simulation/include/TRDSimulation/Trap2CRU.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/include/TRDSimulation/TrapConfig.h b/Detectors/TRD/simulation/include/TRDSimulation/TrapConfig.h index 8f527eb3063d3..e867f195fbe69 100644 --- a/Detectors/TRD/simulation/include/TRDSimulation/TrapConfig.h +++ b/Detectors/TRD/simulation/include/TRDSimulation/TrapConfig.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/include/TRDSimulation/TrapConfigHandler.h b/Detectors/TRD/simulation/include/TRDSimulation/TrapConfigHandler.h index 0d20a63c6eb46..2345957a14eca 100644 --- a/Detectors/TRD/simulation/include/TRDSimulation/TrapConfigHandler.h +++ b/Detectors/TRD/simulation/include/TRDSimulation/TrapConfigHandler.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/include/TRDSimulation/TrapSimulator.h b/Detectors/TRD/simulation/include/TRDSimulation/TrapSimulator.h index 4a2bed412e266..1829a5d18420b 100644 --- a/Detectors/TRD/simulation/include/TRDSimulation/TrapSimulator.h +++ b/Detectors/TRD/simulation/include/TRDSimulation/TrapSimulator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/src/Detector.cxx b/Detectors/TRD/simulation/src/Detector.cxx index 731392d8c24e8..1b7b9df816497 100644 --- a/Detectors/TRD/simulation/src/Detector.cxx +++ b/Detectors/TRD/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/src/Digitizer.cxx b/Detectors/TRD/simulation/src/Digitizer.cxx index c51de1cf7f2db..f706607757700 100644 --- a/Detectors/TRD/simulation/src/Digitizer.cxx +++ b/Detectors/TRD/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/src/PileupTool.cxx b/Detectors/TRD/simulation/src/PileupTool.cxx index 8fea3bd1aa357..63a4f625f3324 100644 --- a/Detectors/TRD/simulation/src/PileupTool.cxx +++ b/Detectors/TRD/simulation/src/PileupTool.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/src/TRDSimParams.cxx b/Detectors/TRD/simulation/src/TRDSimParams.cxx index 1ce2abcf5be27..8709bd91e3649 100644 --- a/Detectors/TRD/simulation/src/TRDSimParams.cxx +++ b/Detectors/TRD/simulation/src/TRDSimParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/src/TRDSimulationLinkDef.h b/Detectors/TRD/simulation/src/TRDSimulationLinkDef.h index 3b198ca97ea27..858becbdba596 100644 --- a/Detectors/TRD/simulation/src/TRDSimulationLinkDef.h +++ b/Detectors/TRD/simulation/src/TRDSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/src/TRsim.cxx b/Detectors/TRD/simulation/src/TRsim.cxx index 8b2b282e2220c..717078426935b 100644 --- a/Detectors/TRD/simulation/src/TRsim.cxx +++ b/Detectors/TRD/simulation/src/TRsim.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/src/Trap2CRU.cxx b/Detectors/TRD/simulation/src/Trap2CRU.cxx index a93619e76580a..60390b7536fe8 100644 --- a/Detectors/TRD/simulation/src/Trap2CRU.cxx +++ b/Detectors/TRD/simulation/src/Trap2CRU.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/src/TrapConfig.cxx b/Detectors/TRD/simulation/src/TrapConfig.cxx index d55e0da9569a4..d02c2bc4b230f 100644 --- a/Detectors/TRD/simulation/src/TrapConfig.cxx +++ b/Detectors/TRD/simulation/src/TrapConfig.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/src/TrapConfigHandler.cxx b/Detectors/TRD/simulation/src/TrapConfigHandler.cxx index 09abc75a2bcce..a0c2685d2e670 100644 --- a/Detectors/TRD/simulation/src/TrapConfigHandler.cxx +++ b/Detectors/TRD/simulation/src/TrapConfigHandler.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/src/TrapSimulator.cxx b/Detectors/TRD/simulation/src/TrapSimulator.cxx index 3f2c3ae5a8af1..dd606d6922647 100644 --- a/Detectors/TRD/simulation/src/TrapSimulator.cxx +++ b/Detectors/TRD/simulation/src/TrapSimulator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/src/trap2raw.cxx b/Detectors/TRD/simulation/src/trap2raw.cxx index 7948a362de602..fb7dc5db13580 100644 --- a/Detectors/TRD/simulation/src/trap2raw.cxx +++ b/Detectors/TRD/simulation/src/trap2raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/simulation/test/testPileupTool.cxx b/Detectors/TRD/simulation/test/testPileupTool.cxx index ba4da8670eb8e..2e6e0f439e715 100644 --- a/Detectors/TRD/simulation/test/testPileupTool.cxx +++ b/Detectors/TRD/simulation/test/testPileupTool.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/CMakeLists.txt b/Detectors/TRD/workflow/CMakeLists.txt index 8f385e53049a2..ba457c884fae2 100644 --- a/Detectors/TRD/workflow/CMakeLists.txt +++ b/Detectors/TRD/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(io) diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/EntropyDecoderSpec.h b/Detectors/TRD/workflow/include/TRDWorkflow/EntropyDecoderSpec.h index 58936b7678b93..dc5857560f4d4 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/EntropyDecoderSpec.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/EntropyEncoderSpec.h b/Detectors/TRD/workflow/include/TRDWorkflow/EntropyEncoderSpec.h index e473062cef7a8..2a49faf23374e 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/EntropyEncoderSpec.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/TRDDigitizerSpec.h b/Detectors/TRD/workflow/include/TRDWorkflow/TRDDigitizerSpec.h index 0db95eb36da7f..34107036f44f5 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/TRDDigitizerSpec.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/TRDDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/TRDGlobalTrackingSpec.h b/Detectors/TRD/workflow/include/TRDWorkflow/TRDGlobalTrackingSpec.h index 5f702a3e22da6..1df530e7d3f3d 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/TRDGlobalTrackingSpec.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/TRDGlobalTrackingSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackingWorkflow.h b/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackingWorkflow.h index 6f22715fde603..4a3565e83c26e 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackingWorkflow.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackingWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackletTransformerSpec.h b/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackletTransformerSpec.h index ffbc41f026a37..ee92d14b7332f 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackletTransformerSpec.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackletTransformerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrapSimulatorSpec.h b/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrapSimulatorSpec.h index 5fa2d83e6fce9..0c4395bba886d 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrapSimulatorSpec.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrapSimulatorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/TrackBasedCalibSpec.h b/Detectors/TRD/workflow/include/TRDWorkflow/TrackBasedCalibSpec.h index 4ba2e3d64a944..90d9688f96aaa 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/TrackBasedCalibSpec.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/TrackBasedCalibSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/VdAndExBCalibSpec.h b/Detectors/TRD/workflow/include/TRDWorkflow/VdAndExBCalibSpec.h index 3a53401ae4bb7..7f6998b6d0605 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/VdAndExBCalibSpec.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/VdAndExBCalibSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/CMakeLists.txt b/Detectors/TRD/workflow/io/CMakeLists.txt index e9e20a0f8ba01..86dbb02fe05cc 100644 --- a/Detectors/TRD/workflow/io/CMakeLists.txt +++ b/Detectors/TRD/workflow/io/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TRDWorkflowIO SOURCES src/TRDDigitReaderSpec.cxx diff --git a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDCalibReaderSpec.h b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDCalibReaderSpec.h index 104740766e751..3f1dde950744d 100644 --- a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDCalibReaderSpec.h +++ b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDCalibReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDCalibWriterSpec.h b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDCalibWriterSpec.h index 540600b202ecb..f9b2f21831032 100644 --- a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDCalibWriterSpec.h +++ b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDCalibWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDCalibratedTrackletWriterSpec.h b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDCalibratedTrackletWriterSpec.h index bf62beed66acf..e8e9bb71b7495 100644 --- a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDCalibratedTrackletWriterSpec.h +++ b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDCalibratedTrackletWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDDigitReaderSpec.h b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDDigitReaderSpec.h index ef5a1aef95cf0..c642af3cb2665 100644 --- a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDDigitReaderSpec.h +++ b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDDigitReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDDigitWriterSpec.h b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDDigitWriterSpec.h index 4a9bb3738319a..827928a2c2118 100644 --- a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDDigitWriterSpec.h +++ b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDDigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackReaderSpec.h b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackReaderSpec.h index 26b95df1b8aec..f031fd13e73c4 100644 --- a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackReaderSpec.h +++ b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackWriterSpec.h b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackWriterSpec.h index 540590a51a9e2..dbb9952bb6d6e 100644 --- a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackWriterSpec.h +++ b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackletReaderSpec.h b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackletReaderSpec.h index 8445f505356ce..0f14ca89afcc4 100644 --- a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackletReaderSpec.h +++ b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackletReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackletWriterSpec.h b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackletWriterSpec.h index be73582adbe2e..78e3473503a4a 100644 --- a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackletWriterSpec.h +++ b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackletWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrapRawWriterSpec.h b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrapRawWriterSpec.h index 82189f7affe7f..7a9363589f585 100644 --- a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrapRawWriterSpec.h +++ b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrapRawWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/src/TRDCalibReaderSpec.cxx b/Detectors/TRD/workflow/io/src/TRDCalibReaderSpec.cxx index 479404392e875..450f8b40c6df5 100644 --- a/Detectors/TRD/workflow/io/src/TRDCalibReaderSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDCalibReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/src/TRDCalibWriterSpec.cxx b/Detectors/TRD/workflow/io/src/TRDCalibWriterSpec.cxx index e9ae03345a42f..054b55ee66622 100644 --- a/Detectors/TRD/workflow/io/src/TRDCalibWriterSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDCalibWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/src/TRDCalibratedTrackletWriterSpec.cxx b/Detectors/TRD/workflow/io/src/TRDCalibratedTrackletWriterSpec.cxx index 35143374c978b..81fccf77fea2a 100644 --- a/Detectors/TRD/workflow/io/src/TRDCalibratedTrackletWriterSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDCalibratedTrackletWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/src/TRDDigitReaderSpec.cxx b/Detectors/TRD/workflow/io/src/TRDDigitReaderSpec.cxx index 887dc604e3a56..5190a484e16df 100644 --- a/Detectors/TRD/workflow/io/src/TRDDigitReaderSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDDigitReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/src/TRDDigitWriterSpec.cxx b/Detectors/TRD/workflow/io/src/TRDDigitWriterSpec.cxx index 26d803c14d7bd..c24f24ab82a8a 100644 --- a/Detectors/TRD/workflow/io/src/TRDDigitWriterSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDDigitWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/src/TRDTrackReaderSpec.cxx b/Detectors/TRD/workflow/io/src/TRDTrackReaderSpec.cxx index 2c2701846f886..ce7468e3eaee4 100644 --- a/Detectors/TRD/workflow/io/src/TRDTrackReaderSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDTrackReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/src/TRDTrackWriterSpec.cxx b/Detectors/TRD/workflow/io/src/TRDTrackWriterSpec.cxx index 4bb4703949261..c99915132d2cf 100644 --- a/Detectors/TRD/workflow/io/src/TRDTrackWriterSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDTrackWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/src/TRDTrackletReaderSpec.cxx b/Detectors/TRD/workflow/io/src/TRDTrackletReaderSpec.cxx index 04229b530a285..615c861a91f22 100644 --- a/Detectors/TRD/workflow/io/src/TRDTrackletReaderSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDTrackletReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/src/TRDTrackletWriterSpec.cxx b/Detectors/TRD/workflow/io/src/TRDTrackletWriterSpec.cxx index e5713d470a496..0b42453997db3 100644 --- a/Detectors/TRD/workflow/io/src/TRDTrackletWriterSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDTrackletWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/src/TRDTrapRawWriterSpec.cxx b/Detectors/TRD/workflow/io/src/TRDTrapRawWriterSpec.cxx index 80ba9f9dff0ff..87c88b5157532 100644 --- a/Detectors/TRD/workflow/io/src/TRDTrapRawWriterSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDTrapRawWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/io/src/trd-track-reader-workflow.cxx b/Detectors/TRD/workflow/io/src/trd-track-reader-workflow.cxx index ef53d3c4a2bbc..301849e8947be 100644 --- a/Detectors/TRD/workflow/io/src/trd-track-reader-workflow.cxx +++ b/Detectors/TRD/workflow/io/src/trd-track-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/EntropyDecoderSpec.cxx b/Detectors/TRD/workflow/src/EntropyDecoderSpec.cxx index 7eacc4aaf3e4a..9fd140f4d3ef6 100644 --- a/Detectors/TRD/workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/TRD/workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/EntropyEncoderSpec.cxx b/Detectors/TRD/workflow/src/EntropyEncoderSpec.cxx index 8d4385d83b27a..0f0febe19d1f9 100644 --- a/Detectors/TRD/workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/TRD/workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/TRDDigitizerSpec.cxx b/Detectors/TRD/workflow/src/TRDDigitizerSpec.cxx index 522da864b85f9..9666fc3ea28e8 100644 --- a/Detectors/TRD/workflow/src/TRDDigitizerSpec.cxx +++ b/Detectors/TRD/workflow/src/TRDDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx b/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx index 4d8e45158a782..62fee748369a8 100644 --- a/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx +++ b/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/TRDTrackingWorkflow.cxx b/Detectors/TRD/workflow/src/TRDTrackingWorkflow.cxx index 1a9a17bc42d96..fa2c7eab9cc2e 100644 --- a/Detectors/TRD/workflow/src/TRDTrackingWorkflow.cxx +++ b/Detectors/TRD/workflow/src/TRDTrackingWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/TRDTrackletTransformerSpec.cxx b/Detectors/TRD/workflow/src/TRDTrackletTransformerSpec.cxx index 7c59abed3da44..8772bd328aac4 100644 --- a/Detectors/TRD/workflow/src/TRDTrackletTransformerSpec.cxx +++ b/Detectors/TRD/workflow/src/TRDTrackletTransformerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/TRDTrackletTransformerWorkflow.cxx b/Detectors/TRD/workflow/src/TRDTrackletTransformerWorkflow.cxx index dfcccaa8fadb3..96e5a1df7ee5e 100644 --- a/Detectors/TRD/workflow/src/TRDTrackletTransformerWorkflow.cxx +++ b/Detectors/TRD/workflow/src/TRDTrackletTransformerWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/TRDTrapSimulatorSpec.cxx b/Detectors/TRD/workflow/src/TRDTrapSimulatorSpec.cxx index 66f791f2e48d7..c8a0a742c1f46 100644 --- a/Detectors/TRD/workflow/src/TRDTrapSimulatorSpec.cxx +++ b/Detectors/TRD/workflow/src/TRDTrapSimulatorSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/TRDTrapSimulatorWorkFlow.cxx b/Detectors/TRD/workflow/src/TRDTrapSimulatorWorkFlow.cxx index 9c4fe038f0000..4c9b5145e892f 100644 --- a/Detectors/TRD/workflow/src/TRDTrapSimulatorWorkFlow.cxx +++ b/Detectors/TRD/workflow/src/TRDTrapSimulatorWorkFlow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/TRDWorkflowLinkDef.h b/Detectors/TRD/workflow/src/TRDWorkflowLinkDef.h index e109530d22899..e11449dcf481d 100644 --- a/Detectors/TRD/workflow/src/TRDWorkflowLinkDef.h +++ b/Detectors/TRD/workflow/src/TRDWorkflowLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/TrackBasedCalibSpec.cxx b/Detectors/TRD/workflow/src/TrackBasedCalibSpec.cxx index 463de2bdbe7a6..7243c56aaaaa8 100644 --- a/Detectors/TRD/workflow/src/TrackBasedCalibSpec.cxx +++ b/Detectors/TRD/workflow/src/TrackBasedCalibSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/entropy-encoder-workflow.cxx b/Detectors/TRD/workflow/src/entropy-encoder-workflow.cxx index 2da7d8bafb6e4..e38cf67f7b872 100644 --- a/Detectors/TRD/workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/TRD/workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/trd-calib-workflow.cxx b/Detectors/TRD/workflow/src/trd-calib-workflow.cxx index 6a48eeee5f146..eba8461f9f590 100644 --- a/Detectors/TRD/workflow/src/trd-calib-workflow.cxx +++ b/Detectors/TRD/workflow/src/trd-calib-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TRD/workflow/src/trd-tracking-workflow.cxx b/Detectors/TRD/workflow/src/trd-tracking-workflow.cxx index 86ce6f5f506cf..b4c00daa96547 100644 --- a/Detectors/TRD/workflow/src/trd-tracking-workflow.cxx +++ b/Detectors/TRD/workflow/src/trd-tracking-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/AOD/CMakeLists.txt b/Detectors/Upgrades/ALICE3/AOD/CMakeLists.txt index b3e6d9b9ee3d2..e1c59f6a325be 100644 --- a/Detectors/Upgrades/ALICE3/AOD/CMakeLists.txt +++ b/Detectors/Upgrades/ALICE3/AOD/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(UpgradesAODUtils SOURCES src/Run2LikeAO2D.cxx diff --git a/Detectors/Upgrades/ALICE3/AOD/include/UpgradesAODUtils/Run2LikeAO2D.h b/Detectors/Upgrades/ALICE3/AOD/include/UpgradesAODUtils/Run2LikeAO2D.h index b43cf3999fa3b..9088914bf4a63 100644 --- a/Detectors/Upgrades/ALICE3/AOD/include/UpgradesAODUtils/Run2LikeAO2D.h +++ b/Detectors/Upgrades/ALICE3/AOD/include/UpgradesAODUtils/Run2LikeAO2D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/AOD/src/Run2LikeAO2D.cxx b/Detectors/Upgrades/ALICE3/AOD/src/Run2LikeAO2D.cxx index 9841f60d5cdbb..c01c3181cf454 100644 --- a/Detectors/Upgrades/ALICE3/AOD/src/Run2LikeAO2D.cxx +++ b/Detectors/Upgrades/ALICE3/AOD/src/Run2LikeAO2D.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/AOD/src/UpgradesAODUtilsLinkDef.h b/Detectors/Upgrades/ALICE3/AOD/src/UpgradesAODUtilsLinkDef.h index 55dee0b91d5d8..e5b45bbcd779e 100644 --- a/Detectors/Upgrades/ALICE3/AOD/src/UpgradesAODUtilsLinkDef.h +++ b/Detectors/Upgrades/ALICE3/AOD/src/UpgradesAODUtilsLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/CMakeLists.txt b/Detectors/Upgrades/ALICE3/CMakeLists.txt index 4d561ecdaba59..3aa6f4bbf613b 100644 --- a/Detectors/Upgrades/ALICE3/CMakeLists.txt +++ b/Detectors/Upgrades/ALICE3/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Passive) add_subdirectory(TRK) diff --git a/Detectors/Upgrades/ALICE3/FT3/CMakeLists.txt b/Detectors/Upgrades/ALICE3/FT3/CMakeLists.txt index 532a914632a0c..2d9ff8a9ac78e 100644 --- a/Detectors/Upgrades/ALICE3/FT3/CMakeLists.txt +++ b/Detectors/Upgrades/ALICE3/FT3/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(simulation) add_subdirectory(base) diff --git a/Detectors/Upgrades/ALICE3/FT3/base/CMakeLists.txt b/Detectors/Upgrades/ALICE3/FT3/base/CMakeLists.txt index da9964410435c..3e4925e78bd11 100644 --- a/Detectors/Upgrades/ALICE3/FT3/base/CMakeLists.txt +++ b/Detectors/Upgrades/ALICE3/FT3/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FT3Base SOURCES src/GeometryTGeo.cxx diff --git a/Detectors/Upgrades/ALICE3/FT3/base/include/FT3Base/GeometryTGeo.h b/Detectors/Upgrades/ALICE3/FT3/base/include/FT3Base/GeometryTGeo.h index 38ee598d6dadb..fe57a6ad25e46 100644 --- a/Detectors/Upgrades/ALICE3/FT3/base/include/FT3Base/GeometryTGeo.h +++ b/Detectors/Upgrades/ALICE3/FT3/base/include/FT3Base/GeometryTGeo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/FT3/base/src/FT3BaseLinkDef.h b/Detectors/Upgrades/ALICE3/FT3/base/src/FT3BaseLinkDef.h index 1ca810bbbb7fa..0a732ea1ec39b 100644 --- a/Detectors/Upgrades/ALICE3/FT3/base/src/FT3BaseLinkDef.h +++ b/Detectors/Upgrades/ALICE3/FT3/base/src/FT3BaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/FT3/base/src/GeometryTGeo.cxx b/Detectors/Upgrades/ALICE3/FT3/base/src/GeometryTGeo.cxx index 86ced428738f5..13fdf99e39115 100644 --- a/Detectors/Upgrades/ALICE3/FT3/base/src/GeometryTGeo.cxx +++ b/Detectors/Upgrades/ALICE3/FT3/base/src/GeometryTGeo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/FT3/simulation/CMakeLists.txt b/Detectors/Upgrades/ALICE3/FT3/simulation/CMakeLists.txt index 2b436585f8470..89f8c23797fac 100644 --- a/Detectors/Upgrades/ALICE3/FT3/simulation/CMakeLists.txt +++ b/Detectors/Upgrades/ALICE3/FT3/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(FT3Simulation SOURCES src/FT3Layer.cxx diff --git a/Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/Detector.h b/Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/Detector.h index 57878d6779472..530047b5060a7 100644 --- a/Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/Detector.h +++ b/Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/FT3Layer.h b/Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/FT3Layer.h index 1802d53ae181f..ad087ad979728 100644 --- a/Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/FT3Layer.h +++ b/Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/FT3Layer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx b/Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx index b8a4ce350de08..6d3beabb4ded8 100644 --- a/Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx +++ b/Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/FT3/simulation/src/FT3Layer.cxx b/Detectors/Upgrades/ALICE3/FT3/simulation/src/FT3Layer.cxx index 0bd1f4171acec..867d62492067b 100644 --- a/Detectors/Upgrades/ALICE3/FT3/simulation/src/FT3Layer.cxx +++ b/Detectors/Upgrades/ALICE3/FT3/simulation/src/FT3Layer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/FT3/simulation/src/FT3SimulationLinkDef.h b/Detectors/Upgrades/ALICE3/FT3/simulation/src/FT3SimulationLinkDef.h index 02c16d9a6cf12..3908f9aa71e5e 100644 --- a/Detectors/Upgrades/ALICE3/FT3/simulation/src/FT3SimulationLinkDef.h +++ b/Detectors/Upgrades/ALICE3/FT3/simulation/src/FT3SimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/Passive/CMakeLists.txt b/Detectors/Upgrades/ALICE3/Passive/CMakeLists.txt index 92347923e71e1..7333d7584a7cc 100644 --- a/Detectors/Upgrades/ALICE3/Passive/CMakeLists.txt +++ b/Detectors/Upgrades/ALICE3/Passive/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(Alice3DetectorsPassive SOURCES src/Pipe.cxx diff --git a/Detectors/Upgrades/ALICE3/Passive/include/Alice3DetectorsPassive/PassiveBase.h b/Detectors/Upgrades/ALICE3/Passive/include/Alice3DetectorsPassive/PassiveBase.h index 3946377d1c917..47a915ffe3077 100644 --- a/Detectors/Upgrades/ALICE3/Passive/include/Alice3DetectorsPassive/PassiveBase.h +++ b/Detectors/Upgrades/ALICE3/Passive/include/Alice3DetectorsPassive/PassiveBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/Passive/include/Alice3DetectorsPassive/Pipe.h b/Detectors/Upgrades/ALICE3/Passive/include/Alice3DetectorsPassive/Pipe.h index 9e1caf550c149..80d9d58f95d4a 100644 --- a/Detectors/Upgrades/ALICE3/Passive/include/Alice3DetectorsPassive/Pipe.h +++ b/Detectors/Upgrades/ALICE3/Passive/include/Alice3DetectorsPassive/Pipe.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/Passive/src/PassiveBase.cxx b/Detectors/Upgrades/ALICE3/Passive/src/PassiveBase.cxx index 15f91171e38db..d6c0ec2cadb6c 100644 --- a/Detectors/Upgrades/ALICE3/Passive/src/PassiveBase.cxx +++ b/Detectors/Upgrades/ALICE3/Passive/src/PassiveBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/Passive/src/PassiveLinkDef.h b/Detectors/Upgrades/ALICE3/Passive/src/PassiveLinkDef.h index 813dd04a180c1..bab082778a4c2 100644 --- a/Detectors/Upgrades/ALICE3/Passive/src/PassiveLinkDef.h +++ b/Detectors/Upgrades/ALICE3/Passive/src/PassiveLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/Passive/src/Pipe.cxx b/Detectors/Upgrades/ALICE3/Passive/src/Pipe.cxx index a78f82f6f0438..877514115ec3f 100644 --- a/Detectors/Upgrades/ALICE3/Passive/src/Pipe.cxx +++ b/Detectors/Upgrades/ALICE3/Passive/src/Pipe.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/CMakeLists.txt b/Detectors/Upgrades/ALICE3/TRK/CMakeLists.txt index 4d58e2495d96f..8851edcdd17d5 100644 --- a/Detectors/Upgrades/ALICE3/TRK/CMakeLists.txt +++ b/Detectors/Upgrades/ALICE3/TRK/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(simulation) add_subdirectory(base) diff --git a/Detectors/Upgrades/ALICE3/TRK/base/CMakeLists.txt b/Detectors/Upgrades/ALICE3/TRK/base/CMakeLists.txt index fdd2f81a51017..9107c0fa9e812 100644 --- a/Detectors/Upgrades/ALICE3/TRK/base/CMakeLists.txt +++ b/Detectors/Upgrades/ALICE3/TRK/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TRKBase SOURCES src/MisalignmentParameter.cxx diff --git a/Detectors/Upgrades/ALICE3/TRK/base/include/TRKBase/GeometryTGeo.h b/Detectors/Upgrades/ALICE3/TRK/base/include/TRKBase/GeometryTGeo.h index 9c289f5243a54..7db4f2d724bc6 100644 --- a/Detectors/Upgrades/ALICE3/TRK/base/include/TRKBase/GeometryTGeo.h +++ b/Detectors/Upgrades/ALICE3/TRK/base/include/TRKBase/GeometryTGeo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/base/include/TRKBase/MisalignmentParameter.h b/Detectors/Upgrades/ALICE3/TRK/base/include/TRKBase/MisalignmentParameter.h index 9c6c5c1f5bfab..5b1e2fec2b13c 100644 --- a/Detectors/Upgrades/ALICE3/TRK/base/include/TRKBase/MisalignmentParameter.h +++ b/Detectors/Upgrades/ALICE3/TRK/base/include/TRKBase/MisalignmentParameter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/base/src/GeometryTGeo.cxx b/Detectors/Upgrades/ALICE3/TRK/base/src/GeometryTGeo.cxx index e4c7c5447df2d..b2e860898422a 100644 --- a/Detectors/Upgrades/ALICE3/TRK/base/src/GeometryTGeo.cxx +++ b/Detectors/Upgrades/ALICE3/TRK/base/src/GeometryTGeo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/base/src/MisalignmentParameter.cxx b/Detectors/Upgrades/ALICE3/TRK/base/src/MisalignmentParameter.cxx index ba16a754938c9..b0ee2b9ca617a 100644 --- a/Detectors/Upgrades/ALICE3/TRK/base/src/MisalignmentParameter.cxx +++ b/Detectors/Upgrades/ALICE3/TRK/base/src/MisalignmentParameter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/base/src/TRKBaseLinkDef.h b/Detectors/Upgrades/ALICE3/TRK/base/src/TRKBaseLinkDef.h index c773fbe3e13bb..524b6431c58cf 100644 --- a/Detectors/Upgrades/ALICE3/TRK/base/src/TRKBaseLinkDef.h +++ b/Detectors/Upgrades/ALICE3/TRK/base/src/TRKBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/macros/CMakeLists.txt b/Detectors/Upgrades/ALICE3/TRK/macros/CMakeLists.txt index f134bdc6c7800..1640b69511409 100644 --- a/Detectors/Upgrades/ALICE3/TRK/macros/CMakeLists.txt +++ b/Detectors/Upgrades/ALICE3/TRK/macros/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(test) diff --git a/Detectors/Upgrades/ALICE3/TRK/macros/test/CMakeLists.txt b/Detectors/Upgrades/ALICE3/TRK/macros/test/CMakeLists.txt index 73aa18e55d56b..bbfd7adac2b9e 100644 --- a/Detectors/Upgrades/ALICE3/TRK/macros/test/CMakeLists.txt +++ b/Detectors/Upgrades/ALICE3/TRK/macros/test/CMakeLists.txt @@ -1,9 +1,10 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/CMakeLists.txt b/Detectors/Upgrades/ALICE3/TRK/simulation/CMakeLists.txt index 9b99ee26b445c..436196e4da2ea 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/CMakeLists.txt +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(TRKSimulation SOURCES src/V11Geometry.cxx src/V1Layer.cxx src/V3Layer.cxx diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/Detector.h b/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/Detector.h index 73e5b4991963e..d0397ff9189bb 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/Detector.h +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V11Geometry.h b/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V11Geometry.h index 3e73c519cd9c8..b0e2d3e5a0d47 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V11Geometry.h +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V11Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V1Layer.h b/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V1Layer.h index e338cb3a3a837..a3325a30e93a1 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V1Layer.h +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V1Layer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V3Layer.h b/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V3Layer.h index 2180ebb487b84..2698d508c3938 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V3Layer.h +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V3Layer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V3Services.h b/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V3Services.h index 58e2c918f7ace..26f060fbec6c5 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V3Services.h +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/include/TRKSimulation/V3Services.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/src/Detector.cxx b/Detectors/Upgrades/ALICE3/TRK/simulation/src/Detector.cxx index d09a5f9724fd4..b998050f9440d 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/src/Detector.cxx +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/src/TRKSimulationLinkDef.h b/Detectors/Upgrades/ALICE3/TRK/simulation/src/TRKSimulationLinkDef.h index 959b89136db28..d2449d28293e2 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/src/TRKSimulationLinkDef.h +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/src/TRKSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/src/V11Geometry.cxx b/Detectors/Upgrades/ALICE3/TRK/simulation/src/V11Geometry.cxx index a341a322ff539..8328bbdc5f0f4 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/src/V11Geometry.cxx +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/src/V11Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/src/V1Layer.cxx b/Detectors/Upgrades/ALICE3/TRK/simulation/src/V1Layer.cxx index e190a5390a31f..8be0023afb7cc 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/src/V1Layer.cxx +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/src/V1Layer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/src/V3Layer.cxx b/Detectors/Upgrades/ALICE3/TRK/simulation/src/V3Layer.cxx index 062dd419f26c1..372d7d7191fe5 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/src/V3Layer.cxx +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/src/V3Layer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/src/V3Services.cxx b/Detectors/Upgrades/ALICE3/TRK/simulation/src/V3Services.cxx index f7e3362298098..415815c699dc8 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/src/V3Services.cxx +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/src/V3Services.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/CMakeLists.txt b/Detectors/Upgrades/CMakeLists.txt index c87ff88e6997f..291c1bc465329 100644 --- a/Detectors/Upgrades/CMakeLists.txt +++ b/Detectors/Upgrades/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. message(STATUS "Building detectors for upgrades") add_subdirectory(IT3) diff --git a/Detectors/Upgrades/IT3/CMakeLists.txt b/Detectors/Upgrades/IT3/CMakeLists.txt index feaa1875c8418..55190f923bc94 100644 --- a/Detectors/Upgrades/IT3/CMakeLists.txt +++ b/Detectors/Upgrades/IT3/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(simulation) add_subdirectory(base) diff --git a/Detectors/Upgrades/IT3/base/CMakeLists.txt b/Detectors/Upgrades/IT3/base/CMakeLists.txt index d004e6e5c9d38..8edcba1549c03 100644 --- a/Detectors/Upgrades/IT3/base/CMakeLists.txt +++ b/Detectors/Upgrades/IT3/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITS3Base SOURCES src/MisalignmentParameter.cxx diff --git a/Detectors/Upgrades/IT3/base/include/ITS3Base/GeometryTGeo.h b/Detectors/Upgrades/IT3/base/include/ITS3Base/GeometryTGeo.h index 2857cf19c86f4..02366ba4f3ff4 100644 --- a/Detectors/Upgrades/IT3/base/include/ITS3Base/GeometryTGeo.h +++ b/Detectors/Upgrades/IT3/base/include/ITS3Base/GeometryTGeo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/base/include/ITS3Base/MisalignmentParameter.h b/Detectors/Upgrades/IT3/base/include/ITS3Base/MisalignmentParameter.h index df44e3a517a5e..b0f572ca5891a 100644 --- a/Detectors/Upgrades/IT3/base/include/ITS3Base/MisalignmentParameter.h +++ b/Detectors/Upgrades/IT3/base/include/ITS3Base/MisalignmentParameter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/base/include/ITS3Base/SegmentationSuperAlpide.h b/Detectors/Upgrades/IT3/base/include/ITS3Base/SegmentationSuperAlpide.h index 36e51c0e97715..f8f557193c291 100644 --- a/Detectors/Upgrades/IT3/base/include/ITS3Base/SegmentationSuperAlpide.h +++ b/Detectors/Upgrades/IT3/base/include/ITS3Base/SegmentationSuperAlpide.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/base/src/GeometryTGeo.cxx b/Detectors/Upgrades/IT3/base/src/GeometryTGeo.cxx index 3e525c12a5288..cc349fea8c44a 100644 --- a/Detectors/Upgrades/IT3/base/src/GeometryTGeo.cxx +++ b/Detectors/Upgrades/IT3/base/src/GeometryTGeo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/base/src/ITS3BaseLinkDef.h b/Detectors/Upgrades/IT3/base/src/ITS3BaseLinkDef.h index 308ab5fbc22cc..8b7b225f3749c 100644 --- a/Detectors/Upgrades/IT3/base/src/ITS3BaseLinkDef.h +++ b/Detectors/Upgrades/IT3/base/src/ITS3BaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/base/src/MisalignmentParameter.cxx b/Detectors/Upgrades/IT3/base/src/MisalignmentParameter.cxx index 8562ea757e36c..8b86523a69fce 100644 --- a/Detectors/Upgrades/IT3/base/src/MisalignmentParameter.cxx +++ b/Detectors/Upgrades/IT3/base/src/MisalignmentParameter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/base/src/SegmentationSuperAlpide.cxx b/Detectors/Upgrades/IT3/base/src/SegmentationSuperAlpide.cxx index d0ce388c8ce34..10ce7f9a98fb4 100644 --- a/Detectors/Upgrades/IT3/base/src/SegmentationSuperAlpide.cxx +++ b/Detectors/Upgrades/IT3/base/src/SegmentationSuperAlpide.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/macros/CMakeLists.txt b/Detectors/Upgrades/IT3/macros/CMakeLists.txt index e2058e7d098e1..7904ec5695801 100644 --- a/Detectors/Upgrades/IT3/macros/CMakeLists.txt +++ b/Detectors/Upgrades/IT3/macros/CMakeLists.txt @@ -1,11 +1,12 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(test) \ No newline at end of file diff --git a/Detectors/Upgrades/IT3/macros/test/CMakeLists.txt b/Detectors/Upgrades/IT3/macros/test/CMakeLists.txt index b9dc7b791093f..bf89e984fa0e9 100644 --- a/Detectors/Upgrades/IT3/macros/test/CMakeLists.txt +++ b/Detectors/Upgrades/IT3/macros/test/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(CheckDigitsITS3.C PUBLIC_LINK_LIBRARIES O2::ITSBase diff --git a/Detectors/Upgrades/IT3/reconstruction/CMakeLists.txt b/Detectors/Upgrades/IT3/reconstruction/CMakeLists.txt index e4c183fb0a3ad..e32106dfe261f 100644 --- a/Detectors/Upgrades/IT3/reconstruction/CMakeLists.txt +++ b/Detectors/Upgrades/IT3/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITS3Reconstruction TARGETVARNAME targetName diff --git a/Detectors/Upgrades/IT3/reconstruction/include/ITS3Reconstruction/Clusterer.h b/Detectors/Upgrades/IT3/reconstruction/include/ITS3Reconstruction/Clusterer.h index d760d78f0f9fe..9be735ec39e4b 100644 --- a/Detectors/Upgrades/IT3/reconstruction/include/ITS3Reconstruction/Clusterer.h +++ b/Detectors/Upgrades/IT3/reconstruction/include/ITS3Reconstruction/Clusterer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/reconstruction/include/ITS3Reconstruction/TopologyDictionary.h b/Detectors/Upgrades/IT3/reconstruction/include/ITS3Reconstruction/TopologyDictionary.h index dad2ab4f4ddd7..03b84e5336c29 100644 --- a/Detectors/Upgrades/IT3/reconstruction/include/ITS3Reconstruction/TopologyDictionary.h +++ b/Detectors/Upgrades/IT3/reconstruction/include/ITS3Reconstruction/TopologyDictionary.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/reconstruction/src/Clusterer.cxx b/Detectors/Upgrades/IT3/reconstruction/src/Clusterer.cxx index 8b835c67f4ddd..9224af44c795d 100644 --- a/Detectors/Upgrades/IT3/reconstruction/src/Clusterer.cxx +++ b/Detectors/Upgrades/IT3/reconstruction/src/Clusterer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/reconstruction/src/ITS3ReconstructionLinkDef.h b/Detectors/Upgrades/IT3/reconstruction/src/ITS3ReconstructionLinkDef.h index a9c299c288dc8..012a991a0e840 100644 --- a/Detectors/Upgrades/IT3/reconstruction/src/ITS3ReconstructionLinkDef.h +++ b/Detectors/Upgrades/IT3/reconstruction/src/ITS3ReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/reconstruction/src/TopologyDictionary.cxx b/Detectors/Upgrades/IT3/reconstruction/src/TopologyDictionary.cxx index 6f46c17dd023e..ea632ea39401e 100644 --- a/Detectors/Upgrades/IT3/reconstruction/src/TopologyDictionary.cxx +++ b/Detectors/Upgrades/IT3/reconstruction/src/TopologyDictionary.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/simulation/CMakeLists.txt b/Detectors/Upgrades/IT3/simulation/CMakeLists.txt index c41c669762410..12553dd45f551 100644 --- a/Detectors/Upgrades/IT3/simulation/CMakeLists.txt +++ b/Detectors/Upgrades/IT3/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITS3Simulation SOURCES src/V11Geometry.cxx src/V3Layer.cxx diff --git a/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/Detector.h b/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/Detector.h index 866f8126dffbd..3fbd07b8ada9c 100644 --- a/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/Detector.h +++ b/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/Digitizer.h b/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/Digitizer.h index b1c1f409de646..1ec5fce5beb39 100644 --- a/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/Digitizer.h +++ b/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/V11Geometry.h b/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/V11Geometry.h index 61fde8da92bbf..12d0fc9ab38cc 100644 --- a/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/V11Geometry.h +++ b/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/V11Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/V3Layer.h b/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/V3Layer.h index f4b90ba9c1f32..b5f31d3b03264 100644 --- a/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/V3Layer.h +++ b/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/V3Layer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/V3Services.h b/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/V3Services.h index 24bde2a7be48e..3241e36517610 100644 --- a/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/V3Services.h +++ b/Detectors/Upgrades/IT3/simulation/include/ITS3Simulation/V3Services.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/simulation/src/Detector.cxx b/Detectors/Upgrades/IT3/simulation/src/Detector.cxx index ce2cbfdf68b2b..8660d33b79ef8 100644 --- a/Detectors/Upgrades/IT3/simulation/src/Detector.cxx +++ b/Detectors/Upgrades/IT3/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/simulation/src/Digitizer.cxx b/Detectors/Upgrades/IT3/simulation/src/Digitizer.cxx index b4d2303be8ae7..267be2426106a 100644 --- a/Detectors/Upgrades/IT3/simulation/src/Digitizer.cxx +++ b/Detectors/Upgrades/IT3/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/simulation/src/ITS3SimulationLinkDef.h b/Detectors/Upgrades/IT3/simulation/src/ITS3SimulationLinkDef.h index ee37a08f313f7..0d39aa497c59c 100644 --- a/Detectors/Upgrades/IT3/simulation/src/ITS3SimulationLinkDef.h +++ b/Detectors/Upgrades/IT3/simulation/src/ITS3SimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/simulation/src/V11Geometry.cxx b/Detectors/Upgrades/IT3/simulation/src/V11Geometry.cxx index 57a9caddb5ebc..658d00c3c5549 100644 --- a/Detectors/Upgrades/IT3/simulation/src/V11Geometry.cxx +++ b/Detectors/Upgrades/IT3/simulation/src/V11Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/simulation/src/V3Layer.cxx b/Detectors/Upgrades/IT3/simulation/src/V3Layer.cxx index e8d5b697afc25..2a15f13c99bf0 100644 --- a/Detectors/Upgrades/IT3/simulation/src/V3Layer.cxx +++ b/Detectors/Upgrades/IT3/simulation/src/V3Layer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/simulation/src/V3Services.cxx b/Detectors/Upgrades/IT3/simulation/src/V3Services.cxx index c1ace97d0843f..bcba51ea056a0 100644 --- a/Detectors/Upgrades/IT3/simulation/src/V3Services.cxx +++ b/Detectors/Upgrades/IT3/simulation/src/V3Services.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/CMakeLists.txt b/Detectors/Upgrades/IT3/workflow/CMakeLists.txt index 38da178e34ec8..559c007bdd2f5 100644 --- a/Detectors/Upgrades/IT3/workflow/CMakeLists.txt +++ b/Detectors/Upgrades/IT3/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ITS3Workflow SOURCES src/DigitReaderSpec.cxx diff --git a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClusterReaderSpec.h b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClusterReaderSpec.h index 43bb85f4931de..2453653544f25 100644 --- a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClusterReaderSpec.h +++ b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClusterReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClusterWriterSpec.h b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClusterWriterSpec.h index d3a3935900b0e..49106871d89d5 100644 --- a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClusterWriterSpec.h +++ b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClusterWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClusterWriterWorkflow.h b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClusterWriterWorkflow.h index 40f693e57df46..05268e7ca3a1e 100644 --- a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClusterWriterWorkflow.h +++ b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClusterWriterWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClustererSpec.h b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClustererSpec.h index 4c38c32617682..c1dd586a86766 100644 --- a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClustererSpec.h +++ b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/ClustererSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/DigitReaderSpec.h b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/DigitReaderSpec.h index 69ae88473db78..9d0379aa77d78 100644 --- a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/DigitReaderSpec.h +++ b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/DigitReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/DigitWriterSpec.h b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/DigitWriterSpec.h index 6324c1b989b09..309c515d92b93 100644 --- a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/DigitWriterSpec.h +++ b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/DigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/RecoWorkflow.h b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/RecoWorkflow.h index 7f492f3cd9c73..0d4dbe0564e41 100644 --- a/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/RecoWorkflow.h +++ b/Detectors/Upgrades/IT3/workflow/include/ITS3Workflow/RecoWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/src/ClusterReaderSpec.cxx b/Detectors/Upgrades/IT3/workflow/src/ClusterReaderSpec.cxx index eddd1ef9ecb49..6df7e6915dda2 100644 --- a/Detectors/Upgrades/IT3/workflow/src/ClusterReaderSpec.cxx +++ b/Detectors/Upgrades/IT3/workflow/src/ClusterReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/src/ClusterWriterSpec.cxx b/Detectors/Upgrades/IT3/workflow/src/ClusterWriterSpec.cxx index 69afa17f50c3d..1e9722e2718fe 100644 --- a/Detectors/Upgrades/IT3/workflow/src/ClusterWriterSpec.cxx +++ b/Detectors/Upgrades/IT3/workflow/src/ClusterWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/src/ClusterWriterWorkflow.cxx b/Detectors/Upgrades/IT3/workflow/src/ClusterWriterWorkflow.cxx index fee976f6b30ea..ae79b7797d57d 100644 --- a/Detectors/Upgrades/IT3/workflow/src/ClusterWriterWorkflow.cxx +++ b/Detectors/Upgrades/IT3/workflow/src/ClusterWriterWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/src/ClustererSpec.cxx b/Detectors/Upgrades/IT3/workflow/src/ClustererSpec.cxx index 7eb458bf79194..d92f1cbeaeb51 100644 --- a/Detectors/Upgrades/IT3/workflow/src/ClustererSpec.cxx +++ b/Detectors/Upgrades/IT3/workflow/src/ClustererSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/src/DigitReaderSpec.cxx b/Detectors/Upgrades/IT3/workflow/src/DigitReaderSpec.cxx index e1e30fa3826e9..574ca48df6fa1 100644 --- a/Detectors/Upgrades/IT3/workflow/src/DigitReaderSpec.cxx +++ b/Detectors/Upgrades/IT3/workflow/src/DigitReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/src/DigitWriterSpec.cxx b/Detectors/Upgrades/IT3/workflow/src/DigitWriterSpec.cxx index ff80fb3315f53..43c30d8880343 100644 --- a/Detectors/Upgrades/IT3/workflow/src/DigitWriterSpec.cxx +++ b/Detectors/Upgrades/IT3/workflow/src/DigitWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/src/RecoWorkflow.cxx b/Detectors/Upgrades/IT3/workflow/src/RecoWorkflow.cxx index 41fbc51792a62..325687aafac48 100644 --- a/Detectors/Upgrades/IT3/workflow/src/RecoWorkflow.cxx +++ b/Detectors/Upgrades/IT3/workflow/src/RecoWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/src/digit-reader-workflow.cxx b/Detectors/Upgrades/IT3/workflow/src/digit-reader-workflow.cxx index 4f226d4a88617..6bddb3ba6810b 100644 --- a/Detectors/Upgrades/IT3/workflow/src/digit-reader-workflow.cxx +++ b/Detectors/Upgrades/IT3/workflow/src/digit-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/src/digit-writer-workflow.cxx b/Detectors/Upgrades/IT3/workflow/src/digit-writer-workflow.cxx index 0bf3a90cd70a7..9d6c3c8ecfda8 100644 --- a/Detectors/Upgrades/IT3/workflow/src/digit-writer-workflow.cxx +++ b/Detectors/Upgrades/IT3/workflow/src/digit-writer-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/IT3/workflow/src/its3-reco-workflow.cxx b/Detectors/Upgrades/IT3/workflow/src/its3-reco-workflow.cxx index ce8e42835d285..436d4a5080bb1 100644 --- a/Detectors/Upgrades/IT3/workflow/src/its3-reco-workflow.cxx +++ b/Detectors/Upgrades/IT3/workflow/src/its3-reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/CMakeLists.txt b/Detectors/Vertexing/CMakeLists.txt index fdf2fa39c3307..f876a779eb2ab 100644 --- a/Detectors/Vertexing/CMakeLists.txt +++ b/Detectors/Vertexing/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DetectorsVertexing TARGETVARNAME targetName diff --git a/Detectors/Vertexing/include/DetectorsVertexing/DCAFitterN.h b/Detectors/Vertexing/include/DetectorsVertexing/DCAFitterN.h index 9e942cd270919..17a6b51792d95 100644 --- a/Detectors/Vertexing/include/DetectorsVertexing/DCAFitterN.h +++ b/Detectors/Vertexing/include/DetectorsVertexing/DCAFitterN.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/include/DetectorsVertexing/HelixHelper.h b/Detectors/Vertexing/include/DetectorsVertexing/HelixHelper.h index 514b79b2ba617..4888c217a49d7 100644 --- a/Detectors/Vertexing/include/DetectorsVertexing/HelixHelper.h +++ b/Detectors/Vertexing/include/DetectorsVertexing/HelixHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/include/DetectorsVertexing/PVertexer.h b/Detectors/Vertexing/include/DetectorsVertexing/PVertexer.h index 88452091a68ff..049879036335e 100644 --- a/Detectors/Vertexing/include/DetectorsVertexing/PVertexer.h +++ b/Detectors/Vertexing/include/DetectorsVertexing/PVertexer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/include/DetectorsVertexing/PVertexerHelpers.h b/Detectors/Vertexing/include/DetectorsVertexing/PVertexerHelpers.h index 3de83698ed27a..563a208896f33 100644 --- a/Detectors/Vertexing/include/DetectorsVertexing/PVertexerHelpers.h +++ b/Detectors/Vertexing/include/DetectorsVertexing/PVertexerHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/include/DetectorsVertexing/PVertexerParams.h b/Detectors/Vertexing/include/DetectorsVertexing/PVertexerParams.h index 1fd626bfd57f8..be82807a392cc 100644 --- a/Detectors/Vertexing/include/DetectorsVertexing/PVertexerParams.h +++ b/Detectors/Vertexing/include/DetectorsVertexing/PVertexerParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/include/DetectorsVertexing/SVertexHypothesis.h b/Detectors/Vertexing/include/DetectorsVertexing/SVertexHypothesis.h index 39c94fb5935ac..8309e79e3424e 100644 --- a/Detectors/Vertexing/include/DetectorsVertexing/SVertexHypothesis.h +++ b/Detectors/Vertexing/include/DetectorsVertexing/SVertexHypothesis.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/include/DetectorsVertexing/SVertexer.h b/Detectors/Vertexing/include/DetectorsVertexing/SVertexer.h index 55ddd35a62b37..0441518497a6a 100644 --- a/Detectors/Vertexing/include/DetectorsVertexing/SVertexer.h +++ b/Detectors/Vertexing/include/DetectorsVertexing/SVertexer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/include/DetectorsVertexing/SVertexerParams.h b/Detectors/Vertexing/include/DetectorsVertexing/SVertexerParams.h index 11da6d42ecc9c..ce97c198c5663 100644 --- a/Detectors/Vertexing/include/DetectorsVertexing/SVertexerParams.h +++ b/Detectors/Vertexing/include/DetectorsVertexing/SVertexerParams.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/include/DetectorsVertexing/VertexTrackMatcher.h b/Detectors/Vertexing/include/DetectorsVertexing/VertexTrackMatcher.h index b4734e74d9c11..2bb12624120c9 100644 --- a/Detectors/Vertexing/include/DetectorsVertexing/VertexTrackMatcher.h +++ b/Detectors/Vertexing/include/DetectorsVertexing/VertexTrackMatcher.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/src/DCAFitterN.cxx b/Detectors/Vertexing/src/DCAFitterN.cxx index 204794651a9ed..e585648418bbc 100644 --- a/Detectors/Vertexing/src/DCAFitterN.cxx +++ b/Detectors/Vertexing/src/DCAFitterN.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/src/DetectorsVertexingLinkDef.h b/Detectors/Vertexing/src/DetectorsVertexingLinkDef.h index 18226a237995c..6b0ef714ed82c 100644 --- a/Detectors/Vertexing/src/DetectorsVertexingLinkDef.h +++ b/Detectors/Vertexing/src/DetectorsVertexingLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/src/PVertexer.cxx b/Detectors/Vertexing/src/PVertexer.cxx index 10cbd8db23d79..68ac04b2e9f1f 100644 --- a/Detectors/Vertexing/src/PVertexer.cxx +++ b/Detectors/Vertexing/src/PVertexer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/src/PVertexerHelpers.cxx b/Detectors/Vertexing/src/PVertexerHelpers.cxx index 5fc734ac68d7b..7881bbf9bc4b7 100644 --- a/Detectors/Vertexing/src/PVertexerHelpers.cxx +++ b/Detectors/Vertexing/src/PVertexerHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/src/PVertexerParams.cxx b/Detectors/Vertexing/src/PVertexerParams.cxx index d18d70057f310..1ddfce357339b 100644 --- a/Detectors/Vertexing/src/PVertexerParams.cxx +++ b/Detectors/Vertexing/src/PVertexerParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/src/SVertexHypothesis.cxx b/Detectors/Vertexing/src/SVertexHypothesis.cxx index ab770217d3575..e8b9cbff9528f 100644 --- a/Detectors/Vertexing/src/SVertexHypothesis.cxx +++ b/Detectors/Vertexing/src/SVertexHypothesis.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/src/SVertexer.cxx b/Detectors/Vertexing/src/SVertexer.cxx index 0c8120d4135be..dd37794607a9c 100644 --- a/Detectors/Vertexing/src/SVertexer.cxx +++ b/Detectors/Vertexing/src/SVertexer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/src/SVertexerParams.cxx b/Detectors/Vertexing/src/SVertexerParams.cxx index 802910be6c97b..bd80ca97d856c 100644 --- a/Detectors/Vertexing/src/SVertexerParams.cxx +++ b/Detectors/Vertexing/src/SVertexerParams.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/src/VertexTrackMatcher.cxx b/Detectors/Vertexing/src/VertexTrackMatcher.cxx index 13bb82b09699c..90e85f3f0921b 100644 --- a/Detectors/Vertexing/src/VertexTrackMatcher.cxx +++ b/Detectors/Vertexing/src/VertexTrackMatcher.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Vertexing/test/testDCAFitterN.cxx b/Detectors/Vertexing/test/testDCAFitterN.cxx index 7d7ff7e2da5d0..562ce6fca4ee5 100644 --- a/Detectors/Vertexing/test/testDCAFitterN.cxx +++ b/Detectors/Vertexing/test/testDCAFitterN.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/CMakeLists.txt b/Detectors/ZDC/CMakeLists.txt index c5884cb4c86e7..8a21afda4a4aa 100644 --- a/Detectors/ZDC/CMakeLists.txt +++ b/Detectors/ZDC/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(base) add_subdirectory(simulation) diff --git a/Detectors/ZDC/base/CMakeLists.txt b/Detectors/ZDC/base/CMakeLists.txt index fdde6627203db..49cbb36fe1520 100644 --- a/Detectors/ZDC/base/CMakeLists.txt +++ b/Detectors/ZDC/base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ZDCBase SOURCES src/Geometry.cxx src/ModuleConfig.cxx diff --git a/Detectors/ZDC/base/include/ZDCBase/Constants.h b/Detectors/ZDC/base/include/ZDCBase/Constants.h index 95f4d99b2ac02..e9ea66868dbd0 100644 --- a/Detectors/ZDC/base/include/ZDCBase/Constants.h +++ b/Detectors/ZDC/base/include/ZDCBase/Constants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/base/include/ZDCBase/Geometry.h b/Detectors/ZDC/base/include/ZDCBase/Geometry.h index c4228e27a2d32..6691e19162499 100644 --- a/Detectors/ZDC/base/include/ZDCBase/Geometry.h +++ b/Detectors/ZDC/base/include/ZDCBase/Geometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/base/include/ZDCBase/ModuleConfig.h b/Detectors/ZDC/base/include/ZDCBase/ModuleConfig.h index 10548369121cf..b9f7f650aace3 100644 --- a/Detectors/ZDC/base/include/ZDCBase/ModuleConfig.h +++ b/Detectors/ZDC/base/include/ZDCBase/ModuleConfig.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/base/src/Geometry.cxx b/Detectors/ZDC/base/src/Geometry.cxx index 3bf36a97801f4..572c1c8e3a557 100644 --- a/Detectors/ZDC/base/src/Geometry.cxx +++ b/Detectors/ZDC/base/src/Geometry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/base/src/ModuleConfig.cxx b/Detectors/ZDC/base/src/ModuleConfig.cxx index 0f787c3780a06..2f3417a493c1a 100644 --- a/Detectors/ZDC/base/src/ModuleConfig.cxx +++ b/Detectors/ZDC/base/src/ModuleConfig.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/base/src/ZDCBaseLinkDef.h b/Detectors/ZDC/base/src/ZDCBaseLinkDef.h index a8d41f9688ffe..332a059614e95 100644 --- a/Detectors/ZDC/base/src/ZDCBaseLinkDef.h +++ b/Detectors/ZDC/base/src/ZDCBaseLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/macro/CMakeLists.txt b/Detectors/ZDC/macro/CMakeLists.txt index 09f5b61697d23..a8c8a6ada70d5 100644 --- a/Detectors/ZDC/macro/CMakeLists.txt +++ b/Detectors/ZDC/macro/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test_root_macro(CreateSimCondition.C PUBLIC_LINK_LIBRARIES O2::ZDCBase O2::ZDCSimulation diff --git a/Detectors/ZDC/macro/CreateModuleConfig.C b/Detectors/ZDC/macro/CreateModuleConfig.C index 4899e461ebba2..94b53fc099705 100644 --- a/Detectors/ZDC/macro/CreateModuleConfig.C +++ b/Detectors/ZDC/macro/CreateModuleConfig.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/macro/CreateSimCondition.C b/Detectors/ZDC/macro/CreateSimCondition.C index fc283254b1ed7..5f9466151c7bd 100644 --- a/Detectors/ZDC/macro/CreateSimCondition.C +++ b/Detectors/ZDC/macro/CreateSimCondition.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/raw/CMakeLists.txt b/Detectors/ZDC/raw/CMakeLists.txt index d533a12ba2ae4..1d4729262c2a3 100644 --- a/Detectors/ZDC/raw/CMakeLists.txt +++ b/Detectors/ZDC/raw/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ZDCRaw SOURCES src/DumpRaw.cxx diff --git a/Detectors/ZDC/raw/include/ZDCRaw/DumpRaw.h b/Detectors/ZDC/raw/include/ZDCRaw/DumpRaw.h index 465694ae0a494..660e91cf394cf 100644 --- a/Detectors/ZDC/raw/include/ZDCRaw/DumpRaw.h +++ b/Detectors/ZDC/raw/include/ZDCRaw/DumpRaw.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/raw/include/ZDCRaw/RawReaderZDC.h b/Detectors/ZDC/raw/include/ZDCRaw/RawReaderZDC.h index 84662f36c39ad..dbcb829e99574 100644 --- a/Detectors/ZDC/raw/include/ZDCRaw/RawReaderZDC.h +++ b/Detectors/ZDC/raw/include/ZDCRaw/RawReaderZDC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/raw/src/DumpRaw.cxx b/Detectors/ZDC/raw/src/DumpRaw.cxx index c8af09e2ac0b7..bb2a04c726053 100644 --- a/Detectors/ZDC/raw/src/DumpRaw.cxx +++ b/Detectors/ZDC/raw/src/DumpRaw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/raw/src/RawReaderZDC.cxx b/Detectors/ZDC/raw/src/RawReaderZDC.cxx index 8f5d47525b61b..29b96cf5e1d7b 100644 --- a/Detectors/ZDC/raw/src/RawReaderZDC.cxx +++ b/Detectors/ZDC/raw/src/RawReaderZDC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/raw/src/ZDCRawLinkDef.h b/Detectors/ZDC/raw/src/ZDCRawLinkDef.h index 71519a02a652e..c85dd2d378ccb 100644 --- a/Detectors/ZDC/raw/src/ZDCRawLinkDef.h +++ b/Detectors/ZDC/raw/src/ZDCRawLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/raw/src/raw-parser.cxx b/Detectors/ZDC/raw/src/raw-parser.cxx index 05350ba749dda..7322e21041491 100644 --- a/Detectors/ZDC/raw/src/raw-parser.cxx +++ b/Detectors/ZDC/raw/src/raw-parser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/CMakeLists.txt b/Detectors/ZDC/reconstruction/CMakeLists.txt index f7f0627e5b864..20d4df17f48a8 100644 --- a/Detectors/ZDC/reconstruction/CMakeLists.txt +++ b/Detectors/ZDC/reconstruction/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2.This software is distributed -# under the terms of the GNU General Public License v3(GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http: //alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ZDCReconstruction SOURCES src/CTFCoder.cxx diff --git a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFCoder.h b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFCoder.h index 1a17aaf2fbd2a..adba102907374 100644 --- a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFCoder.h +++ b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFCoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFHelper.h b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFHelper.h index 86cc0916fcd75..1bc590d84c7c8 100644 --- a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFHelper.h +++ b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/src/CTFCoder.cxx b/Detectors/ZDC/reconstruction/src/CTFCoder.cxx index 1a61f50965762..c660ff05734fa 100644 --- a/Detectors/ZDC/reconstruction/src/CTFCoder.cxx +++ b/Detectors/ZDC/reconstruction/src/CTFCoder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/src/CTFHelper.cxx b/Detectors/ZDC/reconstruction/src/CTFHelper.cxx index 7bb05dddd64ae..aacff0648eac4 100644 --- a/Detectors/ZDC/reconstruction/src/CTFHelper.cxx +++ b/Detectors/ZDC/reconstruction/src/CTFHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/src/ZDCReconstructionLinkDef.h b/Detectors/ZDC/reconstruction/src/ZDCReconstructionLinkDef.h index 0d600e2f064d6..4892af277a9be 100644 --- a/Detectors/ZDC/reconstruction/src/ZDCReconstructionLinkDef.h +++ b/Detectors/ZDC/reconstruction/src/ZDCReconstructionLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/CMakeLists.txt b/Detectors/ZDC/simulation/CMakeLists.txt index e0ae0e1b9d2d7..e9c9029dbd7c7 100644 --- a/Detectors/ZDC/simulation/CMakeLists.txt +++ b/Detectors/ZDC/simulation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ZDCSimulation SOURCES src/Detector.cxx src/Digitizer.cxx src/SimCondition.cxx diff --git a/Detectors/ZDC/simulation/include/ZDCSimulation/Detector.h b/Detectors/ZDC/simulation/include/ZDCSimulation/Detector.h index 91c0f4fa13921..7ad1187323bf1 100644 --- a/Detectors/ZDC/simulation/include/ZDCSimulation/Detector.h +++ b/Detectors/ZDC/simulation/include/ZDCSimulation/Detector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/include/ZDCSimulation/Digitizer.h b/Detectors/ZDC/simulation/include/ZDCSimulation/Digitizer.h index 2a9f78e9fe3f2..038d46cbaa64c 100644 --- a/Detectors/ZDC/simulation/include/ZDCSimulation/Digitizer.h +++ b/Detectors/ZDC/simulation/include/ZDCSimulation/Digitizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/include/ZDCSimulation/Digits2Raw.h b/Detectors/ZDC/simulation/include/ZDCSimulation/Digits2Raw.h index 59b8f1f5beb46..5e5a387851bf4 100644 --- a/Detectors/ZDC/simulation/include/ZDCSimulation/Digits2Raw.h +++ b/Detectors/ZDC/simulation/include/ZDCSimulation/Digits2Raw.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/include/ZDCSimulation/SimCondition.h b/Detectors/ZDC/simulation/include/ZDCSimulation/SimCondition.h index 3b53d0fee32a1..5daf69c395a53 100644 --- a/Detectors/ZDC/simulation/include/ZDCSimulation/SimCondition.h +++ b/Detectors/ZDC/simulation/include/ZDCSimulation/SimCondition.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/include/ZDCSimulation/SpatialPhotonResponse.h b/Detectors/ZDC/simulation/include/ZDCSimulation/SpatialPhotonResponse.h index 735d474a68ec0..19b37fc62ff3b 100644 --- a/Detectors/ZDC/simulation/include/ZDCSimulation/SpatialPhotonResponse.h +++ b/Detectors/ZDC/simulation/include/ZDCSimulation/SpatialPhotonResponse.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/include/ZDCSimulation/ZDCSimParam.h b/Detectors/ZDC/simulation/include/ZDCSimulation/ZDCSimParam.h index 5866096476387..9c46629ffb75f 100644 --- a/Detectors/ZDC/simulation/include/ZDCSimulation/ZDCSimParam.h +++ b/Detectors/ZDC/simulation/include/ZDCSimulation/ZDCSimParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/src/Detector.cxx b/Detectors/ZDC/simulation/src/Detector.cxx index a31ed5a464c76..399a55e7cecd5 100644 --- a/Detectors/ZDC/simulation/src/Detector.cxx +++ b/Detectors/ZDC/simulation/src/Detector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/src/Digitizer.cxx b/Detectors/ZDC/simulation/src/Digitizer.cxx index 345dd24e058f1..c9b86506538d2 100644 --- a/Detectors/ZDC/simulation/src/Digitizer.cxx +++ b/Detectors/ZDC/simulation/src/Digitizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/src/Digits2Raw.cxx b/Detectors/ZDC/simulation/src/Digits2Raw.cxx index ea9951de6394c..4e1370f0a8a0c 100644 --- a/Detectors/ZDC/simulation/src/Digits2Raw.cxx +++ b/Detectors/ZDC/simulation/src/Digits2Raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/src/SimCondition.cxx b/Detectors/ZDC/simulation/src/SimCondition.cxx index ea7e2e4e1597b..7c046838ec255 100644 --- a/Detectors/ZDC/simulation/src/SimCondition.cxx +++ b/Detectors/ZDC/simulation/src/SimCondition.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/src/SpatialPhotonResponse.cxx b/Detectors/ZDC/simulation/src/SpatialPhotonResponse.cxx index 6c3ccbcf34ff8..2cb9c09b1ae41 100644 --- a/Detectors/ZDC/simulation/src/SpatialPhotonResponse.cxx +++ b/Detectors/ZDC/simulation/src/SpatialPhotonResponse.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/src/ZDCSimParam.cxx b/Detectors/ZDC/simulation/src/ZDCSimParam.cxx index 0a66bfa901ea0..3e8f9046fbdac 100644 --- a/Detectors/ZDC/simulation/src/ZDCSimParam.cxx +++ b/Detectors/ZDC/simulation/src/ZDCSimParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/src/ZDCSimulationLinkDef.h b/Detectors/ZDC/simulation/src/ZDCSimulationLinkDef.h index ca7eb44b379a4..8b37988bcc635 100644 --- a/Detectors/ZDC/simulation/src/ZDCSimulationLinkDef.h +++ b/Detectors/ZDC/simulation/src/ZDCSimulationLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/simulation/src/digi2raw.cxx b/Detectors/ZDC/simulation/src/digi2raw.cxx index c205d0cdf1673..565eb1f6456e9 100644 --- a/Detectors/ZDC/simulation/src/digi2raw.cxx +++ b/Detectors/ZDC/simulation/src/digi2raw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/CMakeLists.txt b/Detectors/ZDC/workflow/CMakeLists.txt index d8d0fec2d3f98..af496b4c4e825 100644 --- a/Detectors/ZDC/workflow/CMakeLists.txt +++ b/Detectors/ZDC/workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(ZDCWorkflow SOURCES src/DigitReaderSpec.cxx diff --git a/Detectors/ZDC/workflow/include/ZDCWorkflow/DigitReaderSpec.h b/Detectors/ZDC/workflow/include/ZDCWorkflow/DigitReaderSpec.h index 6a07e1bdbd448..269ea33352a11 100644 --- a/Detectors/ZDC/workflow/include/ZDCWorkflow/DigitReaderSpec.h +++ b/Detectors/ZDC/workflow/include/ZDCWorkflow/DigitReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/include/ZDCWorkflow/EntropyDecoderSpec.h b/Detectors/ZDC/workflow/include/ZDCWorkflow/EntropyDecoderSpec.h index edd57091b9257..6d0f76452ac99 100644 --- a/Detectors/ZDC/workflow/include/ZDCWorkflow/EntropyDecoderSpec.h +++ b/Detectors/ZDC/workflow/include/ZDCWorkflow/EntropyDecoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/include/ZDCWorkflow/EntropyEncoderSpec.h b/Detectors/ZDC/workflow/include/ZDCWorkflow/EntropyEncoderSpec.h index d62ca55a009f3..7c247c42ceb8f 100644 --- a/Detectors/ZDC/workflow/include/ZDCWorkflow/EntropyEncoderSpec.h +++ b/Detectors/ZDC/workflow/include/ZDCWorkflow/EntropyEncoderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDataReaderDPLSpec.h b/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDataReaderDPLSpec.h index 5bfbbbf61d38b..8d8aeaba3ea53 100644 --- a/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDataReaderDPLSpec.h +++ b/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDataReaderDPLSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDigitWriterDPLSpec.h b/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDigitWriterDPLSpec.h index acba9549c5999..089894e9c2d02 100644 --- a/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDigitWriterDPLSpec.h +++ b/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDigitWriterDPLSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/src/DigitReaderSpec.cxx b/Detectors/ZDC/workflow/src/DigitReaderSpec.cxx index 0ed044774d1b3..09f7c5c7ca6c5 100644 --- a/Detectors/ZDC/workflow/src/DigitReaderSpec.cxx +++ b/Detectors/ZDC/workflow/src/DigitReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/src/EntropyDecoderSpec.cxx b/Detectors/ZDC/workflow/src/EntropyDecoderSpec.cxx index b35fc4fc205ca..9c7f8cc166d1e 100644 --- a/Detectors/ZDC/workflow/src/EntropyDecoderSpec.cxx +++ b/Detectors/ZDC/workflow/src/EntropyDecoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/src/EntropyEncoderSpec.cxx b/Detectors/ZDC/workflow/src/EntropyEncoderSpec.cxx index fe659a440f545..9cfe4434da42b 100644 --- a/Detectors/ZDC/workflow/src/EntropyEncoderSpec.cxx +++ b/Detectors/ZDC/workflow/src/EntropyEncoderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx b/Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx index 504c7a12e614c..3e8c54f78aa82 100644 --- a/Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx +++ b/Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/src/ZDCDigitWriterDPLSpec.cxx b/Detectors/ZDC/workflow/src/ZDCDigitWriterDPLSpec.cxx index 78faab3c7a8e2..52126e6d4b7e5 100644 --- a/Detectors/ZDC/workflow/src/ZDCDigitWriterDPLSpec.cxx +++ b/Detectors/ZDC/workflow/src/ZDCDigitWriterDPLSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/src/entropy-encoder-workflow.cxx b/Detectors/ZDC/workflow/src/entropy-encoder-workflow.cxx index 7bdf777324223..5705c4236e540 100644 --- a/Detectors/ZDC/workflow/src/entropy-encoder-workflow.cxx +++ b/Detectors/ZDC/workflow/src/entropy-encoder-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/src/o2-zdc-raw2digits.cxx b/Detectors/ZDC/workflow/src/o2-zdc-raw2digits.cxx index 5b72e6186d93c..b6ccb9275113e 100644 --- a/Detectors/ZDC/workflow/src/o2-zdc-raw2digits.cxx +++ b/Detectors/ZDC/workflow/src/o2-zdc-raw2digits.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/gconfig/CMakeLists.txt b/Detectors/gconfig/CMakeLists.txt index 64ec396b003e9..043035593edcf 100644 --- a/Detectors/gconfig/CMakeLists.txt +++ b/Detectors/gconfig/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(G3Setup SOURCES src/G3Config.cxx diff --git a/Detectors/gconfig/include/SimSetup/FlukaParam.h b/Detectors/gconfig/include/SimSetup/FlukaParam.h index 5e19ee0b4f611..408e4e4df1471 100644 --- a/Detectors/gconfig/include/SimSetup/FlukaParam.h +++ b/Detectors/gconfig/include/SimSetup/FlukaParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/gconfig/include/SimSetup/GlobalProcessCutSimParam.h b/Detectors/gconfig/include/SimSetup/GlobalProcessCutSimParam.h index e3cc3e751c87d..c8bacfa7c4e7c 100644 --- a/Detectors/gconfig/include/SimSetup/GlobalProcessCutSimParam.h +++ b/Detectors/gconfig/include/SimSetup/GlobalProcessCutSimParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/gconfig/include/SimSetup/SimSetup.h b/Detectors/gconfig/include/SimSetup/SimSetup.h index 28f582dafd540..5bf685ab9a4f5 100644 --- a/Detectors/gconfig/include/SimSetup/SimSetup.h +++ b/Detectors/gconfig/include/SimSetup/SimSetup.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/gconfig/src/FlukaConfig.cxx b/Detectors/gconfig/src/FlukaConfig.cxx index 2971bb48e5fa6..4048ca4eac0e3 100644 --- a/Detectors/gconfig/src/FlukaConfig.cxx +++ b/Detectors/gconfig/src/FlukaConfig.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/gconfig/src/FlukaParam.cxx b/Detectors/gconfig/src/FlukaParam.cxx index ea8e8aae3c31d..a1a218ffd8d8e 100644 --- a/Detectors/gconfig/src/FlukaParam.cxx +++ b/Detectors/gconfig/src/FlukaParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/gconfig/src/G3Config.cxx b/Detectors/gconfig/src/G3Config.cxx index 72ee0ef35ab04..a3115e22a8d0f 100644 --- a/Detectors/gconfig/src/G3Config.cxx +++ b/Detectors/gconfig/src/G3Config.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/gconfig/src/G4Config.cxx b/Detectors/gconfig/src/G4Config.cxx index 3aac0259f561c..82a84d4c1c18b 100644 --- a/Detectors/gconfig/src/G4Config.cxx +++ b/Detectors/gconfig/src/G4Config.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/gconfig/src/GConfLinkDef.h b/Detectors/gconfig/src/GConfLinkDef.h index d2f89b2dbd297..64fd13f6938eb 100644 --- a/Detectors/gconfig/src/GConfLinkDef.h +++ b/Detectors/gconfig/src/GConfLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/gconfig/src/GlobalProcessCutSimParam.cxx b/Detectors/gconfig/src/GlobalProcessCutSimParam.cxx index 888c97424b213..4f30020133996 100644 --- a/Detectors/gconfig/src/GlobalProcessCutSimParam.cxx +++ b/Detectors/gconfig/src/GlobalProcessCutSimParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/gconfig/src/SetCuts.cxx b/Detectors/gconfig/src/SetCuts.cxx index edea5655b568f..49b25a8736a4f 100644 --- a/Detectors/gconfig/src/SetCuts.cxx +++ b/Detectors/gconfig/src/SetCuts.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/gconfig/src/SetCuts.h b/Detectors/gconfig/src/SetCuts.h index c039acde8a60c..3541334d1b9db 100644 --- a/Detectors/gconfig/src/SetCuts.h +++ b/Detectors/gconfig/src/SetCuts.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/gconfig/src/SimSetup.cxx b/Detectors/gconfig/src/SimSetup.cxx index 8626abc22a007..bb98ea5ac329c 100644 --- a/Detectors/gconfig/src/SimSetup.cxx +++ b/Detectors/gconfig/src/SimSetup.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/CMakeLists.txt b/EventVisualisation/Base/CMakeLists.txt index 0f97756cf6b9b..0b690afab4aac 100644 --- a/EventVisualisation/Base/CMakeLists.txt +++ b/EventVisualisation/Base/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(EventVisualisationBase SOURCES src/ConfigurationManager.cxx diff --git a/EventVisualisation/Base/include/EventVisualisationBase/ConfigurationManager.h b/EventVisualisation/Base/include/EventVisualisationBase/ConfigurationManager.h index 781f63d7504de..8df289b118ccc 100644 --- a/EventVisualisation/Base/include/EventVisualisationBase/ConfigurationManager.h +++ b/EventVisualisation/Base/include/EventVisualisationBase/ConfigurationManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/include/EventVisualisationBase/DataInterpreter.h b/EventVisualisation/Base/include/EventVisualisationBase/DataInterpreter.h index 9f5c288d8625d..7cc9a6cc68915 100644 --- a/EventVisualisation/Base/include/EventVisualisationBase/DataInterpreter.h +++ b/EventVisualisation/Base/include/EventVisualisationBase/DataInterpreter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/include/EventVisualisationBase/DataReader.h b/EventVisualisation/Base/include/EventVisualisationBase/DataReader.h index 5663009fad5bf..a867fec4edaf5 100644 --- a/EventVisualisation/Base/include/EventVisualisationBase/DataReader.h +++ b/EventVisualisation/Base/include/EventVisualisationBase/DataReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/include/EventVisualisationBase/DataSource.h b/EventVisualisation/Base/include/EventVisualisationBase/DataSource.h index 2cc2ce7aef127..2254930b6ad48 100644 --- a/EventVisualisation/Base/include/EventVisualisationBase/DataSource.h +++ b/EventVisualisation/Base/include/EventVisualisationBase/DataSource.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/include/EventVisualisationBase/DataSourceOffline.h b/EventVisualisation/Base/include/EventVisualisationBase/DataSourceOffline.h index 0f22f53f8337b..2c78432b65d0d 100644 --- a/EventVisualisation/Base/include/EventVisualisationBase/DataSourceOffline.h +++ b/EventVisualisation/Base/include/EventVisualisationBase/DataSourceOffline.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/include/EventVisualisationBase/DataSourceOnline.h b/EventVisualisation/Base/include/EventVisualisationBase/DataSourceOnline.h index b7bccb65ecb7f..bc0b3a6f8c595 100644 --- a/EventVisualisation/Base/include/EventVisualisationBase/DataSourceOnline.h +++ b/EventVisualisation/Base/include/EventVisualisationBase/DataSourceOnline.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/include/EventVisualisationBase/FileWatcher.h b/EventVisualisation/Base/include/EventVisualisationBase/FileWatcher.h index 6978a9f6e16dc..2e17fd6537904 100644 --- a/EventVisualisation/Base/include/EventVisualisationBase/FileWatcher.h +++ b/EventVisualisation/Base/include/EventVisualisationBase/FileWatcher.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/include/EventVisualisationBase/GeometryManager.h b/EventVisualisation/Base/include/EventVisualisationBase/GeometryManager.h index c29175e2f72e3..a5405282d455a 100644 --- a/EventVisualisation/Base/include/EventVisualisationBase/GeometryManager.h +++ b/EventVisualisation/Base/include/EventVisualisationBase/GeometryManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/include/EventVisualisationBase/VisualisationConstants.h b/EventVisualisation/Base/include/EventVisualisationBase/VisualisationConstants.h index 0f7db6e1a7ad0..4135183543fff 100644 --- a/EventVisualisation/Base/include/EventVisualisationBase/VisualisationConstants.h +++ b/EventVisualisation/Base/include/EventVisualisationBase/VisualisationConstants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/src/ConfigurationManager.cxx b/EventVisualisation/Base/src/ConfigurationManager.cxx index 77a4619e02a48..4070585e80bd2 100644 --- a/EventVisualisation/Base/src/ConfigurationManager.cxx +++ b/EventVisualisation/Base/src/ConfigurationManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/src/DataInterpreter.cxx b/EventVisualisation/Base/src/DataInterpreter.cxx index f74d09c1ab72c..9e61a65f308a7 100644 --- a/EventVisualisation/Base/src/DataInterpreter.cxx +++ b/EventVisualisation/Base/src/DataInterpreter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/src/DataReader.cxx b/EventVisualisation/Base/src/DataReader.cxx index e31acab615abb..ef40d985f9ab5 100644 --- a/EventVisualisation/Base/src/DataReader.cxx +++ b/EventVisualisation/Base/src/DataReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/src/DataSourceOffline.cxx b/EventVisualisation/Base/src/DataSourceOffline.cxx index 45cb6e9fd3437..13e53ad0bdb35 100644 --- a/EventVisualisation/Base/src/DataSourceOffline.cxx +++ b/EventVisualisation/Base/src/DataSourceOffline.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/src/DataSourceOnline.cxx b/EventVisualisation/Base/src/DataSourceOnline.cxx index c29c42534a807..67ef138613f79 100644 --- a/EventVisualisation/Base/src/DataSourceOnline.cxx +++ b/EventVisualisation/Base/src/DataSourceOnline.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/src/FileWatcher.cxx b/EventVisualisation/Base/src/FileWatcher.cxx index 113b4638f63a2..f33dd7c5b9694 100644 --- a/EventVisualisation/Base/src/FileWatcher.cxx +++ b/EventVisualisation/Base/src/FileWatcher.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Base/src/GeometryManager.cxx b/EventVisualisation/Base/src/GeometryManager.cxx index 92c595478c6d6..a732c0609d619 100644 --- a/EventVisualisation/Base/src/GeometryManager.cxx +++ b/EventVisualisation/Base/src/GeometryManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/CMakeLists.txt b/EventVisualisation/CMakeLists.txt index a1c07462a8bb7..ea5b5f2c187f3 100644 --- a/EventVisualisation/CMakeLists.txt +++ b/EventVisualisation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(DataConverter) add_subdirectory(Base) diff --git a/EventVisualisation/DataConverter/CMakeLists.txt b/EventVisualisation/DataConverter/CMakeLists.txt index e9a6dfff0bd6c..64815f3daa741 100644 --- a/EventVisualisation/DataConverter/CMakeLists.txt +++ b/EventVisualisation/DataConverter/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(EventVisualisationDataConverter SOURCES src/VisualisationEvent.cxx diff --git a/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/ConversionConstants.h b/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/ConversionConstants.h index 2f06e21dd418f..2b69d417533b5 100644 --- a/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/ConversionConstants.h +++ b/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/ConversionConstants.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/VisualisationCluster.h b/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/VisualisationCluster.h index 662501fbf30f3..3a94650ad61e9 100644 --- a/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/VisualisationCluster.h +++ b/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/VisualisationCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/VisualisationEvent.h b/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/VisualisationEvent.h index e1ad4cc2e2182..9f64230ec42e6 100644 --- a/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/VisualisationEvent.h +++ b/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/VisualisationEvent.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/VisualisationTrack.h b/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/VisualisationTrack.h index 93c31f4866ebe..0fb835a8bbed8 100644 --- a/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/VisualisationTrack.h +++ b/EventVisualisation/DataConverter/include/EventVisualisationDataConverter/VisualisationTrack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/DataConverter/src/VisualisationCluster.cxx b/EventVisualisation/DataConverter/src/VisualisationCluster.cxx index 32836c001d824..a0f01cade23e5 100644 --- a/EventVisualisation/DataConverter/src/VisualisationCluster.cxx +++ b/EventVisualisation/DataConverter/src/VisualisationCluster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/DataConverter/src/VisualisationEvent.cxx b/EventVisualisation/DataConverter/src/VisualisationEvent.cxx index e998887eaec4f..db05bc4630a31 100644 --- a/EventVisualisation/DataConverter/src/VisualisationEvent.cxx +++ b/EventVisualisation/DataConverter/src/VisualisationEvent.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/DataConverter/src/VisualisationTrack.cxx b/EventVisualisation/DataConverter/src/VisualisationTrack.cxx index c64becbbf375c..5a237237d39a5 100644 --- a/EventVisualisation/DataConverter/src/VisualisationTrack.cxx +++ b/EventVisualisation/DataConverter/src/VisualisationTrack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/CMakeLists.txt b/EventVisualisation/Detectors/CMakeLists.txt index bfbcc2786ebf9..e3e9e110ff82a 100644 --- a/EventVisualisation/Detectors/CMakeLists.txt +++ b/EventVisualisation/Detectors/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(EventVisualisationDetectors SOURCES diff --git a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataInterpreterITS.h b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataInterpreterITS.h index e814ebc1f01ba..e834dc6088126 100644 --- a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataInterpreterITS.h +++ b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataInterpreterITS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataInterpreterTPC.h b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataInterpreterTPC.h index 872aba9b95cf5..9b19c9dce0729 100644 --- a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataInterpreterTPC.h +++ b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataInterpreterTPC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataInterpreterVSD.h b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataInterpreterVSD.h index 38dbe8c9d74f2..eec259285447d 100644 --- a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataInterpreterVSD.h +++ b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataInterpreterVSD.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderITS.h b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderITS.h index 58dddc67cb216..efea911d4b525 100644 --- a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderITS.h +++ b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderITS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderJSON.h b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderJSON.h index b88a1a7414bf7..9e42e11e408a9 100644 --- a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderJSON.h +++ b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderJSON.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderTPC.h b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderTPC.h index 7b7428e9b81b3..af30c20d64b3c 100644 --- a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderTPC.h +++ b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderTPC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderVSD.h b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderVSD.h index f0ea6e567db73..8e48726285afa 100644 --- a/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderVSD.h +++ b/EventVisualisation/Detectors/include/EventVisualisationDetectors/DataReaderVSD.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/src/DataInterpreterITS.cxx b/EventVisualisation/Detectors/src/DataInterpreterITS.cxx index 249799adb71fd..82784c714febf 100644 --- a/EventVisualisation/Detectors/src/DataInterpreterITS.cxx +++ b/EventVisualisation/Detectors/src/DataInterpreterITS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/src/DataInterpreterTPC.cxx b/EventVisualisation/Detectors/src/DataInterpreterTPC.cxx index 3a62365f6bed3..8ca95d327c3cf 100644 --- a/EventVisualisation/Detectors/src/DataInterpreterTPC.cxx +++ b/EventVisualisation/Detectors/src/DataInterpreterTPC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/src/DataInterpreterVSD.cxx b/EventVisualisation/Detectors/src/DataInterpreterVSD.cxx index eb1c73e420de7..6fcab8783f908 100644 --- a/EventVisualisation/Detectors/src/DataInterpreterVSD.cxx +++ b/EventVisualisation/Detectors/src/DataInterpreterVSD.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/src/DataReaderITS.cxx b/EventVisualisation/Detectors/src/DataReaderITS.cxx index db5c404cfe786..b7998b4bf5812 100644 --- a/EventVisualisation/Detectors/src/DataReaderITS.cxx +++ b/EventVisualisation/Detectors/src/DataReaderITS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/src/DataReaderJSON.cxx b/EventVisualisation/Detectors/src/DataReaderJSON.cxx index 9ebed704511ff..e49429392b367 100644 --- a/EventVisualisation/Detectors/src/DataReaderJSON.cxx +++ b/EventVisualisation/Detectors/src/DataReaderJSON.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/src/DataReaderTPC.cxx b/EventVisualisation/Detectors/src/DataReaderTPC.cxx index 44db115aeb5a5..89e90135c49cb 100644 --- a/EventVisualisation/Detectors/src/DataReaderTPC.cxx +++ b/EventVisualisation/Detectors/src/DataReaderTPC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Detectors/src/DataReaderVSD.cxx b/EventVisualisation/Detectors/src/DataReaderVSD.cxx index cd5238c01bbeb..7334bbf646967 100644 --- a/EventVisualisation/Detectors/src/DataReaderVSD.cxx +++ b/EventVisualisation/Detectors/src/DataReaderVSD.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/View/CMakeLists.txt b/EventVisualisation/View/CMakeLists.txt index 5943acabbc4c7..53a5e25286c14 100644 --- a/EventVisualisation/View/CMakeLists.txt +++ b/EventVisualisation/View/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(EventVisualisationView SOURCES src/MultiView.cxx diff --git a/EventVisualisation/View/include/EventVisualisationView/EventManager.h b/EventVisualisation/View/include/EventVisualisationView/EventManager.h index 52b20966d2209..c437287428b19 100644 --- a/EventVisualisation/View/include/EventVisualisationView/EventManager.h +++ b/EventVisualisation/View/include/EventVisualisationView/EventManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/View/include/EventVisualisationView/EventManagerFrame.h b/EventVisualisation/View/include/EventVisualisationView/EventManagerFrame.h index 3a859594da8e1..9cf8a64cc8372 100644 --- a/EventVisualisation/View/include/EventVisualisationView/EventManagerFrame.h +++ b/EventVisualisation/View/include/EventVisualisationView/EventManagerFrame.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/View/include/EventVisualisationView/Initializer.h b/EventVisualisation/View/include/EventVisualisationView/Initializer.h index 5910d920ac386..0d206e181fbd2 100644 --- a/EventVisualisation/View/include/EventVisualisationView/Initializer.h +++ b/EventVisualisation/View/include/EventVisualisationView/Initializer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/View/include/EventVisualisationView/MultiView.h b/EventVisualisation/View/include/EventVisualisationView/MultiView.h index 9441cf40afff7..1a0c8ec9b28ae 100644 --- a/EventVisualisation/View/include/EventVisualisationView/MultiView.h +++ b/EventVisualisation/View/include/EventVisualisationView/MultiView.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/View/include/EventVisualisationView/Options.h b/EventVisualisation/View/include/EventVisualisationView/Options.h index 114e179243cf3..523a3d81beef9 100644 --- a/EventVisualisation/View/include/EventVisualisationView/Options.h +++ b/EventVisualisation/View/include/EventVisualisationView/Options.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/View/src/EventManager.cxx b/EventVisualisation/View/src/EventManager.cxx index 5669a247a193a..0a8c7fcff48bd 100644 --- a/EventVisualisation/View/src/EventManager.cxx +++ b/EventVisualisation/View/src/EventManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/View/src/EventManagerFrame.cxx b/EventVisualisation/View/src/EventManagerFrame.cxx index 30a99b1d133ad..9f1b76c44c2ea 100644 --- a/EventVisualisation/View/src/EventManagerFrame.cxx +++ b/EventVisualisation/View/src/EventManagerFrame.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/View/src/EventVisualisationViewLinkDef.h b/EventVisualisation/View/src/EventVisualisationViewLinkDef.h index bd1b2b0f08a45..3f96972fc3802 100644 --- a/EventVisualisation/View/src/EventVisualisationViewLinkDef.h +++ b/EventVisualisation/View/src/EventVisualisationViewLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/View/src/Initializer.cxx b/EventVisualisation/View/src/Initializer.cxx index 3b45fc3cd3007..1059af48c3d1f 100644 --- a/EventVisualisation/View/src/Initializer.cxx +++ b/EventVisualisation/View/src/Initializer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/View/src/MultiView.cxx b/EventVisualisation/View/src/MultiView.cxx index 4a1adb531fc96..d8b6bd9517f58 100644 --- a/EventVisualisation/View/src/MultiView.cxx +++ b/EventVisualisation/View/src/MultiView.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/View/src/Options.cxx b/EventVisualisation/View/src/Options.cxx index 2feaa0a3e598a..ec7be3b2d84bb 100644 --- a/EventVisualisation/View/src/Options.cxx +++ b/EventVisualisation/View/src/Options.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/View/src/main.cxx b/EventVisualisation/View/src/main.cxx index 5db74288cdf95..db828b3a23f6a 100644 --- a/EventVisualisation/View/src/main.cxx +++ b/EventVisualisation/View/src/main.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Workflow/CMakeLists.txt b/EventVisualisation/Workflow/CMakeLists.txt index 42944395d1ff8..635b1ad82e047 100644 --- a/EventVisualisation/Workflow/CMakeLists.txt +++ b/EventVisualisation/Workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. if(ALIGPU_BUILD_TYPE STREQUAL "O2" diff --git a/EventVisualisation/Workflow/include/EveWorkflow/FileProducer.h b/EventVisualisation/Workflow/include/EveWorkflow/FileProducer.h index f4c21e6325a4c..50cf537d1f1cf 100644 --- a/EventVisualisation/Workflow/include/EveWorkflow/FileProducer.h +++ b/EventVisualisation/Workflow/include/EveWorkflow/FileProducer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Workflow/include/EveWorkflow/O2DPLDisplay.h b/EventVisualisation/Workflow/include/EveWorkflow/O2DPLDisplay.h index a0313ec3cb106..fadc7db6b4d8b 100644 --- a/EventVisualisation/Workflow/include/EveWorkflow/O2DPLDisplay.h +++ b/EventVisualisation/Workflow/include/EveWorkflow/O2DPLDisplay.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Workflow/src/FileProducer.cxx b/EventVisualisation/Workflow/src/FileProducer.cxx index 16675c09448b7..f957dc0635877 100644 --- a/EventVisualisation/Workflow/src/FileProducer.cxx +++ b/EventVisualisation/Workflow/src/FileProducer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/EventVisualisation/Workflow/src/O2DPLDisplay.cxx b/EventVisualisation/Workflow/src/O2DPLDisplay.cxx index d07c513e18216..da5da2f63e504 100644 --- a/EventVisualisation/Workflow/src/O2DPLDisplay.cxx +++ b/EventVisualisation/Workflow/src/O2DPLDisplay.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/CMakeLists.txt b/Examples/CMakeLists.txt index 808de6e45cc11..45add9117f372 100644 --- a/Examples/CMakeLists.txt +++ b/Examples/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Ex1) add_subdirectory(Ex2) diff --git a/Examples/Ex1/CMakeLists.txt b/Examples/Ex1/CMakeLists.txt index d1964b5451fb6..8b0ce72f00b16 100644 --- a/Examples/Ex1/CMakeLists.txt +++ b/Examples/Ex1/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(Ex1 SOURCES src/A.cxx src/B.cxx diff --git a/Examples/Ex1/include/Ex1/A.h b/Examples/Ex1/include/Ex1/A.h index 9a013ba0f293a..dd329dde78b9f 100644 --- a/Examples/Ex1/include/Ex1/A.h +++ b/Examples/Ex1/include/Ex1/A.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex1/src/A.cxx b/Examples/Ex1/src/A.cxx index 68c34e02d5ed8..f428c8d3abedf 100644 --- a/Examples/Ex1/src/A.cxx +++ b/Examples/Ex1/src/A.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex1/src/B.cxx b/Examples/Ex1/src/B.cxx index c90c44f05fa7a..9251061809021 100644 --- a/Examples/Ex1/src/B.cxx +++ b/Examples/Ex1/src/B.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex1/src/B.h b/Examples/Ex1/src/B.h index 274c53309e8ed..8a620c762a28d 100644 --- a/Examples/Ex1/src/B.h +++ b/Examples/Ex1/src/B.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex2/CMakeLists.txt b/Examples/Ex2/CMakeLists.txt index 8ed7d61e5b61d..9ee1395cb3e3d 100644 --- a/Examples/Ex2/CMakeLists.txt +++ b/Examples/Ex2/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(Ex2 SOURCES src/A.cxx src/B.cxx diff --git a/Examples/Ex2/include/Ex2/A.h b/Examples/Ex2/include/Ex2/A.h index 5367bac7d6bba..6176570e1be60 100644 --- a/Examples/Ex2/include/Ex2/A.h +++ b/Examples/Ex2/include/Ex2/A.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex2/src/A.cxx b/Examples/Ex2/src/A.cxx index 70369e8859942..7a2900b895a5f 100644 --- a/Examples/Ex2/src/A.cxx +++ b/Examples/Ex2/src/A.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex2/src/B.cxx b/Examples/Ex2/src/B.cxx index c90c44f05fa7a..9251061809021 100644 --- a/Examples/Ex2/src/B.cxx +++ b/Examples/Ex2/src/B.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex2/src/B.h b/Examples/Ex2/src/B.h index 274c53309e8ed..8a620c762a28d 100644 --- a/Examples/Ex2/src/B.h +++ b/Examples/Ex2/src/B.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex2/src/Ex2LinkDef.h b/Examples/Ex2/src/Ex2LinkDef.h index 70724b9ec69cd..81447323dade3 100644 --- a/Examples/Ex2/src/Ex2LinkDef.h +++ b/Examples/Ex2/src/Ex2LinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex3/CMakeLists.txt b/Examples/Ex3/CMakeLists.txt index 01268c6b21a5d..ccd41c593d5d4 100644 --- a/Examples/Ex3/CMakeLists.txt +++ b/Examples/Ex3/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(Ex3 SOURCES src/A.cxx src/B.cxx diff --git a/Examples/Ex3/include/Ex3/A.h b/Examples/Ex3/include/Ex3/A.h index e71ab6dc8e09c..9f6e1f2e021fb 100644 --- a/Examples/Ex3/include/Ex3/A.h +++ b/Examples/Ex3/include/Ex3/A.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex3/src/A.cxx b/Examples/Ex3/src/A.cxx index 191760646d18b..1135e6ee9c80d 100644 --- a/Examples/Ex3/src/A.cxx +++ b/Examples/Ex3/src/A.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex3/src/B.cxx b/Examples/Ex3/src/B.cxx index c90c44f05fa7a..9251061809021 100644 --- a/Examples/Ex3/src/B.cxx +++ b/Examples/Ex3/src/B.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex3/src/B.h b/Examples/Ex3/src/B.h index 274c53309e8ed..8a620c762a28d 100644 --- a/Examples/Ex3/src/B.h +++ b/Examples/Ex3/src/B.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex3/src/Ex3LinkDef.h b/Examples/Ex3/src/Ex3LinkDef.h index eb747c25a543c..a4c17ae49cb32 100644 --- a/Examples/Ex3/src/Ex3LinkDef.h +++ b/Examples/Ex3/src/Ex3LinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex3/src/run.cxx b/Examples/Ex3/src/run.cxx index f84e232248ce6..fae2b40f8a616 100644 --- a/Examples/Ex3/src/run.cxx +++ b/Examples/Ex3/src/run.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex4/CMakeLists.txt b/Examples/Ex4/CMakeLists.txt index 1163e7073f363..18f7cdbcde280 100644 --- a/Examples/Ex4/CMakeLists.txt +++ b/Examples/Ex4/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(Ex4 SOURCES src/A.cxx src/B.cxx diff --git a/Examples/Ex4/include/Ex4/A.h b/Examples/Ex4/include/Ex4/A.h index 4569b68cc2bf2..02418867b33b7 100644 --- a/Examples/Ex4/include/Ex4/A.h +++ b/Examples/Ex4/include/Ex4/A.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex4/src/A.cxx b/Examples/Ex4/src/A.cxx index 5470c69d007fb..fcc5e848ddc1a 100644 --- a/Examples/Ex4/src/A.cxx +++ b/Examples/Ex4/src/A.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex4/src/B.cxx b/Examples/Ex4/src/B.cxx index c90c44f05fa7a..9251061809021 100644 --- a/Examples/Ex4/src/B.cxx +++ b/Examples/Ex4/src/B.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex4/src/B.h b/Examples/Ex4/src/B.h index 274c53309e8ed..8a620c762a28d 100644 --- a/Examples/Ex4/src/B.h +++ b/Examples/Ex4/src/B.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex4/src/Ex4LinkDef.h b/Examples/Ex4/src/Ex4LinkDef.h index 3e733480cf211..62dfcdf1c0d73 100644 --- a/Examples/Ex4/src/Ex4LinkDef.h +++ b/Examples/Ex4/src/Ex4LinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex4/src/run.cxx b/Examples/Ex4/src/run.cxx index 126248c4b755b..f14db42feaf64 100644 --- a/Examples/Ex4/src/run.cxx +++ b/Examples/Ex4/src/run.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex4/test/test1.cxx b/Examples/Ex4/test/test1.cxx index 6039b637fad63..534f114702976 100644 --- a/Examples/Ex4/test/test1.cxx +++ b/Examples/Ex4/test/test1.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex4/test/test2.cxx b/Examples/Ex4/test/test2.cxx index 36e97dacd4502..33a0621512581 100644 --- a/Examples/Ex4/test/test2.cxx +++ b/Examples/Ex4/test/test2.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Examples/Ex5/CMakeLists.txt b/Examples/Ex5/CMakeLists.txt index dd691ec774794..3951709a8a050 100644 --- a/Examples/Ex5/CMakeLists.txt +++ b/Examples/Ex5/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_executable(ex5 SOURCES src/run.cxx diff --git a/Examples/Ex5/src/run.cxx b/Examples/Ex5/src/run.cxx index 0ade248892b47..7ac6faff35e75 100644 --- a/Examples/Ex5/src/run.cxx +++ b/Examples/Ex5/src/run.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/AnalysisSupport/CMakeLists.txt b/Framework/AnalysisSupport/CMakeLists.txt index f4eab0b534731..d65d70190fb87 100644 --- a/Framework/AnalysisSupport/CMakeLists.txt +++ b/Framework/AnalysisSupport/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # Given GCC 7.3 does not provide std::filesystem we use Boost instead # Drop this once we move to GCC 8.2+ diff --git a/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx b/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx index d56c126a4b1cd..7eec5f1209409 100644 --- a/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx +++ b/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.h b/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.h index 9434576ed472d..655e4b6c0b439 100644 --- a/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.h +++ b/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/AnalysisSupport/src/Plugin.cxx b/Framework/AnalysisSupport/src/Plugin.cxx index a3300e643e11a..0113717fe0cc0 100644 --- a/Framework/AnalysisSupport/src/Plugin.cxx +++ b/Framework/AnalysisSupport/src/Plugin.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/CMakeLists.txt b/Framework/CMakeLists.txt index ca1aa9cf05b33..92830e8d2e563 100644 --- a/Framework/CMakeLists.txt +++ b/Framework/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(Logger) diff --git a/Framework/Core/CMakeLists.txt b/Framework/Core/CMakeLists.txt index 1b44efa8d3bc8..d946f3c477998 100644 --- a/Framework/Core/CMakeLists.txt +++ b/Framework/Core/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(Framework SOURCES src/AODReaderHelpers.cxx diff --git a/Framework/Core/include/Framework/AODReaderHelpers.h b/Framework/Core/include/Framework/AODReaderHelpers.h index 4290f2cccba4b..e39663866d96e 100644 --- a/Framework/Core/include/Framework/AODReaderHelpers.h +++ b/Framework/Core/include/Framework/AODReaderHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ASoA.h b/Framework/Core/include/Framework/ASoA.h index a2912dfac4a7a..b98a7fb495f77 100644 --- a/Framework/Core/include/Framework/ASoA.h +++ b/Framework/Core/include/Framework/ASoA.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ASoAHelpers.h b/Framework/Core/include/Framework/ASoAHelpers.h index f82b58da8242f..70804a4cd23ac 100644 --- a/Framework/Core/include/Framework/ASoAHelpers.h +++ b/Framework/Core/include/Framework/ASoAHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/AlgorithmSpec.h b/Framework/Core/include/Framework/AlgorithmSpec.h index bf18576ad2ff2..d50168cd066c7 100644 --- a/Framework/Core/include/Framework/AlgorithmSpec.h +++ b/Framework/Core/include/Framework/AlgorithmSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/AnalysisDataModel.h b/Framework/Core/include/Framework/AnalysisDataModel.h index 8d44409cb9fa5..731dde9395007 100644 --- a/Framework/Core/include/Framework/AnalysisDataModel.h +++ b/Framework/Core/include/Framework/AnalysisDataModel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/AnalysisHelpers.h b/Framework/Core/include/Framework/AnalysisHelpers.h index d8e628a0070f1..fd04f78b161d1 100644 --- a/Framework/Core/include/Framework/AnalysisHelpers.h +++ b/Framework/Core/include/Framework/AnalysisHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/AnalysisTask.h b/Framework/Core/include/Framework/AnalysisTask.h index 6a1361f1d562d..d9621347cdaba 100644 --- a/Framework/Core/include/Framework/AnalysisTask.h +++ b/Framework/Core/include/Framework/AnalysisTask.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/Array2D.h b/Framework/Core/include/Framework/Array2D.h index 1f0a0077ddf79..5a1ed57408f30 100644 --- a/Framework/Core/include/Framework/Array2D.h +++ b/Framework/Core/include/Framework/Array2D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ArrowContext.h b/Framework/Core/include/Framework/ArrowContext.h index 4fc2f1e320462..e30223c13ab27 100644 --- a/Framework/Core/include/Framework/ArrowContext.h +++ b/Framework/Core/include/Framework/ArrowContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ArrowTypes.h b/Framework/Core/include/Framework/ArrowTypes.h index c8c144c3568ba..3b7562fa30bd8 100644 --- a/Framework/Core/include/Framework/ArrowTypes.h +++ b/Framework/Core/include/Framework/ArrowTypes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/BasicOps.h b/Framework/Core/include/Framework/BasicOps.h index 9f914042500e8..d2a0aacb43c77 100644 --- a/Framework/Core/include/Framework/BasicOps.h +++ b/Framework/Core/include/Framework/BasicOps.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/BoostOptionsRetriever.h b/Framework/Core/include/Framework/BoostOptionsRetriever.h index 148d5c4192b20..418e4037559a4 100644 --- a/Framework/Core/include/Framework/BoostOptionsRetriever.h +++ b/Framework/Core/include/Framework/BoostOptionsRetriever.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/CCDBParamSpec.h b/Framework/Core/include/Framework/CCDBParamSpec.h index c1b636e732ad2..b230661a05c1b 100644 --- a/Framework/Core/include/Framework/CCDBParamSpec.h +++ b/Framework/Core/include/Framework/CCDBParamSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/CallbackRegistry.h b/Framework/Core/include/Framework/CallbackRegistry.h index 1b72025d9a5f2..ae80a98dfdbef 100644 --- a/Framework/Core/include/Framework/CallbackRegistry.h +++ b/Framework/Core/include/Framework/CallbackRegistry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/CallbackService.h b/Framework/Core/include/Framework/CallbackService.h index a44ba60977484..4d3e130e5bb89 100644 --- a/Framework/Core/include/Framework/CallbackService.h +++ b/Framework/Core/include/Framework/CallbackService.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ChannelConfigurationPolicy.h b/Framework/Core/include/Framework/ChannelConfigurationPolicy.h index 785a60bb49bf3..7ceed050092ce 100644 --- a/Framework/Core/include/Framework/ChannelConfigurationPolicy.h +++ b/Framework/Core/include/Framework/ChannelConfigurationPolicy.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ChannelConfigurationPolicyHelpers.h b/Framework/Core/include/Framework/ChannelConfigurationPolicyHelpers.h index 4f7df3f87f877..acb24dcebfd3a 100644 --- a/Framework/Core/include/Framework/ChannelConfigurationPolicyHelpers.h +++ b/Framework/Core/include/Framework/ChannelConfigurationPolicyHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ChannelInfo.h b/Framework/Core/include/Framework/ChannelInfo.h index bc8cb2ef233bd..f5452ac329270 100644 --- a/Framework/Core/include/Framework/ChannelInfo.h +++ b/Framework/Core/include/Framework/ChannelInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ChannelMatching.h b/Framework/Core/include/Framework/ChannelMatching.h index f12f9586b9d8f..87b2b70576919 100644 --- a/Framework/Core/include/Framework/ChannelMatching.h +++ b/Framework/Core/include/Framework/ChannelMatching.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ChannelSpec.h b/Framework/Core/include/Framework/ChannelSpec.h index c8d256673aaba..5cc2bfb5d5a7a 100644 --- a/Framework/Core/include/Framework/ChannelSpec.h +++ b/Framework/Core/include/Framework/ChannelSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/CommandInfo.h b/Framework/Core/include/Framework/CommandInfo.h index c14e1a6527658..b101867c6eda0 100644 --- a/Framework/Core/include/Framework/CommandInfo.h +++ b/Framework/Core/include/Framework/CommandInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/CommonDataProcessors.h b/Framework/Core/include/Framework/CommonDataProcessors.h index d4e649153ddc5..738eb7a48a059 100644 --- a/Framework/Core/include/Framework/CommonDataProcessors.h +++ b/Framework/Core/include/Framework/CommonDataProcessors.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/CommonMessageBackends.h b/Framework/Core/include/Framework/CommonMessageBackends.h index 9d9bfa0096fd2..bb5d16e5fcf35 100644 --- a/Framework/Core/include/Framework/CommonMessageBackends.h +++ b/Framework/Core/include/Framework/CommonMessageBackends.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/CommonServices.h b/Framework/Core/include/Framework/CommonServices.h index 435761aa5fc92..69767a8e5128c 100644 --- a/Framework/Core/include/Framework/CommonServices.h +++ b/Framework/Core/include/Framework/CommonServices.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/CompletionPolicy.h b/Framework/Core/include/Framework/CompletionPolicy.h index d42739034910d..8e9702fb2ce5b 100644 --- a/Framework/Core/include/Framework/CompletionPolicy.h +++ b/Framework/Core/include/Framework/CompletionPolicy.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/CompletionPolicyHelpers.h b/Framework/Core/include/Framework/CompletionPolicyHelpers.h index ea892feb1852d..041f509db3e2a 100644 --- a/Framework/Core/include/Framework/CompletionPolicyHelpers.h +++ b/Framework/Core/include/Framework/CompletionPolicyHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ComputingQuotaEvaluator.h b/Framework/Core/include/Framework/ComputingQuotaEvaluator.h index eacd472465af6..98835cdca194a 100644 --- a/Framework/Core/include/Framework/ComputingQuotaEvaluator.h +++ b/Framework/Core/include/Framework/ComputingQuotaEvaluator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ComputingQuotaOffer.h b/Framework/Core/include/Framework/ComputingQuotaOffer.h index 79c36e2d5f5ff..9f42e751a33a5 100644 --- a/Framework/Core/include/Framework/ComputingQuotaOffer.h +++ b/Framework/Core/include/Framework/ComputingQuotaOffer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ComputingResource.h b/Framework/Core/include/Framework/ComputingResource.h index 27b54005ff315..686142684c3d7 100644 --- a/Framework/Core/include/Framework/ComputingResource.h +++ b/Framework/Core/include/Framework/ComputingResource.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ConcreteDataMatcher.h b/Framework/Core/include/Framework/ConcreteDataMatcher.h index 9f3f7cbf0474e..247e3cd6ed8b9 100644 --- a/Framework/Core/include/Framework/ConcreteDataMatcher.h +++ b/Framework/Core/include/Framework/ConcreteDataMatcher.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ConfigContext.h b/Framework/Core/include/Framework/ConfigContext.h index b134e11fe9edf..7eaa2b873fb92 100644 --- a/Framework/Core/include/Framework/ConfigContext.h +++ b/Framework/Core/include/Framework/ConfigContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ConfigParamRegistry.h b/Framework/Core/include/Framework/ConfigParamRegistry.h index c1fbbe8b3f34c..0f0aa10166bfd 100644 --- a/Framework/Core/include/Framework/ConfigParamRegistry.h +++ b/Framework/Core/include/Framework/ConfigParamRegistry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ConfigParamSpec.h b/Framework/Core/include/Framework/ConfigParamSpec.h index 11d810b448dd7..5936cc0bde192 100644 --- a/Framework/Core/include/Framework/ConfigParamSpec.h +++ b/Framework/Core/include/Framework/ConfigParamSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ConfigParamStore.h b/Framework/Core/include/Framework/ConfigParamStore.h index 111725b818432..37442a6cf7f41 100644 --- a/Framework/Core/include/Framework/ConfigParamStore.h +++ b/Framework/Core/include/Framework/ConfigParamStore.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ConfigParamsHelper.h b/Framework/Core/include/Framework/ConfigParamsHelper.h index 6915f2247ba44..d0179777932f2 100644 --- a/Framework/Core/include/Framework/ConfigParamsHelper.h +++ b/Framework/Core/include/Framework/ConfigParamsHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/Configurable.h b/Framework/Core/include/Framework/Configurable.h index 3c33710548165..3aad0f7154d90 100644 --- a/Framework/Core/include/Framework/Configurable.h +++ b/Framework/Core/include/Framework/Configurable.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ConfigurableHelpers.h b/Framework/Core/include/Framework/ConfigurableHelpers.h index ee69dfaa43d64..a60b95bbf4053 100644 --- a/Framework/Core/include/Framework/ConfigurableHelpers.h +++ b/Framework/Core/include/Framework/ConfigurableHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ConfigurableKinds.h b/Framework/Core/include/Framework/ConfigurableKinds.h index d098398895c6a..3be77cde825c4 100644 --- a/Framework/Core/include/Framework/ConfigurableKinds.h +++ b/Framework/Core/include/Framework/ConfigurableKinds.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ControlService.h b/Framework/Core/include/Framework/ControlService.h index 8880530cf0055..cfe2a83c39f42 100644 --- a/Framework/Core/include/Framework/ControlService.h +++ b/Framework/Core/include/Framework/ControlService.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/CustomWorkflowTerminationHook.h b/Framework/Core/include/Framework/CustomWorkflowTerminationHook.h index 65db282817b28..840b1fe2c9d15 100644 --- a/Framework/Core/include/Framework/CustomWorkflowTerminationHook.h +++ b/Framework/Core/include/Framework/CustomWorkflowTerminationHook.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DanglingContext.h b/Framework/Core/include/Framework/DanglingContext.h index 7b02baeb40aa5..36bbbb15b0bfa 100644 --- a/Framework/Core/include/Framework/DanglingContext.h +++ b/Framework/Core/include/Framework/DanglingContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataAllocator.h b/Framework/Core/include/Framework/DataAllocator.h index 0faa05aff1337..7a9a041fc2ef8 100644 --- a/Framework/Core/include/Framework/DataAllocator.h +++ b/Framework/Core/include/Framework/DataAllocator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataChunk.h b/Framework/Core/include/Framework/DataChunk.h index 9e172029a99ca..664092216a0ee 100644 --- a/Framework/Core/include/Framework/DataChunk.h +++ b/Framework/Core/include/Framework/DataChunk.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataDescriptorMatcher.h b/Framework/Core/include/Framework/DataDescriptorMatcher.h index 87015b89c936a..95c5696bca6fd 100644 --- a/Framework/Core/include/Framework/DataDescriptorMatcher.h +++ b/Framework/Core/include/Framework/DataDescriptorMatcher.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataDescriptorMatcher.inc b/Framework/Core/include/Framework/DataDescriptorMatcher.inc index 8e1b86d45d585..4890bbd35fe3c 100644 --- a/Framework/Core/include/Framework/DataDescriptorMatcher.inc +++ b/Framework/Core/include/Framework/DataDescriptorMatcher.inc @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataDescriptorQueryBuilder.h b/Framework/Core/include/Framework/DataDescriptorQueryBuilder.h index fd3d82328e751..8df647f5243d4 100644 --- a/Framework/Core/include/Framework/DataDescriptorQueryBuilder.h +++ b/Framework/Core/include/Framework/DataDescriptorQueryBuilder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataInputDirector.h b/Framework/Core/include/Framework/DataInputDirector.h index ba9fc1007c09c..d9ef37763e611 100644 --- a/Framework/Core/include/Framework/DataInputDirector.h +++ b/Framework/Core/include/Framework/DataInputDirector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataMatcherWalker.h b/Framework/Core/include/Framework/DataMatcherWalker.h index c6029905f83ee..aa2b1af7177f1 100644 --- a/Framework/Core/include/Framework/DataMatcherWalker.h +++ b/Framework/Core/include/Framework/DataMatcherWalker.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataOutputDirector.h b/Framework/Core/include/Framework/DataOutputDirector.h index 9f1b666fb4174..e4db6134465ef 100644 --- a/Framework/Core/include/Framework/DataOutputDirector.h +++ b/Framework/Core/include/Framework/DataOutputDirector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataProcessingDevice.h b/Framework/Core/include/Framework/DataProcessingDevice.h index 2b01fd3109c75..00869c1f584a6 100644 --- a/Framework/Core/include/Framework/DataProcessingDevice.h +++ b/Framework/Core/include/Framework/DataProcessingDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataProcessingHeader.h b/Framework/Core/include/Framework/DataProcessingHeader.h index 5f3d59c77b048..d295e5fc286f7 100644 --- a/Framework/Core/include/Framework/DataProcessingHeader.h +++ b/Framework/Core/include/Framework/DataProcessingHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataProcessingStats.h b/Framework/Core/include/Framework/DataProcessingStats.h index 1f9cdb2c504d8..1858c77a68f83 100644 --- a/Framework/Core/include/Framework/DataProcessingStats.h +++ b/Framework/Core/include/Framework/DataProcessingStats.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataProcessor.h b/Framework/Core/include/Framework/DataProcessor.h index 8616f5e28e525..fce2ca7d832a8 100644 --- a/Framework/Core/include/Framework/DataProcessor.h +++ b/Framework/Core/include/Framework/DataProcessor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataProcessorInfo.h b/Framework/Core/include/Framework/DataProcessorInfo.h index 5e399bc41898a..20578b99eef5d 100644 --- a/Framework/Core/include/Framework/DataProcessorInfo.h +++ b/Framework/Core/include/Framework/DataProcessorInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataProcessorLabel.h b/Framework/Core/include/Framework/DataProcessorLabel.h index d5d5c84da2c69..d8b5f7b78428d 100644 --- a/Framework/Core/include/Framework/DataProcessorLabel.h +++ b/Framework/Core/include/Framework/DataProcessorLabel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataProcessorSpec.h b/Framework/Core/include/Framework/DataProcessorSpec.h index c60346dc5dc4c..b3fe89a36cdb3 100644 --- a/Framework/Core/include/Framework/DataProcessorSpec.h +++ b/Framework/Core/include/Framework/DataProcessorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataRef.h b/Framework/Core/include/Framework/DataRef.h index badd3eff57344..6aa2b8278def8 100644 --- a/Framework/Core/include/Framework/DataRef.h +++ b/Framework/Core/include/Framework/DataRef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataRefUtils.h b/Framework/Core/include/Framework/DataRefUtils.h index 5640cde2d2d50..0a9e6d6b24a02 100644 --- a/Framework/Core/include/Framework/DataRefUtils.h +++ b/Framework/Core/include/Framework/DataRefUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataRelayer.h b/Framework/Core/include/Framework/DataRelayer.h index ac35b9d6dc0af..bd5a27c06a72b 100644 --- a/Framework/Core/include/Framework/DataRelayer.h +++ b/Framework/Core/include/Framework/DataRelayer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataSpecUtils.h b/Framework/Core/include/Framework/DataSpecUtils.h index 9ec8c255f16e1..252e44ac22e90 100644 --- a/Framework/Core/include/Framework/DataSpecUtils.h +++ b/Framework/Core/include/Framework/DataSpecUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataTakingContext.h b/Framework/Core/include/Framework/DataTakingContext.h index 0fe5a4c401788..589dd0e616053 100644 --- a/Framework/Core/include/Framework/DataTakingContext.h +++ b/Framework/Core/include/Framework/DataTakingContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DataTypes.h b/Framework/Core/include/Framework/DataTypes.h index 676609a3b6752..af152690f9667 100644 --- a/Framework/Core/include/Framework/DataTypes.h +++ b/Framework/Core/include/Framework/DataTypes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DebugGUI.h b/Framework/Core/include/Framework/DebugGUI.h index d2344671a300e..b7eaf455603f0 100644 --- a/Framework/Core/include/Framework/DebugGUI.h +++ b/Framework/Core/include/Framework/DebugGUI.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DeviceConfigInfo.h b/Framework/Core/include/Framework/DeviceConfigInfo.h index d343021d8fd57..e4a15615df728 100644 --- a/Framework/Core/include/Framework/DeviceConfigInfo.h +++ b/Framework/Core/include/Framework/DeviceConfigInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DeviceControl.h b/Framework/Core/include/Framework/DeviceControl.h index 97376711b3eae..70cf8c9aa29dd 100644 --- a/Framework/Core/include/Framework/DeviceControl.h +++ b/Framework/Core/include/Framework/DeviceControl.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DeviceController.h b/Framework/Core/include/Framework/DeviceController.h index 7cb34d61e483b..8ccfeff2efe60 100644 --- a/Framework/Core/include/Framework/DeviceController.h +++ b/Framework/Core/include/Framework/DeviceController.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DeviceExecution.h b/Framework/Core/include/Framework/DeviceExecution.h index 8e3b57b6bc291..d417a6980cf58 100644 --- a/Framework/Core/include/Framework/DeviceExecution.h +++ b/Framework/Core/include/Framework/DeviceExecution.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DeviceInfo.h b/Framework/Core/include/Framework/DeviceInfo.h index 9835c9cc69366..bba8935628cfd 100644 --- a/Framework/Core/include/Framework/DeviceInfo.h +++ b/Framework/Core/include/Framework/DeviceInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DeviceMetricsHelper.h b/Framework/Core/include/Framework/DeviceMetricsHelper.h index 926ba2bafa3b0..6db4ef26f348e 100644 --- a/Framework/Core/include/Framework/DeviceMetricsHelper.h +++ b/Framework/Core/include/Framework/DeviceMetricsHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DeviceMetricsInfo.h b/Framework/Core/include/Framework/DeviceMetricsInfo.h index e5f14cb7f9b1e..1a54d6da330d6 100644 --- a/Framework/Core/include/Framework/DeviceMetricsInfo.h +++ b/Framework/Core/include/Framework/DeviceMetricsInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DeviceSpec.h b/Framework/Core/include/Framework/DeviceSpec.h index 8c0cd7d3bd494..b5574cf7f7980 100644 --- a/Framework/Core/include/Framework/DeviceSpec.h +++ b/Framework/Core/include/Framework/DeviceSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DeviceState.h b/Framework/Core/include/Framework/DeviceState.h index 198528041772f..7e9ac3772f426 100644 --- a/Framework/Core/include/Framework/DeviceState.h +++ b/Framework/Core/include/Framework/DeviceState.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DevicesManager.h b/Framework/Core/include/Framework/DevicesManager.h index e957ea252c2a3..8930e1cf72279 100644 --- a/Framework/Core/include/Framework/DevicesManager.h +++ b/Framework/Core/include/Framework/DevicesManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DispatchControl.h b/Framework/Core/include/Framework/DispatchControl.h index 175b57fb1987e..cc9046a524050 100644 --- a/Framework/Core/include/Framework/DispatchControl.h +++ b/Framework/Core/include/Framework/DispatchControl.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DispatchPolicy.h b/Framework/Core/include/Framework/DispatchPolicy.h index 8fc3c8563acf4..030a72b75e9ce 100644 --- a/Framework/Core/include/Framework/DispatchPolicy.h +++ b/Framework/Core/include/Framework/DispatchPolicy.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DriverClient.h b/Framework/Core/include/Framework/DriverClient.h index 5198b54e3329a..7435775bcf9cf 100644 --- a/Framework/Core/include/Framework/DriverClient.h +++ b/Framework/Core/include/Framework/DriverClient.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DriverControl.h b/Framework/Core/include/Framework/DriverControl.h index 4112f2c5808a7..001f441243523 100644 --- a/Framework/Core/include/Framework/DriverControl.h +++ b/Framework/Core/include/Framework/DriverControl.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/DriverInfo.h b/Framework/Core/include/Framework/DriverInfo.h index 539daf691901d..530f5d2d4b17d 100644 --- a/Framework/Core/include/Framework/DriverInfo.h +++ b/Framework/Core/include/Framework/DriverInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/EndOfStreamContext.h b/Framework/Core/include/Framework/EndOfStreamContext.h index f162feb3ea57e..bdf43d30e08ae 100644 --- a/Framework/Core/include/Framework/EndOfStreamContext.h +++ b/Framework/Core/include/Framework/EndOfStreamContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ErrorContext.h b/Framework/Core/include/Framework/ErrorContext.h index 96528afa69c49..06ed125358d03 100644 --- a/Framework/Core/include/Framework/ErrorContext.h +++ b/Framework/Core/include/Framework/ErrorContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ExpirationHandler.h b/Framework/Core/include/Framework/ExpirationHandler.h index 217ae16932b42..b5f8f97339b23 100644 --- a/Framework/Core/include/Framework/ExpirationHandler.h +++ b/Framework/Core/include/Framework/ExpirationHandler.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/Expressions.h b/Framework/Core/include/Framework/Expressions.h index 3edbf718b3ad0..a05bcf110990a 100644 --- a/Framework/Core/include/Framework/Expressions.h +++ b/Framework/Core/include/Framework/Expressions.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ExternalFairMQDeviceProxy.h b/Framework/Core/include/Framework/ExternalFairMQDeviceProxy.h index 0db292cc3a80f..c8c0b67b6f6eb 100644 --- a/Framework/Core/include/Framework/ExternalFairMQDeviceProxy.h +++ b/Framework/Core/include/Framework/ExternalFairMQDeviceProxy.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/FairMQDeviceProxy.h b/Framework/Core/include/Framework/FairMQDeviceProxy.h index ad208e00baa0f..e92fc0979eca1 100644 --- a/Framework/Core/include/Framework/FairMQDeviceProxy.h +++ b/Framework/Core/include/Framework/FairMQDeviceProxy.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/FairOptionsRetriever.h b/Framework/Core/include/Framework/FairOptionsRetriever.h index 3774706db72f0..d37e511ebd6bd 100644 --- a/Framework/Core/include/Framework/FairOptionsRetriever.h +++ b/Framework/Core/include/Framework/FairOptionsRetriever.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ForwardRoute.h b/Framework/Core/include/Framework/ForwardRoute.h index d54b44cb8349c..bae2eaacf1a44 100644 --- a/Framework/Core/include/Framework/ForwardRoute.h +++ b/Framework/Core/include/Framework/ForwardRoute.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/FreePortFinder.h b/Framework/Core/include/Framework/FreePortFinder.h index 0bc83a5cf7617..5b1c7aa1cd87c 100644 --- a/Framework/Core/include/Framework/FreePortFinder.h +++ b/Framework/Core/include/Framework/FreePortFinder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/HistogramRegistry.h b/Framework/Core/include/Framework/HistogramRegistry.h index 1df21e9c65745..fa02f43377ed9 100644 --- a/Framework/Core/include/Framework/HistogramRegistry.h +++ b/Framework/Core/include/Framework/HistogramRegistry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/HistogramSpec.h b/Framework/Core/include/Framework/HistogramSpec.h index b7fd85f7c6784..976391d5b25c4 100644 --- a/Framework/Core/include/Framework/HistogramSpec.h +++ b/Framework/Core/include/Framework/HistogramSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/InitContext.h b/Framework/Core/include/Framework/InitContext.h index 9119921634e75..e1049c8f91337 100644 --- a/Framework/Core/include/Framework/InitContext.h +++ b/Framework/Core/include/Framework/InitContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/InputRecord.h b/Framework/Core/include/Framework/InputRecord.h index eaf0f565bbcc9..08f2b053f4c30 100644 --- a/Framework/Core/include/Framework/InputRecord.h +++ b/Framework/Core/include/Framework/InputRecord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/InputRecordWalker.h b/Framework/Core/include/Framework/InputRecordWalker.h index 995e4b76bdf7d..3bb8a65ddffe9 100644 --- a/Framework/Core/include/Framework/InputRecordWalker.h +++ b/Framework/Core/include/Framework/InputRecordWalker.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/InputRoute.h b/Framework/Core/include/Framework/InputRoute.h index d748a672a2182..781ae2bf8e319 100644 --- a/Framework/Core/include/Framework/InputRoute.h +++ b/Framework/Core/include/Framework/InputRoute.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/InputSpan.h b/Framework/Core/include/Framework/InputSpan.h index 1b329951d049c..dffd89ca3ff5d 100644 --- a/Framework/Core/include/Framework/InputSpan.h +++ b/Framework/Core/include/Framework/InputSpan.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/InputSpec.h b/Framework/Core/include/Framework/InputSpec.h index e647142cb5214..d8a84249d3b47 100644 --- a/Framework/Core/include/Framework/InputSpec.h +++ b/Framework/Core/include/Framework/InputSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/Kernels.h b/Framework/Core/include/Framework/Kernels.h index ed196fda5d5da..475fcb641d2e6 100644 --- a/Framework/Core/include/Framework/Kernels.h +++ b/Framework/Core/include/Framework/Kernels.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/Lifetime.h b/Framework/Core/include/Framework/Lifetime.h index 9f7434aac1017..b139254223652 100644 --- a/Framework/Core/include/Framework/Lifetime.h +++ b/Framework/Core/include/Framework/Lifetime.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/LifetimeHelpers.h b/Framework/Core/include/Framework/LifetimeHelpers.h index 2acc60a30fc66..d5a882a7ace96 100644 --- a/Framework/Core/include/Framework/LifetimeHelpers.h +++ b/Framework/Core/include/Framework/LifetimeHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/LocalRootFileService.h b/Framework/Core/include/Framework/LocalRootFileService.h index 713edba089665..de6ee9be192ab 100644 --- a/Framework/Core/include/Framework/LocalRootFileService.h +++ b/Framework/Core/include/Framework/LocalRootFileService.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/LogParsingHelpers.h b/Framework/Core/include/Framework/LogParsingHelpers.h index a3c1716d616f4..9799f0e9160e5 100644 --- a/Framework/Core/include/Framework/LogParsingHelpers.h +++ b/Framework/Core/include/Framework/LogParsingHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/MessageContext.h b/Framework/Core/include/Framework/MessageContext.h index 48cfa740ce781..cd3a4910ca423 100644 --- a/Framework/Core/include/Framework/MessageContext.h +++ b/Framework/Core/include/Framework/MessageContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/MessageSet.h b/Framework/Core/include/Framework/MessageSet.h index 2a9f805a2b446..e651c7d5960ff 100644 --- a/Framework/Core/include/Framework/MessageSet.h +++ b/Framework/Core/include/Framework/MessageSet.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/Metric2DViewIndex.h b/Framework/Core/include/Framework/Metric2DViewIndex.h index 524df539cb6cb..f7cea4aa7393b 100644 --- a/Framework/Core/include/Framework/Metric2DViewIndex.h +++ b/Framework/Core/include/Framework/Metric2DViewIndex.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/Monitoring.h b/Framework/Core/include/Framework/Monitoring.h index b3e5be37f4f8f..e52cda653d789 100644 --- a/Framework/Core/include/Framework/Monitoring.h +++ b/Framework/Core/include/Framework/Monitoring.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/O2ControlLabels.h b/Framework/Core/include/Framework/O2ControlLabels.h index 50e48892f0283..eb05f156cf58d 100644 --- a/Framework/Core/include/Framework/O2ControlLabels.h +++ b/Framework/Core/include/Framework/O2ControlLabels.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/Output.h b/Framework/Core/include/Framework/Output.h index 0ab5ef0df96db..0737d87b9b754 100644 --- a/Framework/Core/include/Framework/Output.h +++ b/Framework/Core/include/Framework/Output.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/OutputObjHeader.h b/Framework/Core/include/Framework/OutputObjHeader.h index e31bee11eb302..6fb46dff47f35 100644 --- a/Framework/Core/include/Framework/OutputObjHeader.h +++ b/Framework/Core/include/Framework/OutputObjHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/OutputRef.h b/Framework/Core/include/Framework/OutputRef.h index 22d829aee1d30..6713d85c45433 100644 --- a/Framework/Core/include/Framework/OutputRef.h +++ b/Framework/Core/include/Framework/OutputRef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/OutputRoute.h b/Framework/Core/include/Framework/OutputRoute.h index c88e2e6f5947d..99702aa507a2b 100644 --- a/Framework/Core/include/Framework/OutputRoute.h +++ b/Framework/Core/include/Framework/OutputRoute.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/OutputSpec.h b/Framework/Core/include/Framework/OutputSpec.h index 6f8357c127e37..7a0a0c55d8124 100644 --- a/Framework/Core/include/Framework/OutputSpec.h +++ b/Framework/Core/include/Framework/OutputSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ParallelContext.h b/Framework/Core/include/Framework/ParallelContext.h index 79c0de7d70a4f..dae2a5bccfcbd 100644 --- a/Framework/Core/include/Framework/ParallelContext.h +++ b/Framework/Core/include/Framework/ParallelContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ParamRetriever.h b/Framework/Core/include/Framework/ParamRetriever.h index 34c6ad53a30ab..a1a185f668b1f 100644 --- a/Framework/Core/include/Framework/ParamRetriever.h +++ b/Framework/Core/include/Framework/ParamRetriever.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/PartRef.h b/Framework/Core/include/Framework/PartRef.h index 092ea573da0be..1811884bcc032 100644 --- a/Framework/Core/include/Framework/PartRef.h +++ b/Framework/Core/include/Framework/PartRef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/Plugins.h b/Framework/Core/include/Framework/Plugins.h index 80410ab6eee53..a72de955194aa 100644 --- a/Framework/Core/include/Framework/Plugins.h +++ b/Framework/Core/include/Framework/Plugins.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ProcessingContext.h b/Framework/Core/include/Framework/ProcessingContext.h index 264b0679019f8..a904134e8b422 100644 --- a/Framework/Core/include/Framework/ProcessingContext.h +++ b/Framework/Core/include/Framework/ProcessingContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/RCombinedDS.h b/Framework/Core/include/Framework/RCombinedDS.h index 3a6724d3122c9..6da222418ef3e 100644 --- a/Framework/Core/include/Framework/RCombinedDS.h +++ b/Framework/Core/include/Framework/RCombinedDS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/RawBufferContext.h b/Framework/Core/include/Framework/RawBufferContext.h index 97e6c15aa7cde..85eb09978fe0a 100644 --- a/Framework/Core/include/Framework/RawBufferContext.h +++ b/Framework/Core/include/Framework/RawBufferContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/RawDeviceService.h b/Framework/Core/include/Framework/RawDeviceService.h index 700df3c9b62a4..91b70d6c6bc4c 100644 --- a/Framework/Core/include/Framework/RawDeviceService.h +++ b/Framework/Core/include/Framework/RawDeviceService.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ReadoutAdapter.h b/Framework/Core/include/Framework/ReadoutAdapter.h index f46252b045e61..873ba9cf807d2 100644 --- a/Framework/Core/include/Framework/ReadoutAdapter.h +++ b/Framework/Core/include/Framework/ReadoutAdapter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ResourcePolicy.h b/Framework/Core/include/Framework/ResourcePolicy.h index 4686a39ad8095..eb8d77b209a8f 100644 --- a/Framework/Core/include/Framework/ResourcePolicy.h +++ b/Framework/Core/include/Framework/ResourcePolicy.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ResourcePolicyHelpers.h b/Framework/Core/include/Framework/ResourcePolicyHelpers.h index 990b47b318ea7..abee264d75104 100644 --- a/Framework/Core/include/Framework/ResourcePolicyHelpers.h +++ b/Framework/Core/include/Framework/ResourcePolicyHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/RootAnalysisHelpers.h b/Framework/Core/include/Framework/RootAnalysisHelpers.h index 7341d330b736f..a3d09b515401a 100644 --- a/Framework/Core/include/Framework/RootAnalysisHelpers.h +++ b/Framework/Core/include/Framework/RootAnalysisHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/RootConfigParamHelpers.h b/Framework/Core/include/Framework/RootConfigParamHelpers.h index 31e1c35712f37..b5bc266f0b013 100644 --- a/Framework/Core/include/Framework/RootConfigParamHelpers.h +++ b/Framework/Core/include/Framework/RootConfigParamHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/RootFileService.h b/Framework/Core/include/Framework/RootFileService.h index 0c0835c1d6a97..e293628d7015f 100644 --- a/Framework/Core/include/Framework/RootFileService.h +++ b/Framework/Core/include/Framework/RootFileService.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/RootSerializationSupport.h b/Framework/Core/include/Framework/RootSerializationSupport.h index 605d9652c3e50..cbf7408b13c7d 100644 --- a/Framework/Core/include/Framework/RootSerializationSupport.h +++ b/Framework/Core/include/Framework/RootSerializationSupport.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/RootTableBuilderHelpers.h b/Framework/Core/include/Framework/RootTableBuilderHelpers.h index 5ead9d8e69412..72f5ee5c570a1 100644 --- a/Framework/Core/include/Framework/RootTableBuilderHelpers.h +++ b/Framework/Core/include/Framework/RootTableBuilderHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/RoutingIndices.h b/Framework/Core/include/Framework/RoutingIndices.h index 30bd478fa9f16..a5834a106b085 100644 --- a/Framework/Core/include/Framework/RoutingIndices.h +++ b/Framework/Core/include/Framework/RoutingIndices.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/RunningWorkflowInfo.h b/Framework/Core/include/Framework/RunningWorkflowInfo.h index fa88bc4b4a599..c842057042681 100644 --- a/Framework/Core/include/Framework/RunningWorkflowInfo.h +++ b/Framework/Core/include/Framework/RunningWorkflowInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/SerializationMethods.h b/Framework/Core/include/Framework/SerializationMethods.h index 33686443d959f..54e53c5af884f 100644 --- a/Framework/Core/include/Framework/SerializationMethods.h +++ b/Framework/Core/include/Framework/SerializationMethods.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ServiceHandle.h b/Framework/Core/include/Framework/ServiceHandle.h index 3f3759bd1e9ca..80286b64f2ba1 100644 --- a/Framework/Core/include/Framework/ServiceHandle.h +++ b/Framework/Core/include/Framework/ServiceHandle.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ServiceRegistry.h b/Framework/Core/include/Framework/ServiceRegistry.h index a7e2f6dbf3a94..559adbf22d2e7 100644 --- a/Framework/Core/include/Framework/ServiceRegistry.h +++ b/Framework/Core/include/Framework/ServiceRegistry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ServiceRegistryHelpers.h b/Framework/Core/include/Framework/ServiceRegistryHelpers.h index 3a3e8b42fd249..5c3742772d2ba 100644 --- a/Framework/Core/include/Framework/ServiceRegistryHelpers.h +++ b/Framework/Core/include/Framework/ServiceRegistryHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/ServiceSpec.h b/Framework/Core/include/Framework/ServiceSpec.h index 3e564cd2b757b..b35c31ec53dee 100644 --- a/Framework/Core/include/Framework/ServiceSpec.h +++ b/Framework/Core/include/Framework/ServiceSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/SimpleOptionsRetriever.h b/Framework/Core/include/Framework/SimpleOptionsRetriever.h index 55a01e0a87974..a775c4bbc79eb 100644 --- a/Framework/Core/include/Framework/SimpleOptionsRetriever.h +++ b/Framework/Core/include/Framework/SimpleOptionsRetriever.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/SimpleRawDeviceService.h b/Framework/Core/include/Framework/SimpleRawDeviceService.h index 03e3e75e0c2db..83aeb3627dfbb 100644 --- a/Framework/Core/include/Framework/SimpleRawDeviceService.h +++ b/Framework/Core/include/Framework/SimpleRawDeviceService.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/SourceInfoHeader.h b/Framework/Core/include/Framework/SourceInfoHeader.h index ba870b270987e..2f2d2edd87928 100644 --- a/Framework/Core/include/Framework/SourceInfoHeader.h +++ b/Framework/Core/include/Framework/SourceInfoHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/StepTHn.h b/Framework/Core/include/Framework/StepTHn.h index 3d0768881945b..61c664e094a29 100644 --- a/Framework/Core/include/Framework/StepTHn.h +++ b/Framework/Core/include/Framework/StepTHn.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/StringContext.h b/Framework/Core/include/Framework/StringContext.h index 08052e95bad44..5190b5e515f83 100644 --- a/Framework/Core/include/Framework/StringContext.h +++ b/Framework/Core/include/Framework/StringContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/StringHelpers.h b/Framework/Core/include/Framework/StringHelpers.h index 96d367df03ce0..5eb5ce0cd88ab 100644 --- a/Framework/Core/include/Framework/StringHelpers.h +++ b/Framework/Core/include/Framework/StringHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/TMessageSerializer.h b/Framework/Core/include/Framework/TMessageSerializer.h index ed3eb3a4b014c..23c336eeb8078 100644 --- a/Framework/Core/include/Framework/TMessageSerializer.h +++ b/Framework/Core/include/Framework/TMessageSerializer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/TableBuilder.h b/Framework/Core/include/Framework/TableBuilder.h index eee63f1640d01..aef7d184253f1 100644 --- a/Framework/Core/include/Framework/TableBuilder.h +++ b/Framework/Core/include/Framework/TableBuilder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/TableConsumer.h b/Framework/Core/include/Framework/TableConsumer.h index 5d4629aaaa4d8..f2a041952470c 100644 --- a/Framework/Core/include/Framework/TableConsumer.h +++ b/Framework/Core/include/Framework/TableConsumer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/TableTreeHelpers.h b/Framework/Core/include/Framework/TableTreeHelpers.h index 519c2aa418878..307c167c70242 100644 --- a/Framework/Core/include/Framework/TableTreeHelpers.h +++ b/Framework/Core/include/Framework/TableTreeHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/Task.h b/Framework/Core/include/Framework/Task.h index e2cbf32f1a4f0..46a906b630331 100644 --- a/Framework/Core/include/Framework/Task.h +++ b/Framework/Core/include/Framework/Task.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/TerminationPolicy.h b/Framework/Core/include/Framework/TerminationPolicy.h index 13eda6f9567c3..2a366cd231a18 100644 --- a/Framework/Core/include/Framework/TerminationPolicy.h +++ b/Framework/Core/include/Framework/TerminationPolicy.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/TimesliceIndex.h b/Framework/Core/include/Framework/TimesliceIndex.h index 2b28be134d925..3e1a088028e08 100644 --- a/Framework/Core/include/Framework/TimesliceIndex.h +++ b/Framework/Core/include/Framework/TimesliceIndex.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/TimesliceIndex.inc b/Framework/Core/include/Framework/TimesliceIndex.inc index fdd45f778c941..4471d934ceb4f 100644 --- a/Framework/Core/include/Framework/TimesliceIndex.inc +++ b/Framework/Core/include/Framework/TimesliceIndex.inc @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/TimingInfo.h b/Framework/Core/include/Framework/TimingInfo.h index f0b480b4f9165..262b1c61d6da8 100644 --- a/Framework/Core/include/Framework/TimingInfo.h +++ b/Framework/Core/include/Framework/TimingInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/TopologyPolicy.h b/Framework/Core/include/Framework/TopologyPolicy.h index 2eeb38aec990f..14e5aca775ec1 100644 --- a/Framework/Core/include/Framework/TopologyPolicy.h +++ b/Framework/Core/include/Framework/TopologyPolicy.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/TypeTraits.h b/Framework/Core/include/Framework/TypeTraits.h index 2f9336442087d..844402f445428 100644 --- a/Framework/Core/include/Framework/TypeTraits.h +++ b/Framework/Core/include/Framework/TypeTraits.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/Variant.h b/Framework/Core/include/Framework/Variant.h index 3c6b05aad3ced..df76219ffa052 100644 --- a/Framework/Core/include/Framework/Variant.h +++ b/Framework/Core/include/Framework/Variant.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/VariantJSONHelpers.h b/Framework/Core/include/Framework/VariantJSONHelpers.h index a5a7ec4cc07a6..4585ff787ee57 100644 --- a/Framework/Core/include/Framework/VariantJSONHelpers.h +++ b/Framework/Core/include/Framework/VariantJSONHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/VariantPropertyTreeHelpers.h b/Framework/Core/include/Framework/VariantPropertyTreeHelpers.h index 4ad5327e1c684..484501a18991e 100644 --- a/Framework/Core/include/Framework/VariantPropertyTreeHelpers.h +++ b/Framework/Core/include/Framework/VariantPropertyTreeHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/VariantStringHelpers.h b/Framework/Core/include/Framework/VariantStringHelpers.h index 3051882fc2962..63270167544df 100644 --- a/Framework/Core/include/Framework/VariantStringHelpers.h +++ b/Framework/Core/include/Framework/VariantStringHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/WorkflowCustomizationHelpers.h b/Framework/Core/include/Framework/WorkflowCustomizationHelpers.h index edf4758adeb4f..9f313aae3496f 100644 --- a/Framework/Core/include/Framework/WorkflowCustomizationHelpers.h +++ b/Framework/Core/include/Framework/WorkflowCustomizationHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/WorkflowSpec.h b/Framework/Core/include/Framework/WorkflowSpec.h index 9620a10e7f70f..49a7c5bf11820 100644 --- a/Framework/Core/include/Framework/WorkflowSpec.h +++ b/Framework/Core/include/Framework/WorkflowSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/include/Framework/runDataProcessing.h b/Framework/Core/include/Framework/runDataProcessing.h index 1ed22b3018ae6..7a8b9de277475 100644 --- a/Framework/Core/include/Framework/runDataProcessing.h +++ b/Framework/Core/include/Framework/runDataProcessing.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/AODReaderHelpers.cxx b/Framework/Core/src/AODReaderHelpers.cxx index 5d904d76597d5..9245fec51e3ad 100644 --- a/Framework/Core/src/AODReaderHelpers.cxx +++ b/Framework/Core/src/AODReaderHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ASoA.cxx b/Framework/Core/src/ASoA.cxx index aa0172f72b0ee..b4abcce128475 100644 --- a/Framework/Core/src/ASoA.cxx +++ b/Framework/Core/src/ASoA.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/AnalysisDataModel.cxx b/Framework/Core/src/AnalysisDataModel.cxx index 126c114f00d94..d986486d94c69 100644 --- a/Framework/Core/src/AnalysisDataModel.cxx +++ b/Framework/Core/src/AnalysisDataModel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/AnalysisDataModelHelpers.cxx b/Framework/Core/src/AnalysisDataModelHelpers.cxx index e2b3e312a77ea..3ad780a67bdb3 100644 --- a/Framework/Core/src/AnalysisDataModelHelpers.cxx +++ b/Framework/Core/src/AnalysisDataModelHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/AnalysisDataModelHelpers.h b/Framework/Core/src/AnalysisDataModelHelpers.h index 074303e869b8d..dc7e722e0fd91 100644 --- a/Framework/Core/src/AnalysisDataModelHelpers.h +++ b/Framework/Core/src/AnalysisDataModelHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/AnalysisHelpers.cxx b/Framework/Core/src/AnalysisHelpers.cxx index 65dc086d2509d..a68547d1e670c 100644 --- a/Framework/Core/src/AnalysisHelpers.cxx +++ b/Framework/Core/src/AnalysisHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/AnalysisManagers.h b/Framework/Core/src/AnalysisManagers.h index 5534e244fa184..15c2966dbef40 100644 --- a/Framework/Core/src/AnalysisManagers.h +++ b/Framework/Core/src/AnalysisManagers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/Array2D.cxx b/Framework/Core/src/Array2D.cxx index 5d76fb461ea40..fbd8f0ef4c90a 100644 --- a/Framework/Core/src/Array2D.cxx +++ b/Framework/Core/src/Array2D.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ArrowDebugHelpers.h b/Framework/Core/src/ArrowDebugHelpers.h index 076bcf7d9118e..eb98ac1054689 100644 --- a/Framework/Core/src/ArrowDebugHelpers.h +++ b/Framework/Core/src/ArrowDebugHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ArrowSupport.cxx b/Framework/Core/src/ArrowSupport.cxx index e86fbfe212ba3..72a248a46954e 100644 --- a/Framework/Core/src/ArrowSupport.cxx +++ b/Framework/Core/src/ArrowSupport.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ArrowSupport.h b/Framework/Core/src/ArrowSupport.h index 29b04e6a5cf52..310cb20b01780 100644 --- a/Framework/Core/src/ArrowSupport.h +++ b/Framework/Core/src/ArrowSupport.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/Base64.cxx b/Framework/Core/src/Base64.cxx index b5644784dde84..85b4422e43ee9 100644 --- a/Framework/Core/src/Base64.cxx +++ b/Framework/Core/src/Base64.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/Base64.h b/Framework/Core/src/Base64.h index a9dc7d53c7258..6920205c2cc97 100644 --- a/Framework/Core/src/Base64.h +++ b/Framework/Core/src/Base64.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/BoostOptionsRetriever.cxx b/Framework/Core/src/BoostOptionsRetriever.cxx index d1a330c5c9f51..ae9183e16400c 100644 --- a/Framework/Core/src/BoostOptionsRetriever.cxx +++ b/Framework/Core/src/BoostOptionsRetriever.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ChannelConfigurationPolicy.cxx b/Framework/Core/src/ChannelConfigurationPolicy.cxx index 3facdf12ed57e..e0e4122ed68e5 100644 --- a/Framework/Core/src/ChannelConfigurationPolicy.cxx +++ b/Framework/Core/src/ChannelConfigurationPolicy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ChannelConfigurationPolicyHelpers.cxx b/Framework/Core/src/ChannelConfigurationPolicyHelpers.cxx index 226f3efeaa81d..c0821f0567865 100644 --- a/Framework/Core/src/ChannelConfigurationPolicyHelpers.cxx +++ b/Framework/Core/src/ChannelConfigurationPolicyHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ChannelMatching.cxx b/Framework/Core/src/ChannelMatching.cxx index 16151474dacb8..d3a3f5db0d418 100644 --- a/Framework/Core/src/ChannelMatching.cxx +++ b/Framework/Core/src/ChannelMatching.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ChannelSpecHelpers.cxx b/Framework/Core/src/ChannelSpecHelpers.cxx index 4365f808f1df5..8e6b6ef82a3d4 100644 --- a/Framework/Core/src/ChannelSpecHelpers.cxx +++ b/Framework/Core/src/ChannelSpecHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ChannelSpecHelpers.h b/Framework/Core/src/ChannelSpecHelpers.h index 41276e50a2f90..78e43c30f58a4 100644 --- a/Framework/Core/src/ChannelSpecHelpers.h +++ b/Framework/Core/src/ChannelSpecHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/CommandInfo.cxx b/Framework/Core/src/CommandInfo.cxx index 03128f126abc2..7127ecdc3c8ca 100644 --- a/Framework/Core/src/CommandInfo.cxx +++ b/Framework/Core/src/CommandInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/CommonDataProcessors.cxx b/Framework/Core/src/CommonDataProcessors.cxx index 6915802d59211..9929688b0cf20 100644 --- a/Framework/Core/src/CommonDataProcessors.cxx +++ b/Framework/Core/src/CommonDataProcessors.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/CommonMessageBackends.cxx b/Framework/Core/src/CommonMessageBackends.cxx index 45309a7214437..bbd1ff854cdaa 100644 --- a/Framework/Core/src/CommonMessageBackends.cxx +++ b/Framework/Core/src/CommonMessageBackends.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/CommonMessageBackendsHelpers.h b/Framework/Core/src/CommonMessageBackendsHelpers.h index 19760df1b935e..06e3dffcd2d18 100644 --- a/Framework/Core/src/CommonMessageBackendsHelpers.h +++ b/Framework/Core/src/CommonMessageBackendsHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/CommonServices.cxx b/Framework/Core/src/CommonServices.cxx index 0bedaa003ad75..14b0e6b1f2030 100644 --- a/Framework/Core/src/CommonServices.cxx +++ b/Framework/Core/src/CommonServices.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/CompletionPolicy.cxx b/Framework/Core/src/CompletionPolicy.cxx index a95b6c7f91d48..49a4067ef995f 100644 --- a/Framework/Core/src/CompletionPolicy.cxx +++ b/Framework/Core/src/CompletionPolicy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/CompletionPolicyHelpers.cxx b/Framework/Core/src/CompletionPolicyHelpers.cxx index c4908cbf26fc5..8b6465a758dec 100644 --- a/Framework/Core/src/CompletionPolicyHelpers.cxx +++ b/Framework/Core/src/CompletionPolicyHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ComputingQuotaEvaluator.cxx b/Framework/Core/src/ComputingQuotaEvaluator.cxx index 51dec7f6a9539..c875cbf45ebac 100644 --- a/Framework/Core/src/ComputingQuotaEvaluator.cxx +++ b/Framework/Core/src/ComputingQuotaEvaluator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ComputingResourceHelpers.cxx b/Framework/Core/src/ComputingResourceHelpers.cxx index 551a98118f30c..e0d82cd62505b 100644 --- a/Framework/Core/src/ComputingResourceHelpers.cxx +++ b/Framework/Core/src/ComputingResourceHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ComputingResourceHelpers.h b/Framework/Core/src/ComputingResourceHelpers.h index deea2b9219e4e..b1eb6060bd8e0 100644 --- a/Framework/Core/src/ComputingResourceHelpers.h +++ b/Framework/Core/src/ComputingResourceHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ConfigContext.cxx b/Framework/Core/src/ConfigContext.cxx index 5148a2640ba05..726332e1d0ae3 100644 --- a/Framework/Core/src/ConfigContext.cxx +++ b/Framework/Core/src/ConfigContext.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ConfigParamStore.cxx b/Framework/Core/src/ConfigParamStore.cxx index 00d64302dc9bc..249a8b0052a67 100644 --- a/Framework/Core/src/ConfigParamStore.cxx +++ b/Framework/Core/src/ConfigParamStore.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ConfigParamsHelper.cxx b/Framework/Core/src/ConfigParamsHelper.cxx index 8d4d5c477a94a..169433dfa53d3 100644 --- a/Framework/Core/src/ConfigParamsHelper.cxx +++ b/Framework/Core/src/ConfigParamsHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ConfigurationOptionsRetriever.cxx b/Framework/Core/src/ConfigurationOptionsRetriever.cxx index f7848a6b723d6..c0e3d67502e37 100644 --- a/Framework/Core/src/ConfigurationOptionsRetriever.cxx +++ b/Framework/Core/src/ConfigurationOptionsRetriever.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ConfigurationOptionsRetriever.h b/Framework/Core/src/ConfigurationOptionsRetriever.h index 2ec6907eaf2c2..d993ad9bf55ef 100644 --- a/Framework/Core/src/ConfigurationOptionsRetriever.h +++ b/Framework/Core/src/ConfigurationOptionsRetriever.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ControlService.cxx b/Framework/Core/src/ControlService.cxx index f303e21af05fa..fc2de65d05054 100644 --- a/Framework/Core/src/ControlService.cxx +++ b/Framework/Core/src/ControlService.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ControlServiceHelpers.cxx b/Framework/Core/src/ControlServiceHelpers.cxx index f22e3be89ddd5..1b372bf998a71 100644 --- a/Framework/Core/src/ControlServiceHelpers.cxx +++ b/Framework/Core/src/ControlServiceHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ControlServiceHelpers.h b/Framework/Core/src/ControlServiceHelpers.h index b691b0b9d5ac7..ac64d76303032 100644 --- a/Framework/Core/src/ControlServiceHelpers.h +++ b/Framework/Core/src/ControlServiceHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DDSConfigHelpers.cxx b/Framework/Core/src/DDSConfigHelpers.cxx index a47f90259291a..e016c125455ef 100644 --- a/Framework/Core/src/DDSConfigHelpers.cxx +++ b/Framework/Core/src/DDSConfigHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DDSConfigHelpers.h b/Framework/Core/src/DDSConfigHelpers.h index af804f79f6526..aafe6f568cae6 100644 --- a/Framework/Core/src/DDSConfigHelpers.h +++ b/Framework/Core/src/DDSConfigHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DPLMonitoringBackend.cxx b/Framework/Core/src/DPLMonitoringBackend.cxx index 8284029647d76..2dc75851a54bf 100644 --- a/Framework/Core/src/DPLMonitoringBackend.cxx +++ b/Framework/Core/src/DPLMonitoringBackend.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DPLMonitoringBackend.h b/Framework/Core/src/DPLMonitoringBackend.h index aa244062c3959..37fe9ba8e957c 100644 --- a/Framework/Core/src/DPLMonitoringBackend.h +++ b/Framework/Core/src/DPLMonitoringBackend.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DPLWebSocket.cxx b/Framework/Core/src/DPLWebSocket.cxx index fe5cd9870a74b..be5d6ac48f935 100644 --- a/Framework/Core/src/DPLWebSocket.cxx +++ b/Framework/Core/src/DPLWebSocket.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DPLWebSocket.h b/Framework/Core/src/DPLWebSocket.h index da08b01e7efa2..a52b9c5859d0d 100644 --- a/Framework/Core/src/DPLWebSocket.h +++ b/Framework/Core/src/DPLWebSocket.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataAllocator.cxx b/Framework/Core/src/DataAllocator.cxx index a2b63484c7b18..f5140d5718731 100644 --- a/Framework/Core/src/DataAllocator.cxx +++ b/Framework/Core/src/DataAllocator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataDescriptorMatcher.cxx b/Framework/Core/src/DataDescriptorMatcher.cxx index 58a6426673330..099473fdf55af 100644 --- a/Framework/Core/src/DataDescriptorMatcher.cxx +++ b/Framework/Core/src/DataDescriptorMatcher.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataDescriptorQueryBuilder.cxx b/Framework/Core/src/DataDescriptorQueryBuilder.cxx index 2edbb4f84be5d..fa01609270c1b 100644 --- a/Framework/Core/src/DataDescriptorQueryBuilder.cxx +++ b/Framework/Core/src/DataDescriptorQueryBuilder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataInputDirector.cxx b/Framework/Core/src/DataInputDirector.cxx index f02bc25ac97c1..b35d33b6b2bfe 100644 --- a/Framework/Core/src/DataInputDirector.cxx +++ b/Framework/Core/src/DataInputDirector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataOutputDirector.cxx b/Framework/Core/src/DataOutputDirector.cxx index 4f8ad4a27c68c..3ac517636db2d 100644 --- a/Framework/Core/src/DataOutputDirector.cxx +++ b/Framework/Core/src/DataOutputDirector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataProcessingDevice.cxx b/Framework/Core/src/DataProcessingDevice.cxx index e21c41fb47d01..5d884e90083a5 100644 --- a/Framework/Core/src/DataProcessingDevice.cxx +++ b/Framework/Core/src/DataProcessingDevice.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataProcessingHeader.cxx b/Framework/Core/src/DataProcessingHeader.cxx index e14231a7e671a..18be3019ea77c 100644 --- a/Framework/Core/src/DataProcessingHeader.cxx +++ b/Framework/Core/src/DataProcessingHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataProcessingHelpers.cxx b/Framework/Core/src/DataProcessingHelpers.cxx index 4c65520774cea..07dfe3d53eb5a 100644 --- a/Framework/Core/src/DataProcessingHelpers.cxx +++ b/Framework/Core/src/DataProcessingHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataProcessingHelpers.h b/Framework/Core/src/DataProcessingHelpers.h index 3ea3001222f51..73b4038c832e0 100644 --- a/Framework/Core/src/DataProcessingHelpers.h +++ b/Framework/Core/src/DataProcessingHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataProcessingStatus.h b/Framework/Core/src/DataProcessingStatus.h index 5be6933b9871c..377a9f0630625 100644 --- a/Framework/Core/src/DataProcessingStatus.h +++ b/Framework/Core/src/DataProcessingStatus.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataProcessor.cxx b/Framework/Core/src/DataProcessor.cxx index 757b0671fdcc3..b4cf0492e614c 100644 --- a/Framework/Core/src/DataProcessor.cxx +++ b/Framework/Core/src/DataProcessor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataRelayer.cxx b/Framework/Core/src/DataRelayer.cxx index 6cd8c75c38dfa..696b3dc881422 100644 --- a/Framework/Core/src/DataRelayer.cxx +++ b/Framework/Core/src/DataRelayer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataRelayerHelpers.cxx b/Framework/Core/src/DataRelayerHelpers.cxx index d28e71d87103c..de39dd7c285b0 100644 --- a/Framework/Core/src/DataRelayerHelpers.cxx +++ b/Framework/Core/src/DataRelayerHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataRelayerHelpers.h b/Framework/Core/src/DataRelayerHelpers.h index eee703b6d7621..8d53acc3df18b 100644 --- a/Framework/Core/src/DataRelayerHelpers.h +++ b/Framework/Core/src/DataRelayerHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DataSpecUtils.cxx b/Framework/Core/src/DataSpecUtils.cxx index df0333d53ad79..b44eded813c92 100644 --- a/Framework/Core/src/DataSpecUtils.cxx +++ b/Framework/Core/src/DataSpecUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DeviceConfigInfo.cxx b/Framework/Core/src/DeviceConfigInfo.cxx index b30aed5fbbe2a..47d726fc15c6a 100644 --- a/Framework/Core/src/DeviceConfigInfo.cxx +++ b/Framework/Core/src/DeviceConfigInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DeviceController.cxx b/Framework/Core/src/DeviceController.cxx index b8bf4d1da0f48..e7793ac1c4c23 100644 --- a/Framework/Core/src/DeviceController.cxx +++ b/Framework/Core/src/DeviceController.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DeviceMetricsHelper.cxx b/Framework/Core/src/DeviceMetricsHelper.cxx index 83596ac810523..1f498df0e6795 100644 --- a/Framework/Core/src/DeviceMetricsHelper.cxx +++ b/Framework/Core/src/DeviceMetricsHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DeviceMetricsInfo.cxx b/Framework/Core/src/DeviceMetricsInfo.cxx index 4a22a31e16236..621ade8a7da8a 100644 --- a/Framework/Core/src/DeviceMetricsInfo.cxx +++ b/Framework/Core/src/DeviceMetricsInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DeviceSpec.cxx b/Framework/Core/src/DeviceSpec.cxx index 06f8f7d561a3f..46485ced0589f 100644 --- a/Framework/Core/src/DeviceSpec.cxx +++ b/Framework/Core/src/DeviceSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DeviceSpecHelpers.cxx b/Framework/Core/src/DeviceSpecHelpers.cxx index 6869db3fa1fb1..bc55d08cec09a 100644 --- a/Framework/Core/src/DeviceSpecHelpers.cxx +++ b/Framework/Core/src/DeviceSpecHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DeviceSpecHelpers.h b/Framework/Core/src/DeviceSpecHelpers.h index 61ba0d4a779b1..b9deaa3209bce 100644 --- a/Framework/Core/src/DeviceSpecHelpers.h +++ b/Framework/Core/src/DeviceSpecHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DevicesManager.cxx b/Framework/Core/src/DevicesManager.cxx index f3f67a5fc5a6f..16d90775be457 100644 --- a/Framework/Core/src/DevicesManager.cxx +++ b/Framework/Core/src/DevicesManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DispatchPolicy.cxx b/Framework/Core/src/DispatchPolicy.cxx index e8622e498a1eb..56323cabfa669 100644 --- a/Framework/Core/src/DispatchPolicy.cxx +++ b/Framework/Core/src/DispatchPolicy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DriverClient.cxx b/Framework/Core/src/DriverClient.cxx index 0c85c785291c7..54710dede609c 100644 --- a/Framework/Core/src/DriverClient.cxx +++ b/Framework/Core/src/DriverClient.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DriverClientContext.h b/Framework/Core/src/DriverClientContext.h index 251c1a067eb60..bf3b9cfc7cbf4 100644 --- a/Framework/Core/src/DriverClientContext.h +++ b/Framework/Core/src/DriverClientContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DriverControl.cxx b/Framework/Core/src/DriverControl.cxx index 9ff709f28c8a7..4ff9a49525add 100644 --- a/Framework/Core/src/DriverControl.cxx +++ b/Framework/Core/src/DriverControl.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DriverInfo.cxx b/Framework/Core/src/DriverInfo.cxx index 37989f6df0ee7..7a128efd66ef3 100644 --- a/Framework/Core/src/DriverInfo.cxx +++ b/Framework/Core/src/DriverInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/DriverServerContext.h b/Framework/Core/src/DriverServerContext.h index 87c803f9788c5..6e9526d11b4f6 100644 --- a/Framework/Core/src/DriverServerContext.h +++ b/Framework/Core/src/DriverServerContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ExpressionHelpers.h b/Framework/Core/src/ExpressionHelpers.h index 5f42fef734d27..d16338dcd64b2 100644 --- a/Framework/Core/src/ExpressionHelpers.h +++ b/Framework/Core/src/ExpressionHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/Expressions.cxx b/Framework/Core/src/Expressions.cxx index 524679cf0818c..8ba4950faa28e 100644 --- a/Framework/Core/src/Expressions.cxx +++ b/Framework/Core/src/Expressions.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ExternalFairMQDeviceProxy.cxx b/Framework/Core/src/ExternalFairMQDeviceProxy.cxx index c3d567b662a69..10775316eb52f 100644 --- a/Framework/Core/src/ExternalFairMQDeviceProxy.cxx +++ b/Framework/Core/src/ExternalFairMQDeviceProxy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/FairMQDeviceProxy.cxx b/Framework/Core/src/FairMQDeviceProxy.cxx index bdc72afa4917d..06dc0a12c5549 100644 --- a/Framework/Core/src/FairMQDeviceProxy.cxx +++ b/Framework/Core/src/FairMQDeviceProxy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/FairMQResizableBuffer.cxx b/Framework/Core/src/FairMQResizableBuffer.cxx index 6646afc009ce7..1ffe97e0c5b43 100644 --- a/Framework/Core/src/FairMQResizableBuffer.cxx +++ b/Framework/Core/src/FairMQResizableBuffer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/FairMQResizableBuffer.h b/Framework/Core/src/FairMQResizableBuffer.h index 78612b852c4dd..b2479bf5edb3a 100644 --- a/Framework/Core/src/FairMQResizableBuffer.h +++ b/Framework/Core/src/FairMQResizableBuffer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/FairOptionsRetriever.cxx b/Framework/Core/src/FairOptionsRetriever.cxx index 890d7e0fc1818..57f78a16c52b4 100644 --- a/Framework/Core/src/FairOptionsRetriever.cxx +++ b/Framework/Core/src/FairOptionsRetriever.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/FreePortFinder.cxx b/Framework/Core/src/FreePortFinder.cxx index 95a7b76e83efa..b869c3b2e8005 100644 --- a/Framework/Core/src/FreePortFinder.cxx +++ b/Framework/Core/src/FreePortFinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/GraphvizHelpers.cxx b/Framework/Core/src/GraphvizHelpers.cxx index 2bd2309811edf..47411235faba6 100644 --- a/Framework/Core/src/GraphvizHelpers.cxx +++ b/Framework/Core/src/GraphvizHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/GraphvizHelpers.h b/Framework/Core/src/GraphvizHelpers.h index 28d29d27bb138..1f6fadfac10ba 100644 --- a/Framework/Core/src/GraphvizHelpers.h +++ b/Framework/Core/src/GraphvizHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/HTTPParser.cxx b/Framework/Core/src/HTTPParser.cxx index 131fbf24cb331..88ff5e48c669e 100644 --- a/Framework/Core/src/HTTPParser.cxx +++ b/Framework/Core/src/HTTPParser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/HTTPParser.h b/Framework/Core/src/HTTPParser.h index b655fcd39ee13..fbb3e0e27424e 100644 --- a/Framework/Core/src/HTTPParser.h +++ b/Framework/Core/src/HTTPParser.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/HistogramRegistry.cxx b/Framework/Core/src/HistogramRegistry.cxx index 5da531e53f223..9ee925f93a06f 100644 --- a/Framework/Core/src/HistogramRegistry.cxx +++ b/Framework/Core/src/HistogramRegistry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/HistogramSpec.cxx b/Framework/Core/src/HistogramSpec.cxx index fab4e2fc8aebd..288dc435a9788 100644 --- a/Framework/Core/src/HistogramSpec.cxx +++ b/Framework/Core/src/HistogramSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/InputRecord.cxx b/Framework/Core/src/InputRecord.cxx index 35f8b6ee36db6..45267b5e7d8a8 100644 --- a/Framework/Core/src/InputRecord.cxx +++ b/Framework/Core/src/InputRecord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/InputSpan.cxx b/Framework/Core/src/InputSpan.cxx index 637b063ab9563..510b55cd0b9b9 100644 --- a/Framework/Core/src/InputSpan.cxx +++ b/Framework/Core/src/InputSpan.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/InputSpec.cxx b/Framework/Core/src/InputSpec.cxx index 3b95f0fda8ef1..5a6eff28ec241 100644 --- a/Framework/Core/src/InputSpec.cxx +++ b/Framework/Core/src/InputSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/LifetimeHelpers.cxx b/Framework/Core/src/LifetimeHelpers.cxx index fa6c18f8ae127..6e725d4925265 100644 --- a/Framework/Core/src/LifetimeHelpers.cxx +++ b/Framework/Core/src/LifetimeHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/LocalRootFileService.cxx b/Framework/Core/src/LocalRootFileService.cxx index 6d2ae0b2aab13..d16307fecdd0a 100644 --- a/Framework/Core/src/LocalRootFileService.cxx +++ b/Framework/Core/src/LocalRootFileService.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/LogParsingHelpers.cxx b/Framework/Core/src/LogParsingHelpers.cxx index 11ae25f7530db..cf47fb2dfbfea 100644 --- a/Framework/Core/src/LogParsingHelpers.cxx +++ b/Framework/Core/src/LogParsingHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/MessageContext.cxx b/Framework/Core/src/MessageContext.cxx index 039fbbb590849..1c4053d6507cd 100644 --- a/Framework/Core/src/MessageContext.cxx +++ b/Framework/Core/src/MessageContext.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/Metric2DViewIndex.cxx b/Framework/Core/src/Metric2DViewIndex.cxx index 7f4258e7288fa..98eae954d311d 100644 --- a/Framework/Core/src/Metric2DViewIndex.cxx +++ b/Framework/Core/src/Metric2DViewIndex.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/O2ControlHelpers.cxx b/Framework/Core/src/O2ControlHelpers.cxx index fc72bf0d803fc..71d6955d5aab1 100644 --- a/Framework/Core/src/O2ControlHelpers.cxx +++ b/Framework/Core/src/O2ControlHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/O2ControlHelpers.h b/Framework/Core/src/O2ControlHelpers.h index 3439a77cdec9e..4ec1cf045f687 100644 --- a/Framework/Core/src/O2ControlHelpers.h +++ b/Framework/Core/src/O2ControlHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/O2ControlLabels.cxx b/Framework/Core/src/O2ControlLabels.cxx index 9fe076e622400..aa22d858f6e44 100644 --- a/Framework/Core/src/O2ControlLabels.cxx +++ b/Framework/Core/src/O2ControlLabels.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/OutputSpec.cxx b/Framework/Core/src/OutputSpec.cxx index d42b522bf05e2..f47e3bab97da4 100644 --- a/Framework/Core/src/OutputSpec.cxx +++ b/Framework/Core/src/OutputSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/PropertyTreeHelpers.cxx b/Framework/Core/src/PropertyTreeHelpers.cxx index 2202b27df785d..ba9a7f01c25b0 100644 --- a/Framework/Core/src/PropertyTreeHelpers.cxx +++ b/Framework/Core/src/PropertyTreeHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/PropertyTreeHelpers.h b/Framework/Core/src/PropertyTreeHelpers.h index e6fa3c8f7d71b..7d2850fbcdafb 100644 --- a/Framework/Core/src/PropertyTreeHelpers.h +++ b/Framework/Core/src/PropertyTreeHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/RCombinedDS.cxx b/Framework/Core/src/RCombinedDS.cxx index c1bbf015fe6de..0c56d967dcc05 100644 --- a/Framework/Core/src/RCombinedDS.cxx +++ b/Framework/Core/src/RCombinedDS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/RawBufferContext.cxx b/Framework/Core/src/RawBufferContext.cxx index dbf6375d2f945..1e979eab4acf0 100644 --- a/Framework/Core/src/RawBufferContext.cxx +++ b/Framework/Core/src/RawBufferContext.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ReadoutAdapter.cxx b/Framework/Core/src/ReadoutAdapter.cxx index a002d3b8ff3ad..c67ee4e8ce22d 100644 --- a/Framework/Core/src/ReadoutAdapter.cxx +++ b/Framework/Core/src/ReadoutAdapter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ResourceManager.h b/Framework/Core/src/ResourceManager.h index 93ba16711a1cc..4464762f023a4 100644 --- a/Framework/Core/src/ResourceManager.h +++ b/Framework/Core/src/ResourceManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ResourcePolicy.cxx b/Framework/Core/src/ResourcePolicy.cxx index b0846d2cbad06..558e45c921a3a 100644 --- a/Framework/Core/src/ResourcePolicy.cxx +++ b/Framework/Core/src/ResourcePolicy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ResourcePolicyHelpers.cxx b/Framework/Core/src/ResourcePolicyHelpers.cxx index 58aba4805fac9..aad783cdc1f60 100644 --- a/Framework/Core/src/ResourcePolicyHelpers.cxx +++ b/Framework/Core/src/ResourcePolicyHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ResourcesMonitoringHelper.cxx b/Framework/Core/src/ResourcesMonitoringHelper.cxx index 6f27b3fedc171..96c51bbe31db7 100644 --- a/Framework/Core/src/ResourcesMonitoringHelper.cxx +++ b/Framework/Core/src/ResourcesMonitoringHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ResourcesMonitoringHelper.h b/Framework/Core/src/ResourcesMonitoringHelper.h index 791c475b31d7d..0585f5bbfd1ec 100644 --- a/Framework/Core/src/ResourcesMonitoringHelper.h +++ b/Framework/Core/src/ResourcesMonitoringHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/RootConfigParamHelpers.cxx b/Framework/Core/src/RootConfigParamHelpers.cxx index b27fd17e76461..d938e8be51aa7 100644 --- a/Framework/Core/src/RootConfigParamHelpers.cxx +++ b/Framework/Core/src/RootConfigParamHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ScopedExit.h b/Framework/Core/src/ScopedExit.h index cf5533591fcd9..aca3c1a19d8b1 100644 --- a/Framework/Core/src/ScopedExit.h +++ b/Framework/Core/src/ScopedExit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/ServiceRegistry.cxx b/Framework/Core/src/ServiceRegistry.cxx index 80a462c402d56..1b34e198c22af 100644 --- a/Framework/Core/src/ServiceRegistry.cxx +++ b/Framework/Core/src/ServiceRegistry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/SimpleOptionsRetriever.cxx b/Framework/Core/src/SimpleOptionsRetriever.cxx index d8f725b771ff4..449e2f3d01a5f 100644 --- a/Framework/Core/src/SimpleOptionsRetriever.cxx +++ b/Framework/Core/src/SimpleOptionsRetriever.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/SimpleRawDeviceService.cxx b/Framework/Core/src/SimpleRawDeviceService.cxx index daf1cb54e0c4d..c268b147ec09b 100644 --- a/Framework/Core/src/SimpleRawDeviceService.cxx +++ b/Framework/Core/src/SimpleRawDeviceService.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/SimpleResourceManager.cxx b/Framework/Core/src/SimpleResourceManager.cxx index 7becac3926160..d8dec64ecfc2c 100644 --- a/Framework/Core/src/SimpleResourceManager.cxx +++ b/Framework/Core/src/SimpleResourceManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/SimpleResourceManager.h b/Framework/Core/src/SimpleResourceManager.h index 8f383ce31f96b..33bc5805e6d39 100644 --- a/Framework/Core/src/SimpleResourceManager.h +++ b/Framework/Core/src/SimpleResourceManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/SourceInfoHeader.cxx b/Framework/Core/src/SourceInfoHeader.cxx index e5e792e1205e7..440dc9424e682 100644 --- a/Framework/Core/src/SourceInfoHeader.cxx +++ b/Framework/Core/src/SourceInfoHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/StepTHn.cxx b/Framework/Core/src/StepTHn.cxx index eb51747ae46f3..abc7a37e68bcc 100644 --- a/Framework/Core/src/StepTHn.cxx +++ b/Framework/Core/src/StepTHn.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/StreamOperators.cxx b/Framework/Core/src/StreamOperators.cxx index 66a11d3df8e9d..d9267ec90d854 100644 --- a/Framework/Core/src/StreamOperators.cxx +++ b/Framework/Core/src/StreamOperators.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/StringContext.cxx b/Framework/Core/src/StringContext.cxx index 1ef0ebb8d30d4..627ec7c501513 100644 --- a/Framework/Core/src/StringContext.cxx +++ b/Framework/Core/src/StringContext.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/TMessageSerializer.cxx b/Framework/Core/src/TMessageSerializer.cxx index 8c0c5b4e9cacb..e50a97e2d0b87 100644 --- a/Framework/Core/src/TMessageSerializer.cxx +++ b/Framework/Core/src/TMessageSerializer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/TableBuilder.cxx b/Framework/Core/src/TableBuilder.cxx index 38cd06e318c84..81a7fb437c88d 100644 --- a/Framework/Core/src/TableBuilder.cxx +++ b/Framework/Core/src/TableBuilder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/TableConsumer.cxx b/Framework/Core/src/TableConsumer.cxx index 85b877dd8e046..67c3e5765731b 100644 --- a/Framework/Core/src/TableConsumer.cxx +++ b/Framework/Core/src/TableConsumer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/TableTreeHelpers.cxx b/Framework/Core/src/TableTreeHelpers.cxx index 5afe1a4be1dc0..6ef513e9b8644 100644 --- a/Framework/Core/src/TableTreeHelpers.cxx +++ b/Framework/Core/src/TableTreeHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/Task.cxx b/Framework/Core/src/Task.cxx index 8f947f18755fe..a6d52f292645f 100644 --- a/Framework/Core/src/Task.cxx +++ b/Framework/Core/src/Task.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/TextDriverClient.cxx b/Framework/Core/src/TextDriverClient.cxx index 3f203718fe33e..185db847abb44 100644 --- a/Framework/Core/src/TextDriverClient.cxx +++ b/Framework/Core/src/TextDriverClient.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/TextDriverClient.h b/Framework/Core/src/TextDriverClient.h index 282171729cb4e..04cd9efaa0c84 100644 --- a/Framework/Core/src/TextDriverClient.h +++ b/Framework/Core/src/TextDriverClient.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/TopologyPolicy.cxx b/Framework/Core/src/TopologyPolicy.cxx index 2544fb14b4181..d391902a4c945 100644 --- a/Framework/Core/src/TopologyPolicy.cxx +++ b/Framework/Core/src/TopologyPolicy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/Variant.cxx b/Framework/Core/src/Variant.cxx index 17ffd7b986a8b..ad9a6461f9fd0 100644 --- a/Framework/Core/src/Variant.cxx +++ b/Framework/Core/src/Variant.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/WSDriverClient.cxx b/Framework/Core/src/WSDriverClient.cxx index fab3152a2334d..1b48cc40ceed3 100644 --- a/Framework/Core/src/WSDriverClient.cxx +++ b/Framework/Core/src/WSDriverClient.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/WSDriverClient.h b/Framework/Core/src/WSDriverClient.h index 3d97ae5538054..abf44ec6ed789 100644 --- a/Framework/Core/src/WSDriverClient.h +++ b/Framework/Core/src/WSDriverClient.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/WorkflowCustomizationHelpers.cxx b/Framework/Core/src/WorkflowCustomizationHelpers.cxx index 5ee63b079b9af..63ad496588aa8 100644 --- a/Framework/Core/src/WorkflowCustomizationHelpers.cxx +++ b/Framework/Core/src/WorkflowCustomizationHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/WorkflowHelpers.cxx b/Framework/Core/src/WorkflowHelpers.cxx index bcd34629ce7ee..083207c6bbb53 100644 --- a/Framework/Core/src/WorkflowHelpers.cxx +++ b/Framework/Core/src/WorkflowHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/WorkflowHelpers.h b/Framework/Core/src/WorkflowHelpers.h index f7ffde511c415..73212eaddfca5 100644 --- a/Framework/Core/src/WorkflowHelpers.h +++ b/Framework/Core/src/WorkflowHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/WorkflowSerializationHelpers.cxx b/Framework/Core/src/WorkflowSerializationHelpers.cxx index 9b51b754b2471..eb2ce9aafc3ec 100644 --- a/Framework/Core/src/WorkflowSerializationHelpers.cxx +++ b/Framework/Core/src/WorkflowSerializationHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/WorkflowSerializationHelpers.h b/Framework/Core/src/WorkflowSerializationHelpers.h index 862d83b194ad0..9b306d9d15aee 100644 --- a/Framework/Core/src/WorkflowSerializationHelpers.h +++ b/Framework/Core/src/WorkflowSerializationHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/WorkflowSpec.cxx b/Framework/Core/src/WorkflowSpec.cxx index cda674725d947..55ccd2e1e441b 100644 --- a/Framework/Core/src/WorkflowSpec.cxx +++ b/Framework/Core/src/WorkflowSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/dplRun.cxx b/Framework/Core/src/dplRun.cxx index da986e7211a73..608ee05d7f35c 100644 --- a/Framework/Core/src/dplRun.cxx +++ b/Framework/Core/src/dplRun.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/o2NullSink.cxx b/Framework/Core/src/o2NullSink.cxx index 79c18a9f6ba11..4d8e9d83f753c 100644 --- a/Framework/Core/src/o2NullSink.cxx +++ b/Framework/Core/src/o2NullSink.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/runDataProcessing.cxx b/Framework/Core/src/runDataProcessing.cxx index abfd5c0e2ff30..08d6dc3b446d5 100644 --- a/Framework/Core/src/runDataProcessing.cxx +++ b/Framework/Core/src/runDataProcessing.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/src/verifyAODFile.cxx b/Framework/Core/src/verifyAODFile.cxx index ce80425837504..a59691e57e378 100644 --- a/Framework/Core/src/verifyAODFile.cxx +++ b/Framework/Core/src/verifyAODFile.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/FrameworkCoreTestLinkDef.h b/Framework/Core/test/FrameworkCoreTestLinkDef.h index 9c4de4d65057d..aed39406da87c 100644 --- a/Framework/Core/test/FrameworkCoreTestLinkDef.h +++ b/Framework/Core/test/FrameworkCoreTestLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/Mocking.h b/Framework/Core/test/Mocking.h index 129bcd8f2e909..5387290dcae0e 100644 --- a/Framework/Core/test/Mocking.h +++ b/Framework/Core/test/Mocking.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/TestClasses.cxx b/Framework/Core/test/TestClasses.cxx index 8bcbe41103afd..777110423e670 100644 --- a/Framework/Core/test/TestClasses.cxx +++ b/Framework/Core/test/TestClasses.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/TestClasses.h b/Framework/Core/test/TestClasses.h index 992499ae586a8..4f03c59b2d8ef 100644 --- a/Framework/Core/test/TestClasses.h +++ b/Framework/Core/test/TestClasses.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_ASoA.cxx b/Framework/Core/test/benchmark_ASoA.cxx index 941187159c9cb..b0fa78b855d11 100644 --- a/Framework/Core/test/benchmark_ASoA.cxx +++ b/Framework/Core/test/benchmark_ASoA.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_ASoAHelpers.cxx b/Framework/Core/test/benchmark_ASoAHelpers.cxx index dd4ca74caee3f..224680f2d743d 100644 --- a/Framework/Core/test/benchmark_ASoAHelpers.cxx +++ b/Framework/Core/test/benchmark_ASoAHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_DataDescriptorMatcher.cxx b/Framework/Core/test/benchmark_DataDescriptorMatcher.cxx index 1a6d38c6e3ee7..d195a46e46c4f 100644 --- a/Framework/Core/test/benchmark_DataDescriptorMatcher.cxx +++ b/Framework/Core/test/benchmark_DataDescriptorMatcher.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_DataRelayer.cxx b/Framework/Core/test/benchmark_DataRelayer.cxx index 92d9d5f621548..d725320fa738a 100644 --- a/Framework/Core/test/benchmark_DataRelayer.cxx +++ b/Framework/Core/test/benchmark_DataRelayer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_DeviceMetricsInfo.cxx b/Framework/Core/test/benchmark_DeviceMetricsInfo.cxx index f10952c7db295..2518ec3ab748d 100644 --- a/Framework/Core/test/benchmark_DeviceMetricsInfo.cxx +++ b/Framework/Core/test/benchmark_DeviceMetricsInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_ExternalFairMQDeviceProxies.cxx b/Framework/Core/test/benchmark_ExternalFairMQDeviceProxies.cxx index 73940e31d72ff..299925ad28f29 100644 --- a/Framework/Core/test/benchmark_ExternalFairMQDeviceProxies.cxx +++ b/Framework/Core/test/benchmark_ExternalFairMQDeviceProxies.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_GandivaExpressions.cxx b/Framework/Core/test/benchmark_GandivaExpressions.cxx index 053b3eff2019a..700bf1abb51d0 100644 --- a/Framework/Core/test/benchmark_GandivaExpressions.cxx +++ b/Framework/Core/test/benchmark_GandivaExpressions.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_HistogramRegistry.cxx b/Framework/Core/test/benchmark_HistogramRegistry.cxx index ff870f53e913f..c4d8fca9b9421 100644 --- a/Framework/Core/test/benchmark_HistogramRegistry.cxx +++ b/Framework/Core/test/benchmark_HistogramRegistry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_InputRecord.cxx b/Framework/Core/test/benchmark_InputRecord.cxx index f92b96de5f3c9..d971712d410dd 100644 --- a/Framework/Core/test/benchmark_InputRecord.cxx +++ b/Framework/Core/test/benchmark_InputRecord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_TableBuilder.cxx b/Framework/Core/test/benchmark_TableBuilder.cxx index e79d66f31da4a..25ebd7f780d71 100644 --- a/Framework/Core/test/benchmark_TableBuilder.cxx +++ b/Framework/Core/test/benchmark_TableBuilder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_TableToTree.cxx b/Framework/Core/test/benchmark_TableToTree.cxx index 378c1db01c40f..75d9592bb1b26 100644 --- a/Framework/Core/test/benchmark_TableToTree.cxx +++ b/Framework/Core/test/benchmark_TableToTree.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_TreeToTable.cxx b/Framework/Core/test/benchmark_TreeToTable.cxx index 381b8c09bad4a..786d37d8032fd 100644 --- a/Framework/Core/test/benchmark_TreeToTable.cxx +++ b/Framework/Core/test/benchmark_TreeToTable.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/benchmark_WorkflowHelpers.cxx b/Framework/Core/test/benchmark_WorkflowHelpers.cxx index 53c2c354df377..f1c070d8a0f4e 100644 --- a/Framework/Core/test/benchmark_WorkflowHelpers.cxx +++ b/Framework/Core/test/benchmark_WorkflowHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_ASoA.cxx b/Framework/Core/test/test_ASoA.cxx index d312044577a59..74269b93f43a9 100644 --- a/Framework/Core/test/test_ASoA.cxx +++ b/Framework/Core/test/test_ASoA.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_ASoAHelpers.cxx b/Framework/Core/test/test_ASoAHelpers.cxx index 9fb4e598ebe63..66113c1a7c99e 100644 --- a/Framework/Core/test/test_ASoAHelpers.cxx +++ b/Framework/Core/test/test_ASoAHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_AlgorithmSpec.cxx b/Framework/Core/test/test_AlgorithmSpec.cxx index 355c100f6a8a6..b5baa70f81281 100644 --- a/Framework/Core/test/test_AlgorithmSpec.cxx +++ b/Framework/Core/test/test_AlgorithmSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_AnalysisDataModel.cxx b/Framework/Core/test/test_AnalysisDataModel.cxx index 77b4264b289db..8fed7bfd85f44 100644 --- a/Framework/Core/test/test_AnalysisDataModel.cxx +++ b/Framework/Core/test/test_AnalysisDataModel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_AnalysisTask.cxx b/Framework/Core/test/test_AnalysisTask.cxx index fd7b257ded44f..55d2dd90c85f9 100644 --- a/Framework/Core/test/test_AnalysisTask.cxx +++ b/Framework/Core/test/test_AnalysisTask.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_BoostOptionsRetriever.cxx b/Framework/Core/test/test_BoostOptionsRetriever.cxx index 42110510a0c3e..6da8b2d871a78 100644 --- a/Framework/Core/test/test_BoostOptionsRetriever.cxx +++ b/Framework/Core/test/test_BoostOptionsRetriever.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_BoostSerializedProcessing.cxx b/Framework/Core/test/test_BoostSerializedProcessing.cxx index 86c9aab29f6b8..9bf88c62630e4 100644 --- a/Framework/Core/test/test_BoostSerializedProcessing.cxx +++ b/Framework/Core/test/test_BoostSerializedProcessing.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_CCDBFetcher.cxx b/Framework/Core/test/test_CCDBFetcher.cxx index 4f4c8a118513e..b29d9bfd29aa2 100644 --- a/Framework/Core/test/test_CCDBFetcher.cxx +++ b/Framework/Core/test/test_CCDBFetcher.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_CallbackRegistry.cxx b/Framework/Core/test/test_CallbackRegistry.cxx index 6c3dbccf9beb1..345fa0b4c97c3 100644 --- a/Framework/Core/test/test_CallbackRegistry.cxx +++ b/Framework/Core/test/test_CallbackRegistry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_CallbackService.cxx b/Framework/Core/test/test_CallbackService.cxx index b8953577f1b4f..eb8aa538ee2bd 100644 --- a/Framework/Core/test/test_CallbackService.cxx +++ b/Framework/Core/test/test_CallbackService.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_ChannelSpecHelpers.cxx b/Framework/Core/test/test_ChannelSpecHelpers.cxx index 1166c706bd083..d8fd03f7c3588 100644 --- a/Framework/Core/test/test_ChannelSpecHelpers.cxx +++ b/Framework/Core/test/test_ChannelSpecHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_CheckTypes.cxx b/Framework/Core/test/test_CheckTypes.cxx index f884f117e9ba3..45e0870bf92be 100644 --- a/Framework/Core/test/test_CheckTypes.cxx +++ b/Framework/Core/test/test_CheckTypes.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_CompletionPolicy.cxx b/Framework/Core/test/test_CompletionPolicy.cxx index 6f8810f02d5ee..c9b7d5fb6263e 100644 --- a/Framework/Core/test/test_CompletionPolicy.cxx +++ b/Framework/Core/test/test_CompletionPolicy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_ComputingResourceHelpers.cxx b/Framework/Core/test/test_ComputingResourceHelpers.cxx index a1d8e2a3baae1..07e2eee0cffa6 100644 --- a/Framework/Core/test/test_ComputingResourceHelpers.cxx +++ b/Framework/Core/test/test_ComputingResourceHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_ConfigParamRegistry.cxx b/Framework/Core/test/test_ConfigParamRegistry.cxx index f676aba1eddbd..61ffa2c8edd5f 100644 --- a/Framework/Core/test/test_ConfigParamRegistry.cxx +++ b/Framework/Core/test/test_ConfigParamRegistry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_ConfigParamStore.cxx b/Framework/Core/test/test_ConfigParamStore.cxx index 8269f8090c726..fa51ed35caae6 100644 --- a/Framework/Core/test/test_ConfigParamStore.cxx +++ b/Framework/Core/test/test_ConfigParamStore.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_ConfigurationOptionsRetriever.cxx b/Framework/Core/test/test_ConfigurationOptionsRetriever.cxx index bba681ef59ea6..ca84dc2d8ed34 100644 --- a/Framework/Core/test/test_ConfigurationOptionsRetriever.cxx +++ b/Framework/Core/test/test_ConfigurationOptionsRetriever.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DanglingInputs.cxx b/Framework/Core/test/test_DanglingInputs.cxx index fe41a36d65ae9..9c483d3556e27 100644 --- a/Framework/Core/test/test_DanglingInputs.cxx +++ b/Framework/Core/test/test_DanglingInputs.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DanglingOutputs.cxx b/Framework/Core/test/test_DanglingOutputs.cxx index 157cacf071e40..330b16d12a8bd 100644 --- a/Framework/Core/test/test_DanglingOutputs.cxx +++ b/Framework/Core/test/test_DanglingOutputs.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DataAllocator.cxx b/Framework/Core/test/test_DataAllocator.cxx index d0f0395e2ab58..c70bbf45c6005 100644 --- a/Framework/Core/test/test_DataAllocator.cxx +++ b/Framework/Core/test/test_DataAllocator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DataDescriptorMatcher.cxx b/Framework/Core/test/test_DataDescriptorMatcher.cxx index 6501a31a7e705..03feed72d4643 100644 --- a/Framework/Core/test/test_DataDescriptorMatcher.cxx +++ b/Framework/Core/test/test_DataDescriptorMatcher.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DataInputDirector.cxx b/Framework/Core/test/test_DataInputDirector.cxx index f8456d7935380..5f067a8fe0bd3 100644 --- a/Framework/Core/test/test_DataInputDirector.cxx +++ b/Framework/Core/test/test_DataInputDirector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DataOutputDirector.cxx b/Framework/Core/test/test_DataOutputDirector.cxx index f9f2becd04044..3bb40fb3a8ffe 100644 --- a/Framework/Core/test/test_DataOutputDirector.cxx +++ b/Framework/Core/test/test_DataOutputDirector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DataProcessorSpec.cxx b/Framework/Core/test/test_DataProcessorSpec.cxx index d4935112cdcda..feb805ffc8949 100644 --- a/Framework/Core/test/test_DataProcessorSpec.cxx +++ b/Framework/Core/test/test_DataProcessorSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DataRefUtils.cxx b/Framework/Core/test/test_DataRefUtils.cxx index 57e19c55362b8..3bd79fbf1e7f1 100644 --- a/Framework/Core/test/test_DataRefUtils.cxx +++ b/Framework/Core/test/test_DataRefUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DataRelayer.cxx b/Framework/Core/test/test_DataRelayer.cxx index b255eabd748d6..e7cc44f33316b 100644 --- a/Framework/Core/test/test_DataRelayer.cxx +++ b/Framework/Core/test/test_DataRelayer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DeviceConfigInfo.cxx b/Framework/Core/test/test_DeviceConfigInfo.cxx index 52a5e55096e9c..e3890754effcd 100644 --- a/Framework/Core/test/test_DeviceConfigInfo.cxx +++ b/Framework/Core/test/test_DeviceConfigInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DeviceMetricsInfo.cxx b/Framework/Core/test/test_DeviceMetricsInfo.cxx index 032a6ce7ead8d..b0fa81047caf8 100644 --- a/Framework/Core/test/test_DeviceMetricsInfo.cxx +++ b/Framework/Core/test/test_DeviceMetricsInfo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DeviceSpec.cxx b/Framework/Core/test/test_DeviceSpec.cxx index 78fa8949a97f6..546abd9e5786f 100644 --- a/Framework/Core/test/test_DeviceSpec.cxx +++ b/Framework/Core/test/test_DeviceSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_DeviceSpecHelpers.cxx b/Framework/Core/test/test_DeviceSpecHelpers.cxx index af477f2bd04bc..c06fbe378c4fe 100644 --- a/Framework/Core/test/test_DeviceSpecHelpers.cxx +++ b/Framework/Core/test/test_DeviceSpecHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_Expressions.cxx b/Framework/Core/test/test_Expressions.cxx index 3b94548ed0d36..e614d3347a0c7 100644 --- a/Framework/Core/test/test_Expressions.cxx +++ b/Framework/Core/test/test_Expressions.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_ExternalFairMQDeviceProxy.cxx b/Framework/Core/test/test_ExternalFairMQDeviceProxy.cxx index 5a6cb474df7ae..26dc7a1dec4db 100644 --- a/Framework/Core/test/test_ExternalFairMQDeviceProxy.cxx +++ b/Framework/Core/test/test_ExternalFairMQDeviceProxy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_ExternalFairMQDeviceWorkflow.cxx b/Framework/Core/test/test_ExternalFairMQDeviceWorkflow.cxx index 564b10ff82a4e..5623ea5cb65a9 100644 --- a/Framework/Core/test/test_ExternalFairMQDeviceWorkflow.cxx +++ b/Framework/Core/test/test_ExternalFairMQDeviceWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_FairMQ.cxx b/Framework/Core/test/test_FairMQ.cxx index d8d3bb4d912b2..b7141dc2a4331 100644 --- a/Framework/Core/test/test_FairMQ.cxx +++ b/Framework/Core/test/test_FairMQ.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_FairMQOptionsRetriever.cxx b/Framework/Core/test/test_FairMQOptionsRetriever.cxx index e0bacd9169ea8..f3fe7685c339d 100644 --- a/Framework/Core/test/test_FairMQOptionsRetriever.cxx +++ b/Framework/Core/test/test_FairMQOptionsRetriever.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_FairMQResizableBuffer.cxx b/Framework/Core/test/test_FairMQResizableBuffer.cxx index b3064aafac733..c8ff3723a9203 100644 --- a/Framework/Core/test/test_FairMQResizableBuffer.cxx +++ b/Framework/Core/test/test_FairMQResizableBuffer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_Forwarding.cxx b/Framework/Core/test/test_Forwarding.cxx index 4e5ba6b13a5e6..02972837f8a08 100644 --- a/Framework/Core/test/test_Forwarding.cxx +++ b/Framework/Core/test/test_Forwarding.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_FrameworkDataFlowToDDS.cxx b/Framework/Core/test/test_FrameworkDataFlowToDDS.cxx index 55ed270d808ec..dff84f61493c7 100644 --- a/Framework/Core/test/test_FrameworkDataFlowToDDS.cxx +++ b/Framework/Core/test/test_FrameworkDataFlowToDDS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_FrameworkDataFlowToO2Control.cxx b/Framework/Core/test/test_FrameworkDataFlowToO2Control.cxx index 43cbfb9e764e4..cb9e5937c3e98 100644 --- a/Framework/Core/test/test_FrameworkDataFlowToO2Control.cxx +++ b/Framework/Core/test/test_FrameworkDataFlowToO2Control.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_GenericSource.cxx b/Framework/Core/test/test_GenericSource.cxx index 3f5ea6d7922bc..5e5d096ce6c50 100644 --- a/Framework/Core/test/test_GenericSource.cxx +++ b/Framework/Core/test/test_GenericSource.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_Graphviz.cxx b/Framework/Core/test/test_Graphviz.cxx index 3345b7c400e38..a4c7d0d9c334d 100644 --- a/Framework/Core/test/test_Graphviz.cxx +++ b/Framework/Core/test/test_Graphviz.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_GroupSlicer.cxx b/Framework/Core/test/test_GroupSlicer.cxx index 72995721341b5..12855c752b529 100644 --- a/Framework/Core/test/test_GroupSlicer.cxx +++ b/Framework/Core/test/test_GroupSlicer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_HTTPParser.cxx b/Framework/Core/test/test_HTTPParser.cxx index 523816be0415b..7d5e79744c98b 100644 --- a/Framework/Core/test/test_HTTPParser.cxx +++ b/Framework/Core/test/test_HTTPParser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_HelperMacros.h b/Framework/Core/test/test_HelperMacros.h index 04969bee4d33c..613218458254d 100644 --- a/Framework/Core/test/test_HelperMacros.h +++ b/Framework/Core/test/test_HelperMacros.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_HistogramRegistry.cxx b/Framework/Core/test/test_HistogramRegistry.cxx index 2e0234ff7c1c4..86b784e1592be 100644 --- a/Framework/Core/test/test_HistogramRegistry.cxx +++ b/Framework/Core/test/test_HistogramRegistry.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_IndexBuilder.cxx b/Framework/Core/test/test_IndexBuilder.cxx index 6d8c0f58e6a0a..8fa9eb11e7ae0 100644 --- a/Framework/Core/test/test_IndexBuilder.cxx +++ b/Framework/Core/test/test_IndexBuilder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_InfoLogger.cxx b/Framework/Core/test/test_InfoLogger.cxx index 4760331158b58..4fde33c8775d7 100644 --- a/Framework/Core/test/test_InfoLogger.cxx +++ b/Framework/Core/test/test_InfoLogger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_InputRecord.cxx b/Framework/Core/test/test_InputRecord.cxx index e9404470310cb..7ce3d116141de 100644 --- a/Framework/Core/test/test_InputRecord.cxx +++ b/Framework/Core/test/test_InputRecord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_InputRecordWalker.cxx b/Framework/Core/test/test_InputRecordWalker.cxx index 1a9ce466a8d32..92d1a3f260bae 100644 --- a/Framework/Core/test/test_InputRecordWalker.cxx +++ b/Framework/Core/test/test_InputRecordWalker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_InputSpan.cxx b/Framework/Core/test/test_InputSpan.cxx index 65ca043035ad9..ef207e60231d2 100644 --- a/Framework/Core/test/test_InputSpan.cxx +++ b/Framework/Core/test/test_InputSpan.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_InputSpec.cxx b/Framework/Core/test/test_InputSpec.cxx index a0717ec7ded75..d85654ec15f44 100644 --- a/Framework/Core/test/test_InputSpec.cxx +++ b/Framework/Core/test/test_InputSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_Kernels.cxx b/Framework/Core/test/test_Kernels.cxx index af77b3bb2665e..68cee1136534c 100644 --- a/Framework/Core/test/test_Kernels.cxx +++ b/Framework/Core/test/test_Kernels.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_LogParsingHelpers.cxx b/Framework/Core/test/test_LogParsingHelpers.cxx index 66f95d3550310..80d636dde2b60 100644 --- a/Framework/Core/test/test_LogParsingHelpers.cxx +++ b/Framework/Core/test/test_LogParsingHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_Parallel.cxx b/Framework/Core/test/test_Parallel.cxx index 64d3a52ae413c..63a9220382715 100644 --- a/Framework/Core/test/test_Parallel.cxx +++ b/Framework/Core/test/test_Parallel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_ParallelPipeline.cxx b/Framework/Core/test/test_ParallelPipeline.cxx index 7a5ea1e126cb8..407ea29c9b5e0 100644 --- a/Framework/Core/test/test_ParallelPipeline.cxx +++ b/Framework/Core/test/test_ParallelPipeline.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_ParallelProducer.cxx b/Framework/Core/test/test_ParallelProducer.cxx index 106df7115d05d..9face4ada6c6e 100644 --- a/Framework/Core/test/test_ParallelProducer.cxx +++ b/Framework/Core/test/test_ParallelProducer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_ProcessorOptions.cxx b/Framework/Core/test/test_ProcessorOptions.cxx index 3cfe0b6f4d823..bbadf5b23a062 100644 --- a/Framework/Core/test/test_ProcessorOptions.cxx +++ b/Framework/Core/test/test_ProcessorOptions.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_PtrHelpers.cxx b/Framework/Core/test/test_PtrHelpers.cxx index e7e710b7d1c52..996ccc1797dfe 100644 --- a/Framework/Core/test/test_PtrHelpers.cxx +++ b/Framework/Core/test/test_PtrHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_RegionInfoCallbackService.cxx b/Framework/Core/test/test_RegionInfoCallbackService.cxx index 765f2c960e62c..69c1a2ebab095 100644 --- a/Framework/Core/test/test_RegionInfoCallbackService.cxx +++ b/Framework/Core/test/test_RegionInfoCallbackService.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_Root2ArrowTable.cxx b/Framework/Core/test/test_Root2ArrowTable.cxx index 346790dc76388..36fbc0f0fba9d 100644 --- a/Framework/Core/test/test_Root2ArrowTable.cxx +++ b/Framework/Core/test/test_Root2ArrowTable.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_RootConfigParamHelpers.cxx b/Framework/Core/test/test_RootConfigParamHelpers.cxx index e0f8589503b7d..07dd3235e11a2 100644 --- a/Framework/Core/test/test_RootConfigParamHelpers.cxx +++ b/Framework/Core/test/test_RootConfigParamHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_Services.cxx b/Framework/Core/test/test_Services.cxx index a3333df1ca8ce..b00bdaff3cea4 100644 --- a/Framework/Core/test/test_Services.cxx +++ b/Framework/Core/test/test_Services.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_SimpleCondition.cxx b/Framework/Core/test/test_SimpleCondition.cxx index 0145bbfca3a60..54173c3f29aa2 100644 --- a/Framework/Core/test/test_SimpleCondition.cxx +++ b/Framework/Core/test/test_SimpleCondition.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_SimpleDataProcessingDevice01.cxx b/Framework/Core/test/test_SimpleDataProcessingDevice01.cxx index 5b485bb186be4..4f75d330498d6 100644 --- a/Framework/Core/test/test_SimpleDataProcessingDevice01.cxx +++ b/Framework/Core/test/test_SimpleDataProcessingDevice01.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_SimpleRDataFrameProcessing.cxx b/Framework/Core/test/test_SimpleRDataFrameProcessing.cxx index 508a002e23d40..fdf4daddcfb6a 100644 --- a/Framework/Core/test/test_SimpleRDataFrameProcessing.cxx +++ b/Framework/Core/test/test_SimpleRDataFrameProcessing.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_SimpleStatefulProcessing01.cxx b/Framework/Core/test/test_SimpleStatefulProcessing01.cxx index 2b4c20bd4f0c0..fcea00255c11b 100644 --- a/Framework/Core/test/test_SimpleStatefulProcessing01.cxx +++ b/Framework/Core/test/test_SimpleStatefulProcessing01.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_SimpleStringProcessing.cxx b/Framework/Core/test/test_SimpleStringProcessing.cxx index c66a4e3678868..1ce3b0835dfba 100644 --- a/Framework/Core/test/test_SimpleStringProcessing.cxx +++ b/Framework/Core/test/test_SimpleStringProcessing.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_SimpleTimer.cxx b/Framework/Core/test/test_SimpleTimer.cxx index 50c38113e0033..df935eb6eb2a0 100644 --- a/Framework/Core/test/test_SimpleTimer.cxx +++ b/Framework/Core/test/test_SimpleTimer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_SimpleWildcard.cxx b/Framework/Core/test/test_SimpleWildcard.cxx index 9b0d5f6d41583..4027230ccde0e 100644 --- a/Framework/Core/test/test_SimpleWildcard.cxx +++ b/Framework/Core/test/test_SimpleWildcard.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_SimpleWildcard02.cxx b/Framework/Core/test/test_SimpleWildcard02.cxx index 8b2a815715b6f..06eb49aecc6a4 100644 --- a/Framework/Core/test/test_SimpleWildcard02.cxx +++ b/Framework/Core/test/test_SimpleWildcard02.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_SingleDataSource.cxx b/Framework/Core/test/test_SingleDataSource.cxx index 46ac1a7ed1ad8..82127ed4580d8 100644 --- a/Framework/Core/test/test_SingleDataSource.cxx +++ b/Framework/Core/test/test_SingleDataSource.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_SlowConsumer.cxx b/Framework/Core/test/test_SlowConsumer.cxx index 960573ce3e400..f26774f3cb00f 100644 --- a/Framework/Core/test/test_SlowConsumer.cxx +++ b/Framework/Core/test/test_SlowConsumer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_StaggeringWorkflow.cxx b/Framework/Core/test/test_StaggeringWorkflow.cxx index 393e1f7c41a4f..5759d47aecc73 100644 --- a/Framework/Core/test/test_StaggeringWorkflow.cxx +++ b/Framework/Core/test/test_StaggeringWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_StringHelpers.cxx b/Framework/Core/test/test_StringHelpers.cxx index 9575e5a14ffe3..3551c6a2bb4c0 100644 --- a/Framework/Core/test/test_StringHelpers.cxx +++ b/Framework/Core/test/test_StringHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_SuppressionGenerator.cxx b/Framework/Core/test/test_SuppressionGenerator.cxx index ff6a92a9c9e8a..115f44f171766 100644 --- a/Framework/Core/test/test_SuppressionGenerator.cxx +++ b/Framework/Core/test/test_SuppressionGenerator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_TMessageSerializer.cxx b/Framework/Core/test/test_TMessageSerializer.cxx index 1637811e4e6bc..f482d7dac80ae 100644 --- a/Framework/Core/test/test_TMessageSerializer.cxx +++ b/Framework/Core/test/test_TMessageSerializer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_TableBuilder.cxx b/Framework/Core/test/test_TableBuilder.cxx index 018847df84641..28d05c2fa9bbf 100644 --- a/Framework/Core/test/test_TableBuilder.cxx +++ b/Framework/Core/test/test_TableBuilder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_Task.cxx b/Framework/Core/test/test_Task.cxx index 22b7044d5ff80..94de22765e081 100644 --- a/Framework/Core/test/test_Task.cxx +++ b/Framework/Core/test/test_Task.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_TimeParallelPipelining.cxx b/Framework/Core/test/test_TimeParallelPipelining.cxx index 6f9123e5d59db..873d8967ccc88 100644 --- a/Framework/Core/test/test_TimeParallelPipelining.cxx +++ b/Framework/Core/test/test_TimeParallelPipelining.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_TimePipeline.cxx b/Framework/Core/test/test_TimePipeline.cxx index 976d06b841452..59ee0514bd9c9 100644 --- a/Framework/Core/test/test_TimePipeline.cxx +++ b/Framework/Core/test/test_TimePipeline.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_TimesliceIndex.cxx b/Framework/Core/test/test_TimesliceIndex.cxx index 8b2c38a328d56..7b21cdc51d082 100644 --- a/Framework/Core/test/test_TimesliceIndex.cxx +++ b/Framework/Core/test/test_TimesliceIndex.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_TreeToTable.cxx b/Framework/Core/test/test_TreeToTable.cxx index de5eb1048eba4..71c50e99a7a85 100644 --- a/Framework/Core/test/test_TreeToTable.cxx +++ b/Framework/Core/test/test_TreeToTable.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_TypeTraits.cxx b/Framework/Core/test/test_TypeTraits.cxx index b27a5977aa950..7488d172b1f07 100644 --- a/Framework/Core/test/test_TypeTraits.cxx +++ b/Framework/Core/test/test_TypeTraits.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_Variants.cxx b/Framework/Core/test/test_Variants.cxx index befefcb003a7e..82426fdef70a3 100644 --- a/Framework/Core/test/test_Variants.cxx +++ b/Framework/Core/test/test_Variants.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_WorkflowHelpers.cxx b/Framework/Core/test/test_WorkflowHelpers.cxx index a68469ea30d57..039fae13c202a 100644 --- a/Framework/Core/test/test_WorkflowHelpers.cxx +++ b/Framework/Core/test/test_WorkflowHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/test_WorkflowSerialization.cxx b/Framework/Core/test/test_WorkflowSerialization.cxx index 92776b3763553..5c00fe8b88be8 100644 --- a/Framework/Core/test/test_WorkflowSerialization.cxx +++ b/Framework/Core/test/test_WorkflowSerialization.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/unittest_DataSpecUtils.cxx b/Framework/Core/test/unittest_DataSpecUtils.cxx index 7412c72124b10..7ba9c691c8003 100644 --- a/Framework/Core/test/unittest_DataSpecUtils.cxx +++ b/Framework/Core/test/unittest_DataSpecUtils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Core/test/unittest_SimpleOptionsRetriever.cxx b/Framework/Core/test/unittest_SimpleOptionsRetriever.cxx index 957b174e6a58e..5d39158077400 100644 --- a/Framework/Core/test/unittest_SimpleOptionsRetriever.cxx +++ b/Framework/Core/test/unittest_SimpleOptionsRetriever.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/3rdparty/CMakeLists.txt b/Framework/Foundation/3rdparty/CMakeLists.txt index 339293f6ab8b8..70b96641025c4 100644 --- a/Framework/Foundation/3rdparty/CMakeLists.txt +++ b/Framework/Foundation/3rdparty/CMakeLists.txt @@ -1,11 +1,12 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_header_only_library(FrameworkFoundation3rdparty) diff --git a/Framework/Foundation/CMakeLists.txt b/Framework/Foundation/CMakeLists.txt index 182340c317658..4f7f45704bee6 100644 --- a/Framework/Foundation/CMakeLists.txt +++ b/Framework/Foundation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. install(DIRECTORY ${CMAKE_CURRENT_LIST_DIR}/include/Framework DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}) diff --git a/Framework/Foundation/include/Framework/CheckTypes.h b/Framework/Foundation/include/Framework/CheckTypes.h index fac3ad26bd81d..5cd49f1b55719 100644 --- a/Framework/Foundation/include/Framework/CheckTypes.h +++ b/Framework/Foundation/include/Framework/CheckTypes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/include/Framework/CompilerBuiltins.h b/Framework/Foundation/include/Framework/CompilerBuiltins.h index 93d0215bcb25c..dade9fc8cc000 100644 --- a/Framework/Foundation/include/Framework/CompilerBuiltins.h +++ b/Framework/Foundation/include/Framework/CompilerBuiltins.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/include/Framework/FunctionalHelpers.h b/Framework/Foundation/include/Framework/FunctionalHelpers.h index ccf89a0c1c5f8..7e060e8816e3b 100644 --- a/Framework/Foundation/include/Framework/FunctionalHelpers.h +++ b/Framework/Foundation/include/Framework/FunctionalHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/include/Framework/Pack.h b/Framework/Foundation/include/Framework/Pack.h index c14f65e6bda8e..62c1f10338777 100644 --- a/Framework/Foundation/include/Framework/Pack.h +++ b/Framework/Foundation/include/Framework/Pack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/include/Framework/RuntimeError.h b/Framework/Foundation/include/Framework/RuntimeError.h index 392687be1f56d..2e0b086a2e047 100644 --- a/Framework/Foundation/include/Framework/RuntimeError.h +++ b/Framework/Foundation/include/Framework/RuntimeError.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/include/Framework/Signpost.h b/Framework/Foundation/include/Framework/Signpost.h index 8d0d98e168a36..51a80d3c2f5b9 100644 --- a/Framework/Foundation/include/Framework/Signpost.h +++ b/Framework/Foundation/include/Framework/Signpost.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/include/Framework/StructToTuple.h b/Framework/Foundation/include/Framework/StructToTuple.h index ab2b36f5a51ad..f28677f86ac8c 100644 --- a/Framework/Foundation/include/Framework/StructToTuple.h +++ b/Framework/Foundation/include/Framework/StructToTuple.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/include/Framework/Tracing.h b/Framework/Foundation/include/Framework/Tracing.h index e1ec3d57c52a2..f5bcecd3889d7 100644 --- a/Framework/Foundation/include/Framework/Tracing.h +++ b/Framework/Foundation/include/Framework/Tracing.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/include/Framework/Traits.h b/Framework/Foundation/include/Framework/Traits.h index 4fa561f021a8b..ecf4484f61f59 100644 --- a/Framework/Foundation/include/Framework/Traits.h +++ b/Framework/Foundation/include/Framework/Traits.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/include/Framework/TypeIdHelpers.h b/Framework/Foundation/include/Framework/TypeIdHelpers.h index ece1c67a3c2cf..2d5367bb6cd13 100644 --- a/Framework/Foundation/include/Framework/TypeIdHelpers.h +++ b/Framework/Foundation/include/Framework/TypeIdHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/include/Framework/VariantHelpers.h b/Framework/Foundation/include/Framework/VariantHelpers.h index e4427fe40ac55..363e56da1f8ce 100644 --- a/Framework/Foundation/include/Framework/VariantHelpers.h +++ b/Framework/Foundation/include/Framework/VariantHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/src/RuntimeError.cxx b/Framework/Foundation/src/RuntimeError.cxx index 02886c7daa083..8848595a23924 100644 --- a/Framework/Foundation/src/RuntimeError.cxx +++ b/Framework/Foundation/src/RuntimeError.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/src/Traits.cxx b/Framework/Foundation/src/Traits.cxx index ab2179b8eb11c..faff430964e73 100644 --- a/Framework/Foundation/src/Traits.cxx +++ b/Framework/Foundation/src/Traits.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/test/test_CompilerBuiltins.cxx b/Framework/Foundation/test/test_CompilerBuiltins.cxx index c7024dc342fbf..fa45a785891f8 100644 --- a/Framework/Foundation/test/test_CompilerBuiltins.cxx +++ b/Framework/Foundation/test/test_CompilerBuiltins.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/test/test_FunctionalHelpers.cxx b/Framework/Foundation/test/test_FunctionalHelpers.cxx index af49a4c3ce7c8..e77f9a0b88504 100644 --- a/Framework/Foundation/test/test_FunctionalHelpers.cxx +++ b/Framework/Foundation/test/test_FunctionalHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/test/test_RuntimeError.cxx b/Framework/Foundation/test/test_RuntimeError.cxx index 44867d627f5df..9dfd73e6f4b19 100644 --- a/Framework/Foundation/test/test_RuntimeError.cxx +++ b/Framework/Foundation/test/test_RuntimeError.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/test/test_Signpost.cxx b/Framework/Foundation/test/test_Signpost.cxx index ce78f21c0e318..fc5d3fb6422fb 100644 --- a/Framework/Foundation/test/test_Signpost.cxx +++ b/Framework/Foundation/test/test_Signpost.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/test/test_StructToTuple.cxx b/Framework/Foundation/test/test_StructToTuple.cxx index c0ba30a848903..6b13ffcf9396e 100644 --- a/Framework/Foundation/test/test_StructToTuple.cxx +++ b/Framework/Foundation/test/test_StructToTuple.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Foundation/test/test_Traits.cxx b/Framework/Foundation/test/test_Traits.cxx index 916e31d6d06d0..c3a510ef300f4 100644 --- a/Framework/Foundation/test/test_Traits.cxx +++ b/Framework/Foundation/test/test_Traits.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/CMakeLists.txt b/Framework/GUISupport/CMakeLists.txt index b04d078c7f7dd..f789baf2915af 100644 --- a/Framework/GUISupport/CMakeLists.txt +++ b/Framework/GUISupport/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # Given GCC 7.3 does not provide std::filesystem we use Boost instead # Drop this once we move to GCC 8.2+ diff --git a/Framework/GUISupport/src/FrameworkGUIDataRelayerUsage.cxx b/Framework/GUISupport/src/FrameworkGUIDataRelayerUsage.cxx index 8350b0dc5fa11..72580ecc05238 100644 --- a/Framework/GUISupport/src/FrameworkGUIDataRelayerUsage.cxx +++ b/Framework/GUISupport/src/FrameworkGUIDataRelayerUsage.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/src/FrameworkGUIDataRelayerUsage.h b/Framework/GUISupport/src/FrameworkGUIDataRelayerUsage.h index 85d79a5d26782..e89a54c858ddb 100644 --- a/Framework/GUISupport/src/FrameworkGUIDataRelayerUsage.h +++ b/Framework/GUISupport/src/FrameworkGUIDataRelayerUsage.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/src/FrameworkGUIDebugger.cxx b/Framework/GUISupport/src/FrameworkGUIDebugger.cxx index 9f5437b7f6689..7ebcff14bb25f 100644 --- a/Framework/GUISupport/src/FrameworkGUIDebugger.cxx +++ b/Framework/GUISupport/src/FrameworkGUIDebugger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/src/FrameworkGUIDebugger.h b/Framework/GUISupport/src/FrameworkGUIDebugger.h index 0788169177a68..bb62485284ee8 100644 --- a/Framework/GUISupport/src/FrameworkGUIDebugger.h +++ b/Framework/GUISupport/src/FrameworkGUIDebugger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx b/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx index 615ad1120391f..cc74f3d9f3855 100644 --- a/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx +++ b/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/src/FrameworkGUIDeviceInspector.h b/Framework/GUISupport/src/FrameworkGUIDeviceInspector.h index 5ace46f95f28e..d9e9a5e23e797 100644 --- a/Framework/GUISupport/src/FrameworkGUIDeviceInspector.h +++ b/Framework/GUISupport/src/FrameworkGUIDeviceInspector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/src/FrameworkGUIDevicesGraph.cxx b/Framework/GUISupport/src/FrameworkGUIDevicesGraph.cxx index e0b4fc112d70c..6c383acfdbbcb 100644 --- a/Framework/GUISupport/src/FrameworkGUIDevicesGraph.cxx +++ b/Framework/GUISupport/src/FrameworkGUIDevicesGraph.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/src/FrameworkGUIDevicesGraph.h b/Framework/GUISupport/src/FrameworkGUIDevicesGraph.h index 31c86c7e57140..b9f3dcac9ecf0 100644 --- a/Framework/GUISupport/src/FrameworkGUIDevicesGraph.h +++ b/Framework/GUISupport/src/FrameworkGUIDevicesGraph.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/src/FrameworkGUIState.h b/Framework/GUISupport/src/FrameworkGUIState.h index 44f6e9e717a7d..8a1cd8dd3bd1e 100644 --- a/Framework/GUISupport/src/FrameworkGUIState.h +++ b/Framework/GUISupport/src/FrameworkGUIState.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/src/NoDebugGUI.h b/Framework/GUISupport/src/NoDebugGUI.h index 2b0c373068c97..f23674299f875 100644 --- a/Framework/GUISupport/src/NoDebugGUI.h +++ b/Framework/GUISupport/src/NoDebugGUI.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/src/PaletteHelpers.cxx b/Framework/GUISupport/src/PaletteHelpers.cxx index 24e8c20399410..cae43354a38c5 100644 --- a/Framework/GUISupport/src/PaletteHelpers.cxx +++ b/Framework/GUISupport/src/PaletteHelpers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/src/PaletteHelpers.h b/Framework/GUISupport/src/PaletteHelpers.h index 11881c79e1d63..760dd33ee9e2d 100644 --- a/Framework/GUISupport/src/PaletteHelpers.h +++ b/Framework/GUISupport/src/PaletteHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/src/Plugin.cxx b/Framework/GUISupport/src/Plugin.cxx index ef79fa8e80fdd..0ccae984ee78a 100644 --- a/Framework/GUISupport/src/Plugin.cxx +++ b/Framework/GUISupport/src/Plugin.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/test/test_CustomGUIGL.cxx b/Framework/GUISupport/test/test_CustomGUIGL.cxx index 0de1fa1ab021e..caa0af1729739 100644 --- a/Framework/GUISupport/test/test_CustomGUIGL.cxx +++ b/Framework/GUISupport/test/test_CustomGUIGL.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/test/test_CustomGUISokol.cxx b/Framework/GUISupport/test/test_CustomGUISokol.cxx index f21565ac735b7..7b9a9cc0f3828 100644 --- a/Framework/GUISupport/test/test_CustomGUISokol.cxx +++ b/Framework/GUISupport/test/test_CustomGUISokol.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/GUISupport/test/test_SimpleTracksED.cxx b/Framework/GUISupport/test/test_SimpleTracksED.cxx index 35d113a0e85a2..2ce0fafbf5812 100644 --- a/Framework/GUISupport/test/test_SimpleTracksED.cxx +++ b/Framework/GUISupport/test/test_SimpleTracksED.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Logger/CMakeLists.txt b/Framework/Logger/CMakeLists.txt index 1a778da9745f8..06d6a1bd21649 100644 --- a/Framework/Logger/CMakeLists.txt +++ b/Framework/Logger/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_header_only_library(FrameworkLogger INTERFACE_LINK_LIBRARIES fmt::fmt FairLogger::FairLogger) diff --git a/Framework/Logger/include/Framework/Logger.h b/Framework/Logger/include/Framework/Logger.h index cf1c7511c850d..5b3cd832d60a1 100644 --- a/Framework/Logger/include/Framework/Logger.h +++ b/Framework/Logger/include/Framework/Logger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Logger/test/unittest_Logger.cxx b/Framework/Logger/test/unittest_Logger.cxx index e04fc67ca5669..c0424edc07a64 100644 --- a/Framework/Logger/test/unittest_Logger.cxx +++ b/Framework/Logger/test/unittest_Logger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/CMakeLists.txt b/Framework/TestWorkflows/CMakeLists.txt index 4a750eed0e75b..77895556881ea 100644 --- a/Framework/TestWorkflows/CMakeLists.txt +++ b/Framework/TestWorkflows/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # FIXME Is this one supposed to be a header only library (in which case the .h # to be installed should be in include/TestWorkflows) or not a library at all ? diff --git a/Framework/TestWorkflows/src/dummy.cxx b/Framework/TestWorkflows/src/dummy.cxx index ab2179b8eb11c..faff430964e73 100644 --- a/Framework/TestWorkflows/src/dummy.cxx +++ b/Framework/TestWorkflows/src/dummy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/flpQualification.cxx b/Framework/TestWorkflows/src/flpQualification.cxx index 6d889204ecdbe..d0223bf05233f 100644 --- a/Framework/TestWorkflows/src/flpQualification.cxx +++ b/Framework/TestWorkflows/src/flpQualification.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2AnalysisTaskExample.cxx b/Framework/TestWorkflows/src/o2AnalysisTaskExample.cxx index 85d9770283008..851928d02056f 100644 --- a/Framework/TestWorkflows/src/o2AnalysisTaskExample.cxx +++ b/Framework/TestWorkflows/src/o2AnalysisTaskExample.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2D0Analysis.cxx b/Framework/TestWorkflows/src/o2D0Analysis.cxx index 728f3ca50a35a..3c3f13be34d87 100644 --- a/Framework/TestWorkflows/src/o2D0Analysis.cxx +++ b/Framework/TestWorkflows/src/o2D0Analysis.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2DataQueryWorkflow.cxx b/Framework/TestWorkflows/src/o2DataQueryWorkflow.cxx index 8f944534e2379..fcb29568f3924 100644 --- a/Framework/TestWorkflows/src/o2DataQueryWorkflow.cxx +++ b/Framework/TestWorkflows/src/o2DataQueryWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2DiamondWorkflow.cxx b/Framework/TestWorkflows/src/o2DiamondWorkflow.cxx index 77be2fc779b05..9a8f98e97f72c 100644 --- a/Framework/TestWorkflows/src/o2DiamondWorkflow.cxx +++ b/Framework/TestWorkflows/src/o2DiamondWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2DummyWorkflow.cxx b/Framework/TestWorkflows/src/o2DummyWorkflow.cxx index 5c38fc4f33b84..dcf681d6b2afe 100644 --- a/Framework/TestWorkflows/src/o2DummyWorkflow.cxx +++ b/Framework/TestWorkflows/src/o2DummyWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2OutputWildcardWorkflow.cxx b/Framework/TestWorkflows/src/o2OutputWildcardWorkflow.cxx index 61543ea1b905a..42862a4d98dfd 100644 --- a/Framework/TestWorkflows/src/o2OutputWildcardWorkflow.cxx +++ b/Framework/TestWorkflows/src/o2OutputWildcardWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2ParallelWorkflow.cxx b/Framework/TestWorkflows/src/o2ParallelWorkflow.cxx index df31abe2c0ee8..841f4a8f2b9bd 100644 --- a/Framework/TestWorkflows/src/o2ParallelWorkflow.cxx +++ b/Framework/TestWorkflows/src/o2ParallelWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2SimpleSink.cxx b/Framework/TestWorkflows/src/o2SimpleSink.cxx index 541496a4591db..250e84582e52d 100644 --- a/Framework/TestWorkflows/src/o2SimpleSink.cxx +++ b/Framework/TestWorkflows/src/o2SimpleSink.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2SimpleSource.cxx b/Framework/TestWorkflows/src/o2SimpleSource.cxx index 91b03e4f75e38..b7bfcf65d844b 100644 --- a/Framework/TestWorkflows/src/o2SimpleSource.cxx +++ b/Framework/TestWorkflows/src/o2SimpleSource.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2SimpleTracksAnalysis.cxx b/Framework/TestWorkflows/src/o2SimpleTracksAnalysis.cxx index d42924ae64095..ff4ace962b935 100644 --- a/Framework/TestWorkflows/src/o2SimpleTracksAnalysis.cxx +++ b/Framework/TestWorkflows/src/o2SimpleTracksAnalysis.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2SyncReconstructionDummy.cxx b/Framework/TestWorkflows/src/o2SyncReconstructionDummy.cxx index 10bde92cce22d..a2b9070f9e218 100644 --- a/Framework/TestWorkflows/src/o2SyncReconstructionDummy.cxx +++ b/Framework/TestWorkflows/src/o2SyncReconstructionDummy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2_sim_its_ALP3.cxx b/Framework/TestWorkflows/src/o2_sim_its_ALP3.cxx index dc83acd901f8c..58e67b5779ece 100644 --- a/Framework/TestWorkflows/src/o2_sim_its_ALP3.cxx +++ b/Framework/TestWorkflows/src/o2_sim_its_ALP3.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2_sim_its_ALP3.h b/Framework/TestWorkflows/src/o2_sim_its_ALP3.h index bd3324115be53..f9c465fcf5717 100644 --- a/Framework/TestWorkflows/src/o2_sim_its_ALP3.h +++ b/Framework/TestWorkflows/src/o2_sim_its_ALP3.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2_sim_tpc.cxx b/Framework/TestWorkflows/src/o2_sim_tpc.cxx index 95018af91437a..bb7aa6262f59d 100644 --- a/Framework/TestWorkflows/src/o2_sim_tpc.cxx +++ b/Framework/TestWorkflows/src/o2_sim_tpc.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/o2_sim_tpc.h b/Framework/TestWorkflows/src/o2_sim_tpc.h index 3416672994536..e567fe89e0b38 100644 --- a/Framework/TestWorkflows/src/o2_sim_tpc.h +++ b/Framework/TestWorkflows/src/o2_sim_tpc.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/test_CCDBFetchToTimeframe.cxx b/Framework/TestWorkflows/src/test_CCDBFetchToTimeframe.cxx index a30859a9ac048..1cfd38a24ff2a 100644 --- a/Framework/TestWorkflows/src/test_CCDBFetchToTimeframe.cxx +++ b/Framework/TestWorkflows/src/test_CCDBFetchToTimeframe.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/test_CompletionPolicies.cxx b/Framework/TestWorkflows/src/test_CompletionPolicies.cxx index a3723951039a0..60a380e139043 100644 --- a/Framework/TestWorkflows/src/test_CompletionPolicies.cxx +++ b/Framework/TestWorkflows/src/test_CompletionPolicies.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/test_RawDeviceInjector.cxx b/Framework/TestWorkflows/src/test_RawDeviceInjector.cxx index 7754363b03e69..9247d6a2555c5 100644 --- a/Framework/TestWorkflows/src/test_RawDeviceInjector.cxx +++ b/Framework/TestWorkflows/src/test_RawDeviceInjector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/test_o2ITSCluserizer.cxx b/Framework/TestWorkflows/src/test_o2ITSCluserizer.cxx index 7cb35333a5aa7..7ef971367eeb8 100644 --- a/Framework/TestWorkflows/src/test_o2ITSCluserizer.cxx +++ b/Framework/TestWorkflows/src/test_o2ITSCluserizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/test_o2RootMessageWorkflow.cxx b/Framework/TestWorkflows/src/test_o2RootMessageWorkflow.cxx index 3068e320196ca..20e578798ac0c 100644 --- a/Framework/TestWorkflows/src/test_o2RootMessageWorkflow.cxx +++ b/Framework/TestWorkflows/src/test_o2RootMessageWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/test_o2TPCSimulation.cxx b/Framework/TestWorkflows/src/test_o2TPCSimulation.cxx index bc49a193da53e..403ad8bc7127b 100644 --- a/Framework/TestWorkflows/src/test_o2TPCSimulation.cxx +++ b/Framework/TestWorkflows/src/test_o2TPCSimulation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/src/tof-dummy-ccdb.cxx b/Framework/TestWorkflows/src/tof-dummy-ccdb.cxx index 3c25c89385a8e..5f13208b00844 100644 --- a/Framework/TestWorkflows/src/tof-dummy-ccdb.cxx +++ b/Framework/TestWorkflows/src/tof-dummy-ccdb.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/TestWorkflows/test/test_MakeDPLObjects.cxx b/Framework/TestWorkflows/test/test_MakeDPLObjects.cxx index 285a0957178b9..86a073a22bdf7 100644 --- a/Framework/TestWorkflows/test/test_MakeDPLObjects.cxx +++ b/Framework/TestWorkflows/test/test_MakeDPLObjects.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/CMakeLists.txt b/Framework/Utils/CMakeLists.txt index 9b7aebf87f955..bf2fecb35f84d 100644 --- a/Framework/Utils/CMakeLists.txt +++ b/Framework/Utils/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DPLUtils SOURCES src/Utils.cxx diff --git a/Framework/Utils/include/DPLUtils/DPLRawParser.h b/Framework/Utils/include/DPLUtils/DPLRawParser.h index 723563d3a0ce7..222eb7f1d59b9 100644 --- a/Framework/Utils/include/DPLUtils/DPLRawParser.h +++ b/Framework/Utils/include/DPLUtils/DPLRawParser.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/include/DPLUtils/MakeRootTreeWriterSpec.h b/Framework/Utils/include/DPLUtils/MakeRootTreeWriterSpec.h index 01f3615dc7ca9..a56e75e70abcb 100644 --- a/Framework/Utils/include/DPLUtils/MakeRootTreeWriterSpec.h +++ b/Framework/Utils/include/DPLUtils/MakeRootTreeWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/include/DPLUtils/RawParser.h b/Framework/Utils/include/DPLUtils/RawParser.h index 5a4ab783dbb9d..6ccea0d34b0f1 100644 --- a/Framework/Utils/include/DPLUtils/RawParser.h +++ b/Framework/Utils/include/DPLUtils/RawParser.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/include/DPLUtils/RootTreeReader.h b/Framework/Utils/include/DPLUtils/RootTreeReader.h index 20d2772d82f6e..920f091658825 100644 --- a/Framework/Utils/include/DPLUtils/RootTreeReader.h +++ b/Framework/Utils/include/DPLUtils/RootTreeReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/include/DPLUtils/RootTreeWriter.h b/Framework/Utils/include/DPLUtils/RootTreeWriter.h index ac0108155678b..45f49891a2b20 100644 --- a/Framework/Utils/include/DPLUtils/RootTreeWriter.h +++ b/Framework/Utils/include/DPLUtils/RootTreeWriter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/include/DPLUtils/Utils.h b/Framework/Utils/include/DPLUtils/Utils.h index 1d6129f21aa31..a4e5cd7bfe5be 100644 --- a/Framework/Utils/include/DPLUtils/Utils.h +++ b/Framework/Utils/include/DPLUtils/Utils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/src/DPLBroadcaster.cxx b/Framework/Utils/src/DPLBroadcaster.cxx index 6c4639d59e31d..38aa12905fdfc 100644 --- a/Framework/Utils/src/DPLBroadcaster.cxx +++ b/Framework/Utils/src/DPLBroadcaster.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/src/DPLGatherer.cxx b/Framework/Utils/src/DPLGatherer.cxx index 14f033a40b530..4205b33226090 100644 --- a/Framework/Utils/src/DPLGatherer.cxx +++ b/Framework/Utils/src/DPLGatherer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/src/DPLMerger.cxx b/Framework/Utils/src/DPLMerger.cxx index 75f2db8e73579..f5cbb0de5f38c 100644 --- a/Framework/Utils/src/DPLMerger.cxx +++ b/Framework/Utils/src/DPLMerger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/src/DPLRouter.cxx b/Framework/Utils/src/DPLRouter.cxx index 37a6a206feb87..a79d016aee46f 100644 --- a/Framework/Utils/src/DPLRouter.cxx +++ b/Framework/Utils/src/DPLRouter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/src/RawParser.cxx b/Framework/Utils/src/RawParser.cxx index 2145e4d97d6e1..9c0f9452932e7 100644 --- a/Framework/Utils/src/RawParser.cxx +++ b/Framework/Utils/src/RawParser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/src/Utils.cxx b/Framework/Utils/src/Utils.cxx index b7f1414ee9f43..3a52c46e074af 100644 --- a/Framework/Utils/src/Utils.cxx +++ b/Framework/Utils/src/Utils.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/src/dpl-output-proxy.cxx b/Framework/Utils/src/dpl-output-proxy.cxx index caf610b62c0dd..52483bfc92f25 100644 --- a/Framework/Utils/src/dpl-output-proxy.cxx +++ b/Framework/Utils/src/dpl-output-proxy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/src/raw-parser.cxx b/Framework/Utils/src/raw-parser.cxx index e2b530056e955..e0d5a2da97faa 100644 --- a/Framework/Utils/src/raw-parser.cxx +++ b/Framework/Utils/src/raw-parser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/src/raw-proxy.cxx b/Framework/Utils/src/raw-proxy.cxx index 0868436d113b8..ac75c7808796e 100644 --- a/Framework/Utils/src/raw-proxy.cxx +++ b/Framework/Utils/src/raw-proxy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/test/DPLBroadcasterMerger.cxx b/Framework/Utils/test/DPLBroadcasterMerger.cxx index 31a9b399e84fc..8bb8a6ea3c030 100644 --- a/Framework/Utils/test/DPLBroadcasterMerger.cxx +++ b/Framework/Utils/test/DPLBroadcasterMerger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/test/DPLBroadcasterMerger.h b/Framework/Utils/test/DPLBroadcasterMerger.h index da3eeb2d1044a..4607d72a702b7 100644 --- a/Framework/Utils/test/DPLBroadcasterMerger.h +++ b/Framework/Utils/test/DPLBroadcasterMerger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/test/DPLOutputTest.cxx b/Framework/Utils/test/DPLOutputTest.cxx index 8286faf9eba3f..4bc75d4299285 100644 --- a/Framework/Utils/test/DPLOutputTest.cxx +++ b/Framework/Utils/test/DPLOutputTest.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/test/DPLOutputTest.h b/Framework/Utils/test/DPLOutputTest.h index 9d48271d18e51..ce776ffff1113 100644 --- a/Framework/Utils/test/DPLOutputTest.h +++ b/Framework/Utils/test/DPLOutputTest.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/test/benchmark_RawParser.cxx b/Framework/Utils/test/benchmark_RawParser.cxx index 39235ab3a300e..ed93f0ed38a84 100644 --- a/Framework/Utils/test/benchmark_RawParser.cxx +++ b/Framework/Utils/test/benchmark_RawParser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/test/test_DPLBroadcasterMerger.cxx b/Framework/Utils/test/test_DPLBroadcasterMerger.cxx index 2cf006de6910f..6ff554e75f462 100644 --- a/Framework/Utils/test/test_DPLBroadcasterMerger.cxx +++ b/Framework/Utils/test/test_DPLBroadcasterMerger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/test/test_DPLOutputTest.cxx b/Framework/Utils/test/test_DPLOutputTest.cxx index 827c5eb24dade..e49bea3074dd1 100644 --- a/Framework/Utils/test/test_DPLOutputTest.cxx +++ b/Framework/Utils/test/test_DPLOutputTest.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/test/test_DPLRawParser.cxx b/Framework/Utils/test/test_DPLRawParser.cxx index 506e4de4bc8f8..e9ef61f8e6dd1 100644 --- a/Framework/Utils/test/test_DPLRawParser.cxx +++ b/Framework/Utils/test/test_DPLRawParser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/test/test_RawParser.cxx b/Framework/Utils/test/test_RawParser.cxx index 8f39f436b7619..8a4acf1c032e0 100644 --- a/Framework/Utils/test/test_RawParser.cxx +++ b/Framework/Utils/test/test_RawParser.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/test/test_RootTreeReader.cxx b/Framework/Utils/test/test_RootTreeReader.cxx index acc1249b6bbab..843caae55bd46 100644 --- a/Framework/Utils/test/test_RootTreeReader.cxx +++ b/Framework/Utils/test/test_RootTreeReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/test/test_RootTreeWriter.cxx b/Framework/Utils/test/test_RootTreeWriter.cxx index 9b458e78ad969..b82a7b19a65f5 100644 --- a/Framework/Utils/test/test_RootTreeWriter.cxx +++ b/Framework/Utils/test/test_RootTreeWriter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Framework/Utils/test/test_RootTreeWriterWorkflow.cxx b/Framework/Utils/test/test_RootTreeWriterWorkflow.cxx index e9bdb027ec7b6..01e93b69eeb29 100644 --- a/Framework/Utils/test/test_RootTreeWriterWorkflow.cxx +++ b/Framework/Utils/test/test_RootTreeWriterWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/CMakeLists.txt b/GPU/CMakeLists.txt index 2c96e07096167..f8f1931f35547 100644 --- a/GPU/CMakeLists.txt +++ b/GPU/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # Subdirectories will be compiled with O2 / AliRoot / Standalone To simplify the # CMake, variables are defined for Sources / Headers first. Then, the actual diff --git a/GPU/Common/CMakeLists.txt b/GPU/Common/CMakeLists.txt index 78187ade7a3bc..5e4ce7b4c2ab0 100644 --- a/GPU/Common/CMakeLists.txt +++ b/GPU/Common/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(MODULE GPUCommon) diff --git a/GPU/Common/GPUCommonAlgorithm.h b/GPU/Common/GPUCommonAlgorithm.h index c15dd2de39572..933a4f509a897 100644 --- a/GPU/Common/GPUCommonAlgorithm.h +++ b/GPU/Common/GPUCommonAlgorithm.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/GPUCommonAlgorithmThrust.h b/GPU/Common/GPUCommonAlgorithmThrust.h index 1cb5c7e6df945..053c42f2fa3f8 100644 --- a/GPU/Common/GPUCommonAlgorithmThrust.h +++ b/GPU/Common/GPUCommonAlgorithmThrust.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/GPUCommonArray.h b/GPU/Common/GPUCommonArray.h index 6a1b5222800f3..f37483af0737d 100644 --- a/GPU/Common/GPUCommonArray.h +++ b/GPU/Common/GPUCommonArray.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/GPUCommonDef.h b/GPU/Common/GPUCommonDef.h index 3adf1a81c21a8..592e88c8e8337 100644 --- a/GPU/Common/GPUCommonDef.h +++ b/GPU/Common/GPUCommonDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/GPUCommonDefAPI.h b/GPU/Common/GPUCommonDefAPI.h index 7b36b2e8c9bb0..9b66447201d76 100644 --- a/GPU/Common/GPUCommonDefAPI.h +++ b/GPU/Common/GPUCommonDefAPI.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/GPUCommonDefSettings.h b/GPU/Common/GPUCommonDefSettings.h index ca5bc3b9030a4..931eeceabde79 100644 --- a/GPU/Common/GPUCommonDefSettings.h +++ b/GPU/Common/GPUCommonDefSettings.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/GPUCommonLogger.h b/GPU/Common/GPUCommonLogger.h index 5cabc470ad865..8e572ae96c1ef 100644 --- a/GPU/Common/GPUCommonLogger.h +++ b/GPU/Common/GPUCommonLogger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/GPUCommonMath.h b/GPU/Common/GPUCommonMath.h index 06e044e11b87e..114f5522bca4c 100644 --- a/GPU/Common/GPUCommonMath.h +++ b/GPU/Common/GPUCommonMath.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/GPUCommonRtypes.h b/GPU/Common/GPUCommonRtypes.h index 64dba1ad8289e..3f82529d4d1fb 100644 --- a/GPU/Common/GPUCommonRtypes.h +++ b/GPU/Common/GPUCommonRtypes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/GPUCommonTransform3D.h b/GPU/Common/GPUCommonTransform3D.h index 7497dc99932fd..0d64e89041dfb 100644 --- a/GPU/Common/GPUCommonTransform3D.h +++ b/GPU/Common/GPUCommonTransform3D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/GPUCommonTypeTraits.h b/GPU/Common/GPUCommonTypeTraits.h index 3a9e2e17bced1..4ace82a415c14 100644 --- a/GPU/Common/GPUCommonTypeTraits.h +++ b/GPU/Common/GPUCommonTypeTraits.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/GPUROOTCartesianFwd.h b/GPU/Common/GPUROOTCartesianFwd.h index c9136bca932b9..7810bc6a33abe 100644 --- a/GPU/Common/GPUROOTCartesianFwd.h +++ b/GPU/Common/GPUROOTCartesianFwd.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/GPUROOTSMatrixFwd.h b/GPU/Common/GPUROOTSMatrixFwd.h index 11c3cf3d7edf4..84047538cb912 100644 --- a/GPU/Common/GPUROOTSMatrixFwd.h +++ b/GPU/Common/GPUROOTSMatrixFwd.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Common/test/testGPUsortCUDA.cu b/GPU/Common/test/testGPUsortCUDA.cu index e6bd5206cbec9..4ed905032c7d5 100644 --- a/GPU/Common/test/testGPUsortCUDA.cu +++ b/GPU/Common/test/testGPUsortCUDA.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUConstantMem.h b/GPU/GPUTracking/Base/GPUConstantMem.h index 0b875c38b5e6e..4658a484327cd 100644 --- a/GPU/GPUTracking/Base/GPUConstantMem.h +++ b/GPU/GPUTracking/Base/GPUConstantMem.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUGeneralKernels.cxx b/GPU/GPUTracking/Base/GPUGeneralKernels.cxx index e93c0ece00c82..519319292abd2 100644 --- a/GPU/GPUTracking/Base/GPUGeneralKernels.cxx +++ b/GPU/GPUTracking/Base/GPUGeneralKernels.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUGeneralKernels.h b/GPU/GPUTracking/Base/GPUGeneralKernels.h index 4d780aa8f5f9b..b15dfe29d712b 100644 --- a/GPU/GPUTracking/Base/GPUGeneralKernels.h +++ b/GPU/GPUTracking/Base/GPUGeneralKernels.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUKernelDebugOutput.cxx b/GPU/GPUTracking/Base/GPUKernelDebugOutput.cxx index d69e7d96123c0..be4207abc75d3 100644 --- a/GPU/GPUTracking/Base/GPUKernelDebugOutput.cxx +++ b/GPU/GPUTracking/Base/GPUKernelDebugOutput.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUKernelDebugOutput.h b/GPU/GPUTracking/Base/GPUKernelDebugOutput.h index 494bf928c0893..86c66fa488fc5 100644 --- a/GPU/GPUTracking/Base/GPUKernelDebugOutput.h +++ b/GPU/GPUTracking/Base/GPUKernelDebugOutput.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUMemoryResource.cxx b/GPU/GPUTracking/Base/GPUMemoryResource.cxx index f376463a1b7cd..ccc912fe6c036 100644 --- a/GPU/GPUTracking/Base/GPUMemoryResource.cxx +++ b/GPU/GPUTracking/Base/GPUMemoryResource.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUMemoryResource.h b/GPU/GPUTracking/Base/GPUMemoryResource.h index b9908c085a9bb..0d73da0f8b5f7 100644 --- a/GPU/GPUTracking/Base/GPUMemoryResource.h +++ b/GPU/GPUTracking/Base/GPUMemoryResource.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUParam.cxx b/GPU/GPUTracking/Base/GPUParam.cxx index b14f59918eb99..9b3196170043e 100644 --- a/GPU/GPUTracking/Base/GPUParam.cxx +++ b/GPU/GPUTracking/Base/GPUParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUParam.h b/GPU/GPUTracking/Base/GPUParam.h index eff8ad2d0ffe7..c72b672aaaed9 100644 --- a/GPU/GPUTracking/Base/GPUParam.h +++ b/GPU/GPUTracking/Base/GPUParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUParam.inc b/GPU/GPUTracking/Base/GPUParam.inc index f3f374d34f480..cfcf224966051 100644 --- a/GPU/GPUTracking/Base/GPUParam.inc +++ b/GPU/GPUTracking/Base/GPUParam.inc @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUParamRTC.h b/GPU/GPUTracking/Base/GPUParamRTC.h index 2647d7152dbea..d7959a294854c 100644 --- a/GPU/GPUTracking/Base/GPUParamRTC.h +++ b/GPU/GPUTracking/Base/GPUParamRTC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUProcessor.cxx b/GPU/GPUTracking/Base/GPUProcessor.cxx index d771826745591..46f065d3fceb6 100644 --- a/GPU/GPUTracking/Base/GPUProcessor.cxx +++ b/GPU/GPUTracking/Base/GPUProcessor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUProcessor.h b/GPU/GPUTracking/Base/GPUProcessor.h index 7eb75258de39a..0024ccd6febe6 100644 --- a/GPU/GPUTracking/Base/GPUProcessor.h +++ b/GPU/GPUTracking/Base/GPUProcessor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstruction.cxx b/GPU/GPUTracking/Base/GPUReconstruction.cxx index 30625a2f52e2b..4956885656d97 100644 --- a/GPU/GPUTracking/Base/GPUReconstruction.cxx +++ b/GPU/GPUTracking/Base/GPUReconstruction.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstruction.h b/GPU/GPUTracking/Base/GPUReconstruction.h index 5279b8ca28211..4311d29d297ed 100644 --- a/GPU/GPUTracking/Base/GPUReconstruction.h +++ b/GPU/GPUTracking/Base/GPUReconstruction.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionCPU.cxx b/GPU/GPUTracking/Base/GPUReconstructionCPU.cxx index 4f297e9b84fef..ea0e24a2fe63b 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionCPU.cxx +++ b/GPU/GPUTracking/Base/GPUReconstructionCPU.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionCPU.h b/GPU/GPUTracking/Base/GPUReconstructionCPU.h index 5b4ee55caa77c..59ff53d0cd025 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionCPU.h +++ b/GPU/GPUTracking/Base/GPUReconstructionCPU.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionConvert.cxx b/GPU/GPUTracking/Base/GPUReconstructionConvert.cxx index 09b86fe768ecd..f9c5369bb2139 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionConvert.cxx +++ b/GPU/GPUTracking/Base/GPUReconstructionConvert.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionConvert.h b/GPU/GPUTracking/Base/GPUReconstructionConvert.h index 1bb520fa743ec..6c155386bf919 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionConvert.h +++ b/GPU/GPUTracking/Base/GPUReconstructionConvert.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionDeviceBase.cxx b/GPU/GPUTracking/Base/GPUReconstructionDeviceBase.cxx index 9b71edde5659c..3a834c202091e 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionDeviceBase.cxx +++ b/GPU/GPUTracking/Base/GPUReconstructionDeviceBase.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionDeviceBase.h b/GPU/GPUTracking/Base/GPUReconstructionDeviceBase.h index 12080b895cdf6..21c939bf8923a 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionDeviceBase.h +++ b/GPU/GPUTracking/Base/GPUReconstructionDeviceBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionHelpers.h b/GPU/GPUTracking/Base/GPUReconstructionHelpers.h index 1816dde572b81..a9be3d4c8d1c0 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionHelpers.h +++ b/GPU/GPUTracking/Base/GPUReconstructionHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionIncludes.h b/GPU/GPUTracking/Base/GPUReconstructionIncludes.h index 2e0209105b9fe..6cbb80cc71dc9 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionIncludes.h +++ b/GPU/GPUTracking/Base/GPUReconstructionIncludes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionIncludesDevice.h b/GPU/GPUTracking/Base/GPUReconstructionIncludesDevice.h index 4ac1b628a1c4f..5a410f3fc12ab 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionIncludesDevice.h +++ b/GPU/GPUTracking/Base/GPUReconstructionIncludesDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionIncludesITS.h b/GPU/GPUTracking/Base/GPUReconstructionIncludesITS.h index 2759642f7e78a..def282556eec0 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionIncludesITS.h +++ b/GPU/GPUTracking/Base/GPUReconstructionIncludesITS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionKernelMacros.h b/GPU/GPUTracking/Base/GPUReconstructionKernelMacros.h index d02229280d3c9..e4a691ed10737 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionKernelMacros.h +++ b/GPU/GPUTracking/Base/GPUReconstructionKernelMacros.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionKernels.h b/GPU/GPUTracking/Base/GPUReconstructionKernels.h index 607bb2f94c8bd..ee3ba28d2c5b7 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionKernels.h +++ b/GPU/GPUTracking/Base/GPUReconstructionKernels.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionTimeframe.cxx b/GPU/GPUTracking/Base/GPUReconstructionTimeframe.cxx index a07ccde055458..40fa8445b9690 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionTimeframe.cxx +++ b/GPU/GPUTracking/Base/GPUReconstructionTimeframe.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/GPUReconstructionTimeframe.h b/GPU/GPUTracking/Base/GPUReconstructionTimeframe.h index c0f21f7b94f23..244da705c3fcf 100644 --- a/GPU/GPUTracking/Base/GPUReconstructionTimeframe.h +++ b/GPU/GPUTracking/Base/GPUReconstructionTimeframe.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/cuda/CMakeLists.txt b/GPU/GPUTracking/Base/cuda/CMakeLists.txt index be7c0357c939e..f57be5c3f8032 100644 --- a/GPU/GPUTracking/Base/cuda/CMakeLists.txt +++ b/GPU/GPUTracking/Base/cuda/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(MODULE GPUTrackingCUDA) diff --git a/GPU/GPUTracking/Base/cuda/CUDAThrustHelpers.h b/GPU/GPUTracking/Base/cuda/CUDAThrustHelpers.h index a65159967b019..d9e99a8ca0bc4 100644 --- a/GPU/GPUTracking/Base/cuda/CUDAThrustHelpers.h +++ b/GPU/GPUTracking/Base/cuda/CUDAThrustHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDA.cu b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDA.cu index 5dc97e1bc3167..953155d8fc8f0 100644 --- a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDA.cu +++ b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDA.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDA.h b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDA.h index a2c72b68d72e3..18a382e81b131 100644 --- a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDA.h +++ b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDA.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDADef.h b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDADef.h index 9ef1ce9a820e6..cf1934637b4b8 100644 --- a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDADef.h +++ b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDADef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAGenRTC.cu b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAGenRTC.cu index f1f8e273b625b..5329643163130 100644 --- a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAGenRTC.cu +++ b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAGenRTC.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAIncludes.h b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAIncludes.h index ab23811ef7c14..6d0e2bf1e86e6 100644 --- a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAIncludes.h +++ b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAIncludes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAInternals.h b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAInternals.h index d05e5554bf5b9..e57cae04dd25a 100644 --- a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAInternals.h +++ b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAInternals.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAKernels.cu b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAKernels.cu index 03f7cfd2561b9..034dffbbe69bc 100644 --- a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAKernels.cu +++ b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDAKernels.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDArtc.cu b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDArtc.cu index 57eede98c090f..9a3d1cf4cef6b 100644 --- a/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDArtc.cu +++ b/GPU/GPUTracking/Base/cuda/GPUReconstructionCUDArtc.cu @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/hip/CMakeLists.txt b/GPU/GPUTracking/Base/hip/CMakeLists.txt index 3ee2f34b4af9d..9dda3711d040c 100644 --- a/GPU/GPUTracking/Base/hip/CMakeLists.txt +++ b/GPU/GPUTracking/Base/hip/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(MODULE GPUTrackingHIP) diff --git a/GPU/GPUTracking/Base/hip/GPUReconstructionHIP.h b/GPU/GPUTracking/Base/hip/GPUReconstructionHIP.h index d24f5129c2af6..28fdb5b02f558 100644 --- a/GPU/GPUTracking/Base/hip/GPUReconstructionHIP.h +++ b/GPU/GPUTracking/Base/hip/GPUReconstructionHIP.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/hip/GPUReconstructionHIP.hip.cxx b/GPU/GPUTracking/Base/hip/GPUReconstructionHIP.hip.cxx index 5eee4f4c70b76..b77f9aefe3e76 100644 --- a/GPU/GPUTracking/Base/hip/GPUReconstructionHIP.hip.cxx +++ b/GPU/GPUTracking/Base/hip/GPUReconstructionHIP.hip.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/hip/GPUReconstructionHIPIncludes.h b/GPU/GPUTracking/Base/hip/GPUReconstructionHIPIncludes.h index 800684a192d00..6a93c5d724cc0 100644 --- a/GPU/GPUTracking/Base/hip/GPUReconstructionHIPIncludes.h +++ b/GPU/GPUTracking/Base/hip/GPUReconstructionHIPIncludes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/hip/GPUReconstructionHIPInternals.h b/GPU/GPUTracking/Base/hip/GPUReconstructionHIPInternals.h index ee48f38b48fd1..6ae4ced135e8b 100644 --- a/GPU/GPUTracking/Base/hip/GPUReconstructionHIPInternals.h +++ b/GPU/GPUTracking/Base/hip/GPUReconstructionHIPInternals.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/hip/HIPThrustHelpers.h b/GPU/GPUTracking/Base/hip/HIPThrustHelpers.h index 94b8c6b8750bc..fbe52ed23e4bd 100644 --- a/GPU/GPUTracking/Base/hip/HIPThrustHelpers.h +++ b/GPU/GPUTracking/Base/hip/HIPThrustHelpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/hip/test/testGPUsortHIP.hip.cxx b/GPU/GPUTracking/Base/hip/test/testGPUsortHIP.hip.cxx index a12e1dabd4d13..c7c4d9456ca7d 100644 --- a/GPU/GPUTracking/Base/hip/test/testGPUsortHIP.hip.cxx +++ b/GPU/GPUTracking/Base/hip/test/testGPUsortHIP.hip.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/opencl-common/CMakeLists.txt b/GPU/GPUTracking/Base/opencl-common/CMakeLists.txt index f2f39ae5f040e..deaa94265d1b0 100644 --- a/GPU/GPUTracking/Base/opencl-common/CMakeLists.txt +++ b/GPU/GPUTracking/Base/opencl-common/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(MODULE GPUTrackingOpenCLCommon) diff --git a/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCL.cl b/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCL.cl index 46ef2708b0288..7c3e1bf48856e 100644 --- a/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCL.cl +++ b/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCL.cl @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCL.cxx b/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCL.cxx index 7ac3625973c93..8c93a75471257 100644 --- a/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCL.cxx +++ b/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCL.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCL.h b/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCL.h index 3ada2b683aa69..c3055f4ef4356 100644 --- a/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCL.h +++ b/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCL.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCLInternals.h b/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCLInternals.h index 10d397ed9fe0a..7e57155d0419d 100644 --- a/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCLInternals.h +++ b/GPU/GPUTracking/Base/opencl-common/GPUReconstructionOCLInternals.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/opencl/CMakeLists.txt b/GPU/GPUTracking/Base/opencl/CMakeLists.txt index 43d25d7f2d6ed..c984f4e8eb32c 100644 --- a/GPU/GPUTracking/Base/opencl/CMakeLists.txt +++ b/GPU/GPUTracking/Base/opencl/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(MODULE GPUTrackingOCL) enable_language(ASM) diff --git a/GPU/GPUTracking/Base/opencl/GPUReconstructionOCL1.cxx b/GPU/GPUTracking/Base/opencl/GPUReconstructionOCL1.cxx index 33ccde71dd20c..3a670002fcd7d 100644 --- a/GPU/GPUTracking/Base/opencl/GPUReconstructionOCL1.cxx +++ b/GPU/GPUTracking/Base/opencl/GPUReconstructionOCL1.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/opencl/GPUReconstructionOCL1.h b/GPU/GPUTracking/Base/opencl/GPUReconstructionOCL1.h index 28131147f8463..00727ffd74a6b 100644 --- a/GPU/GPUTracking/Base/opencl/GPUReconstructionOCL1.h +++ b/GPU/GPUTracking/Base/opencl/GPUReconstructionOCL1.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/opencl/GPUReconstructionOCL1Internals.h b/GPU/GPUTracking/Base/opencl/GPUReconstructionOCL1Internals.h index 5b49fcfd81f27..997a108ac26d0 100644 --- a/GPU/GPUTracking/Base/opencl/GPUReconstructionOCL1Internals.h +++ b/GPU/GPUTracking/Base/opencl/GPUReconstructionOCL1Internals.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/opencl2/CMakeLists.txt b/GPU/GPUTracking/Base/opencl2/CMakeLists.txt index 210fbee379892..533f094c99f83 100644 --- a/GPU/GPUTracking/Base/opencl2/CMakeLists.txt +++ b/GPU/GPUTracking/Base/opencl2/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(MODULE GPUTrackingOCL2) enable_language(ASM) diff --git a/GPU/GPUTracking/Base/opencl2/GPUReconstructionOCL2.cxx b/GPU/GPUTracking/Base/opencl2/GPUReconstructionOCL2.cxx index 226cb2e1278eb..96e5af116c0a3 100644 --- a/GPU/GPUTracking/Base/opencl2/GPUReconstructionOCL2.cxx +++ b/GPU/GPUTracking/Base/opencl2/GPUReconstructionOCL2.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/opencl2/GPUReconstructionOCL2.h b/GPU/GPUTracking/Base/opencl2/GPUReconstructionOCL2.h index dbaa05f290d6e..c9d31f20c8b3b 100644 --- a/GPU/GPUTracking/Base/opencl2/GPUReconstructionOCL2.h +++ b/GPU/GPUTracking/Base/opencl2/GPUReconstructionOCL2.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Base/opencl2/GPUReconstructionOCL2Internals.h b/GPU/GPUTracking/Base/opencl2/GPUReconstructionOCL2Internals.h index 71902a9ac3175..8debdc47be8e8 100644 --- a/GPU/GPUTracking/Base/opencl2/GPUReconstructionOCL2Internals.h +++ b/GPU/GPUTracking/Base/opencl2/GPUReconstructionOCL2Internals.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Benchmark/CMakeLists.txt b/GPU/GPUTracking/Benchmark/CMakeLists.txt index a755720039037..51ff4f6b8aaa9 100644 --- a/GPU/GPUTracking/Benchmark/CMakeLists.txt +++ b/GPU/GPUTracking/Benchmark/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. message(STATUS "Building GPU Standalone Benchmark") diff --git a/GPU/GPUTracking/Benchmark/standalone.cxx b/GPU/GPUTracking/Benchmark/standalone.cxx index 62f0340fb3636..1c102f70f9023 100644 --- a/GPU/GPUTracking/Benchmark/standalone.cxx +++ b/GPU/GPUTracking/Benchmark/standalone.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/CMakeLists.txt b/GPU/GPUTracking/CMakeLists.txt index 6f017f9c57018..731b3fb8d49ab 100644 --- a/GPU/GPUTracking/CMakeLists.txt +++ b/GPU/GPUTracking/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(MODULE GPUTracking) diff --git a/GPU/GPUTracking/DataCompression/AliHLTTPCClusterStatComponent.cxx b/GPU/GPUTracking/DataCompression/AliHLTTPCClusterStatComponent.cxx index 238f620a371e6..330a87d3bfb21 100644 --- a/GPU/GPUTracking/DataCompression/AliHLTTPCClusterStatComponent.cxx +++ b/GPU/GPUTracking/DataCompression/AliHLTTPCClusterStatComponent.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/AliHLTTPCClusterStatComponent.h b/GPU/GPUTracking/DataCompression/AliHLTTPCClusterStatComponent.h index 9142d1ebd49ea..126c37eba1b05 100644 --- a/GPU/GPUTracking/DataCompression/AliHLTTPCClusterStatComponent.h +++ b/GPU/GPUTracking/DataCompression/AliHLTTPCClusterStatComponent.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/GPUTPCClusterRejection.h b/GPU/GPUTracking/DataCompression/GPUTPCClusterRejection.h index 890e15b7df61d..2599f305c3541 100644 --- a/GPU/GPUTracking/DataCompression/GPUTPCClusterRejection.h +++ b/GPU/GPUTracking/DataCompression/GPUTPCClusterRejection.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/GPUTPCClusterStatistics.cxx b/GPU/GPUTracking/DataCompression/GPUTPCClusterStatistics.cxx index d497746f0cff5..04e57426c1927 100644 --- a/GPU/GPUTracking/DataCompression/GPUTPCClusterStatistics.cxx +++ b/GPU/GPUTracking/DataCompression/GPUTPCClusterStatistics.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/GPUTPCClusterStatistics.h b/GPU/GPUTracking/DataCompression/GPUTPCClusterStatistics.h index 7e39bc58057f2..7e14f4704a635 100644 --- a/GPU/GPUTracking/DataCompression/GPUTPCClusterStatistics.h +++ b/GPU/GPUTracking/DataCompression/GPUTPCClusterStatistics.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/GPUTPCCompression.cxx b/GPU/GPUTracking/DataCompression/GPUTPCCompression.cxx index 75c0e46ac8241..938076376e1d5 100644 --- a/GPU/GPUTracking/DataCompression/GPUTPCCompression.cxx +++ b/GPU/GPUTracking/DataCompression/GPUTPCCompression.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/GPUTPCCompression.h b/GPU/GPUTracking/DataCompression/GPUTPCCompression.h index 765cd4b6e676f..04dc218921729 100644 --- a/GPU/GPUTracking/DataCompression/GPUTPCCompression.h +++ b/GPU/GPUTracking/DataCompression/GPUTPCCompression.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/GPUTPCCompressionKernels.cxx b/GPU/GPUTracking/DataCompression/GPUTPCCompressionKernels.cxx index fe4f3c3f8a789..6d5e4c9e52f89 100644 --- a/GPU/GPUTracking/DataCompression/GPUTPCCompressionKernels.cxx +++ b/GPU/GPUTracking/DataCompression/GPUTPCCompressionKernels.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/GPUTPCCompressionKernels.h b/GPU/GPUTracking/DataCompression/GPUTPCCompressionKernels.h index d7d14fc5d2ae6..b3d6212418c50 100644 --- a/GPU/GPUTracking/DataCompression/GPUTPCCompressionKernels.h +++ b/GPU/GPUTracking/DataCompression/GPUTPCCompressionKernels.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/GPUTPCCompressionTrackModel.cxx b/GPU/GPUTracking/DataCompression/GPUTPCCompressionTrackModel.cxx index d507e9d267611..a0e2e80078eab 100644 --- a/GPU/GPUTracking/DataCompression/GPUTPCCompressionTrackModel.cxx +++ b/GPU/GPUTracking/DataCompression/GPUTPCCompressionTrackModel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/GPUTPCCompressionTrackModel.h b/GPU/GPUTracking/DataCompression/GPUTPCCompressionTrackModel.h index 795b7321df4dd..22c2e08f1caa6 100644 --- a/GPU/GPUTracking/DataCompression/GPUTPCCompressionTrackModel.h +++ b/GPU/GPUTracking/DataCompression/GPUTPCCompressionTrackModel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/TPCClusterDecompressor.cxx b/GPU/GPUTracking/DataCompression/TPCClusterDecompressor.cxx index d5543cc33ab56..d5eb975e259a1 100644 --- a/GPU/GPUTracking/DataCompression/TPCClusterDecompressor.cxx +++ b/GPU/GPUTracking/DataCompression/TPCClusterDecompressor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/TPCClusterDecompressor.h b/GPU/GPUTracking/DataCompression/TPCClusterDecompressor.h index 991151bade1e9..9b4314a7af721 100644 --- a/GPU/GPUTracking/DataCompression/TPCClusterDecompressor.h +++ b/GPU/GPUTracking/DataCompression/TPCClusterDecompressor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataCompression/standalone-cluster-dump-entropy-analysed.cxx b/GPU/GPUTracking/DataCompression/standalone-cluster-dump-entropy-analysed.cxx index 129edc0a63c63..0996781533f02 100644 --- a/GPU/GPUTracking/DataCompression/standalone-cluster-dump-entropy-analysed.cxx +++ b/GPU/GPUTracking/DataCompression/standalone-cluster-dump-entropy-analysed.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUDataTypes.cxx b/GPU/GPUTracking/DataTypes/GPUDataTypes.cxx index ee50e12d95207..fcf8f89560c7f 100644 --- a/GPU/GPUTracking/DataTypes/GPUDataTypes.cxx +++ b/GPU/GPUTracking/DataTypes/GPUDataTypes.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUDataTypes.h b/GPU/GPUTracking/DataTypes/GPUDataTypes.h index 8946925f01628..1b0947785beb5 100644 --- a/GPU/GPUTracking/DataTypes/GPUDataTypes.h +++ b/GPU/GPUTracking/DataTypes/GPUDataTypes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUHostDataTypes.h b/GPU/GPUTracking/DataTypes/GPUHostDataTypes.h index d46826d283768..b84c05dad7d14 100644 --- a/GPU/GPUTracking/DataTypes/GPUHostDataTypes.h +++ b/GPU/GPUTracking/DataTypes/GPUHostDataTypes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUMemorySizeScalers.cxx b/GPU/GPUTracking/DataTypes/GPUMemorySizeScalers.cxx index 5964d969608c7..436ae6c738dc0 100644 --- a/GPU/GPUTracking/DataTypes/GPUMemorySizeScalers.cxx +++ b/GPU/GPUTracking/DataTypes/GPUMemorySizeScalers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUMemorySizeScalers.h b/GPU/GPUTracking/DataTypes/GPUMemorySizeScalers.h index 55f0a4231a2b2..e60ec412e0949 100644 --- a/GPU/GPUTracking/DataTypes/GPUMemorySizeScalers.h +++ b/GPU/GPUTracking/DataTypes/GPUMemorySizeScalers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUO2DataTypes.h b/GPU/GPUTracking/DataTypes/GPUO2DataTypes.h index 9e3d919685820..3ffdd42b9cf81 100644 --- a/GPU/GPUTracking/DataTypes/GPUO2DataTypes.h +++ b/GPU/GPUTracking/DataTypes/GPUO2DataTypes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUO2FakeClasses.h b/GPU/GPUTracking/DataTypes/GPUO2FakeClasses.h index 6fc49d607b07c..6f9a1e25cdee4 100644 --- a/GPU/GPUTracking/DataTypes/GPUO2FakeClasses.h +++ b/GPU/GPUTracking/DataTypes/GPUO2FakeClasses.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUOutputControl.h b/GPU/GPUTracking/DataTypes/GPUOutputControl.h index d2fd315e7f84b..9d7374f819ca3 100644 --- a/GPU/GPUTracking/DataTypes/GPUOutputControl.h +++ b/GPU/GPUTracking/DataTypes/GPUOutputControl.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUSettings.h b/GPU/GPUTracking/DataTypes/GPUSettings.h index 8f7ea8d8dcfff..0579dd53674dc 100644 --- a/GPU/GPUTracking/DataTypes/GPUSettings.h +++ b/GPU/GPUTracking/DataTypes/GPUSettings.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUTRDDef.h b/GPU/GPUTracking/DataTypes/GPUTRDDef.h index 7c57dc18ccb30..3d77c5dc7577b 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDDef.h +++ b/GPU/GPUTracking/DataTypes/GPUTRDDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h b/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h index 112a50d91b165..88dfc6ddad5bd 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h +++ b/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUTRDO2BaseTrack.h b/GPU/GPUTracking/DataTypes/GPUTRDO2BaseTrack.h index d1b18f32e8801..1579b9f6b9302 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDO2BaseTrack.h +++ b/GPU/GPUTracking/DataTypes/GPUTRDO2BaseTrack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx b/GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx index a670b4a71d539..a719683fe4ada 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx +++ b/GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUTRDTrack.h b/GPU/GPUTracking/DataTypes/GPUTRDTrack.h index 3f05fd5b2e551..92019f9d50bfd 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDTrack.h +++ b/GPU/GPUTracking/DataTypes/GPUTRDTrack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUTRDTrackO2.cxx b/GPU/GPUTracking/DataTypes/GPUTRDTrackO2.cxx index 47f6a4e7aadb1..22b672007e293 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDTrackO2.cxx +++ b/GPU/GPUTracking/DataTypes/GPUTRDTrackO2.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/GPUdEdxInfo.h b/GPU/GPUTracking/DataTypes/GPUdEdxInfo.h index ab018e8b7b6f8..c5635b7c5d488 100644 --- a/GPU/GPUTracking/DataTypes/GPUdEdxInfo.h +++ b/GPU/GPUTracking/DataTypes/GPUdEdxInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/TPCPadGainCalib.cxx b/GPU/GPUTracking/DataTypes/TPCPadGainCalib.cxx index 9ce0254f2c089..d3eff4254f3c0 100644 --- a/GPU/GPUTracking/DataTypes/TPCPadGainCalib.cxx +++ b/GPU/GPUTracking/DataTypes/TPCPadGainCalib.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/TPCPadGainCalib.h b/GPU/GPUTracking/DataTypes/TPCPadGainCalib.h index 8a35348e4ea03..5912e042c6c9d 100644 --- a/GPU/GPUTracking/DataTypes/TPCPadGainCalib.h +++ b/GPU/GPUTracking/DataTypes/TPCPadGainCalib.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/TPCdEdxCalibrationSplines.cxx b/GPU/GPUTracking/DataTypes/TPCdEdxCalibrationSplines.cxx index 7cf0d7b3608a7..091f7e0efaf23 100644 --- a/GPU/GPUTracking/DataTypes/TPCdEdxCalibrationSplines.cxx +++ b/GPU/GPUTracking/DataTypes/TPCdEdxCalibrationSplines.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/DataTypes/TPCdEdxCalibrationSplines.h b/GPU/GPUTracking/DataTypes/TPCdEdxCalibrationSplines.h index cffd3f7cadccf..f378b6d2dd347 100644 --- a/GPU/GPUTracking/DataTypes/TPCdEdxCalibrationSplines.h +++ b/GPU/GPUTracking/DataTypes/TPCdEdxCalibrationSplines.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Debug/GPUROOTDump.h b/GPU/GPUTracking/Debug/GPUROOTDump.h index c43b1527d2f79..d7f765788578a 100644 --- a/GPU/GPUTracking/Debug/GPUROOTDump.h +++ b/GPU/GPUTracking/Debug/GPUROOTDump.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Debug/GPUROOTDumpCore.cxx b/GPU/GPUTracking/Debug/GPUROOTDumpCore.cxx index 3c4e4f197d753..1f2117efbdad5 100644 --- a/GPU/GPUTracking/Debug/GPUROOTDumpCore.cxx +++ b/GPU/GPUTracking/Debug/GPUROOTDumpCore.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Debug/GPUROOTDumpCore.h b/GPU/GPUTracking/Debug/GPUROOTDumpCore.h index 4f7aa10fe7545..73a76ddba1706 100644 --- a/GPU/GPUTracking/Debug/GPUROOTDumpCore.h +++ b/GPU/GPUTracking/Debug/GPUROOTDumpCore.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Definitions/GPUDef.h b/GPU/GPUTracking/Definitions/GPUDef.h index 164378f1c23d8..c7d9cb00d367c 100644 --- a/GPU/GPUTracking/Definitions/GPUDef.h +++ b/GPU/GPUTracking/Definitions/GPUDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Definitions/GPUDefConstantsAndSettings.h b/GPU/GPUTracking/Definitions/GPUDefConstantsAndSettings.h index 0b7a48ae47aeb..0d8ffcf2f19a1 100644 --- a/GPU/GPUTracking/Definitions/GPUDefConstantsAndSettings.h +++ b/GPU/GPUTracking/Definitions/GPUDefConstantsAndSettings.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Definitions/GPUDefGPUParameters.h b/GPU/GPUTracking/Definitions/GPUDefGPUParameters.h index d056f655922af..9902be1d7cc44 100644 --- a/GPU/GPUTracking/Definitions/GPUDefGPUParameters.h +++ b/GPU/GPUTracking/Definitions/GPUDefGPUParameters.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Definitions/GPUDefMacros.h b/GPU/GPUTracking/Definitions/GPUDefMacros.h index 81b350ecd0329..b47401c9f05aa 100644 --- a/GPU/GPUTracking/Definitions/GPUDefMacros.h +++ b/GPU/GPUTracking/Definitions/GPUDefMacros.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Definitions/GPUDefOpenCL12Templates.h b/GPU/GPUTracking/Definitions/GPUDefOpenCL12Templates.h index 3f2ac8ece779f..f8b9d7f3c2d9b 100644 --- a/GPU/GPUTracking/Definitions/GPUDefOpenCL12Templates.h +++ b/GPU/GPUTracking/Definitions/GPUDefOpenCL12Templates.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Definitions/GPULogging.h b/GPU/GPUTracking/Definitions/GPULogging.h index c78e21dce9941..1d020180401d4 100644 --- a/GPU/GPUTracking/Definitions/GPULogging.h +++ b/GPU/GPUTracking/Definitions/GPULogging.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Definitions/GPUSettingsList.h b/GPU/GPUTracking/Definitions/GPUSettingsList.h index d15c27739b44d..093009b6483ea 100644 --- a/GPU/GPUTracking/Definitions/GPUSettingsList.h +++ b/GPU/GPUTracking/Definitions/GPUSettingsList.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Definitions/clusterFinderDefs.h b/GPU/GPUTracking/Definitions/clusterFinderDefs.h index 6b8c4db8b74df..3cfd58983a0c5 100644 --- a/GPU/GPUTracking/Definitions/clusterFinderDefs.h +++ b/GPU/GPUTracking/Definitions/clusterFinderDefs.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/GPUTrackingLinkDef_AliRoot.h b/GPU/GPUTracking/GPUTrackingLinkDef_AliRoot.h index 33bb72f6a5408..266228dd79ff6 100644 --- a/GPU/GPUTracking/GPUTrackingLinkDef_AliRoot.h +++ b/GPU/GPUTracking/GPUTrackingLinkDef_AliRoot.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/GPUTrackingLinkDef_O2.h b/GPU/GPUTracking/GPUTrackingLinkDef_O2.h index 32639cbbf21dd..e6c4499e5560a 100644 --- a/GPU/GPUTracking/GPUTrackingLinkDef_O2.h +++ b/GPU/GPUTracking/GPUTrackingLinkDef_O2.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/AliHLTGPUDumpComponent.cxx b/GPU/GPUTracking/Global/AliHLTGPUDumpComponent.cxx index 584e40065d16d..ad7d481177caa 100644 --- a/GPU/GPUTracking/Global/AliHLTGPUDumpComponent.cxx +++ b/GPU/GPUTracking/Global/AliHLTGPUDumpComponent.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/AliHLTGPUDumpComponent.h b/GPU/GPUTracking/Global/AliHLTGPUDumpComponent.h index c30d31de544b4..46d991bd481bd 100644 --- a/GPU/GPUTracking/Global/AliHLTGPUDumpComponent.h +++ b/GPU/GPUTracking/Global/AliHLTGPUDumpComponent.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChain.cxx b/GPU/GPUTracking/Global/GPUChain.cxx index 3a5f3b1523c45..b94e48d1e551c 100644 --- a/GPU/GPUTracking/Global/GPUChain.cxx +++ b/GPU/GPUTracking/Global/GPUChain.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChain.h b/GPU/GPUTracking/Global/GPUChain.h index 39964072b35b5..df835738a3d61 100644 --- a/GPU/GPUTracking/Global/GPUChain.h +++ b/GPU/GPUTracking/Global/GPUChain.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainITS.cxx b/GPU/GPUTracking/Global/GPUChainITS.cxx index 7552684f255d4..c1818df0335ce 100644 --- a/GPU/GPUTracking/Global/GPUChainITS.cxx +++ b/GPU/GPUTracking/Global/GPUChainITS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainITS.h b/GPU/GPUTracking/Global/GPUChainITS.h index 6dcf2d37b3b53..63478f8c80ddf 100644 --- a/GPU/GPUTracking/Global/GPUChainITS.h +++ b/GPU/GPUTracking/Global/GPUChainITS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainTracking.cxx b/GPU/GPUTracking/Global/GPUChainTracking.cxx index 5ac3c6d45d8cd..4e7d42f1603c5 100644 --- a/GPU/GPUTracking/Global/GPUChainTracking.cxx +++ b/GPU/GPUTracking/Global/GPUChainTracking.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainTracking.h b/GPU/GPUTracking/Global/GPUChainTracking.h index 80a56e1ca3a47..fd7b099ffe667 100644 --- a/GPU/GPUTracking/Global/GPUChainTracking.h +++ b/GPU/GPUTracking/Global/GPUChainTracking.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx b/GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx index 1b63ca0b89924..a7522e886f309 100644 --- a/GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx +++ b/GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainTrackingCompression.cxx b/GPU/GPUTracking/Global/GPUChainTrackingCompression.cxx index f434e2ab880c5..d04cd31ec851e 100644 --- a/GPU/GPUTracking/Global/GPUChainTrackingCompression.cxx +++ b/GPU/GPUTracking/Global/GPUChainTrackingCompression.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainTrackingDebugAndProfiling.cxx b/GPU/GPUTracking/Global/GPUChainTrackingDebugAndProfiling.cxx index 67febb7d3a8e6..ed24e2a505cca 100644 --- a/GPU/GPUTracking/Global/GPUChainTrackingDebugAndProfiling.cxx +++ b/GPU/GPUTracking/Global/GPUChainTrackingDebugAndProfiling.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainTrackingDefs.h b/GPU/GPUTracking/Global/GPUChainTrackingDefs.h index ce6599c0199fb..52e8fda8666b6 100644 --- a/GPU/GPUTracking/Global/GPUChainTrackingDefs.h +++ b/GPU/GPUTracking/Global/GPUChainTrackingDefs.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainTrackingIO.cxx b/GPU/GPUTracking/Global/GPUChainTrackingIO.cxx index 33de7b902019a..63d2bf95a8067 100644 --- a/GPU/GPUTracking/Global/GPUChainTrackingIO.cxx +++ b/GPU/GPUTracking/Global/GPUChainTrackingIO.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainTrackingMerger.cxx b/GPU/GPUTracking/Global/GPUChainTrackingMerger.cxx index d6196d72ebf7b..bf34addbe215a 100644 --- a/GPU/GPUTracking/Global/GPUChainTrackingMerger.cxx +++ b/GPU/GPUTracking/Global/GPUChainTrackingMerger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainTrackingRefit.cxx b/GPU/GPUTracking/Global/GPUChainTrackingRefit.cxx index 9f6ab8e3036ee..2aaa4fded4969 100644 --- a/GPU/GPUTracking/Global/GPUChainTrackingRefit.cxx +++ b/GPU/GPUTracking/Global/GPUChainTrackingRefit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainTrackingSliceTracker.cxx b/GPU/GPUTracking/Global/GPUChainTrackingSliceTracker.cxx index eb04e22046bf8..c976af9738b59 100644 --- a/GPU/GPUTracking/Global/GPUChainTrackingSliceTracker.cxx +++ b/GPU/GPUTracking/Global/GPUChainTrackingSliceTracker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainTrackingTRD.cxx b/GPU/GPUTracking/Global/GPUChainTrackingTRD.cxx index 42accb8a1f997..ebb82f1aeba1d 100644 --- a/GPU/GPUTracking/Global/GPUChainTrackingTRD.cxx +++ b/GPU/GPUTracking/Global/GPUChainTrackingTRD.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUChainTrackingTransformation.cxx b/GPU/GPUTracking/Global/GPUChainTrackingTransformation.cxx index e8573b3c5ccec..94d4d8252b7f5 100644 --- a/GPU/GPUTracking/Global/GPUChainTrackingTransformation.cxx +++ b/GPU/GPUTracking/Global/GPUChainTrackingTransformation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUErrorCodes.h b/GPU/GPUTracking/Global/GPUErrorCodes.h index b1fd52f7d24dc..2c94844f04986 100644 --- a/GPU/GPUTracking/Global/GPUErrorCodes.h +++ b/GPU/GPUTracking/Global/GPUErrorCodes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUErrors.cxx b/GPU/GPUTracking/Global/GPUErrors.cxx index 4d636addca21d..2a2ac96760919 100644 --- a/GPU/GPUTracking/Global/GPUErrors.cxx +++ b/GPU/GPUTracking/Global/GPUErrors.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUErrors.h b/GPU/GPUTracking/Global/GPUErrors.h index 83773321bdbf9..2eb1c02bb7922 100644 --- a/GPU/GPUTracking/Global/GPUErrors.h +++ b/GPU/GPUTracking/Global/GPUErrors.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUTrackingInputProvider.cxx b/GPU/GPUTracking/Global/GPUTrackingInputProvider.cxx index 18f5bacbbdc70..5f29d28f5766a 100644 --- a/GPU/GPUTracking/Global/GPUTrackingInputProvider.cxx +++ b/GPU/GPUTracking/Global/GPUTrackingInputProvider.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Global/GPUTrackingInputProvider.h b/GPU/GPUTracking/Global/GPUTrackingInputProvider.h index 621f2271823cd..85526b158b959 100644 --- a/GPU/GPUTracking/Global/GPUTrackingInputProvider.h +++ b/GPU/GPUTracking/Global/GPUTrackingInputProvider.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/HLTHeaders/AliHLTTPCClusterMCData.h b/GPU/GPUTracking/HLTHeaders/AliHLTTPCClusterMCData.h index 2506a5f61a723..70144139de1cb 100644 --- a/GPU/GPUTracking/HLTHeaders/AliHLTTPCClusterMCData.h +++ b/GPU/GPUTracking/HLTHeaders/AliHLTTPCClusterMCData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/HLTHeaders/AliHLTTPCRawCluster.h b/GPU/GPUTracking/HLTHeaders/AliHLTTPCRawCluster.h index c7a43d0702927..4cd8c5cdc332a 100644 --- a/GPU/GPUTracking/HLTHeaders/AliHLTTPCRawCluster.h +++ b/GPU/GPUTracking/HLTHeaders/AliHLTTPCRawCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/ITS/GPUITSFitter.cxx b/GPU/GPUTracking/ITS/GPUITSFitter.cxx index 554ef783740bc..fa9482020cbda 100644 --- a/GPU/GPUTracking/ITS/GPUITSFitter.cxx +++ b/GPU/GPUTracking/ITS/GPUITSFitter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/ITS/GPUITSFitter.h b/GPU/GPUTracking/ITS/GPUITSFitter.h index fc27cc985808a..2f7f77938f8bc 100644 --- a/GPU/GPUTracking/ITS/GPUITSFitter.h +++ b/GPU/GPUTracking/ITS/GPUITSFitter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/ITS/GPUITSFitterKernels.cxx b/GPU/GPUTracking/ITS/GPUITSFitterKernels.cxx index be67ae0cd0d7a..39cb24aff9be0 100644 --- a/GPU/GPUTracking/ITS/GPUITSFitterKernels.cxx +++ b/GPU/GPUTracking/ITS/GPUITSFitterKernels.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/ITS/GPUITSFitterKernels.h b/GPU/GPUTracking/ITS/GPUITSFitterKernels.h index 59ff83030f546..ceb31e267d31f 100644 --- a/GPU/GPUTracking/ITS/GPUITSFitterKernels.h +++ b/GPU/GPUTracking/ITS/GPUITSFitterKernels.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/ITS/GPUITSTrack.h b/GPU/GPUTracking/ITS/GPUITSTrack.h index c801f4f96ad48..ad4d2edc6d552 100644 --- a/GPU/GPUTracking/ITS/GPUITSTrack.h +++ b/GPU/GPUTracking/ITS/GPUITSTrack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/CMakeLists.txt b/GPU/GPUTracking/Interface/CMakeLists.txt index 5f05c8195cc5c..340d08a74d797 100644 --- a/GPU/GPUTracking/Interface/CMakeLists.txt +++ b/GPU/GPUTracking/Interface/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(MODULE GPUO2Interface) diff --git a/GPU/GPUTracking/Interface/GPUO2Interface.cxx b/GPU/GPUTracking/Interface/GPUO2Interface.cxx index c6e30375664c7..fd4d9807a4b04 100644 --- a/GPU/GPUTracking/Interface/GPUO2Interface.cxx +++ b/GPU/GPUTracking/Interface/GPUO2Interface.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/GPUO2Interface.h b/GPU/GPUTracking/Interface/GPUO2Interface.h index d29cb628207d0..6cabaada7466f 100644 --- a/GPU/GPUTracking/Interface/GPUO2Interface.h +++ b/GPU/GPUTracking/Interface/GPUO2Interface.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/GPUO2InterfaceConfigurableParam.cxx b/GPU/GPUTracking/Interface/GPUO2InterfaceConfigurableParam.cxx index 3f2d44929e286..8a8c03cf24df9 100644 --- a/GPU/GPUTracking/Interface/GPUO2InterfaceConfigurableParam.cxx +++ b/GPU/GPUTracking/Interface/GPUO2InterfaceConfigurableParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/GPUO2InterfaceConfigurableParam.h b/GPU/GPUTracking/Interface/GPUO2InterfaceConfigurableParam.h index 68c79f79fde0c..a296567ecb269 100644 --- a/GPU/GPUTracking/Interface/GPUO2InterfaceConfigurableParam.h +++ b/GPU/GPUTracking/Interface/GPUO2InterfaceConfigurableParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/GPUO2InterfaceConfiguration.cxx b/GPU/GPUTracking/Interface/GPUO2InterfaceConfiguration.cxx index 6731e792dfc62..10535c9b1283f 100644 --- a/GPU/GPUTracking/Interface/GPUO2InterfaceConfiguration.cxx +++ b/GPU/GPUTracking/Interface/GPUO2InterfaceConfiguration.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/GPUO2InterfaceConfiguration.h b/GPU/GPUTracking/Interface/GPUO2InterfaceConfiguration.h index 2c83a85f786b5..8df8883a9a304 100644 --- a/GPU/GPUTracking/Interface/GPUO2InterfaceConfiguration.h +++ b/GPU/GPUTracking/Interface/GPUO2InterfaceConfiguration.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/GPUO2InterfaceDisplay.cxx b/GPU/GPUTracking/Interface/GPUO2InterfaceDisplay.cxx index 8c54d2aaeec0d..6a1deef5bec99 100644 --- a/GPU/GPUTracking/Interface/GPUO2InterfaceDisplay.cxx +++ b/GPU/GPUTracking/Interface/GPUO2InterfaceDisplay.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/GPUO2InterfaceDisplay.h b/GPU/GPUTracking/Interface/GPUO2InterfaceDisplay.h index f3a5650b30eb0..2d0151df22153 100644 --- a/GPU/GPUTracking/Interface/GPUO2InterfaceDisplay.h +++ b/GPU/GPUTracking/Interface/GPUO2InterfaceDisplay.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/GPUO2InterfaceLinkDef.h b/GPU/GPUTracking/Interface/GPUO2InterfaceLinkDef.h index 3f6b4e00b7c40..21ed9f04af8d7 100644 --- a/GPU/GPUTracking/Interface/GPUO2InterfaceLinkDef.h +++ b/GPU/GPUTracking/Interface/GPUO2InterfaceLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/GPUO2InterfaceQA.cxx b/GPU/GPUTracking/Interface/GPUO2InterfaceQA.cxx index 3f7f43cc4c1f9..c945bbbac9f82 100644 --- a/GPU/GPUTracking/Interface/GPUO2InterfaceQA.cxx +++ b/GPU/GPUTracking/Interface/GPUO2InterfaceQA.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/GPUO2InterfaceQA.h b/GPU/GPUTracking/Interface/GPUO2InterfaceQA.h index 8d31ae5c728b5..fb1324a97e3be 100644 --- a/GPU/GPUTracking/Interface/GPUO2InterfaceQA.h +++ b/GPU/GPUTracking/Interface/GPUO2InterfaceQA.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/GPUO2InterfaceRefit.cxx b/GPU/GPUTracking/Interface/GPUO2InterfaceRefit.cxx index 62bf601fe4179..f23f2f943b54d 100644 --- a/GPU/GPUTracking/Interface/GPUO2InterfaceRefit.cxx +++ b/GPU/GPUTracking/Interface/GPUO2InterfaceRefit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Interface/GPUO2InterfaceRefit.h b/GPU/GPUTracking/Interface/GPUO2InterfaceRefit.h index ed12ca5a77b6d..1abd34d6fb412 100644 --- a/GPU/GPUTracking/Interface/GPUO2InterfaceRefit.h +++ b/GPU/GPUTracking/Interface/GPUO2InterfaceRefit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMBorderTrack.h b/GPU/GPUTracking/Merger/GPUTPCGMBorderTrack.h index 0d6c96e10610a..285166006db2e 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMBorderTrack.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMBorderTrack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMMergedTrack.h b/GPU/GPUTracking/Merger/GPUTPCGMMergedTrack.h index af48eea088347..9856fe80dfb3d 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMMergedTrack.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMMergedTrack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMMergedTrackHit.h b/GPU/GPUTracking/Merger/GPUTPCGMMergedTrackHit.h index 50cc8ac2e9412..3505759e49701 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMMergedTrackHit.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMMergedTrackHit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMMerger.cxx b/GPU/GPUTracking/Merger/GPUTPCGMMerger.cxx index 8ce53c33d15ed..3633aa0bfbffb 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMMerger.cxx +++ b/GPU/GPUTracking/Merger/GPUTPCGMMerger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMMerger.h b/GPU/GPUTracking/Merger/GPUTPCGMMerger.h index 60f7b24c7534b..765e50a96220d 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMMerger.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMMerger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMMergerDump.cxx b/GPU/GPUTracking/Merger/GPUTPCGMMergerDump.cxx index 3f68b61f63b9d..74cb152ca680c 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMMergerDump.cxx +++ b/GPU/GPUTracking/Merger/GPUTPCGMMergerDump.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMMergerGPU.cxx b/GPU/GPUTracking/Merger/GPUTPCGMMergerGPU.cxx index 6a0f3e0d7fc6d..67875b4d20ef5 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMMergerGPU.cxx +++ b/GPU/GPUTracking/Merger/GPUTPCGMMergerGPU.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMMergerGPU.h b/GPU/GPUTracking/Merger/GPUTPCGMMergerGPU.h index ee6a50d56f9ed..d1865144e4ecc 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMMergerGPU.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMMergerGPU.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMMergerTypes.h b/GPU/GPUTracking/Merger/GPUTPCGMMergerTypes.h index 85b337c140648..c9b8e15d43925 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMMergerTypes.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMMergerTypes.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMO2Output.cxx b/GPU/GPUTracking/Merger/GPUTPCGMO2Output.cxx index 67063c797e85e..661cd0cae468f 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMO2Output.cxx +++ b/GPU/GPUTracking/Merger/GPUTPCGMO2Output.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMO2Output.h b/GPU/GPUTracking/Merger/GPUTPCGMO2Output.h index aea0798321db8..42a7f2197f0cd 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMO2Output.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMO2Output.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMOfflineStatisticalErrors.h b/GPU/GPUTracking/Merger/GPUTPCGMOfflineStatisticalErrors.h index fec22db5cc5c2..1ec69ac19e5b8 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMOfflineStatisticalErrors.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMOfflineStatisticalErrors.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMPhysicalTrackModel.cxx b/GPU/GPUTracking/Merger/GPUTPCGMPhysicalTrackModel.cxx index 3a4cdd6041fff..21fb07098d432 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMPhysicalTrackModel.cxx +++ b/GPU/GPUTracking/Merger/GPUTPCGMPhysicalTrackModel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMPhysicalTrackModel.h b/GPU/GPUTracking/Merger/GPUTPCGMPhysicalTrackModel.h index 01c780c093ae9..1643d488112db 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMPhysicalTrackModel.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMPhysicalTrackModel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMPolynomialField.cxx b/GPU/GPUTracking/Merger/GPUTPCGMPolynomialField.cxx index a4838a5cbcaf8..14904e1fb86c3 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMPolynomialField.cxx +++ b/GPU/GPUTracking/Merger/GPUTPCGMPolynomialField.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMPolynomialField.h b/GPU/GPUTracking/Merger/GPUTPCGMPolynomialField.h index d334cc7ca2563..b8484c9b9aff7 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMPolynomialField.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMPolynomialField.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMPolynomialFieldManager.cxx b/GPU/GPUTracking/Merger/GPUTPCGMPolynomialFieldManager.cxx index 2ac5192273426..09f4791b4434a 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMPolynomialFieldManager.cxx +++ b/GPU/GPUTracking/Merger/GPUTPCGMPolynomialFieldManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMPolynomialFieldManager.h b/GPU/GPUTracking/Merger/GPUTPCGMPolynomialFieldManager.h index fcca6fdad3ddc..38651d8dfdee3 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMPolynomialFieldManager.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMPolynomialFieldManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMPropagator.cxx b/GPU/GPUTracking/Merger/GPUTPCGMPropagator.cxx index 859a8df0a8392..f2e2686b57e4a 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMPropagator.cxx +++ b/GPU/GPUTracking/Merger/GPUTPCGMPropagator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMPropagator.h b/GPU/GPUTracking/Merger/GPUTPCGMPropagator.h index 5e42cc1be2993..18e789dae4ed8 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMPropagator.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMPropagator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMSliceTrack.cxx b/GPU/GPUTracking/Merger/GPUTPCGMSliceTrack.cxx index 9b45c7a448dfb..d9197d6d80e76 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMSliceTrack.cxx +++ b/GPU/GPUTracking/Merger/GPUTPCGMSliceTrack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMSliceTrack.h b/GPU/GPUTracking/Merger/GPUTPCGMSliceTrack.h index 7f7d0a989f3fc..30e4307a4e51f 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMSliceTrack.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMSliceTrack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMTrackParam.cxx b/GPU/GPUTracking/Merger/GPUTPCGMTrackParam.cxx index 2141f9cb71b6b..e7839bd5eaf38 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMTrackParam.cxx +++ b/GPU/GPUTracking/Merger/GPUTPCGMTrackParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMTrackParam.h b/GPU/GPUTracking/Merger/GPUTPCGMTrackParam.h index 9f2b4a1a0bef1..3e409f11f028c 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMTrackParam.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMTrackParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMTracksToTPCSeeds.cxx b/GPU/GPUTracking/Merger/GPUTPCGMTracksToTPCSeeds.cxx index 1b2ed2271f29b..7b33df8ecd787 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMTracksToTPCSeeds.cxx +++ b/GPU/GPUTracking/Merger/GPUTPCGMTracksToTPCSeeds.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGMTracksToTPCSeeds.h b/GPU/GPUTracking/Merger/GPUTPCGMTracksToTPCSeeds.h index ff6771c04828b..029cb108d4119 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGMTracksToTPCSeeds.h +++ b/GPU/GPUTracking/Merger/GPUTPCGMTracksToTPCSeeds.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGlobalMergerComponent.cxx b/GPU/GPUTracking/Merger/GPUTPCGlobalMergerComponent.cxx index 89ba09ee31e53..c586abf5f68b7 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGlobalMergerComponent.cxx +++ b/GPU/GPUTracking/Merger/GPUTPCGlobalMergerComponent.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Merger/GPUTPCGlobalMergerComponent.h b/GPU/GPUTracking/Merger/GPUTPCGlobalMergerComponent.h index 8603f72adb64d..414a23fbc2c9a 100644 --- a/GPU/GPUTracking/Merger/GPUTPCGlobalMergerComponent.h +++ b/GPU/GPUTracking/Merger/GPUTPCGlobalMergerComponent.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Refit/GPUTrackParamConvert.h b/GPU/GPUTracking/Refit/GPUTrackParamConvert.h index c52c11f42524a..846037ddf0039 100644 --- a/GPU/GPUTracking/Refit/GPUTrackParamConvert.h +++ b/GPU/GPUTracking/Refit/GPUTrackParamConvert.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Refit/GPUTrackingRefit.cxx b/GPU/GPUTracking/Refit/GPUTrackingRefit.cxx index c7d6c6155e3fa..20f715d06f46c 100644 --- a/GPU/GPUTracking/Refit/GPUTrackingRefit.cxx +++ b/GPU/GPUTracking/Refit/GPUTrackingRefit.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Refit/GPUTrackingRefit.h b/GPU/GPUTracking/Refit/GPUTrackingRefit.h index d81486de33b3b..9d0457d165fb0 100644 --- a/GPU/GPUTracking/Refit/GPUTrackingRefit.h +++ b/GPU/GPUTracking/Refit/GPUTrackingRefit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Refit/GPUTrackingRefitKernel.cxx b/GPU/GPUTracking/Refit/GPUTrackingRefitKernel.cxx index 2e219941d1e01..dfbf52b7a354a 100644 --- a/GPU/GPUTracking/Refit/GPUTrackingRefitKernel.cxx +++ b/GPU/GPUTracking/Refit/GPUTrackingRefitKernel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Refit/GPUTrackingRefitKernel.h b/GPU/GPUTracking/Refit/GPUTrackingRefitKernel.h index e1ce00c2b2a2f..e0d85ef85156c 100644 --- a/GPU/GPUTracking/Refit/GPUTrackingRefitKernel.h +++ b/GPU/GPUTracking/Refit/GPUTrackingRefitKernel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCBaseTrackParam.h b/GPU/GPUTracking/SliceTracker/GPUTPCBaseTrackParam.h index e4db3fe383268..28390eb50e3d0 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCBaseTrackParam.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCBaseTrackParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCClusterData.h b/GPU/GPUTracking/SliceTracker/GPUTPCClusterData.h index a94d562a8ba05..c84e3de708346 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCClusterData.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCClusterData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCCreateSliceData.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCCreateSliceData.cxx index 5a48bb60717fd..6990626fa0ecb 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCCreateSliceData.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCCreateSliceData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCCreateSliceData.h b/GPU/GPUTracking/SliceTracker/GPUTPCCreateSliceData.h index 13704097f3b41..adba1b95e4f28 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCCreateSliceData.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCCreateSliceData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCDef.h b/GPU/GPUTracking/SliceTracker/GPUTPCDef.h index 08bc40344b0c4..941150b05b428 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCDef.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCDefinitions.h b/GPU/GPUTracking/SliceTracker/GPUTPCDefinitions.h index 6275ccbe27120..7d9d607b9b88d 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCDefinitions.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCDefinitions.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCGeometry.h b/GPU/GPUTracking/SliceTracker/GPUTPCGeometry.h index 0eaa0516d6049..549dcdc95888c 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCGeometry.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCGeometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCGlobalTracking.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCGlobalTracking.cxx index 1466c02896f17..00090e80e78ae 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCGlobalTracking.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCGlobalTracking.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCGlobalTracking.h b/GPU/GPUTracking/SliceTracker/GPUTPCGlobalTracking.h index 9646b9df4cada..510bbd884339e 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCGlobalTracking.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCGlobalTracking.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCGrid.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCGrid.cxx index 310f77dcb5230..67055b85dec04 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCGrid.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCGrid.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCGrid.h b/GPU/GPUTracking/SliceTracker/GPUTPCGrid.h index fe23185a39bf6..06b248c92cf06 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCGrid.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCGrid.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCHit.h b/GPU/GPUTracking/SliceTracker/GPUTPCHit.h index 376b34c0a8fd7..0fe86f8ef21a3 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCHit.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCHit.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCHitId.h b/GPU/GPUTracking/SliceTracker/GPUTPCHitId.h index 6e4c54b682b21..7d1c97650385b 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCHitId.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCHitId.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCMCInfo.h b/GPU/GPUTracking/SliceTracker/GPUTPCMCInfo.h index 3e199d34456c6..6b20f8a680940 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCMCInfo.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCMCInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCMCPoint.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCMCPoint.cxx index 79a53293d6f97..83a9225afd86d 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCMCPoint.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCMCPoint.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCMCPoint.h b/GPU/GPUTracking/SliceTracker/GPUTPCMCPoint.h index 1e6a5743ba354..b860714d5ca18 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCMCPoint.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCMCPoint.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCMCTrack.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCMCTrack.cxx index dfbecc149a034..2a5736ec6f7cc 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCMCTrack.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCMCTrack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCMCTrack.h b/GPU/GPUTracking/SliceTracker/GPUTPCMCTrack.h index f4a00fc6498f1..7cd39b242de40 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCMCTrack.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCMCTrack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursCleaner.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursCleaner.cxx index 632c1d7da4395..3c03f894d6e12 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursCleaner.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursCleaner.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursCleaner.h b/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursCleaner.h index 105da4917cf8b..5f86ad2788df2 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursCleaner.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursCleaner.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursFinder.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursFinder.cxx index 4770586a3d729..b3f942eb3d196 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursFinder.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursFinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursFinder.h b/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursFinder.h index ebb882a5ef52b..8017abb1483a1 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursFinder.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCNeighboursFinder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCRow.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCRow.cxx index 71ae58aa3fd62..8ee5e2cbddd62 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCRow.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCRow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCRow.h b/GPU/GPUTracking/SliceTracker/GPUTPCRow.h index f0a6dc9d5b4a1..369ceabf4ee96 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCRow.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCRow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCSliceData.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCSliceData.cxx index ce70173be09df..1c98977282e60 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCSliceData.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCSliceData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCSliceData.h b/GPU/GPUTracking/SliceTracker/GPUTPCSliceData.h index 7f2d77114831d..6562d0b55e4ad 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCSliceData.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCSliceData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCSliceOutCluster.h b/GPU/GPUTracking/SliceTracker/GPUTPCSliceOutCluster.h index 30bfae193b63f..a1cda9e491c6e 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCSliceOutCluster.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCSliceOutCluster.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCSliceOutput.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCSliceOutput.cxx index 15565baa49e4d..d54c3140083e5 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCSliceOutput.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCSliceOutput.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCSliceOutput.h b/GPU/GPUTracking/SliceTracker/GPUTPCSliceOutput.h index 1124902cc7d3e..7ade263cf208f 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCSliceOutput.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCSliceOutput.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsFinder.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsFinder.cxx index b8e92a4d21e8a..a5dea8884a4a4 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsFinder.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsFinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsFinder.h b/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsFinder.h index 2e72a5b92781f..e93597376a6f2 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsFinder.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsFinder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsSorter.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsSorter.cxx index 17501f5dc8a9b..cfd3f66d536c4 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsSorter.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsSorter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsSorter.h b/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsSorter.h index 3e84adf100360..69ed979261a31 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsSorter.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCStartHitsSorter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTrack.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCTrack.cxx index 39dc2d09b6d7a..573c1f6f9c8ba 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTrack.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTrack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTrack.h b/GPU/GPUTracking/SliceTracker/GPUTPCTrack.h index 9b416edab332b..0e13c46f3b19f 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTrack.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTrack.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTrackLinearisation.h b/GPU/GPUTracking/SliceTracker/GPUTPCTrackLinearisation.h index 4f94100797446..5b94992b0d708 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTrackLinearisation.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTrackLinearisation.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTrackParam.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCTrackParam.cxx index 603fd0f8a3cf0..10d366dc2bcb4 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTrackParam.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTrackParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTrackParam.h b/GPU/GPUTracking/SliceTracker/GPUTPCTrackParam.h index 9010b54ed8279..bab996b175d2e 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTrackParam.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTrackParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTracker.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCTracker.cxx index e5538cbae4aeb..741f22daaac01 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTracker.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTracker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTracker.h b/GPU/GPUTracking/SliceTracker/GPUTPCTracker.h index ec947b88472e3..b4618f7ad1b28 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTracker.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTracker.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTrackerComponent.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCTrackerComponent.cxx index 61a0f9319967b..edbfc5263826e 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTrackerComponent.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTrackerComponent.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTrackerComponent.h b/GPU/GPUTracking/SliceTracker/GPUTPCTrackerComponent.h index 61f42957b0fac..b9dc408f3780d 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTrackerComponent.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTrackerComponent.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTrackerDump.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCTrackerDump.cxx index 067aacad14242..c5d50779dfd49 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTrackerDump.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTrackerDump.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTracklet.h b/GPU/GPUTracking/SliceTracker/GPUTPCTracklet.h index bde7f4b286089..7ba895324cfbf 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTracklet.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTracklet.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTrackletConstructor.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCTrackletConstructor.cxx index 4da16b12e97ae..a7d41c83e5ffa 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTrackletConstructor.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTrackletConstructor.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTrackletConstructor.h b/GPU/GPUTracking/SliceTracker/GPUTPCTrackletConstructor.h index e083f6ae879fd..06b5a82e7ac57 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTrackletConstructor.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTrackletConstructor.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTrackletSelector.cxx b/GPU/GPUTracking/SliceTracker/GPUTPCTrackletSelector.cxx index 886b17809749f..cfc67e5d391b0 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTrackletSelector.cxx +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTrackletSelector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/SliceTracker/GPUTPCTrackletSelector.h b/GPU/GPUTracking/SliceTracker/GPUTPCTrackletSelector.h index 9737d1eb43aff..70733ace6408c 100644 --- a/GPU/GPUTracking/SliceTracker/GPUTPCTrackletSelector.h +++ b/GPU/GPUTracking/SliceTracker/GPUTPCTrackletSelector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/Standalone/CMakeLists.txt b/GPU/GPUTracking/Standalone/CMakeLists.txt index 4702732c76bc9..259c4d15a71ce 100644 --- a/GPU/GPUTracking/Standalone/CMakeLists.txt +++ b/GPU/GPUTracking/Standalone/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # Some general CMake settings cmake_minimum_required(VERSION 3.18 FATAL_ERROR) diff --git a/GPU/GPUTracking/TPCClusterFinder/Array2D.h b/GPU/GPUTracking/TPCClusterFinder/Array2D.h index 662393f5f72ac..73057ba2f5e3d 100644 --- a/GPU/GPUTracking/TPCClusterFinder/Array2D.h +++ b/GPU/GPUTracking/TPCClusterFinder/Array2D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/CfConsts.h b/GPU/GPUTracking/TPCClusterFinder/CfConsts.h index 62a53afa45efb..31ad34e9d6dc9 100644 --- a/GPU/GPUTracking/TPCClusterFinder/CfConsts.h +++ b/GPU/GPUTracking/TPCClusterFinder/CfConsts.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/CfFragment.h b/GPU/GPUTracking/TPCClusterFinder/CfFragment.h index 182ecf4d4ebdd..93d8eb8354fae 100644 --- a/GPU/GPUTracking/TPCClusterFinder/CfFragment.h +++ b/GPU/GPUTracking/TPCClusterFinder/CfFragment.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/CfUtils.h b/GPU/GPUTracking/TPCClusterFinder/CfUtils.h index 443f1ff6ab374..a9fd3a71d742a 100644 --- a/GPU/GPUTracking/TPCClusterFinder/CfUtils.h +++ b/GPU/GPUTracking/TPCClusterFinder/CfUtils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/ChargePos.h b/GPU/GPUTracking/TPCClusterFinder/ChargePos.h index 25c245de25f6c..e5033a1f37d95 100644 --- a/GPU/GPUTracking/TPCClusterFinder/ChargePos.h +++ b/GPU/GPUTracking/TPCClusterFinder/ChargePos.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/ClusterAccumulator.cxx b/GPU/GPUTracking/TPCClusterFinder/ClusterAccumulator.cxx index 547301ae80a0c..9448e528775d3 100644 --- a/GPU/GPUTracking/TPCClusterFinder/ClusterAccumulator.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/ClusterAccumulator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/ClusterAccumulator.h b/GPU/GPUTracking/TPCClusterFinder/ClusterAccumulator.h index d39a4ed10496e..c75575821bacd 100644 --- a/GPU/GPUTracking/TPCClusterFinder/ClusterAccumulator.h +++ b/GPU/GPUTracking/TPCClusterFinder/ClusterAccumulator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFChainContext.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFChainContext.h index ce7771b0dfca8..b52a67e2dee6a 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFChainContext.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFChainContext.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFChargeMapFiller.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFChargeMapFiller.cxx index 22267bf31f757..f2976fff842cc 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFChargeMapFiller.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFChargeMapFiller.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFChargeMapFiller.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFChargeMapFiller.h index c8c4c23d36912..888665b52f225 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFChargeMapFiller.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFChargeMapFiller.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFCheckPadBaseline.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFCheckPadBaseline.cxx index dbb01c32cfe63..181b62c602443 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFCheckPadBaseline.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFCheckPadBaseline.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFCheckPadBaseline.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFCheckPadBaseline.h index f5e5b29f1b701..d654e509eaa20 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFCheckPadBaseline.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFCheckPadBaseline.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFClusterizer.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFClusterizer.cxx index da3912655ffb0..7d246546ff11d 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFClusterizer.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFClusterizer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFClusterizer.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFClusterizer.h index 3d6c7115335d0..a3b8d9567e45a 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFClusterizer.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFClusterizer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDecodeZS.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDecodeZS.cxx index 5bd56210213d6..ecb853b460642 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDecodeZS.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDecodeZS.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDecodeZS.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDecodeZS.h index 1fe030679c14a..01adb28ff83ab 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDecodeZS.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDecodeZS.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDeconvolution.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDeconvolution.cxx index 90591ddbe9c2a..3fa5b2ac265eb 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDeconvolution.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDeconvolution.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDeconvolution.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDeconvolution.h index 71cd07c6bc57e..f3715d141f09f 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDeconvolution.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFDeconvolution.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFGather.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFGather.cxx index 02810aa965bae..41174f8622bbc 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFGather.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFGather.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFGather.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFGather.h index 6f3ae22d3ce15..0917409e01a40 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFGather.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFGather.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFMCLabelFlattener.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFMCLabelFlattener.cxx index cbeb7fe2edef2..e0cff28aaa2c3 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFMCLabelFlattener.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFMCLabelFlattener.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFMCLabelFlattener.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFMCLabelFlattener.h index 8e2efadaac54f..0fa1810cd6ea3 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFMCLabelFlattener.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFMCLabelFlattener.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFNoiseSuppression.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFNoiseSuppression.cxx index 576979d482dda..7651ddc527583 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFNoiseSuppression.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFNoiseSuppression.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFNoiseSuppression.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFNoiseSuppression.h index c2efef4903b80..2615976943f7e 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFNoiseSuppression.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFNoiseSuppression.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFPeakFinder.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFPeakFinder.cxx index cb8240136484d..fc8a2fcf20d4e 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFPeakFinder.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFPeakFinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFPeakFinder.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFPeakFinder.h index a029292345c1b..92e92c2886869 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFPeakFinder.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFPeakFinder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFStreamCompaction.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFStreamCompaction.cxx index 2361ae92e87f6..acff321f88bff 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFStreamCompaction.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFStreamCompaction.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFStreamCompaction.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFStreamCompaction.h index bc9577066c2c2..8a2d3034db95c 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFStreamCompaction.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCCFStreamCompaction.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.cxx index 84a81d31708dc..298b007a880f1 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.h index d50c825e792b3..aeb0544f5a191 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinderDump.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinderDump.cxx index 0b1ed288558f2..8185fd61fd19f 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinderDump.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinderDump.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinderKernels.h b/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinderKernels.h index 2f0e5fe4166bb..76509714b7353 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinderKernels.h +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinderKernels.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/MCLabelAccumulator.cxx b/GPU/GPUTracking/TPCClusterFinder/MCLabelAccumulator.cxx index 96300ad3883a3..28018e5fce5e1 100644 --- a/GPU/GPUTracking/TPCClusterFinder/MCLabelAccumulator.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/MCLabelAccumulator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/MCLabelAccumulator.h b/GPU/GPUTracking/TPCClusterFinder/MCLabelAccumulator.h index f839402ba310b..63338388b488d 100644 --- a/GPU/GPUTracking/TPCClusterFinder/MCLabelAccumulator.h +++ b/GPU/GPUTracking/TPCClusterFinder/MCLabelAccumulator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCClusterFinder/PackedCharge.h b/GPU/GPUTracking/TPCClusterFinder/PackedCharge.h index 8068478c00879..34a11b85a43bd 100644 --- a/GPU/GPUTracking/TPCClusterFinder/PackedCharge.h +++ b/GPU/GPUTracking/TPCClusterFinder/PackedCharge.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCConvert/GPUTPCConvert.cxx b/GPU/GPUTracking/TPCConvert/GPUTPCConvert.cxx index 47edc6bd72727..0f3f50bb17a58 100644 --- a/GPU/GPUTracking/TPCConvert/GPUTPCConvert.cxx +++ b/GPU/GPUTracking/TPCConvert/GPUTPCConvert.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCConvert/GPUTPCConvert.h b/GPU/GPUTracking/TPCConvert/GPUTPCConvert.h index ba3bbeed2145a..3e6c7bb61cae5 100644 --- a/GPU/GPUTracking/TPCConvert/GPUTPCConvert.h +++ b/GPU/GPUTracking/TPCConvert/GPUTPCConvert.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCConvert/GPUTPCConvertImpl.h b/GPU/GPUTracking/TPCConvert/GPUTPCConvertImpl.h index 74dd11f04299d..edea3dccfd690 100644 --- a/GPU/GPUTracking/TPCConvert/GPUTPCConvertImpl.h +++ b/GPU/GPUTracking/TPCConvert/GPUTPCConvertImpl.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCConvert/GPUTPCConvertKernel.cxx b/GPU/GPUTracking/TPCConvert/GPUTPCConvertKernel.cxx index 41eda8d4c6e59..139b0906f2690 100644 --- a/GPU/GPUTracking/TPCConvert/GPUTPCConvertKernel.cxx +++ b/GPU/GPUTracking/TPCConvert/GPUTPCConvertKernel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TPCConvert/GPUTPCConvertKernel.h b/GPU/GPUTracking/TPCConvert/GPUTPCConvertKernel.h index ce3dc35d6288b..f7b0eb201806c 100644 --- a/GPU/GPUTracking/TPCConvert/GPUTPCConvertKernel.h +++ b/GPU/GPUTracking/TPCConvert/GPUTPCConvertKernel.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDGeometry.h b/GPU/GPUTracking/TRDTracking/GPUTRDGeometry.h index 34494748d3370..dde4e6232a85e 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDGeometry.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDGeometry.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h b/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h index 3207fc3699107..3902c670d7426 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDSpacePoint.h b/GPU/GPUTracking/TRDTracking/GPUTRDSpacePoint.h index d1c5f8fec67cc..1af4812e5b23f 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDSpacePoint.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDSpacePoint.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackData.h b/GPU/GPUTracking/TRDTracking/GPUTRDTrackData.h index ea03e3b2a09de..eca3c199329f4 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackData.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackPoint.h b/GPU/GPUTracking/TRDTracking/GPUTRDTrackPoint.h index bb356209fe96a..a8c95b74fa8d4 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackPoint.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackPoint.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx index 4650dcc93300a..770d5c70e0402 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.h b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.h index 876c550054656..f99bf035ae137 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackerComponent.cxx b/GPU/GPUTracking/TRDTracking/GPUTRDTrackerComponent.cxx index 6204df5156880..8640c58f5aa81 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackerComponent.cxx +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackerComponent.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackerComponent.h b/GPU/GPUTracking/TRDTracking/GPUTRDTrackerComponent.h index c654dd2c0d8fb..28267c1ae5d71 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackerComponent.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackerComponent.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackerDebug.h b/GPU/GPUTracking/TRDTracking/GPUTRDTrackerDebug.h index 8198314fa615d..855b4cebf2009 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackerDebug.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackerDebug.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackerKernels.cxx b/GPU/GPUTracking/TRDTracking/GPUTRDTrackerKernels.cxx index 4f833959c4762..dbb58a71f9b45 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackerKernels.cxx +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackerKernels.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackerKernels.h b/GPU/GPUTracking/TRDTracking/GPUTRDTrackerKernels.h index 9f19823865ee9..39f93ddaa307c 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackerKernels.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackerKernels.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackletLabels.h b/GPU/GPUTracking/TRDTracking/GPUTRDTrackletLabels.h index 8a6317d312a0d..5e0e1ee71ddc2 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackletLabels.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackletLabels.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackletReaderComponent.cxx b/GPU/GPUTracking/TRDTracking/GPUTRDTrackletReaderComponent.cxx index 99c5d2fa8bd2e..101f07155f95f 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackletReaderComponent.cxx +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackletReaderComponent.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackletReaderComponent.h b/GPU/GPUTracking/TRDTracking/GPUTRDTrackletReaderComponent.h index f2f9816a43017..983c93148ba70 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackletReaderComponent.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackletReaderComponent.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackletWord.cxx b/GPU/GPUTracking/TRDTracking/GPUTRDTrackletWord.cxx index 9883fe4a887ad..00bb31a0794aa 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackletWord.cxx +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackletWord.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackletWord.h b/GPU/GPUTracking/TRDTracking/GPUTRDTrackletWord.h index 4ce30cff4c4a5..89c8296c71a91 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackletWord.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackletWord.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/TRDTracking/macros/checkDbgOutput.C b/GPU/GPUTracking/TRDTracking/macros/checkDbgOutput.C index 48659d41d1cbd..23d444a72435f 100644 --- a/GPU/GPUTracking/TRDTracking/macros/checkDbgOutput.C +++ b/GPU/GPUTracking/TRDTracking/macros/checkDbgOutput.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/dEdx/GPUdEdx.cxx b/GPU/GPUTracking/dEdx/GPUdEdx.cxx index cbbd54380b014..5699b6e38e42a 100644 --- a/GPU/GPUTracking/dEdx/GPUdEdx.cxx +++ b/GPU/GPUTracking/dEdx/GPUdEdx.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/dEdx/GPUdEdx.h b/GPU/GPUTracking/dEdx/GPUdEdx.h index 0582855580950..4e98d621d861b 100644 --- a/GPU/GPUTracking/dEdx/GPUdEdx.h +++ b/GPU/GPUTracking/dEdx/GPUdEdx.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplay.cxx b/GPU/GPUTracking/display/GPUDisplay.cxx index 8fdf67d8b5dc0..cf9a78437e96d 100644 --- a/GPU/GPUTracking/display/GPUDisplay.cxx +++ b/GPU/GPUTracking/display/GPUDisplay.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplay.h b/GPU/GPUTracking/display/GPUDisplay.h index c0eb65b41e304..d14920ccf1203 100644 --- a/GPU/GPUTracking/display/GPUDisplay.h +++ b/GPU/GPUTracking/display/GPUDisplay.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayBackend.cxx b/GPU/GPUTracking/display/GPUDisplayBackend.cxx index fe325430bccb1..cc75abd015233 100644 --- a/GPU/GPUTracking/display/GPUDisplayBackend.cxx +++ b/GPU/GPUTracking/display/GPUDisplayBackend.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayBackend.h b/GPU/GPUTracking/display/GPUDisplayBackend.h index 0127d953d429f..d6362595bfc59 100644 --- a/GPU/GPUTracking/display/GPUDisplayBackend.h +++ b/GPU/GPUTracking/display/GPUDisplayBackend.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayBackendGlfw.cxx b/GPU/GPUTracking/display/GPUDisplayBackendGlfw.cxx index d02baaa830a4b..d49e834e30510 100644 --- a/GPU/GPUTracking/display/GPUDisplayBackendGlfw.cxx +++ b/GPU/GPUTracking/display/GPUDisplayBackendGlfw.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayBackendGlfw.h b/GPU/GPUTracking/display/GPUDisplayBackendGlfw.h index fb24974369ad2..0fd4e4da76806 100644 --- a/GPU/GPUTracking/display/GPUDisplayBackendGlfw.h +++ b/GPU/GPUTracking/display/GPUDisplayBackendGlfw.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayBackendGlut.cxx b/GPU/GPUTracking/display/GPUDisplayBackendGlut.cxx index 53c6b0da9b03b..691d8fe898f9d 100644 --- a/GPU/GPUTracking/display/GPUDisplayBackendGlut.cxx +++ b/GPU/GPUTracking/display/GPUDisplayBackendGlut.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayBackendGlut.h b/GPU/GPUTracking/display/GPUDisplayBackendGlut.h index fbf0a25fe6d93..17f82d9827e7a 100644 --- a/GPU/GPUTracking/display/GPUDisplayBackendGlut.h +++ b/GPU/GPUTracking/display/GPUDisplayBackendGlut.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayBackendNone.cxx b/GPU/GPUTracking/display/GPUDisplayBackendNone.cxx index fa576318a1071..214e6249f93b4 100644 --- a/GPU/GPUTracking/display/GPUDisplayBackendNone.cxx +++ b/GPU/GPUTracking/display/GPUDisplayBackendNone.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayBackendNone.h b/GPU/GPUTracking/display/GPUDisplayBackendNone.h index 7e47e3c26cfe8..7a1cd69264496 100644 --- a/GPU/GPUTracking/display/GPUDisplayBackendNone.h +++ b/GPU/GPUTracking/display/GPUDisplayBackendNone.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayBackendWindows.cxx b/GPU/GPUTracking/display/GPUDisplayBackendWindows.cxx index aa5ea0bcb7f2c..d70fdf6c9b1c3 100644 --- a/GPU/GPUTracking/display/GPUDisplayBackendWindows.cxx +++ b/GPU/GPUTracking/display/GPUDisplayBackendWindows.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayBackendWindows.h b/GPU/GPUTracking/display/GPUDisplayBackendWindows.h index 591c36472c311..9b605c9b3564b 100644 --- a/GPU/GPUTracking/display/GPUDisplayBackendWindows.h +++ b/GPU/GPUTracking/display/GPUDisplayBackendWindows.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayBackendX11.cxx b/GPU/GPUTracking/display/GPUDisplayBackendX11.cxx index 7ff51e63c0328..4451a3bc0ab98 100644 --- a/GPU/GPUTracking/display/GPUDisplayBackendX11.cxx +++ b/GPU/GPUTracking/display/GPUDisplayBackendX11.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayBackendX11.h b/GPU/GPUTracking/display/GPUDisplayBackendX11.h index 7b7bf91dd4a13..782566f5c369f 100644 --- a/GPU/GPUTracking/display/GPUDisplayBackendX11.h +++ b/GPU/GPUTracking/display/GPUDisplayBackendX11.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayExt.h b/GPU/GPUTracking/display/GPUDisplayExt.h index d314d1e202b05..365c1cb9dabce 100644 --- a/GPU/GPUTracking/display/GPUDisplayExt.h +++ b/GPU/GPUTracking/display/GPUDisplayExt.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayInterpolation.cxx b/GPU/GPUTracking/display/GPUDisplayInterpolation.cxx index db72319db6d73..dc95606301ce0 100644 --- a/GPU/GPUTracking/display/GPUDisplayInterpolation.cxx +++ b/GPU/GPUTracking/display/GPUDisplayInterpolation.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayKeys.cxx b/GPU/GPUTracking/display/GPUDisplayKeys.cxx index 1e7333279c2ec..ccb78b503f2ee 100644 --- a/GPU/GPUTracking/display/GPUDisplayKeys.cxx +++ b/GPU/GPUTracking/display/GPUDisplayKeys.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayQuaternion.cxx b/GPU/GPUTracking/display/GPUDisplayQuaternion.cxx index 48fe05c1c834d..4de2d2804ba4f 100644 --- a/GPU/GPUTracking/display/GPUDisplayQuaternion.cxx +++ b/GPU/GPUTracking/display/GPUDisplayQuaternion.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/GPUDisplayShaders.h b/GPU/GPUTracking/display/GPUDisplayShaders.h index 81b2948f1666c..6d40a57abd7a9 100644 --- a/GPU/GPUTracking/display/GPUDisplayShaders.h +++ b/GPU/GPUTracking/display/GPUDisplayShaders.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/display/bitmapfile.h b/GPU/GPUTracking/display/bitmapfile.h index 1576f24113f60..274993633e36e 100644 --- a/GPU/GPUTracking/display/bitmapfile.h +++ b/GPU/GPUTracking/display/bitmapfile.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/oldFiles/AliHLT3DTrackParam.cxx b/GPU/GPUTracking/oldFiles/AliHLT3DTrackParam.cxx index ad81f5c45f50a..05e8d4af0b187 100644 --- a/GPU/GPUTracking/oldFiles/AliHLT3DTrackParam.cxx +++ b/GPU/GPUTracking/oldFiles/AliHLT3DTrackParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/oldFiles/AliHLT3DTrackParam.h b/GPU/GPUTracking/oldFiles/AliHLT3DTrackParam.h index ed01970095cd1..f9cc54f95a2e8 100644 --- a/GPU/GPUTracking/oldFiles/AliHLT3DTrackParam.h +++ b/GPU/GPUTracking/oldFiles/AliHLT3DTrackParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/oldFiles/GPUTPCGMOfflineFitter.cxx b/GPU/GPUTracking/oldFiles/GPUTPCGMOfflineFitter.cxx index fe8598ec8dfc0..c06c70b144269 100644 --- a/GPU/GPUTracking/oldFiles/GPUTPCGMOfflineFitter.cxx +++ b/GPU/GPUTracking/oldFiles/GPUTPCGMOfflineFitter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/oldFiles/GPUTPCGMOfflineFitter.h b/GPU/GPUTracking/oldFiles/GPUTPCGMOfflineFitter.h index ef0e473904b74..b6e5056a24389 100644 --- a/GPU/GPUTracking/oldFiles/GPUTPCGMOfflineFitter.h +++ b/GPU/GPUTracking/oldFiles/GPUTPCGMOfflineFitter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/qa/GPUQA.cxx b/GPU/GPUTracking/qa/GPUQA.cxx index 2770f49e9657c..cf0d602daed5b 100644 --- a/GPU/GPUTracking/qa/GPUQA.cxx +++ b/GPU/GPUTracking/qa/GPUQA.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/qa/GPUQA.h b/GPU/GPUTracking/qa/GPUQA.h index 630b432ccbfc0..081a56efb628e 100644 --- a/GPU/GPUTracking/qa/GPUQA.h +++ b/GPU/GPUTracking/qa/GPUQA.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/qa/GPUQAHelper.h b/GPU/GPUTracking/qa/GPUQAHelper.h index c45bf7df35129..ee2f8890ecc90 100644 --- a/GPU/GPUTracking/qa/GPUQAHelper.h +++ b/GPU/GPUTracking/qa/GPUQAHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/qa/genEvents.cxx b/GPU/GPUTracking/qa/genEvents.cxx index 4c612973d747e..2facc76d8c1ca 100644 --- a/GPU/GPUTracking/qa/genEvents.cxx +++ b/GPU/GPUTracking/qa/genEvents.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/qa/genEvents.h b/GPU/GPUTracking/qa/genEvents.h index 42f064481bd94..b2ed2426ea439 100644 --- a/GPU/GPUTracking/qa/genEvents.h +++ b/GPU/GPUTracking/qa/genEvents.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/qconfigoptions.h b/GPU/GPUTracking/qconfigoptions.h index 5c44f007ffd47..2a43c3f59cc3f 100644 --- a/GPU/GPUTracking/qconfigoptions.h +++ b/GPU/GPUTracking/qconfigoptions.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/EmptyFile.cxx b/GPU/GPUTracking/utils/EmptyFile.cxx index f38500b40717a..74268d78ed5d5 100644 --- a/GPU/GPUTracking/utils/EmptyFile.cxx +++ b/GPU/GPUTracking/utils/EmptyFile.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/bitfield.h b/GPU/GPUTracking/utils/bitfield.h index bf102cee5e343..92cc412f08aba 100644 --- a/GPU/GPUTracking/utils/bitfield.h +++ b/GPU/GPUTracking/utils/bitfield.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/linux_helpers.h b/GPU/GPUTracking/utils/linux_helpers.h index 21fb3e49d3914..b9b17a3ab3be6 100644 --- a/GPU/GPUTracking/utils/linux_helpers.h +++ b/GPU/GPUTracking/utils/linux_helpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/makefile_opencl_compiler.cxx b/GPU/GPUTracking/utils/makefile_opencl_compiler.cxx index 58918fe988539..a94509cf94db0 100644 --- a/GPU/GPUTracking/utils/makefile_opencl_compiler.cxx +++ b/GPU/GPUTracking/utils/makefile_opencl_compiler.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/opencl_compiler_structs.h b/GPU/GPUTracking/utils/opencl_compiler_structs.h index 1bf1c2afb91a4..68e0a4f184480 100644 --- a/GPU/GPUTracking/utils/opencl_compiler_structs.h +++ b/GPU/GPUTracking/utils/opencl_compiler_structs.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/opencl_obtain_program.h b/GPU/GPUTracking/utils/opencl_obtain_program.h index 9dfa9b04bd2d5..3678bb3fe04f2 100644 --- a/GPU/GPUTracking/utils/opencl_obtain_program.h +++ b/GPU/GPUTracking/utils/opencl_obtain_program.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/pthread_mutex_win32_wrapper.h b/GPU/GPUTracking/utils/pthread_mutex_win32_wrapper.h index edb9856fefb2e..e61b1fd69d0cd 100644 --- a/GPU/GPUTracking/utils/pthread_mutex_win32_wrapper.h +++ b/GPU/GPUTracking/utils/pthread_mutex_win32_wrapper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/qconfig.cxx b/GPU/GPUTracking/utils/qconfig.cxx index 3447ecb10830c..f8a869ddb5987 100644 --- a/GPU/GPUTracking/utils/qconfig.cxx +++ b/GPU/GPUTracking/utils/qconfig.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/qconfig.h b/GPU/GPUTracking/utils/qconfig.h index 9a7264cd76004..3834b0ff7eba8 100644 --- a/GPU/GPUTracking/utils/qconfig.h +++ b/GPU/GPUTracking/utils/qconfig.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/qconfig_helpers.h b/GPU/GPUTracking/utils/qconfig_helpers.h index 590b042c95dba..5ca2c8a693f61 100644 --- a/GPU/GPUTracking/utils/qconfig_helpers.h +++ b/GPU/GPUTracking/utils/qconfig_helpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/qconfigrtc.h b/GPU/GPUTracking/utils/qconfigrtc.h index 6c988e63520d0..54114cb3846f7 100644 --- a/GPU/GPUTracking/utils/qconfigrtc.h +++ b/GPU/GPUTracking/utils/qconfigrtc.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/qmaths_helpers.h b/GPU/GPUTracking/utils/qmaths_helpers.h index e593f7fd777aa..9c5f704180aaa 100644 --- a/GPU/GPUTracking/utils/qmaths_helpers.h +++ b/GPU/GPUTracking/utils/qmaths_helpers.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/qsem.cxx b/GPU/GPUTracking/utils/qsem.cxx index 949b384f52f28..3109a6c2608f0 100644 --- a/GPU/GPUTracking/utils/qsem.cxx +++ b/GPU/GPUTracking/utils/qsem.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/qsem.h b/GPU/GPUTracking/utils/qsem.h index 75c5e52ccdb35..08d3bcfeaa50f 100644 --- a/GPU/GPUTracking/utils/qsem.h +++ b/GPU/GPUTracking/utils/qsem.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/strtag.h b/GPU/GPUTracking/utils/strtag.h index c9329963e884a..00a84fc680d33 100644 --- a/GPU/GPUTracking/utils/strtag.h +++ b/GPU/GPUTracking/utils/strtag.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/threadserver.cxx b/GPU/GPUTracking/utils/threadserver.cxx index 2791c1b979c59..cedd7af6fa428 100644 --- a/GPU/GPUTracking/utils/threadserver.cxx +++ b/GPU/GPUTracking/utils/threadserver.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/threadserver.h b/GPU/GPUTracking/utils/threadserver.h index 298e4425f31a3..0e3204993a484 100644 --- a/GPU/GPUTracking/utils/threadserver.h +++ b/GPU/GPUTracking/utils/threadserver.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/timer.cxx b/GPU/GPUTracking/utils/timer.cxx index 12c924cfd80fe..7f0330ba03287 100644 --- a/GPU/GPUTracking/utils/timer.cxx +++ b/GPU/GPUTracking/utils/timer.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/timer.h b/GPU/GPUTracking/utils/timer.h index fe9524393e660..f7738bf64e365 100644 --- a/GPU/GPUTracking/utils/timer.h +++ b/GPU/GPUTracking/utils/timer.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/GPUTracking/utils/vecpod.h b/GPU/GPUTracking/utils/vecpod.h index 1f49430c7d5f2..47ba4d1535d8e 100644 --- a/GPU/GPUTracking/utils/vecpod.h +++ b/GPU/GPUTracking/utils/vecpod.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/CMakeLists.txt b/GPU/TPCFastTransformation/CMakeLists.txt index 29c3bf06f0f08..0ff6d8f39640a 100644 --- a/GPU/TPCFastTransformation/CMakeLists.txt +++ b/GPU/TPCFastTransformation/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(MODULE TPCFastTransformation) diff --git a/GPU/TPCFastTransformation/ChebyshevFit1D.cxx b/GPU/TPCFastTransformation/ChebyshevFit1D.cxx index af4cfe779e9ec..eeeeb344800f9 100644 --- a/GPU/TPCFastTransformation/ChebyshevFit1D.cxx +++ b/GPU/TPCFastTransformation/ChebyshevFit1D.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/ChebyshevFit1D.h b/GPU/TPCFastTransformation/ChebyshevFit1D.h index 3b7ab15df9a61..ec2cfe0a4bc95 100644 --- a/GPU/TPCFastTransformation/ChebyshevFit1D.h +++ b/GPU/TPCFastTransformation/ChebyshevFit1D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline.cxx b/GPU/TPCFastTransformation/Spline.cxx index cdebd17ad68f1..01cb96bc28482 100644 --- a/GPU/TPCFastTransformation/Spline.cxx +++ b/GPU/TPCFastTransformation/Spline.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline.h b/GPU/TPCFastTransformation/Spline.h index ef06f560c76e9..b7c14b3c12cb9 100644 --- a/GPU/TPCFastTransformation/Spline.h +++ b/GPU/TPCFastTransformation/Spline.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline1D.cxx b/GPU/TPCFastTransformation/Spline1D.cxx index e5bf074ca410f..c1ef8a45346ef 100644 --- a/GPU/TPCFastTransformation/Spline1D.cxx +++ b/GPU/TPCFastTransformation/Spline1D.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline1D.h b/GPU/TPCFastTransformation/Spline1D.h index 772231386d112..eb0c06b63a0f2 100644 --- a/GPU/TPCFastTransformation/Spline1D.h +++ b/GPU/TPCFastTransformation/Spline1D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline1DHelper.cxx b/GPU/TPCFastTransformation/Spline1DHelper.cxx index 72840fa10a1ee..26e75584c6892 100644 --- a/GPU/TPCFastTransformation/Spline1DHelper.cxx +++ b/GPU/TPCFastTransformation/Spline1DHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline1DHelper.h b/GPU/TPCFastTransformation/Spline1DHelper.h index 07dcc8827597e..f980ebbbd2167 100644 --- a/GPU/TPCFastTransformation/Spline1DHelper.h +++ b/GPU/TPCFastTransformation/Spline1DHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline1DSpec.cxx b/GPU/TPCFastTransformation/Spline1DSpec.cxx index 002e9cd173940..9e995552d6122 100644 --- a/GPU/TPCFastTransformation/Spline1DSpec.cxx +++ b/GPU/TPCFastTransformation/Spline1DSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline1DSpec.h b/GPU/TPCFastTransformation/Spline1DSpec.h index 9b7a3357fd0e6..47e4806515651 100644 --- a/GPU/TPCFastTransformation/Spline1DSpec.h +++ b/GPU/TPCFastTransformation/Spline1DSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline2D.cxx b/GPU/TPCFastTransformation/Spline2D.cxx index 08f832b408a55..3055bcaccbbc1 100644 --- a/GPU/TPCFastTransformation/Spline2D.cxx +++ b/GPU/TPCFastTransformation/Spline2D.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline2D.h b/GPU/TPCFastTransformation/Spline2D.h index f4dfe34c7b2fc..2fb25bc29df54 100644 --- a/GPU/TPCFastTransformation/Spline2D.h +++ b/GPU/TPCFastTransformation/Spline2D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline2DHelper.cxx b/GPU/TPCFastTransformation/Spline2DHelper.cxx index 580db36949067..6145507a7eeb2 100644 --- a/GPU/TPCFastTransformation/Spline2DHelper.cxx +++ b/GPU/TPCFastTransformation/Spline2DHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline2DHelper.h b/GPU/TPCFastTransformation/Spline2DHelper.h index 76f11bf8cc709..d612dc36dce2a 100644 --- a/GPU/TPCFastTransformation/Spline2DHelper.h +++ b/GPU/TPCFastTransformation/Spline2DHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline2DSpec.cxx b/GPU/TPCFastTransformation/Spline2DSpec.cxx index 7e96f73e6b254..5671e6cb2c5ae 100644 --- a/GPU/TPCFastTransformation/Spline2DSpec.cxx +++ b/GPU/TPCFastTransformation/Spline2DSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/Spline2DSpec.h b/GPU/TPCFastTransformation/Spline2DSpec.h index 68c8518dc81b6..80881bb3c907e 100644 --- a/GPU/TPCFastTransformation/Spline2DSpec.h +++ b/GPU/TPCFastTransformation/Spline2DSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/SplineHelper.cxx b/GPU/TPCFastTransformation/SplineHelper.cxx index f499f80c07420..2398c781f6433 100644 --- a/GPU/TPCFastTransformation/SplineHelper.cxx +++ b/GPU/TPCFastTransformation/SplineHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/SplineHelper.h b/GPU/TPCFastTransformation/SplineHelper.h index 6eb0ade996359..9d93df5a153e0 100644 --- a/GPU/TPCFastTransformation/SplineHelper.h +++ b/GPU/TPCFastTransformation/SplineHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/SplineSpec.cxx b/GPU/TPCFastTransformation/SplineSpec.cxx index 35beb0d3c8417..85239788526b9 100644 --- a/GPU/TPCFastTransformation/SplineSpec.cxx +++ b/GPU/TPCFastTransformation/SplineSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/SplineSpec.h b/GPU/TPCFastTransformation/SplineSpec.h index 00f236940188b..b81e2ba4f5191 100644 --- a/GPU/TPCFastTransformation/SplineSpec.h +++ b/GPU/TPCFastTransformation/SplineSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/SplineUtil.h b/GPU/TPCFastTransformation/SplineUtil.h index 78c1c540d2715..c4c695c2b3636 100644 --- a/GPU/TPCFastTransformation/SplineUtil.h +++ b/GPU/TPCFastTransformation/SplineUtil.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/TPCFastSpaceChargeCorrection.cxx b/GPU/TPCFastTransformation/TPCFastSpaceChargeCorrection.cxx index aed967c972429..e806e3888d4c6 100644 --- a/GPU/TPCFastTransformation/TPCFastSpaceChargeCorrection.cxx +++ b/GPU/TPCFastTransformation/TPCFastSpaceChargeCorrection.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/TPCFastSpaceChargeCorrection.h b/GPU/TPCFastTransformation/TPCFastSpaceChargeCorrection.h index b78e5f233c703..351046a104009 100644 --- a/GPU/TPCFastTransformation/TPCFastSpaceChargeCorrection.h +++ b/GPU/TPCFastTransformation/TPCFastSpaceChargeCorrection.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/TPCFastTransform.cxx b/GPU/TPCFastTransformation/TPCFastTransform.cxx index 67466abe5b93f..58422a171c91c 100644 --- a/GPU/TPCFastTransformation/TPCFastTransform.cxx +++ b/GPU/TPCFastTransformation/TPCFastTransform.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/TPCFastTransform.h b/GPU/TPCFastTransformation/TPCFastTransform.h index 26df87075060e..536698cc2c579 100644 --- a/GPU/TPCFastTransformation/TPCFastTransform.h +++ b/GPU/TPCFastTransformation/TPCFastTransform.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/TPCFastTransformGeo.cxx b/GPU/TPCFastTransformation/TPCFastTransformGeo.cxx index d8fdf6b73aa0f..93cab6bd6e045 100644 --- a/GPU/TPCFastTransformation/TPCFastTransformGeo.cxx +++ b/GPU/TPCFastTransformation/TPCFastTransformGeo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/TPCFastTransformGeo.h b/GPU/TPCFastTransformation/TPCFastTransformGeo.h index c8676c61751b1..1eef097175cb2 100644 --- a/GPU/TPCFastTransformation/TPCFastTransformGeo.h +++ b/GPU/TPCFastTransformation/TPCFastTransformGeo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/TPCFastTransformManager.cxx b/GPU/TPCFastTransformation/TPCFastTransformManager.cxx index 4fbc08c2e8ba1..e5a858f1497f9 100644 --- a/GPU/TPCFastTransformation/TPCFastTransformManager.cxx +++ b/GPU/TPCFastTransformation/TPCFastTransformManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/TPCFastTransformManager.h b/GPU/TPCFastTransformation/TPCFastTransformManager.h index e3b4c5ac03297..e13ca67b9a05e 100644 --- a/GPU/TPCFastTransformation/TPCFastTransformManager.h +++ b/GPU/TPCFastTransformation/TPCFastTransformManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/TPCFastTransformQA.cxx b/GPU/TPCFastTransformation/TPCFastTransformQA.cxx index dd52015c19aaa..3616ff83e036d 100644 --- a/GPU/TPCFastTransformation/TPCFastTransformQA.cxx +++ b/GPU/TPCFastTransformation/TPCFastTransformQA.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/TPCFastTransformQA.h b/GPU/TPCFastTransformation/TPCFastTransformQA.h index a792c6ea22d48..d1938b8fa587e 100644 --- a/GPU/TPCFastTransformation/TPCFastTransformQA.h +++ b/GPU/TPCFastTransformation/TPCFastTransformQA.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/TPCFastTransformationLinkDef_AliRoot.h b/GPU/TPCFastTransformation/TPCFastTransformationLinkDef_AliRoot.h index d64a7fc0f8fd7..8fc2d6bfb88d7 100644 --- a/GPU/TPCFastTransformation/TPCFastTransformationLinkDef_AliRoot.h +++ b/GPU/TPCFastTransformation/TPCFastTransformationLinkDef_AliRoot.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/TPCFastTransformationLinkDef_O2.h b/GPU/TPCFastTransformation/TPCFastTransformationLinkDef_O2.h index 4db934adfbfad..c072a5201ad56 100644 --- a/GPU/TPCFastTransformation/TPCFastTransformationLinkDef_O2.h +++ b/GPU/TPCFastTransformation/TPCFastTransformationLinkDef_O2.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/alirootMacro/generateTPCDistortionNTupleAliRoot.C b/GPU/TPCFastTransformation/alirootMacro/generateTPCDistortionNTupleAliRoot.C index fead77bfb4e48..91bb546e7d57e 100644 --- a/GPU/TPCFastTransformation/alirootMacro/generateTPCDistortionNTupleAliRoot.C +++ b/GPU/TPCFastTransformation/alirootMacro/generateTPCDistortionNTupleAliRoot.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/IrregularSpline1D.cxx b/GPU/TPCFastTransformation/devtools/IrregularSpline1D.cxx index 7c4deefd01f3f..84156b53c8f78 100644 --- a/GPU/TPCFastTransformation/devtools/IrregularSpline1D.cxx +++ b/GPU/TPCFastTransformation/devtools/IrregularSpline1D.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/IrregularSpline1D.h b/GPU/TPCFastTransformation/devtools/IrregularSpline1D.h index 5b2c1e37872ba..9c1b30110238f 100644 --- a/GPU/TPCFastTransformation/devtools/IrregularSpline1D.h +++ b/GPU/TPCFastTransformation/devtools/IrregularSpline1D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/IrregularSpline2D3D.cxx b/GPU/TPCFastTransformation/devtools/IrregularSpline2D3D.cxx index af9162be207ce..d7d9530c7b41f 100644 --- a/GPU/TPCFastTransformation/devtools/IrregularSpline2D3D.cxx +++ b/GPU/TPCFastTransformation/devtools/IrregularSpline2D3D.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/IrregularSpline2D3D.h b/GPU/TPCFastTransformation/devtools/IrregularSpline2D3D.h index 7fc312bfc7bcd..9ecfec886753c 100644 --- a/GPU/TPCFastTransformation/devtools/IrregularSpline2D3D.h +++ b/GPU/TPCFastTransformation/devtools/IrregularSpline2D3D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DCalibrator.cxx b/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DCalibrator.cxx index a21b7119c95e1..9d7756a971d7f 100644 --- a/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DCalibrator.cxx +++ b/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DCalibrator.h b/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DCalibrator.h index ee63e719c63a4..5dfceceb2df99 100644 --- a/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DCalibrator.h +++ b/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DCalibratorTest.C b/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DCalibratorTest.C index 94d70dbc9ee41..a46c3522b9d86 100644 --- a/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DCalibratorTest.C +++ b/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DCalibratorTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DTest.C b/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DTest.C index c2e002bd4a7b2..04906797c1b7f 100644 --- a/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DTest.C +++ b/GPU/TPCFastTransformation/devtools/IrregularSpline2D3DTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/RegularSpline1D.h b/GPU/TPCFastTransformation/devtools/RegularSpline1D.h index 8d2fa51440b1d..10540b84bdabc 100644 --- a/GPU/TPCFastTransformation/devtools/RegularSpline1D.h +++ b/GPU/TPCFastTransformation/devtools/RegularSpline1D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/RegularSpline1DTest.C b/GPU/TPCFastTransformation/devtools/RegularSpline1DTest.C index ad772dba8086e..fb96b4e2f5dca 100644 --- a/GPU/TPCFastTransformation/devtools/RegularSpline1DTest.C +++ b/GPU/TPCFastTransformation/devtools/RegularSpline1DTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/SemiregularSpline2D3D.cxx b/GPU/TPCFastTransformation/devtools/SemiregularSpline2D3D.cxx index ff87f28b9bd26..5abd6c4beedaf 100644 --- a/GPU/TPCFastTransformation/devtools/SemiregularSpline2D3D.cxx +++ b/GPU/TPCFastTransformation/devtools/SemiregularSpline2D3D.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/SemiregularSpline2D3D.h b/GPU/TPCFastTransformation/devtools/SemiregularSpline2D3D.h index 309bdcf4cb569..f2e0f4b3fe80e 100644 --- a/GPU/TPCFastTransformation/devtools/SemiregularSpline2D3D.h +++ b/GPU/TPCFastTransformation/devtools/SemiregularSpline2D3D.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/devtools/SemiregularSpline2D3DTest.C b/GPU/TPCFastTransformation/devtools/SemiregularSpline2D3DTest.C index 423c9658746f7..a84198859bc15 100644 --- a/GPU/TPCFastTransformation/devtools/SemiregularSpline2D3DTest.C +++ b/GPU/TPCFastTransformation/devtools/SemiregularSpline2D3DTest.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/macro/generateTPCCorrectionNTuple.C b/GPU/TPCFastTransformation/macro/generateTPCCorrectionNTuple.C index d052e03efe2e7..1ffcf13440ebc 100644 --- a/GPU/TPCFastTransformation/macro/generateTPCCorrectionNTuple.C +++ b/GPU/TPCFastTransformation/macro/generateTPCCorrectionNTuple.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/TPCFastTransformation/test/testSplines.cxx b/GPU/TPCFastTransformation/test/testSplines.cxx index 306cfc1099542..ab15cd4594551 100644 --- a/GPU/TPCFastTransformation/test/testSplines.cxx +++ b/GPU/TPCFastTransformation/test/testSplines.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Utils/CMakeLists.txt b/GPU/Utils/CMakeLists.txt index 5ced4a9f92177..c90ddb929e689 100644 --- a/GPU/Utils/CMakeLists.txt +++ b/GPU/Utils/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(MODULE GPUUtils) diff --git a/GPU/Utils/FlatObject.h b/GPU/Utils/FlatObject.h index 8077fd18b6912..e16e08bd5b9a6 100644 --- a/GPU/Utils/FlatObject.h +++ b/GPU/Utils/FlatObject.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Utils/GPUCommonBitSet.h b/GPU/Utils/GPUCommonBitSet.h index aab94570c5357..11ac220935c9d 100644 --- a/GPU/Utils/GPUCommonBitSet.h +++ b/GPU/Utils/GPUCommonBitSet.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Utils/GPUUtilsLinkDef.h b/GPU/Utils/GPUUtilsLinkDef.h index 15a011907df05..ab235192ce4c5 100644 --- a/GPU/Utils/GPUUtilsLinkDef.h +++ b/GPU/Utils/GPUUtilsLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Workflow/CMakeLists.txt b/GPU/Workflow/CMakeLists.txt index 3d1941aa0a494..c1ab290d2acd1 100644 --- a/GPU/Workflow/CMakeLists.txt +++ b/GPU/Workflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(GPUWorkflow SOURCES src/GPUWorkflowSpec.cxx diff --git a/GPU/Workflow/helper/CMakeLists.txt b/GPU/Workflow/helper/CMakeLists.txt index 9ab191adb97e8..2902db7076fde 100644 --- a/GPU/Workflow/helper/CMakeLists.txt +++ b/GPU/Workflow/helper/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(GPUWorkflowHelper SOURCES src/GPUWorkflowHelper.cxx diff --git a/GPU/Workflow/helper/include/GPUWorkflowHelper/GPUWorkflowHelper.h b/GPU/Workflow/helper/include/GPUWorkflowHelper/GPUWorkflowHelper.h index 7e0cb87f03360..225b6f75b1511 100644 --- a/GPU/Workflow/helper/include/GPUWorkflowHelper/GPUWorkflowHelper.h +++ b/GPU/Workflow/helper/include/GPUWorkflowHelper/GPUWorkflowHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Workflow/helper/src/GPUWorkflowHelper.cxx b/GPU/Workflow/helper/src/GPUWorkflowHelper.cxx index 1e3ed7e9ad6a8..3298a2cc01b59 100644 --- a/GPU/Workflow/helper/src/GPUWorkflowHelper.cxx +++ b/GPU/Workflow/helper/src/GPUWorkflowHelper.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Workflow/include/GPUWorkflow/GPUWorkflowSpec.h b/GPU/Workflow/include/GPUWorkflow/GPUWorkflowSpec.h index 96805df659e6e..b116ed3cd5af2 100644 --- a/GPU/Workflow/include/GPUWorkflow/GPUWorkflowSpec.h +++ b/GPU/Workflow/include/GPUWorkflow/GPUWorkflowSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Workflow/include/GPUWorkflow/O2GPUDPLDisplay.h b/GPU/Workflow/include/GPUWorkflow/O2GPUDPLDisplay.h index b7fdfc163919b..763d7f2172cad 100644 --- a/GPU/Workflow/include/GPUWorkflow/O2GPUDPLDisplay.h +++ b/GPU/Workflow/include/GPUWorkflow/O2GPUDPLDisplay.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Workflow/src/GPUWorkflowSpec.cxx b/GPU/Workflow/src/GPUWorkflowSpec.cxx index 1f59c13904e85..582f5eb719107 100644 --- a/GPU/Workflow/src/GPUWorkflowSpec.cxx +++ b/GPU/Workflow/src/GPUWorkflowSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Workflow/src/O2GPUDPLDisplay.cxx b/GPU/Workflow/src/O2GPUDPLDisplay.cxx index b9c059bfaf3d9..efda6009f4cc3 100644 --- a/GPU/Workflow/src/O2GPUDPLDisplay.cxx +++ b/GPU/Workflow/src/O2GPUDPLDisplay.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/GPU/Workflow/src/gpu-reco-workflow.cxx b/GPU/Workflow/src/gpu-reco-workflow.cxx index 6cb3f1179327c..86ecbca8e1960 100644 --- a/GPU/Workflow/src/gpu-reco-workflow.cxx +++ b/GPU/Workflow/src/gpu-reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/CMakeLists.txt b/Generators/CMakeLists.txt index feef49fc33968..fe8868aaa9747 100644 --- a/Generators/CMakeLists.txt +++ b/Generators/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. if(pythia6_FOUND) set(pythia6Target ROOT::EGPythia6 MC::Pythia6) diff --git a/Generators/include/Generators/BoxGunParam.h b/Generators/include/Generators/BoxGunParam.h index 1967d53d90679..ad93ebf7d760c 100644 --- a/Generators/include/Generators/BoxGunParam.h +++ b/Generators/include/Generators/BoxGunParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/DecayerPythia8.h b/Generators/include/Generators/DecayerPythia8.h index fafdccf2f7cac..c158782bedceb 100644 --- a/Generators/include/Generators/DecayerPythia8.h +++ b/Generators/include/Generators/DecayerPythia8.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/DecayerPythia8Param.h b/Generators/include/Generators/DecayerPythia8Param.h index b3f2397af94d8..f33a3075abc52 100644 --- a/Generators/include/Generators/DecayerPythia8Param.h +++ b/Generators/include/Generators/DecayerPythia8Param.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/GenCosmicsParam.h b/Generators/include/Generators/GenCosmicsParam.h index 372bd9ec3b0a0..c462d6b9e927b 100644 --- a/Generators/include/Generators/GenCosmicsParam.h +++ b/Generators/include/Generators/GenCosmicsParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/Generator.h b/Generators/include/Generators/Generator.h index 3a4bae66f25b8..6f2fc8ea8502d 100644 --- a/Generators/include/Generators/Generator.h +++ b/Generators/include/Generators/Generator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/GeneratorExternalParam.h b/Generators/include/Generators/GeneratorExternalParam.h index 1fa2fa860cae1..e55d184af9dda 100644 --- a/Generators/include/Generators/GeneratorExternalParam.h +++ b/Generators/include/Generators/GeneratorExternalParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/GeneratorFactory.h b/Generators/include/Generators/GeneratorFactory.h index 35deca12cf312..9f4dfb5514582 100644 --- a/Generators/include/Generators/GeneratorFactory.h +++ b/Generators/include/Generators/GeneratorFactory.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/GeneratorFromFile.h b/Generators/include/Generators/GeneratorFromFile.h index 77933a8bfa234..61aeb5fb2c9d7 100644 --- a/Generators/include/Generators/GeneratorFromFile.h +++ b/Generators/include/Generators/GeneratorFromFile.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/GeneratorFromO2KineParam.h b/Generators/include/Generators/GeneratorFromO2KineParam.h index 4cdeb7d0ee9b4..56642ccdd52db 100644 --- a/Generators/include/Generators/GeneratorFromO2KineParam.h +++ b/Generators/include/Generators/GeneratorFromO2KineParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/GeneratorHepMC.h b/Generators/include/Generators/GeneratorHepMC.h index f479111bc9f67..b3f329d2465ba 100644 --- a/Generators/include/Generators/GeneratorHepMC.h +++ b/Generators/include/Generators/GeneratorHepMC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/GeneratorHepMCParam.h b/Generators/include/Generators/GeneratorHepMCParam.h index 0c2826a687c85..6ef5fd97c854a 100644 --- a/Generators/include/Generators/GeneratorHepMCParam.h +++ b/Generators/include/Generators/GeneratorHepMCParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/GeneratorPythia6.h b/Generators/include/Generators/GeneratorPythia6.h index 32db581656034..335c3ad5944ca 100644 --- a/Generators/include/Generators/GeneratorPythia6.h +++ b/Generators/include/Generators/GeneratorPythia6.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/GeneratorPythia6Param.h b/Generators/include/Generators/GeneratorPythia6Param.h index 8551caf334520..f2375bb2ae194 100644 --- a/Generators/include/Generators/GeneratorPythia6Param.h +++ b/Generators/include/Generators/GeneratorPythia6Param.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/GeneratorPythia8.h b/Generators/include/Generators/GeneratorPythia8.h index 1369d531cc129..f54c2f439b47a 100644 --- a/Generators/include/Generators/GeneratorPythia8.h +++ b/Generators/include/Generators/GeneratorPythia8.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/GeneratorPythia8Param.h b/Generators/include/Generators/GeneratorPythia8Param.h index e9133da76e6f0..a09ec839c320d 100644 --- a/Generators/include/Generators/GeneratorPythia8Param.h +++ b/Generators/include/Generators/GeneratorPythia8Param.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/GeneratorTGenerator.h b/Generators/include/Generators/GeneratorTGenerator.h index 54e257aede20e..6a5298161de0c 100644 --- a/Generators/include/Generators/GeneratorTGenerator.h +++ b/Generators/include/Generators/GeneratorTGenerator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/InteractionDiamondParam.h b/Generators/include/Generators/InteractionDiamondParam.h index 787117ffd272e..1a8f0504dd984 100644 --- a/Generators/include/Generators/InteractionDiamondParam.h +++ b/Generators/include/Generators/InteractionDiamondParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/PDG.h b/Generators/include/Generators/PDG.h index 5f51b335280c6..b98bf56dd75bf 100644 --- a/Generators/include/Generators/PDG.h +++ b/Generators/include/Generators/PDG.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/PrimaryGenerator.h b/Generators/include/Generators/PrimaryGenerator.h index 9c576118fcbca..ba2f7815a2fa1 100644 --- a/Generators/include/Generators/PrimaryGenerator.h +++ b/Generators/include/Generators/PrimaryGenerator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/QEDGenParam.h b/Generators/include/Generators/QEDGenParam.h index 2e7347c3790bf..1c78b14cfc516 100644 --- a/Generators/include/Generators/QEDGenParam.h +++ b/Generators/include/Generators/QEDGenParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/Trigger.h b/Generators/include/Generators/Trigger.h index 57f8f3494c28b..cb17c40de7b94 100644 --- a/Generators/include/Generators/Trigger.h +++ b/Generators/include/Generators/Trigger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/TriggerExternalParam.h b/Generators/include/Generators/TriggerExternalParam.h index 2360ca16f36c7..a47348894c2e2 100644 --- a/Generators/include/Generators/TriggerExternalParam.h +++ b/Generators/include/Generators/TriggerExternalParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/TriggerParticle.h b/Generators/include/Generators/TriggerParticle.h index bab2b8d62b9b6..770a43b090967 100644 --- a/Generators/include/Generators/TriggerParticle.h +++ b/Generators/include/Generators/TriggerParticle.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/include/Generators/TriggerParticleParam.h b/Generators/include/Generators/TriggerParticleParam.h index 74d54167cb2f2..4f05bb3f5a05c 100644 --- a/Generators/include/Generators/TriggerParticleParam.h +++ b/Generators/include/Generators/TriggerParticleParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/share/external/GenCosmics.C b/Generators/share/external/GenCosmics.C index 417ce670e78f1..6b56237a8e1a4 100644 --- a/Generators/share/external/GenCosmics.C +++ b/Generators/share/external/GenCosmics.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/share/external/GenCosmicsLoader.C b/Generators/share/external/GenCosmicsLoader.C index 7242a7e2cb9c1..e8537be0ce66e 100644 --- a/Generators/share/external/GenCosmicsLoader.C +++ b/Generators/share/external/GenCosmicsLoader.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/share/external/QEDLoader.C b/Generators/share/external/QEDLoader.C index 2426233316707..c17b5165aa3b1 100644 --- a/Generators/share/external/QEDLoader.C +++ b/Generators/share/external/QEDLoader.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/share/external/QEDepem.C b/Generators/share/external/QEDepem.C index 4ed3cdcc444c9..2716c8e3d8081 100644 --- a/Generators/share/external/QEDepem.C +++ b/Generators/share/external/QEDepem.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/BoxGunParam.cxx b/Generators/src/BoxGunParam.cxx index b3016e80ffaf3..74f18d3547a1c 100644 --- a/Generators/src/BoxGunParam.cxx +++ b/Generators/src/BoxGunParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/DecayerPythia8.cxx b/Generators/src/DecayerPythia8.cxx index 77c4c04cff7b7..3101225053e4e 100644 --- a/Generators/src/DecayerPythia8.cxx +++ b/Generators/src/DecayerPythia8.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/DecayerPythia8Param.cxx b/Generators/src/DecayerPythia8Param.cxx index 2fb28af117127..0c9195c38c41b 100644 --- a/Generators/src/DecayerPythia8Param.cxx +++ b/Generators/src/DecayerPythia8Param.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GenCosmicsParam.cxx b/Generators/src/GenCosmicsParam.cxx index 6d23cdf0747fa..aaca942b6da36 100644 --- a/Generators/src/GenCosmicsParam.cxx +++ b/Generators/src/GenCosmicsParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/Generator.cxx b/Generators/src/Generator.cxx index f0a4838289243..6ce82deda0ad6 100644 --- a/Generators/src/Generator.cxx +++ b/Generators/src/Generator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GeneratorExternalParam.cxx b/Generators/src/GeneratorExternalParam.cxx index dbed9392540a4..d3d987295d05e 100644 --- a/Generators/src/GeneratorExternalParam.cxx +++ b/Generators/src/GeneratorExternalParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GeneratorFactory.cxx b/Generators/src/GeneratorFactory.cxx index cfa6e43b2168c..60871525bd430 100644 --- a/Generators/src/GeneratorFactory.cxx +++ b/Generators/src/GeneratorFactory.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GeneratorFromFile.cxx b/Generators/src/GeneratorFromFile.cxx index d00b6cb54f6e5..29e793f14ca54 100644 --- a/Generators/src/GeneratorFromFile.cxx +++ b/Generators/src/GeneratorFromFile.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GeneratorFromO2KineParam.cxx b/Generators/src/GeneratorFromO2KineParam.cxx index 1e52404e65ab2..7550893da8e70 100644 --- a/Generators/src/GeneratorFromO2KineParam.cxx +++ b/Generators/src/GeneratorFromO2KineParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GeneratorHepMC.cxx b/Generators/src/GeneratorHepMC.cxx index ac0b76c4e666c..0a67b8e936401 100644 --- a/Generators/src/GeneratorHepMC.cxx +++ b/Generators/src/GeneratorHepMC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GeneratorHepMCParam.cxx b/Generators/src/GeneratorHepMCParam.cxx index cf838412e3bc5..79f31ac5fbbb8 100644 --- a/Generators/src/GeneratorHepMCParam.cxx +++ b/Generators/src/GeneratorHepMCParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GeneratorPythia6.cxx b/Generators/src/GeneratorPythia6.cxx index 470d1ecb89e5b..eb9305cf87811 100644 --- a/Generators/src/GeneratorPythia6.cxx +++ b/Generators/src/GeneratorPythia6.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GeneratorPythia6Param.cxx b/Generators/src/GeneratorPythia6Param.cxx index 295a84f37abe7..52dd91d86f1da 100644 --- a/Generators/src/GeneratorPythia6Param.cxx +++ b/Generators/src/GeneratorPythia6Param.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GeneratorPythia8.cxx b/Generators/src/GeneratorPythia8.cxx index 54a4a4e6fd0d8..4329957c4ab8a 100644 --- a/Generators/src/GeneratorPythia8.cxx +++ b/Generators/src/GeneratorPythia8.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GeneratorPythia8Param.cxx b/Generators/src/GeneratorPythia8Param.cxx index d109167435620..984680e46ad01 100644 --- a/Generators/src/GeneratorPythia8Param.cxx +++ b/Generators/src/GeneratorPythia8Param.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GeneratorTGenerator.cxx b/Generators/src/GeneratorTGenerator.cxx index 17b686e65a0ff..bbe6e131f9111 100644 --- a/Generators/src/GeneratorTGenerator.cxx +++ b/Generators/src/GeneratorTGenerator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/GeneratorsLinkDef.h b/Generators/src/GeneratorsLinkDef.h index 89e4b7eeb74f5..8ef8ab3735ee7 100644 --- a/Generators/src/GeneratorsLinkDef.h +++ b/Generators/src/GeneratorsLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/InteractionDiamondParam.cxx b/Generators/src/InteractionDiamondParam.cxx index d83f4bc0a0fa4..36f5ae1a4cecf 100644 --- a/Generators/src/InteractionDiamondParam.cxx +++ b/Generators/src/InteractionDiamondParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/PDG.cxx b/Generators/src/PDG.cxx index 139ee12d2b685..1a5b972b33bdb 100644 --- a/Generators/src/PDG.cxx +++ b/Generators/src/PDG.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/PrimaryGenerator.cxx b/Generators/src/PrimaryGenerator.cxx index 69f0e6cb6b715..d8aaea0a93754 100644 --- a/Generators/src/PrimaryGenerator.cxx +++ b/Generators/src/PrimaryGenerator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/QEDGenParam.cxx b/Generators/src/QEDGenParam.cxx index 7bbef98746697..29a657283d7ce 100644 --- a/Generators/src/QEDGenParam.cxx +++ b/Generators/src/QEDGenParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/Trigger.cxx b/Generators/src/Trigger.cxx index cfb49e1aaa33a..5e00c48bb53dc 100644 --- a/Generators/src/Trigger.cxx +++ b/Generators/src/Trigger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/TriggerExternalParam.cxx b/Generators/src/TriggerExternalParam.cxx index 0c164bbe06c1d..36593d01f3452 100644 --- a/Generators/src/TriggerExternalParam.cxx +++ b/Generators/src/TriggerExternalParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/TriggerParticle.cxx b/Generators/src/TriggerParticle.cxx index dca26f5874a80..a34cad7fe6ddb 100644 --- a/Generators/src/TriggerParticle.cxx +++ b/Generators/src/TriggerParticle.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Generators/src/TriggerParticleParam.cxx b/Generators/src/TriggerParticleParam.cxx index 1a1e9e8f9d82f..f9a257e215e70 100644 --- a/Generators/src/TriggerParticleParam.cxx +++ b/Generators/src/TriggerParticleParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/CMakeLists.txt b/Steer/CMakeLists.txt index 6adb9c0b78548..7cf99620ce8df 100644 --- a/Steer/CMakeLists.txt +++ b/Steer/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(Steer SOURCES src/O2MCApplication.cxx src/InteractionSampler.cxx diff --git a/Steer/DigitizerWorkflow/CMakeLists.txt b/Steer/DigitizerWorkflow/CMakeLists.txt index 464983f57dc7d..5667719d2836a 100644 --- a/Steer/DigitizerWorkflow/CMakeLists.txt +++ b/Steer/DigitizerWorkflow/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. if (ENABLE_UPGRADES) o2_add_executable(digitizer-workflow diff --git a/Steer/DigitizerWorkflow/src/CPVDigitWriterSpec.h b/Steer/DigitizerWorkflow/src/CPVDigitWriterSpec.h index be380fddba8b9..396b033f31f4a 100644 --- a/Steer/DigitizerWorkflow/src/CPVDigitWriterSpec.h +++ b/Steer/DigitizerWorkflow/src/CPVDigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/CPVDigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/CPVDigitizerSpec.cxx index a51ebd02edddb..14462cbbd4e57 100644 --- a/Steer/DigitizerWorkflow/src/CPVDigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/CPVDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/CPVDigitizerSpec.h b/Steer/DigitizerWorkflow/src/CPVDigitizerSpec.h index 226cbb160b169..26ed4def6f854 100644 --- a/Steer/DigitizerWorkflow/src/CPVDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/CPVDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/CTPDigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/CTPDigitizerSpec.cxx index a71fe34a7964b..6e5c472ffff4e 100644 --- a/Steer/DigitizerWorkflow/src/CTPDigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/CTPDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/CTPDigitizerSpec.h b/Steer/DigitizerWorkflow/src/CTPDigitizerSpec.h index ec54535616264..b5cd46f27ad64 100644 --- a/Steer/DigitizerWorkflow/src/CTPDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/CTPDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.cxx b/Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.cxx index 1bdcd1d8da4f0..640e346529090 100644 --- a/Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.cxx +++ b/Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.h b/Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.h index 29b2a9e2f5b4e..e3c01e2208025 100644 --- a/Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.h +++ b/Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.cxx index b0f4517883aca..bda8705d1e95d 100644 --- a/Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.h b/Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.h index 453ebe9d4ff17..2a3d53754510b 100644 --- a/Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/FDDDigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/FDDDigitizerSpec.cxx index 52f9f972103eb..dcad22132e989 100644 --- a/Steer/DigitizerWorkflow/src/FDDDigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/FDDDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/FDDDigitizerSpec.h b/Steer/DigitizerWorkflow/src/FDDDigitizerSpec.h index bbb1389434b9a..2c95a942b8ba4 100644 --- a/Steer/DigitizerWorkflow/src/FDDDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/FDDDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/FT0DigitWriterSpec.h b/Steer/DigitizerWorkflow/src/FT0DigitWriterSpec.h index 35fd476eccfbf..5436356db190a 100644 --- a/Steer/DigitizerWorkflow/src/FT0DigitWriterSpec.h +++ b/Steer/DigitizerWorkflow/src/FT0DigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/FT0DigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/FT0DigitizerSpec.cxx index 7f98ba70ccfc3..1a8ec7df159e3 100644 --- a/Steer/DigitizerWorkflow/src/FT0DigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/FT0DigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/FT0DigitizerSpec.h b/Steer/DigitizerWorkflow/src/FT0DigitizerSpec.h index f335afc772e0e..5cafe96ed609f 100644 --- a/Steer/DigitizerWorkflow/src/FT0DigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/FT0DigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/FV0DigitWriterSpec.h b/Steer/DigitizerWorkflow/src/FV0DigitWriterSpec.h index 460392b544980..d79f6a150e8f3 100644 --- a/Steer/DigitizerWorkflow/src/FV0DigitWriterSpec.h +++ b/Steer/DigitizerWorkflow/src/FV0DigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/FV0DigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/FV0DigitizerSpec.cxx index c009774cc7eed..e887c0d8d0bb4 100644 --- a/Steer/DigitizerWorkflow/src/FV0DigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/FV0DigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/FV0DigitizerSpec.h b/Steer/DigitizerWorkflow/src/FV0DigitizerSpec.h index f5048b4a3f89d..2d5d2d440b07a 100644 --- a/Steer/DigitizerWorkflow/src/FV0DigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/FV0DigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/GRPUpdaterSpec.cxx b/Steer/DigitizerWorkflow/src/GRPUpdaterSpec.cxx index 32963984d75b1..b61d46fc08c53 100644 --- a/Steer/DigitizerWorkflow/src/GRPUpdaterSpec.cxx +++ b/Steer/DigitizerWorkflow/src/GRPUpdaterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/GRPUpdaterSpec.h b/Steer/DigitizerWorkflow/src/GRPUpdaterSpec.h index a0cad08e906cf..719ca5fb47f22 100644 --- a/Steer/DigitizerWorkflow/src/GRPUpdaterSpec.h +++ b/Steer/DigitizerWorkflow/src/GRPUpdaterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/HMPIDDigitWriterSpec.h b/Steer/DigitizerWorkflow/src/HMPIDDigitWriterSpec.h index 058dc3e1f6759..38fc86285ea9c 100644 --- a/Steer/DigitizerWorkflow/src/HMPIDDigitWriterSpec.h +++ b/Steer/DigitizerWorkflow/src/HMPIDDigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/HMPIDDigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/HMPIDDigitizerSpec.cxx index f28d1033a89be..1b7d0d40f55a7 100644 --- a/Steer/DigitizerWorkflow/src/HMPIDDigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/HMPIDDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/HMPIDDigitizerSpec.h b/Steer/DigitizerWorkflow/src/HMPIDDigitizerSpec.h index fd826f67f4397..c5992a26c5ff1 100644 --- a/Steer/DigitizerWorkflow/src/HMPIDDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/HMPIDDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/ITS3DigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/ITS3DigitizerSpec.cxx index c1832c172a57e..d4c63da6e1b43 100644 --- a/Steer/DigitizerWorkflow/src/ITS3DigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/ITS3DigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/ITS3DigitizerSpec.h b/Steer/DigitizerWorkflow/src/ITS3DigitizerSpec.h index 60b07261d05c9..d5ffb5b686d3e 100644 --- a/Steer/DigitizerWorkflow/src/ITS3DigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/ITS3DigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/ITSMFTDigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/ITSMFTDigitizerSpec.cxx index 03c5af766a837..625a24f34287f 100644 --- a/Steer/DigitizerWorkflow/src/ITSMFTDigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/ITSMFTDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/ITSMFTDigitizerSpec.h b/Steer/DigitizerWorkflow/src/ITSMFTDigitizerSpec.h index e041129426713..55fd88b1e1f80 100644 --- a/Steer/DigitizerWorkflow/src/ITSMFTDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/ITSMFTDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/MCHDigitWriterSpec.h b/Steer/DigitizerWorkflow/src/MCHDigitWriterSpec.h index 8bfde609499ce..7d4f41efa4406 100644 --- a/Steer/DigitizerWorkflow/src/MCHDigitWriterSpec.h +++ b/Steer/DigitizerWorkflow/src/MCHDigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/MCHDigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/MCHDigitizerSpec.cxx index 392dd4e1c026d..8674a4f66bce3 100644 --- a/Steer/DigitizerWorkflow/src/MCHDigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/MCHDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/MCHDigitizerSpec.h b/Steer/DigitizerWorkflow/src/MCHDigitizerSpec.h index 4d1d552e1aff4..da45073f43ec6 100644 --- a/Steer/DigitizerWorkflow/src/MCHDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/MCHDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/MCTruthReaderSpec.h b/Steer/DigitizerWorkflow/src/MCTruthReaderSpec.h index eb507f4d4afe1..badb38ad97b59 100644 --- a/Steer/DigitizerWorkflow/src/MCTruthReaderSpec.h +++ b/Steer/DigitizerWorkflow/src/MCTruthReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/MCTruthSourceSpec.cxx b/Steer/DigitizerWorkflow/src/MCTruthSourceSpec.cxx index c80ae833cb31b..e4960b7dae6bc 100644 --- a/Steer/DigitizerWorkflow/src/MCTruthSourceSpec.cxx +++ b/Steer/DigitizerWorkflow/src/MCTruthSourceSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/MCTruthSourceSpec.h b/Steer/DigitizerWorkflow/src/MCTruthSourceSpec.h index e9a23c36c260e..af7b6b21a0126 100644 --- a/Steer/DigitizerWorkflow/src/MCTruthSourceSpec.h +++ b/Steer/DigitizerWorkflow/src/MCTruthSourceSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/MCTruthTestWorkflow.cxx b/Steer/DigitizerWorkflow/src/MCTruthTestWorkflow.cxx index 4f91872726a8a..253167f6b78e7 100644 --- a/Steer/DigitizerWorkflow/src/MCTruthTestWorkflow.cxx +++ b/Steer/DigitizerWorkflow/src/MCTruthTestWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/MCTruthWriterSpec.cxx b/Steer/DigitizerWorkflow/src/MCTruthWriterSpec.cxx index b35db1ad01954..edbbf2f2fdd7f 100644 --- a/Steer/DigitizerWorkflow/src/MCTruthWriterSpec.cxx +++ b/Steer/DigitizerWorkflow/src/MCTruthWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/MCTruthWriterSpec.h b/Steer/DigitizerWorkflow/src/MCTruthWriterSpec.h index 436077f1b0386..51afe5388fee6 100644 --- a/Steer/DigitizerWorkflow/src/MCTruthWriterSpec.h +++ b/Steer/DigitizerWorkflow/src/MCTruthWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/MIDDigitWriterSpec.h b/Steer/DigitizerWorkflow/src/MIDDigitWriterSpec.h index 203414cdb4c96..9ee223f13aa8d 100644 --- a/Steer/DigitizerWorkflow/src/MIDDigitWriterSpec.h +++ b/Steer/DigitizerWorkflow/src/MIDDigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/MIDDigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/MIDDigitizerSpec.cxx index 62a0cb03e92fa..eebab21d59fad 100644 --- a/Steer/DigitizerWorkflow/src/MIDDigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/MIDDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/MIDDigitizerSpec.h b/Steer/DigitizerWorkflow/src/MIDDigitizerSpec.h index 7e3cadba53f37..41b3148fd1a2a 100644 --- a/Steer/DigitizerWorkflow/src/MIDDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/MIDDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/PHOSDigitWriterSpec.h b/Steer/DigitizerWorkflow/src/PHOSDigitWriterSpec.h index d621f6f2d23ef..5352acbcfd370 100644 --- a/Steer/DigitizerWorkflow/src/PHOSDigitWriterSpec.h +++ b/Steer/DigitizerWorkflow/src/PHOSDigitWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/PHOSDigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/PHOSDigitizerSpec.cxx index e45cf87bf5b56..00543d52b28ce 100644 --- a/Steer/DigitizerWorkflow/src/PHOSDigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/PHOSDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/PHOSDigitizerSpec.h b/Steer/DigitizerWorkflow/src/PHOSDigitizerSpec.h index feaeff5ffd08d..0d99311d58ac4 100644 --- a/Steer/DigitizerWorkflow/src/PHOSDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/PHOSDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/SimReaderSpec.cxx b/Steer/DigitizerWorkflow/src/SimReaderSpec.cxx index 81029e0a24e66..dfa82b8a3b8b2 100644 --- a/Steer/DigitizerWorkflow/src/SimReaderSpec.cxx +++ b/Steer/DigitizerWorkflow/src/SimReaderSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/SimReaderSpec.h b/Steer/DigitizerWorkflow/src/SimReaderSpec.h index 3cb17ff468e4c..b16cc1fc485e8 100644 --- a/Steer/DigitizerWorkflow/src/SimReaderSpec.h +++ b/Steer/DigitizerWorkflow/src/SimReaderSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/SimpleDigitizerWorkflow.cxx b/Steer/DigitizerWorkflow/src/SimpleDigitizerWorkflow.cxx index 28c147a64b261..9016d80c34f7b 100644 --- a/Steer/DigitizerWorkflow/src/SimpleDigitizerWorkflow.cxx +++ b/Steer/DigitizerWorkflow/src/SimpleDigitizerWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/TOFDigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/TOFDigitizerSpec.cxx index 743dd00bdf9f5..2cc344fd9cab7 100644 --- a/Steer/DigitizerWorkflow/src/TOFDigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/TOFDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/TOFDigitizerSpec.h b/Steer/DigitizerWorkflow/src/TOFDigitizerSpec.h index 325f307a1dd53..df7dc030effde 100644 --- a/Steer/DigitizerWorkflow/src/TOFDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/TOFDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/TPCDigitRootWriterSpec.cxx b/Steer/DigitizerWorkflow/src/TPCDigitRootWriterSpec.cxx index ac1fbb4ee88a4..faa5568c736cb 100644 --- a/Steer/DigitizerWorkflow/src/TPCDigitRootWriterSpec.cxx +++ b/Steer/DigitizerWorkflow/src/TPCDigitRootWriterSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/TPCDigitRootWriterSpec.h b/Steer/DigitizerWorkflow/src/TPCDigitRootWriterSpec.h index 52562f7644c55..bd6a2f577ee51 100644 --- a/Steer/DigitizerWorkflow/src/TPCDigitRootWriterSpec.h +++ b/Steer/DigitizerWorkflow/src/TPCDigitRootWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/TPCDigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/TPCDigitizerSpec.cxx index dcb308bc84e4f..0ea89de02a82c 100644 --- a/Steer/DigitizerWorkflow/src/TPCDigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/TPCDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/TPCDigitizerSpec.h b/Steer/DigitizerWorkflow/src/TPCDigitizerSpec.h index 2a94c4ce1869c..08a28b2f7647a 100644 --- a/Steer/DigitizerWorkflow/src/TPCDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/TPCDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/ZDCDigitizerSpec.cxx b/Steer/DigitizerWorkflow/src/ZDCDigitizerSpec.cxx index acf8c6847dda0..eb98e4f64c174 100644 --- a/Steer/DigitizerWorkflow/src/ZDCDigitizerSpec.cxx +++ b/Steer/DigitizerWorkflow/src/ZDCDigitizerSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/DigitizerWorkflow/src/ZDCDigitizerSpec.h b/Steer/DigitizerWorkflow/src/ZDCDigitizerSpec.h index 25d6b8b0c5e87..9b57a8e35a7d6 100644 --- a/Steer/DigitizerWorkflow/src/ZDCDigitizerSpec.h +++ b/Steer/DigitizerWorkflow/src/ZDCDigitizerSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/include/Steer/HitProcessingManager.h b/Steer/include/Steer/HitProcessingManager.h index 9f85bb77e52e4..74c5b992b5139 100644 --- a/Steer/include/Steer/HitProcessingManager.h +++ b/Steer/include/Steer/HitProcessingManager.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/include/Steer/InteractionSampler.h b/Steer/include/Steer/InteractionSampler.h index 7378534b06828..7593393937793 100644 --- a/Steer/include/Steer/InteractionSampler.h +++ b/Steer/include/Steer/InteractionSampler.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/include/Steer/MCKinematicsReader.h b/Steer/include/Steer/MCKinematicsReader.h index 0f604884fa48a..92d1ede5b0404 100644 --- a/Steer/include/Steer/MCKinematicsReader.h +++ b/Steer/include/Steer/MCKinematicsReader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/include/Steer/O2MCApplication.h b/Steer/include/Steer/O2MCApplication.h index 445a410bb57ad..62e691f2813f5 100644 --- a/Steer/include/Steer/O2MCApplication.h +++ b/Steer/include/Steer/O2MCApplication.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/include/Steer/O2MCApplicationBase.h b/Steer/include/Steer/O2MCApplicationBase.h index d95a66615c1ef..6d84c3acbaf4c 100644 --- a/Steer/include/Steer/O2MCApplicationBase.h +++ b/Steer/include/Steer/O2MCApplicationBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/include/Steer/O2RunSim.h b/Steer/include/Steer/O2RunSim.h index 90ea8df528542..27f175b8fb0d9 100644 --- a/Steer/include/Steer/O2RunSim.h +++ b/Steer/include/Steer/O2RunSim.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/src/HitProcessingManager.cxx b/Steer/src/HitProcessingManager.cxx index 27e86523162d5..63076062bb0b7 100644 --- a/Steer/src/HitProcessingManager.cxx +++ b/Steer/src/HitProcessingManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/src/InteractionSampler.cxx b/Steer/src/InteractionSampler.cxx index b59cca5c1804d..d099053f0430b 100644 --- a/Steer/src/InteractionSampler.cxx +++ b/Steer/src/InteractionSampler.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/src/MCKinematicsReader.cxx b/Steer/src/MCKinematicsReader.cxx index e5979e47987e6..4b1edafefc986 100644 --- a/Steer/src/MCKinematicsReader.cxx +++ b/Steer/src/MCKinematicsReader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/src/O2MCApplication.cxx b/Steer/src/O2MCApplication.cxx index 39ef8ec1b0a3c..bf7b3a8fd69e1 100644 --- a/Steer/src/O2MCApplication.cxx +++ b/Steer/src/O2MCApplication.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/src/SteerLinkDef.h b/Steer/src/SteerLinkDef.h index 66a1bde07eca6..f0b62cd482249 100644 --- a/Steer/src/SteerLinkDef.h +++ b/Steer/src/SteerLinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/test/testHitProcessingManager.cxx b/Steer/test/testHitProcessingManager.cxx index 97de4051095f2..8450e8ddd4f74 100644 --- a/Steer/test/testHitProcessingManager.cxx +++ b/Steer/test/testHitProcessingManager.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Steer/test/testInteractionSampler.cxx b/Steer/test/testInteractionSampler.cxx index 452c932a47c53..c76d9560c367d 100644 --- a/Steer/test/testInteractionSampler.cxx +++ b/Steer/test/testInteractionSampler.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/CMakeLists.txt b/Utilities/CMakeLists.txt index 554b25e2ebbe3..20a124fa58119 100644 --- a/Utilities/CMakeLists.txt +++ b/Utilities/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(DataSampling) add_subdirectory(DataCompression) diff --git a/Utilities/DataCompression/CMakeLists.txt b/Utilities/DataCompression/CMakeLists.txt index 776bc067f4f5f..268fa6a8ae576 100644 --- a/Utilities/DataCompression/CMakeLists.txt +++ b/Utilities/DataCompression/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_test(dc_primitives SOURCES test/test_dc_primitives.cxx diff --git a/Utilities/DataCompression/include/DataCompression/CodingModelDispatcher.h b/Utilities/DataCompression/include/DataCompression/CodingModelDispatcher.h index 0d54e019a9a94..68fcc8360df2b 100644 --- a/Utilities/DataCompression/include/DataCompression/CodingModelDispatcher.h +++ b/Utilities/DataCompression/include/DataCompression/CodingModelDispatcher.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/include/DataCompression/DataDeflater.h b/Utilities/DataCompression/include/DataCompression/DataDeflater.h index 71ec5492b90b7..25c7dad81dcea 100644 --- a/Utilities/DataCompression/include/DataCompression/DataDeflater.h +++ b/Utilities/DataCompression/include/DataCompression/DataDeflater.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/include/DataCompression/HuffmanCodec.h b/Utilities/DataCompression/include/DataCompression/HuffmanCodec.h index 5b6cda6bac249..6cfbccf099ca8 100644 --- a/Utilities/DataCompression/include/DataCompression/HuffmanCodec.h +++ b/Utilities/DataCompression/include/DataCompression/HuffmanCodec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/include/DataCompression/TruncatedPrecisionConverter.h b/Utilities/DataCompression/include/DataCompression/TruncatedPrecisionConverter.h index 11c0498ddee4a..dbf82781f6257 100644 --- a/Utilities/DataCompression/include/DataCompression/TruncatedPrecisionConverter.h +++ b/Utilities/DataCompression/include/DataCompression/TruncatedPrecisionConverter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/include/DataCompression/dc_primitives.h b/Utilities/DataCompression/include/DataCompression/dc_primitives.h index 8bb379d302bef..5b054caa82a93 100644 --- a/Utilities/DataCompression/include/DataCompression/dc_primitives.h +++ b/Utilities/DataCompression/include/DataCompression/dc_primitives.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/include/DataCompression/runtime_container.h b/Utilities/DataCompression/include/DataCompression/runtime_container.h index 32cf5e9bed173..363f4220e73f6 100644 --- a/Utilities/DataCompression/include/DataCompression/runtime_container.h +++ b/Utilities/DataCompression/include/DataCompression/runtime_container.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/test/DataGenerator.h b/Utilities/DataCompression/test/DataGenerator.h index eea927312d54a..ec3983384a5e5 100644 --- a/Utilities/DataCompression/test/DataGenerator.h +++ b/Utilities/DataCompression/test/DataGenerator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/test/Fifo.h b/Utilities/DataCompression/test/Fifo.h index 56717729dc2ff..2c7a8a9939f64 100644 --- a/Utilities/DataCompression/test/Fifo.h +++ b/Utilities/DataCompression/test/Fifo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/test/test_DataDeflater.cxx b/Utilities/DataCompression/test/test_DataDeflater.cxx index e42aa89dab38d..9762544a4bcbc 100644 --- a/Utilities/DataCompression/test/test_DataDeflater.cxx +++ b/Utilities/DataCompression/test/test_DataDeflater.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/test/test_DataGenerator.cxx b/Utilities/DataCompression/test/test_DataGenerator.cxx index de0fa72b22888..b7b830d4e150f 100644 --- a/Utilities/DataCompression/test/test_DataGenerator.cxx +++ b/Utilities/DataCompression/test/test_DataGenerator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/test/test_Fifo.cxx b/Utilities/DataCompression/test/test_Fifo.cxx index 9a579fb6665df..828f8724e36a6 100644 --- a/Utilities/DataCompression/test/test_Fifo.cxx +++ b/Utilities/DataCompression/test/test_Fifo.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/test/test_HuffmanCodec.cxx b/Utilities/DataCompression/test/test_HuffmanCodec.cxx index a31b43e4bcc67..bec783976985d 100644 --- a/Utilities/DataCompression/test/test_HuffmanCodec.cxx +++ b/Utilities/DataCompression/test/test_HuffmanCodec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/test/test_dc_primitives.cxx b/Utilities/DataCompression/test/test_dc_primitives.cxx index a2c78cfaa0112..c2d8d9e05770a 100644 --- a/Utilities/DataCompression/test/test_dc_primitives.cxx +++ b/Utilities/DataCompression/test/test_dc_primitives.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataCompression/tpccluster_parameter_model.h b/Utilities/DataCompression/tpccluster_parameter_model.h index e8538016321b6..e8455399f17c1 100644 --- a/Utilities/DataCompression/tpccluster_parameter_model.h +++ b/Utilities/DataCompression/tpccluster_parameter_model.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/CMakeLists.txt b/Utilities/DataSampling/CMakeLists.txt index 4fa61b6155dad..829a68fc877fa 100644 --- a/Utilities/DataSampling/CMakeLists.txt +++ b/Utilities/DataSampling/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # FIXME: the LinkDef should not be in the public area diff --git a/Utilities/DataSampling/include/DataSampling/DataSampling.h b/Utilities/DataSampling/include/DataSampling/DataSampling.h index 6ef4f9a0ca2d4..65e7986797f67 100644 --- a/Utilities/DataSampling/include/DataSampling/DataSampling.h +++ b/Utilities/DataSampling/include/DataSampling/DataSampling.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/include/DataSampling/DataSamplingCondition.h b/Utilities/DataSampling/include/DataSampling/DataSamplingCondition.h index 754f9049a1561..09c2f35c73580 100644 --- a/Utilities/DataSampling/include/DataSampling/DataSamplingCondition.h +++ b/Utilities/DataSampling/include/DataSampling/DataSamplingCondition.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/include/DataSampling/DataSamplingConditionFactory.h b/Utilities/DataSampling/include/DataSampling/DataSamplingConditionFactory.h index fb62efa80e89f..32bfc5ffdd1fb 100644 --- a/Utilities/DataSampling/include/DataSampling/DataSamplingConditionFactory.h +++ b/Utilities/DataSampling/include/DataSampling/DataSamplingConditionFactory.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/include/DataSampling/DataSamplingHeader.h b/Utilities/DataSampling/include/DataSampling/DataSamplingHeader.h index 03856ccec2348..adc2c97759f52 100644 --- a/Utilities/DataSampling/include/DataSampling/DataSamplingHeader.h +++ b/Utilities/DataSampling/include/DataSampling/DataSamplingHeader.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/include/DataSampling/DataSamplingPolicy.h b/Utilities/DataSampling/include/DataSampling/DataSamplingPolicy.h index 3330aea33686b..59bd5302595e6 100644 --- a/Utilities/DataSampling/include/DataSampling/DataSamplingPolicy.h +++ b/Utilities/DataSampling/include/DataSampling/DataSamplingPolicy.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/include/DataSampling/DataSamplingReadoutAdapter.h b/Utilities/DataSampling/include/DataSampling/DataSamplingReadoutAdapter.h index 74084dde0112c..4db52a98aaf2d 100644 --- a/Utilities/DataSampling/include/DataSampling/DataSamplingReadoutAdapter.h +++ b/Utilities/DataSampling/include/DataSampling/DataSamplingReadoutAdapter.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/include/DataSampling/Dispatcher.h b/Utilities/DataSampling/include/DataSampling/Dispatcher.h index 36607bce262dc..7b01d70c15438 100644 --- a/Utilities/DataSampling/include/DataSampling/Dispatcher.h +++ b/Utilities/DataSampling/include/DataSampling/Dispatcher.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/src/DataSampling.cxx b/Utilities/DataSampling/src/DataSampling.cxx index 766dadd9e22b3..56c7ee545ebe1 100644 --- a/Utilities/DataSampling/src/DataSampling.cxx +++ b/Utilities/DataSampling/src/DataSampling.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/src/DataSamplingConditionCustom.cxx b/Utilities/DataSampling/src/DataSamplingConditionCustom.cxx index f9dca006e8b5b..9ba9368003a1a 100644 --- a/Utilities/DataSampling/src/DataSamplingConditionCustom.cxx +++ b/Utilities/DataSampling/src/DataSamplingConditionCustom.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/src/DataSamplingConditionFactory.cxx b/Utilities/DataSampling/src/DataSamplingConditionFactory.cxx index 94dc64bd746a4..c5211ba044b88 100644 --- a/Utilities/DataSampling/src/DataSamplingConditionFactory.cxx +++ b/Utilities/DataSampling/src/DataSamplingConditionFactory.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/src/DataSamplingConditionNConsecutive.cxx b/Utilities/DataSampling/src/DataSamplingConditionNConsecutive.cxx index 48f63f4c79e44..a4f33e1ea0903 100644 --- a/Utilities/DataSampling/src/DataSamplingConditionNConsecutive.cxx +++ b/Utilities/DataSampling/src/DataSamplingConditionNConsecutive.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/src/DataSamplingConditionPayloadSize.cxx b/Utilities/DataSampling/src/DataSamplingConditionPayloadSize.cxx index 3afa25b0d4dbd..6a3bfc4dcf20c 100644 --- a/Utilities/DataSampling/src/DataSamplingConditionPayloadSize.cxx +++ b/Utilities/DataSampling/src/DataSamplingConditionPayloadSize.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/src/DataSamplingConditionRandom.cxx b/Utilities/DataSampling/src/DataSamplingConditionRandom.cxx index 48b00b929a9cb..2969b8adf1692 100644 --- a/Utilities/DataSampling/src/DataSamplingConditionRandom.cxx +++ b/Utilities/DataSampling/src/DataSamplingConditionRandom.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/src/DataSamplingHeader.cxx b/Utilities/DataSampling/src/DataSamplingHeader.cxx index 95e21088a9df7..392e37a5d9117 100644 --- a/Utilities/DataSampling/src/DataSamplingHeader.cxx +++ b/Utilities/DataSampling/src/DataSamplingHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/src/DataSamplingPolicy.cxx b/Utilities/DataSampling/src/DataSamplingPolicy.cxx index 452f61ab14cfd..154058a70bf8f 100644 --- a/Utilities/DataSampling/src/DataSamplingPolicy.cxx +++ b/Utilities/DataSampling/src/DataSamplingPolicy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/src/DataSamplingReadoutAdapter.cxx b/Utilities/DataSampling/src/DataSamplingReadoutAdapter.cxx index 4c613af6eb6f1..c353d1e0ba5da 100644 --- a/Utilities/DataSampling/src/DataSamplingReadoutAdapter.cxx +++ b/Utilities/DataSampling/src/DataSamplingReadoutAdapter.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/src/Dispatcher.cxx b/Utilities/DataSampling/src/Dispatcher.cxx index ce3e5d7336e51..a644db4b85e8c 100644 --- a/Utilities/DataSampling/src/Dispatcher.cxx +++ b/Utilities/DataSampling/src/Dispatcher.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/src/dataSamplingStandalone.cxx b/Utilities/DataSampling/src/dataSamplingStandalone.cxx index e6fb96fbdbdd5..a2468a8216dcc 100644 --- a/Utilities/DataSampling/src/dataSamplingStandalone.cxx +++ b/Utilities/DataSampling/src/dataSamplingStandalone.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/test/dataSamplingBenchmark.cxx b/Utilities/DataSampling/test/dataSamplingBenchmark.cxx index 35d8259269754..09d3ce4f499b8 100644 --- a/Utilities/DataSampling/test/dataSamplingBenchmark.cxx +++ b/Utilities/DataSampling/test/dataSamplingBenchmark.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/test/dataSamplingParallel.cxx b/Utilities/DataSampling/test/dataSamplingParallel.cxx index 280f2733f2920..9969800a3c487 100644 --- a/Utilities/DataSampling/test/dataSamplingParallel.cxx +++ b/Utilities/DataSampling/test/dataSamplingParallel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/test/dataSamplingPodAndRoot.cxx b/Utilities/DataSampling/test/dataSamplingPodAndRoot.cxx index eeb8220985119..94a0ae0e5010a 100644 --- a/Utilities/DataSampling/test/dataSamplingPodAndRoot.cxx +++ b/Utilities/DataSampling/test/dataSamplingPodAndRoot.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/test/dataSamplingTimePipeline.cxx b/Utilities/DataSampling/test/dataSamplingTimePipeline.cxx index c5cc028d14c81..4cdd17aa2310b 100644 --- a/Utilities/DataSampling/test/dataSamplingTimePipeline.cxx +++ b/Utilities/DataSampling/test/dataSamplingTimePipeline.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/test/test_DataSampling.cxx b/Utilities/DataSampling/test/test_DataSampling.cxx index b12d60d967fda..9eedc4157a987 100644 --- a/Utilities/DataSampling/test/test_DataSampling.cxx +++ b/Utilities/DataSampling/test/test_DataSampling.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/test/test_DataSamplingCondition.cxx b/Utilities/DataSampling/test/test_DataSamplingCondition.cxx index 8b77e299df5e7..44209d804c52c 100644 --- a/Utilities/DataSampling/test/test_DataSamplingCondition.cxx +++ b/Utilities/DataSampling/test/test_DataSamplingCondition.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/test/test_DataSamplingHeader.cxx b/Utilities/DataSampling/test/test_DataSamplingHeader.cxx index 44c26270572ba..48ab5ba953eec 100644 --- a/Utilities/DataSampling/test/test_DataSamplingHeader.cxx +++ b/Utilities/DataSampling/test/test_DataSamplingHeader.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/DataSampling/test/test_DataSamplingPolicy.cxx b/Utilities/DataSampling/test/test_DataSamplingPolicy.cxx index 1723dc913fe28..e1eda88c69e00 100644 --- a/Utilities/DataSampling/test/test_DataSamplingPolicy.cxx +++ b/Utilities/DataSampling/test/test_DataSamplingPolicy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/MCStepLogger/CMakeLists.txt b/Utilities/MCStepLogger/CMakeLists.txt index f63a845c7bcdb..728861afb576c 100644 --- a/Utilities/MCStepLogger/CMakeLists.txt +++ b/Utilities/MCStepLogger/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # @author Sandro Wenzel @brief cmake setup for module Utilities/MCStepLogger diff --git a/Utilities/Mergers/CMakeLists.txt b/Utilities/Mergers/CMakeLists.txt index ce1b9b8acbfdd..6cc026eaa38a5 100644 --- a/Utilities/Mergers/CMakeLists.txt +++ b/Utilities/Mergers/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # FIXME: the LinkDef should not be in the public area diff --git a/Utilities/Mergers/include/Mergers/CustomMergeableObject.h b/Utilities/Mergers/include/Mergers/CustomMergeableObject.h index c64035bac6e13..b88fae3195d68 100644 --- a/Utilities/Mergers/include/Mergers/CustomMergeableObject.h +++ b/Utilities/Mergers/include/Mergers/CustomMergeableObject.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/include/Mergers/CustomMergeableTObject.h b/Utilities/Mergers/include/Mergers/CustomMergeableTObject.h index ef57a90daa7ca..9c621b41342dc 100644 --- a/Utilities/Mergers/include/Mergers/CustomMergeableTObject.h +++ b/Utilities/Mergers/include/Mergers/CustomMergeableTObject.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/include/Mergers/FullHistoryMerger.h b/Utilities/Mergers/include/Mergers/FullHistoryMerger.h index fd471f22b981a..8a53a4f6a8d4a 100644 --- a/Utilities/Mergers/include/Mergers/FullHistoryMerger.h +++ b/Utilities/Mergers/include/Mergers/FullHistoryMerger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/include/Mergers/IntegratingMerger.h b/Utilities/Mergers/include/Mergers/IntegratingMerger.h index e219b780f3ff6..8d946c4201237 100644 --- a/Utilities/Mergers/include/Mergers/IntegratingMerger.h +++ b/Utilities/Mergers/include/Mergers/IntegratingMerger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/include/Mergers/LinkDef.h b/Utilities/Mergers/include/Mergers/LinkDef.h index 80e59eb8c935e..5367cf2412391 100644 --- a/Utilities/Mergers/include/Mergers/LinkDef.h +++ b/Utilities/Mergers/include/Mergers/LinkDef.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/include/Mergers/MergeInterface.h b/Utilities/Mergers/include/Mergers/MergeInterface.h index ff9955b8cc546..f3a1c6656d476 100644 --- a/Utilities/Mergers/include/Mergers/MergeInterface.h +++ b/Utilities/Mergers/include/Mergers/MergeInterface.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/include/Mergers/MergerAlgorithm.h b/Utilities/Mergers/include/Mergers/MergerAlgorithm.h index 89955fe6407b2..bd5453afed4b1 100644 --- a/Utilities/Mergers/include/Mergers/MergerAlgorithm.h +++ b/Utilities/Mergers/include/Mergers/MergerAlgorithm.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/include/Mergers/MergerBuilder.h b/Utilities/Mergers/include/Mergers/MergerBuilder.h index f9ed3a264cd6c..89c5350a97f91 100644 --- a/Utilities/Mergers/include/Mergers/MergerBuilder.h +++ b/Utilities/Mergers/include/Mergers/MergerBuilder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/include/Mergers/MergerConfig.h b/Utilities/Mergers/include/Mergers/MergerConfig.h index 48d57d11a4ca4..c8a896e8fbbea 100644 --- a/Utilities/Mergers/include/Mergers/MergerConfig.h +++ b/Utilities/Mergers/include/Mergers/MergerConfig.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/include/Mergers/MergerInfrastructureBuilder.h b/Utilities/Mergers/include/Mergers/MergerInfrastructureBuilder.h index ea9ecba60e65a..c0cf6c786a26c 100644 --- a/Utilities/Mergers/include/Mergers/MergerInfrastructureBuilder.h +++ b/Utilities/Mergers/include/Mergers/MergerInfrastructureBuilder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/include/Mergers/ObjectStore.h b/Utilities/Mergers/include/Mergers/ObjectStore.h index 3c64dd22c1d8d..7fcbe3090c46f 100644 --- a/Utilities/Mergers/include/Mergers/ObjectStore.h +++ b/Utilities/Mergers/include/Mergers/ObjectStore.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/src/FullHistoryMerger.cxx b/Utilities/Mergers/src/FullHistoryMerger.cxx index 1379ed2d76f04..c2bf40546864a 100644 --- a/Utilities/Mergers/src/FullHistoryMerger.cxx +++ b/Utilities/Mergers/src/FullHistoryMerger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/src/IntegratingMerger.cxx b/Utilities/Mergers/src/IntegratingMerger.cxx index 433164bbb9554..cd0d54683506f 100644 --- a/Utilities/Mergers/src/IntegratingMerger.cxx +++ b/Utilities/Mergers/src/IntegratingMerger.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/src/MergerAlgorithm.cxx b/Utilities/Mergers/src/MergerAlgorithm.cxx index 7ababdb1571db..e87fb3eb023ff 100644 --- a/Utilities/Mergers/src/MergerAlgorithm.cxx +++ b/Utilities/Mergers/src/MergerAlgorithm.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/src/MergerBuilder.cxx b/Utilities/Mergers/src/MergerBuilder.cxx index ce70bd14265e6..8d60532b5bd72 100644 --- a/Utilities/Mergers/src/MergerBuilder.cxx +++ b/Utilities/Mergers/src/MergerBuilder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/src/MergerInfrastructureBuilder.cxx b/Utilities/Mergers/src/MergerInfrastructureBuilder.cxx index 17301b5b68658..7feff470ebe43 100644 --- a/Utilities/Mergers/src/MergerInfrastructureBuilder.cxx +++ b/Utilities/Mergers/src/MergerInfrastructureBuilder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/src/ObjectStore.cxx b/Utilities/Mergers/src/ObjectStore.cxx index 3d549fb6885b3..ddc0d47f0ccf5 100644 --- a/Utilities/Mergers/src/ObjectStore.cxx +++ b/Utilities/Mergers/src/ObjectStore.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/src/mergersTopologyExample.cxx b/Utilities/Mergers/src/mergersTopologyExample.cxx index 20faf41aebe4c..b3241507acb13 100644 --- a/Utilities/Mergers/src/mergersTopologyExample.cxx +++ b/Utilities/Mergers/src/mergersTopologyExample.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/test/benchmark_FullVsDiff.cxx b/Utilities/Mergers/test/benchmark_FullVsDiff.cxx index b20ea506682d8..0995774bb14a7 100644 --- a/Utilities/Mergers/test/benchmark_FullVsDiff.cxx +++ b/Utilities/Mergers/test/benchmark_FullVsDiff.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/test/benchmark_MergingCollections.cxx b/Utilities/Mergers/test/benchmark_MergingCollections.cxx index 701c4d4d38175..3336aedb8894c 100644 --- a/Utilities/Mergers/test/benchmark_MergingCollections.cxx +++ b/Utilities/Mergers/test/benchmark_MergingCollections.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/test/benchmark_Miscellaneous.cxx b/Utilities/Mergers/test/benchmark_Miscellaneous.cxx index 0d5e8fa64f1c4..225fcb297e626 100644 --- a/Utilities/Mergers/test/benchmark_Miscellaneous.cxx +++ b/Utilities/Mergers/test/benchmark_Miscellaneous.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/test/benchmark_Types.cxx b/Utilities/Mergers/test/benchmark_Types.cxx index e1ec7fba59af1..790fd329185ea 100644 --- a/Utilities/Mergers/test/benchmark_Types.cxx +++ b/Utilities/Mergers/test/benchmark_Types.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/test/emptyLoopBenchmark.cxx b/Utilities/Mergers/test/emptyLoopBenchmark.cxx index 2ec37b5f8895e..248c8022cff2d 100644 --- a/Utilities/Mergers/test/emptyLoopBenchmark.cxx +++ b/Utilities/Mergers/test/emptyLoopBenchmark.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/test/mergersBenchmarkTopology.cxx b/Utilities/Mergers/test/mergersBenchmarkTopology.cxx index 07ce0db27731a..5c0675e45ef6b 100644 --- a/Utilities/Mergers/test/mergersBenchmarkTopology.cxx +++ b/Utilities/Mergers/test/mergersBenchmarkTopology.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/test/multinodeBenchmarkMergers.cxx b/Utilities/Mergers/test/multinodeBenchmarkMergers.cxx index a5fdfad3cc7e7..79137b4709e68 100644 --- a/Utilities/Mergers/test/multinodeBenchmarkMergers.cxx +++ b/Utilities/Mergers/test/multinodeBenchmarkMergers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/test/multinodeBenchmarkProducers.cxx b/Utilities/Mergers/test/multinodeBenchmarkProducers.cxx index 4d1ff089a9a57..4f62e1a992164 100644 --- a/Utilities/Mergers/test/multinodeBenchmarkProducers.cxx +++ b/Utilities/Mergers/test/multinodeBenchmarkProducers.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/test/test_Algorithm.cxx b/Utilities/Mergers/test/test_Algorithm.cxx index c9648b8cef10e..9da139bf64cf1 100644 --- a/Utilities/Mergers/test/test_Algorithm.cxx +++ b/Utilities/Mergers/test/test_Algorithm.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/test/test_InfrastructureBuilder.cxx b/Utilities/Mergers/test/test_InfrastructureBuilder.cxx index a83507ed9906d..12001622b2338 100644 --- a/Utilities/Mergers/test/test_InfrastructureBuilder.cxx +++ b/Utilities/Mergers/test/test_InfrastructureBuilder.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/Mergers/test/test_ObjectStore.cxx b/Utilities/Mergers/test/test_ObjectStore.cxx index 3680fdef4d241..bc2939c904e2c 100644 --- a/Utilities/Mergers/test/test_ObjectStore.cxx +++ b/Utilities/Mergers/test/test_ObjectStore.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/PCG/CMakeLists.txt b/Utilities/PCG/CMakeLists.txt index d53bec96dff6d..5d0fdd8756b3a 100644 --- a/Utilities/PCG/CMakeLists.txt +++ b/Utilities/PCG/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # @author Piotr Konopka diff --git a/Utilities/Tools/CMakeLists.txt b/Utilities/Tools/CMakeLists.txt index aa9a9ba83a6a0..428d4c96466df 100644 --- a/Utilities/Tools/CMakeLists.txt +++ b/Utilities/Tools/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_subdirectory(cpulimit) diff --git a/Utilities/Tools/cpulimit/CMakeLists.txt b/Utilities/Tools/cpulimit/CMakeLists.txt index deeb42e6726ed..f1109c65fdb69 100644 --- a/Utilities/Tools/cpulimit/CMakeLists.txt +++ b/Utilities/Tools/cpulimit/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. add_executable(cpulimit cpulimit.c list.c process_group.c process_iterator.c) diff --git a/Utilities/Tools/jobutils.sh b/Utilities/Tools/jobutils.sh index adc68dd104017..60ea4386ae4bd 100644 --- a/Utilities/Tools/jobutils.sh +++ b/Utilities/Tools/jobutils.sh @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # # author: Sandro Wenzel diff --git a/Utilities/rANS/CMakeLists.txt b/Utilities/rANS/CMakeLists.txt index 8bc1cf4b8ad34..d07c577808b61 100644 --- a/Utilities/rANS/CMakeLists.txt +++ b/Utilities/rANS/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(rANS SOURCES src/SymbolStatistics.cxx diff --git a/Utilities/rANS/benchmarks/bench_ransCombinedIterator.cxx b/Utilities/rANS/benchmarks/bench_ransCombinedIterator.cxx index 6fcff21090c8d..dce88855518cf 100644 --- a/Utilities/rANS/benchmarks/bench_ransCombinedIterator.cxx +++ b/Utilities/rANS/benchmarks/bench_ransCombinedIterator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/Decoder.h b/Utilities/rANS/include/rANS/Decoder.h index 0e4f2feafef4d..fa735045dbc07 100644 --- a/Utilities/rANS/include/rANS/Decoder.h +++ b/Utilities/rANS/include/rANS/Decoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/DedupDecoder.h b/Utilities/rANS/include/rANS/DedupDecoder.h index fc302e6139f84..802593f3846f0 100644 --- a/Utilities/rANS/include/rANS/DedupDecoder.h +++ b/Utilities/rANS/include/rANS/DedupDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/DedupEncoder.h b/Utilities/rANS/include/rANS/DedupEncoder.h index 54187507d67b7..faafddda69eba 100644 --- a/Utilities/rANS/include/rANS/DedupEncoder.h +++ b/Utilities/rANS/include/rANS/DedupEncoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/Encoder.h b/Utilities/rANS/include/rANS/Encoder.h index 71fc67ec495a0..a39e03007058d 100644 --- a/Utilities/rANS/include/rANS/Encoder.h +++ b/Utilities/rANS/include/rANS/Encoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/FrequencyTable.h b/Utilities/rANS/include/rANS/FrequencyTable.h index 9cdcd655a36e1..a93c0a22b50ab 100644 --- a/Utilities/rANS/include/rANS/FrequencyTable.h +++ b/Utilities/rANS/include/rANS/FrequencyTable.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/LiteralDecoder.h b/Utilities/rANS/include/rANS/LiteralDecoder.h index ad6f61ec6ca64..5e3921de79e3b 100644 --- a/Utilities/rANS/include/rANS/LiteralDecoder.h +++ b/Utilities/rANS/include/rANS/LiteralDecoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/LiteralEncoder.h b/Utilities/rANS/include/rANS/LiteralEncoder.h index a5d24cc33f3eb..d7d6ab1095e17 100644 --- a/Utilities/rANS/include/rANS/LiteralEncoder.h +++ b/Utilities/rANS/include/rANS/LiteralEncoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/internal/Decoder.h b/Utilities/rANS/include/rANS/internal/Decoder.h index 4867d30226348..b987960e58b7e 100644 --- a/Utilities/rANS/include/rANS/internal/Decoder.h +++ b/Utilities/rANS/include/rANS/internal/Decoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/internal/DecoderBase.h b/Utilities/rANS/include/rANS/internal/DecoderBase.h index 5809027660b16..0aecd31ed3196 100644 --- a/Utilities/rANS/include/rANS/internal/DecoderBase.h +++ b/Utilities/rANS/include/rANS/internal/DecoderBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/internal/DecoderSymbol.h b/Utilities/rANS/include/rANS/internal/DecoderSymbol.h index 6363afc1332f5..1b93c36fc96e0 100644 --- a/Utilities/rANS/include/rANS/internal/DecoderSymbol.h +++ b/Utilities/rANS/include/rANS/internal/DecoderSymbol.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/internal/Encoder.h b/Utilities/rANS/include/rANS/internal/Encoder.h index 2bb2eca5ec05b..8684a2104d6b4 100644 --- a/Utilities/rANS/include/rANS/internal/Encoder.h +++ b/Utilities/rANS/include/rANS/internal/Encoder.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/internal/EncoderBase.h b/Utilities/rANS/include/rANS/internal/EncoderBase.h index bd4e500e7ed29..77d423a762b06 100644 --- a/Utilities/rANS/include/rANS/internal/EncoderBase.h +++ b/Utilities/rANS/include/rANS/internal/EncoderBase.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/internal/EncoderSymbol.h b/Utilities/rANS/include/rANS/internal/EncoderSymbol.h index dc87cad29a0d5..d9e9c48b3e364 100644 --- a/Utilities/rANS/include/rANS/internal/EncoderSymbol.h +++ b/Utilities/rANS/include/rANS/internal/EncoderSymbol.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/internal/ReverseSymbolLookupTable.h b/Utilities/rANS/include/rANS/internal/ReverseSymbolLookupTable.h index 5229fd3ced4d8..2037f9a77ce07 100644 --- a/Utilities/rANS/include/rANS/internal/ReverseSymbolLookupTable.h +++ b/Utilities/rANS/include/rANS/internal/ReverseSymbolLookupTable.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/internal/SymbolStatistics.h b/Utilities/rANS/include/rANS/internal/SymbolStatistics.h index 38448a65b551a..a496169a698bc 100644 --- a/Utilities/rANS/include/rANS/internal/SymbolStatistics.h +++ b/Utilities/rANS/include/rANS/internal/SymbolStatistics.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/internal/SymbolTable.h b/Utilities/rANS/include/rANS/internal/SymbolTable.h index 196a07446f319..ff40dd634720c 100644 --- a/Utilities/rANS/include/rANS/internal/SymbolTable.h +++ b/Utilities/rANS/include/rANS/internal/SymbolTable.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/internal/helper.h b/Utilities/rANS/include/rANS/internal/helper.h index 39860f42c62e5..5a752047ead03 100644 --- a/Utilities/rANS/include/rANS/internal/helper.h +++ b/Utilities/rANS/include/rANS/internal/helper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/rans.h b/Utilities/rANS/include/rANS/rans.h index 5a56123831abc..5dfec822ace74 100644 --- a/Utilities/rANS/include/rANS/rans.h +++ b/Utilities/rANS/include/rANS/rans.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/utils.h b/Utilities/rANS/include/rANS/utils.h index 623b06b89573a..722f3c82e40c3 100644 --- a/Utilities/rANS/include/rANS/utils.h +++ b/Utilities/rANS/include/rANS/utils.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/include/rANS/utils/iterators.h b/Utilities/rANS/include/rANS/utils/iterators.h index 46ac74b6937c0..3561b6f13dd3d 100644 --- a/Utilities/rANS/include/rANS/utils/iterators.h +++ b/Utilities/rANS/include/rANS/utils/iterators.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/run/bin-encode-decode.cxx b/Utilities/rANS/run/bin-encode-decode.cxx index ae6e92d66617f..04353773dd47e 100644 --- a/Utilities/rANS/run/bin-encode-decode.cxx +++ b/Utilities/rANS/run/bin-encode-decode.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/src/FrequencyTable.cxx b/Utilities/rANS/src/FrequencyTable.cxx index 8933187066336..ef757894cf180 100644 --- a/Utilities/rANS/src/FrequencyTable.cxx +++ b/Utilities/rANS/src/FrequencyTable.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/src/SymbolStatistics.cxx b/Utilities/rANS/src/SymbolStatistics.cxx index 6e6127d7978d9..051507744dd40 100644 --- a/Utilities/rANS/src/SymbolStatistics.cxx +++ b/Utilities/rANS/src/SymbolStatistics.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/test/test_ransEncodeDecode.cxx b/Utilities/rANS/test/test_ransEncodeDecode.cxx index 33550f584ea89..e3c96bbcdf742 100644 --- a/Utilities/rANS/test/test_ransEncodeDecode.cxx +++ b/Utilities/rANS/test/test_ransEncodeDecode.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/test/test_ransFrequencyTable.cxx b/Utilities/rANS/test/test_ransFrequencyTable.cxx index f573f9df5613a..2808d0676b70c 100644 --- a/Utilities/rANS/test/test_ransFrequencyTable.cxx +++ b/Utilities/rANS/test/test_ransFrequencyTable.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/test/test_ransIterators.cxx b/Utilities/rANS/test/test_ransIterators.cxx index 4b33aa322d42e..02dead794ccd7 100644 --- a/Utilities/rANS/test/test_ransIterators.cxx +++ b/Utilities/rANS/test/test_ransIterators.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/test/test_ransReverseSymbolLookupTable.cxx b/Utilities/rANS/test/test_ransReverseSymbolLookupTable.cxx index a07232735a192..7f35b48a40d15 100644 --- a/Utilities/rANS/test/test_ransReverseSymbolLookupTable.cxx +++ b/Utilities/rANS/test/test_ransReverseSymbolLookupTable.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/test/test_ransSymbolStatistics.cxx b/Utilities/rANS/test/test_ransSymbolStatistics.cxx index d1607cf2aea6e..474557257d8be 100644 --- a/Utilities/rANS/test/test_ransSymbolStatistics.cxx +++ b/Utilities/rANS/test/test_ransSymbolStatistics.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Utilities/rANS/test/test_ransSymbolTable.cxx b/Utilities/rANS/test/test_ransSymbolTable.cxx index 0c0abefc47d17..a170601a75afd 100644 --- a/Utilities/rANS/test/test_ransSymbolTable.cxx +++ b/Utilities/rANS/test/test_ransSymbolTable.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/cmake/AddRootDictionary.cmake b/cmake/AddRootDictionary.cmake index 8f627247c9183..88a895c2805b7 100644 --- a/cmake/AddRootDictionary.cmake +++ b/cmake/AddRootDictionary.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2AddExecutable.cmake b/cmake/O2AddExecutable.cmake index 36353b6647799..3416347cdc5e7 100644 --- a/cmake/O2AddExecutable.cmake +++ b/cmake/O2AddExecutable.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2AddHeaderOnlyLibrary.cmake b/cmake/O2AddHeaderOnlyLibrary.cmake index a461bf8faf8a0..95e0bc5158fc1 100644 --- a/cmake/O2AddHeaderOnlyLibrary.cmake +++ b/cmake/O2AddHeaderOnlyLibrary.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2AddLibrary.cmake b/cmake/O2AddLibrary.cmake index 581936de30adb..2a0fcf8418ab4 100644 --- a/cmake/O2AddLibrary.cmake +++ b/cmake/O2AddLibrary.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2AddTest.cmake b/cmake/O2AddTest.cmake index 5da759edad92b..d887a7bf6ed9b 100644 --- a/cmake/O2AddTest.cmake +++ b/cmake/O2AddTest.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2AddTestRootMacro.cmake b/cmake/O2AddTestRootMacro.cmake index fd4d64af3f0ed..10f53ad6094ed 100644 --- a/cmake/O2AddTestRootMacro.cmake +++ b/cmake/O2AddTestRootMacro.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2AddTestWrapper.cmake b/cmake/O2AddTestWrapper.cmake index b49cfc235c75b..cfdb8d2cda005 100644 --- a/cmake/O2AddTestWrapper.cmake +++ b/cmake/O2AddTestWrapper.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2AddWorkflow.cmake b/cmake/O2AddWorkflow.cmake index 7b58dc13397e1..50694822e8cb6 100644 --- a/cmake/O2AddWorkflow.cmake +++ b/cmake/O2AddWorkflow.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2BuildSanityChecks.cmake b/cmake/O2BuildSanityChecks.cmake index 95a6afaa82d4e..887b490ecfb90 100644 --- a/cmake/O2BuildSanityChecks.cmake +++ b/cmake/O2BuildSanityChecks.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2CheckCXXFeatures.cmake b/cmake/O2CheckCXXFeatures.cmake index 532d1df9761e0..3a20c0dfc6e37 100644 --- a/cmake/O2CheckCXXFeatures.cmake +++ b/cmake/O2CheckCXXFeatures.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2DataFile.cmake b/cmake/O2DataFile.cmake index 9b7932ee2404c..45ffb2c79a56b 100644 --- a/cmake/O2DataFile.cmake +++ b/cmake/O2DataFile.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # # o2_data_file(COPY src DESTINATION dest) is a convenience function to copy and diff --git a/cmake/O2DefineOptions.cmake b/cmake/O2DefineOptions.cmake index e151b0612edbd..8dc3458cbf129 100644 --- a/cmake/O2DefineOptions.cmake +++ b/cmake/O2DefineOptions.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2DefineOutputPaths.cmake b/cmake/O2DefineOutputPaths.cmake index a5d7bb9563778..2744c63008e79 100644 --- a/cmake/O2DefineOutputPaths.cmake +++ b/cmake/O2DefineOutputPaths.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2DefineRPATH.cmake b/cmake/O2DefineRPATH.cmake index 372f8e6d12530..a753125c81999 100644 --- a/cmake/O2DefineRPATH.cmake +++ b/cmake/O2DefineRPATH.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2DumpTargetProperties.cmake b/cmake/O2DumpTargetProperties.cmake index 45db6c168b90f..12ab58c26018e 100644 --- a/cmake/O2DumpTargetProperties.cmake +++ b/cmake/O2DumpTargetProperties.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2GetListOfMacros.cmake b/cmake/O2GetListOfMacros.cmake index 2f8402f88a3c6..adadbe06af6fa 100644 --- a/cmake/O2GetListOfMacros.cmake +++ b/cmake/O2GetListOfMacros.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2NameTarget.cmake b/cmake/O2NameTarget.cmake index c96e6ffecf0a7..de1c836fc3826 100644 --- a/cmake/O2NameTarget.cmake +++ b/cmake/O2NameTarget.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2ReportNonTestedMacros.cmake b/cmake/O2ReportNonTestedMacros.cmake index 4a2b80d398682..b12eb67c28261 100644 --- a/cmake/O2ReportNonTestedMacros.cmake +++ b/cmake/O2ReportNonTestedMacros.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2RootMacroExclusionList.cmake b/cmake/O2RootMacroExclusionList.cmake index 5cf6da221edd6..d651e47b3172d 100644 --- a/cmake/O2RootMacroExclusionList.cmake +++ b/cmake/O2RootMacroExclusionList.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2SetROOTPCMDependencies.cmake b/cmake/O2SetROOTPCMDependencies.cmake index 915cc7858234d..d3f266c9c0337 100644 --- a/cmake/O2SetROOTPCMDependencies.cmake +++ b/cmake/O2SetROOTPCMDependencies.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2TargetManPage.cmake b/cmake/O2TargetManPage.cmake index 0c311d41755a5..5d29447c52536 100644 --- a/cmake/O2TargetManPage.cmake +++ b/cmake/O2TargetManPage.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/O2TargetRootDictionary.cmake b/cmake/O2TargetRootDictionary.cmake index 33a31b8b6f117..f5d630dd10569 100644 --- a/cmake/O2TargetRootDictionary.cmake +++ b/cmake/O2TargetRootDictionary.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/cmake/checks/cxx14-test-aggregate-initialization.cxx b/cmake/checks/cxx14-test-aggregate-initialization.cxx index 0abaf9de561da..8dedff45a91f8 100644 --- a/cmake/checks/cxx14-test-aggregate-initialization.cxx +++ b/cmake/checks/cxx14-test-aggregate-initialization.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/cmake/checks/cxx14-test-binary-literals.cxx b/cmake/checks/cxx14-test-binary-literals.cxx index ec5f693ee55b5..8fd1f13b697e5 100644 --- a/cmake/checks/cxx14-test-binary-literals.cxx +++ b/cmake/checks/cxx14-test-binary-literals.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/cmake/checks/cxx14-test-generic-lambda.cxx b/cmake/checks/cxx14-test-generic-lambda.cxx index bfa609be69902..c80e439f3e6c0 100644 --- a/cmake/checks/cxx14-test-generic-lambda.cxx +++ b/cmake/checks/cxx14-test-generic-lambda.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/cmake/checks/cxx14-test-make_unique.cxx b/cmake/checks/cxx14-test-make_unique.cxx index b7f323f4f5239..f7cf6f256b2cd 100644 --- a/cmake/checks/cxx14-test-make_unique.cxx +++ b/cmake/checks/cxx14-test-make_unique.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/cmake/checks/cxx14-test-user-defined-literals.cxx b/cmake/checks/cxx14-test-user-defined-literals.cxx index 268c3bb2b9388..0ef6c74df0a0f 100644 --- a/cmake/checks/cxx14-test-user-defined-literals.cxx +++ b/cmake/checks/cxx14-test-user-defined-literals.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/config/CMakeLists.txt b/config/CMakeLists.txt index 8c32b4e727e7a..3888ca17ce913 100644 --- a/config/CMakeLists.txt +++ b/config/CMakeLists.txt @@ -1,11 +1,12 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. install(FILES rootmanager.dat DESTINATION share/config/) diff --git a/dependencies/CMakeLists.txt b/dependencies/CMakeLists.txt index 8da6e6c6e5a70..352bd805ebdf7 100644 --- a/dependencies/CMakeLists.txt +++ b/dependencies/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include("${CMAKE_CURRENT_LIST_DIR}/O2CompileFlags.cmake") include("${CMAKE_CURRENT_LIST_DIR}/O2Dependencies.cmake") diff --git a/dependencies/FindAliRoot.cmake b/dependencies/FindAliRoot.cmake index 7252240bd2335..7888f65abfeb3 100644 --- a/dependencies/FindAliRoot.cmake +++ b/dependencies/FindAliRoot.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(AliRoot_FOUND FALSE) diff --git a/dependencies/FindFairRoot.cmake b/dependencies/FindFairRoot.cmake index a683576069c34..7c09ac01392dc 100644 --- a/dependencies/FindFairRoot.cmake +++ b/dependencies/FindFairRoot.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # TODO: remove this file once FairRoot correctly exports its cmake config diff --git a/dependencies/FindFastJet.cmake b/dependencies/FindFastJet.cmake index a61abdf7e7a28..3d6c7db490bf1 100644 --- a/dependencies/FindFastJet.cmake +++ b/dependencies/FindFastJet.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # Author: Jochen Klein # diff --git a/dependencies/FindFlukaVMC.cmake b/dependencies/FindFlukaVMC.cmake index eb7f138f3085d..01304a285f234 100644 --- a/dependencies/FindFlukaVMC.cmake +++ b/dependencies/FindFlukaVMC.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # use the GEANT4_VMCConfig.cmake provided by the Geant4VMC installation but # amend the target geant4vmc with the include directories diff --git a/dependencies/FindGLFW.cmake b/dependencies/FindGLFW.cmake index b28d43f6a607d..e062c6f06cec6 100644 --- a/dependencies/FindGLFW.cmake +++ b/dependencies/FindGLFW.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # Simply provide a namespaced alias for the existing target diff --git a/dependencies/FindGeant3.cmake b/dependencies/FindGeant3.cmake index ec0b0c30696d7..1fe8a3a80529f 100644 --- a/dependencies/FindGeant3.cmake +++ b/dependencies/FindGeant3.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # use the the config provided by the Geant3 installation but amend the target # geant321 with the include directories diff --git a/dependencies/FindGeant4.cmake b/dependencies/FindGeant4.cmake index df24abec4a9d4..e9ac4600670e4 100644 --- a/dependencies/FindGeant4.cmake +++ b/dependencies/FindGeant4.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # use the Geant4Config.cmake provided by the Geant4 installation to create a # single target geant4 with the include directories and libraries we need diff --git a/dependencies/FindGeant4VMC.cmake b/dependencies/FindGeant4VMC.cmake index 985868e4a6090..de018165f2864 100644 --- a/dependencies/FindGeant4VMC.cmake +++ b/dependencies/FindGeant4VMC.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # use the GEANT4_VMCConfig.cmake provided by the Geant4VMC installation but # amend the target geant4vmc with the include directories diff --git a/dependencies/FindHepMC.cmake b/dependencies/FindHepMC.cmake index 76446c486ee08..c3f0da1f3fa95 100644 --- a/dependencies/FindHepMC.cmake +++ b/dependencies/FindHepMC.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # use the HepMCConfig.cmake provided by the HepMC3 installation to create a # single target HepMC with the include directories and libraries we need diff --git a/dependencies/FindHepMC3.cmake b/dependencies/FindHepMC3.cmake index 3f9233814f66d..da28e21dc2411 100644 --- a/dependencies/FindHepMC3.cmake +++ b/dependencies/FindHepMC3.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # use the HepMCConfig.cmake provided by the HepMC3 installation to create a # single target HepMC with the include directories and libraries we need diff --git a/dependencies/FindJAliEnROOT.cmake b/dependencies/FindJAliEnROOT.cmake index b48e90b40a9b4..dd9a0eceb8905 100644 --- a/dependencies/FindJAliEnROOT.cmake +++ b/dependencies/FindJAliEnROOT.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. find_path(JALIEN_ROOT_INCLUDE_DIR TJAlienFile.h PATH_SUFFIXES include PATHS ${JALIEN_ROOT_ROOT}) diff --git a/dependencies/FindO2GPU.cmake b/dependencies/FindO2GPU.cmake index cd5f342d0bcb9..6e61193922b4b 100644 --- a/dependencies/FindO2GPU.cmake +++ b/dependencies/FindO2GPU.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. if(NOT DEFINED ENABLE_CUDA) set(ENABLE_CUDA "AUTO") diff --git a/dependencies/FindO2arrow.cmake b/dependencies/FindO2arrow.cmake index bdf4381678f79..f5b0c7e734f7a 100644 --- a/dependencies/FindO2arrow.cmake +++ b/dependencies/FindO2arrow.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # Simply provide a namespaced alias for the existing target diff --git a/dependencies/FindRapidJSON.cmake b/dependencies/FindRapidJSON.cmake index a9baebbc53721..9fea87c357fa5 100644 --- a/dependencies/FindRapidJSON.cmake +++ b/dependencies/FindRapidJSON.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # # Finds the rapidjson (header-only) library using the CONFIG file provided by diff --git a/dependencies/FindVGM.cmake b/dependencies/FindVGM.cmake index b6eefc30731b0..c3d7129a6b3e5 100644 --- a/dependencies/FindVGM.cmake +++ b/dependencies/FindVGM.cmake @@ -1,13 +1,14 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # use the VGMConfig.cmake provided by the VGM installation but # amend the target VGM::XmlVGM with the include and link directories diff --git a/dependencies/Findpythia.cmake b/dependencies/Findpythia.cmake index 2940a1fe18bbd..2191c6a2576e4 100644 --- a/dependencies/Findpythia.cmake +++ b/dependencies/Findpythia.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(PKGNAME ${CMAKE_FIND_PACKAGE_NAME}) string(TOUPPER ${PKGNAME} PKGENVNAME) diff --git a/dependencies/Findpythia6.cmake b/dependencies/Findpythia6.cmake index 9381e8c31c786..c4bc0cbd76ec4 100644 --- a/dependencies/Findpythia6.cmake +++ b/dependencies/Findpythia6.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. set(PKGNAME ${CMAKE_FIND_PACKAGE_NAME}) string(TOUPPER ${PKGNAME} PKGENVNAME) diff --git a/dependencies/O2CompileFlags.cmake b/dependencies/O2CompileFlags.cmake index 85a98847e1511..7bc9a517345e0 100644 --- a/dependencies/O2CompileFlags.cmake +++ b/dependencies/O2CompileFlags.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/dependencies/O2Dependencies.cmake b/dependencies/O2Dependencies.cmake index b8b2caac13118..70e0b66ff9222 100644 --- a/dependencies/O2Dependencies.cmake +++ b/dependencies/O2Dependencies.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/dependencies/O2SimulationDependencies.cmake b/dependencies/O2SimulationDependencies.cmake index e62073d18bc44..c50b432a111df 100644 --- a/dependencies/O2SimulationDependencies.cmake +++ b/dependencies/O2SimulationDependencies.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # # Note that the BUILD_SIMULATION option governs what to do with the simulation diff --git a/dependencies/O2TestsAdapter.cmake b/dependencies/O2TestsAdapter.cmake index d3f587006099a..f4aabd3ff45ff 100644 --- a/dependencies/O2TestsAdapter.cmake +++ b/dependencies/O2TestsAdapter.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # We patch those tests that require some environment (most notably the O2_ROOT # variable) to convert from O2_ROOT pointing to build tree to O2_ROOT pointing diff --git a/doc/CMakeLists.txt b/doc/CMakeLists.txt index 7ce37c657235e..58dcd585a1185 100644 --- a/doc/CMakeLists.txt +++ b/doc/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # # Build the doxygen diff --git a/macro/CMakeLists.txt b/macro/CMakeLists.txt index 3a41ab185fd1a..f97caed8db21f 100644 --- a/macro/CMakeLists.txt +++ b/macro/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # setup files to be installed (only ROOT macros for the moment) NOT using GLOB, # as we should be mindful of what we install. if we have lot of files here, it's diff --git a/macro/build_geometry.C b/macro/build_geometry.C index c4f3a8fdd899b..fc3e02f2099b1 100644 --- a/macro/build_geometry.C +++ b/macro/build_geometry.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/macro/compareTOFClusters.C b/macro/compareTOFClusters.C index 69b717f8b8795..07029215e9dee 100644 --- a/macro/compareTOFClusters.C +++ b/macro/compareTOFClusters.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/macro/compareTOFDigits.C b/macro/compareTOFDigits.C index b9b450f2f86a8..a2675ec63e6c0 100644 --- a/macro/compareTOFDigits.C +++ b/macro/compareTOFDigits.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/macro/migrateSimFiles.C b/macro/migrateSimFiles.C index 79015d8df9b15..f96d2ff7e0a67 100644 --- a/macro/migrateSimFiles.C +++ b/macro/migrateSimFiles.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/macro/o2sim.C b/macro/o2sim.C index 4cfa6575f65bd..fa5e9bad093f2 100644 --- a/macro/o2sim.C +++ b/macro/o2sim.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/macro/runTPCRefit.C b/macro/runTPCRefit.C index 5f65b74618113..f683a5a73bfb3 100644 --- a/macro/runTPCRefit.C +++ b/macro/runTPCRefit.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/macro/run_calib_tof.C b/macro/run_calib_tof.C index 283d0eb27e2ea..4f2956425f898 100644 --- a/macro/run_calib_tof.C +++ b/macro/run_calib_tof.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/macro/run_clus_tof.C b/macro/run_clus_tof.C index c38ab4bafd249..ecbc258f1dc70 100644 --- a/macro/run_clus_tof.C +++ b/macro/run_clus_tof.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/macro/run_cmp2digit_tof.C b/macro/run_cmp2digit_tof.C index e59c3122f9d63..8c11dc2a8c4d1 100644 --- a/macro/run_cmp2digit_tof.C +++ b/macro/run_cmp2digit_tof.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/macro/run_collect_calib_tof.C b/macro/run_collect_calib_tof.C index 2e94fc5a45f98..0634f59f25859 100644 --- a/macro/run_collect_calib_tof.C +++ b/macro/run_collect_calib_tof.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/macro/run_digi2raw_tof.C b/macro/run_digi2raw_tof.C index 98cde84a0e60a..719021fa1cc08 100644 --- a/macro/run_digi2raw_tof.C +++ b/macro/run_digi2raw_tof.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/macro/run_match_tof.C b/macro/run_match_tof.C index 0151d7f2b5ae3..dcb7fe5f4eb4d 100644 --- a/macro/run_match_tof.C +++ b/macro/run_match_tof.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/packaging/CMakeLists.txt b/packaging/CMakeLists.txt index 38a4727686202..628f9e895f6ef 100644 --- a/packaging/CMakeLists.txt +++ b/packaging/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include(CPack) diff --git a/packaging/O2Config.cmake b/packaging/O2Config.cmake index deeb63d7dc2c4..abc464051c0eb 100644 --- a/packaging/O2Config.cmake +++ b/packaging/O2Config.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include("${CMAKE_CURRENT_LIST_DIR}/O2Dependencies.cmake") diff --git a/prodtests/CMakeLists.txt b/prodtests/CMakeLists.txt index c5fff0db4367b..820faca110ae5 100644 --- a/prodtests/CMakeLists.txt +++ b/prodtests/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. install(PROGRAMS sim_performance_test.sh sim_challenge.sh check_embedding_pileup.sh produce_QEDhits.sh diff --git a/run/CMakeLists.txt b/run/CMakeLists.txt index 844b857abf617..01075a75e3c1d 100644 --- a/run/CMakeLists.txt +++ b/run/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. # allsim is not a real library (i.e. not something that is built) but a # convenient bag for all the deps needed in the executables below diff --git a/run/O2HitMerger.h b/run/O2HitMerger.h index b7821b4dbd3a8..d703a190a1bc5 100644 --- a/run/O2HitMerger.h +++ b/run/O2HitMerger.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/run/O2HitMergerRunner.cxx b/run/O2HitMergerRunner.cxx index c0610ff5b3850..2675506b1e8d8 100644 --- a/run/O2HitMergerRunner.cxx +++ b/run/O2HitMergerRunner.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/run/O2PrimaryServerDevice.h b/run/O2PrimaryServerDevice.h index efcf20e075acc..7690ff8307436 100644 --- a/run/O2PrimaryServerDevice.h +++ b/run/O2PrimaryServerDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/run/O2PrimaryServerDeviceRunner.cxx b/run/O2PrimaryServerDeviceRunner.cxx index 647ce65c6c4bc..00cf0d64ac1d1 100644 --- a/run/O2PrimaryServerDeviceRunner.cxx +++ b/run/O2PrimaryServerDeviceRunner.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/run/O2SimDevice.h b/run/O2SimDevice.h index 536fa65eb5482..967ecd80e8614 100644 --- a/run/O2SimDevice.h +++ b/run/O2SimDevice.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/run/O2SimDeviceRunner.cxx b/run/O2SimDeviceRunner.cxx index 12559799aa645..7167ba77f117c 100644 --- a/run/O2SimDeviceRunner.cxx +++ b/run/O2SimDeviceRunner.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/run/PrimaryServerState.h b/run/PrimaryServerState.h index 6a1e4d97d599f..5a15cca12b9b1 100644 --- a/run/PrimaryServerState.h +++ b/run/PrimaryServerState.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/run/SimPublishChannelHelper.h b/run/SimPublishChannelHelper.h index 50d78b4061440..7c624058e49f2 100644 --- a/run/SimPublishChannelHelper.h +++ b/run/SimPublishChannelHelper.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/run/checkStack.cxx b/run/checkStack.cxx index 79da689a4eeb4..718379daea623 100644 --- a/run/checkStack.cxx +++ b/run/checkStack.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/run/o2-sim-client.py b/run/o2-sim-client.py index 58fac4d2e911a..89b28219bea20 100755 --- a/run/o2-sim-client.py +++ b/run/o2-sim-client.py @@ -1,11 +1,13 @@ #!/usr/bin/env python3 ''' -Copyright CERN and copyright holders of ALICE O2. This software is -distributed under the terms of the GNU General Public License v3 (GPL -Version 3), copied verbatim in the file "COPYING". +Copyright 2019-2020 CERN and copyright holders of ALICE O2. +See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +All rights not expressly granted are reserved. + +This software is distributed under the terms of the GNU General Public +License v3 (GPL Version 3), copied verbatim in the file "COPYING". -See http://alice-o2.web.cern.ch/license for full licensing information. In applying this license CERN does not waive the privileges and immunities granted to it by virtue of its status as an Intergovernmental Organization or submit itself to any jurisdiction. diff --git a/run/o2sim.cxx b/run/o2sim.cxx index 632fb0db7f3cc..174db40f876c0 100644 --- a/run/o2sim.cxx +++ b/run/o2sim.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/run/o2sim_parallel.cxx b/run/o2sim_parallel.cxx index c28d3591a46e8..8f41a0740079b 100644 --- a/run/o2sim_parallel.cxx +++ b/run/o2sim_parallel.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/tests/CMakeLists.txt b/tests/CMakeLists.txt index 0d42d8f846058..508b79a8991c0 100644 --- a/tests/CMakeLists.txt +++ b/tests/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/tests/O2SetupTesting.cmake b/tests/O2SetupTesting.cmake index ff9e433a20163..ed3944616f9fe 100644 --- a/tests/O2SetupTesting.cmake +++ b/tests/O2SetupTesting.cmake @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. include_guard() diff --git a/version/O2Version.cxx.in b/version/O2Version.cxx.in index 585536ce68bc0..3aae14695f1ea 100644 --- a/version/O2Version.cxx.in +++ b/version/O2Version.cxx.in @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/version/O2Version.h b/version/O2Version.h index d67328043c02b..8c7c155ba0a18 100644 --- a/version/O2Version.h +++ b/version/O2Version.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/version/O2Version.h.in b/version/O2Version.h.in index 0929c532c9f02..74e9a96eebc05 100644 --- a/version/O2Version.h.in +++ b/version/O2Version.h.in @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization From 5a2b6de52d3596299afe00bd58c6a04612aab7d0 Mon Sep 17 00:00:00 2001 From: shahoian Date: Wed, 23 Jun 2021 12:15:23 +0200 Subject: [PATCH 012/314] make ccdb-url a ZDC device option, rather than global of w.flow --- .../include/ZDCWorkflow/DigitRecoSpec.h | 14 +++++++------- .../workflow/include/ZDCWorkflow/RecoWorkflow.h | 2 +- .../include/ZDCWorkflow/ZDCDataReaderDPLSpec.h | 4 ++-- Detectors/ZDC/workflow/src/DigitRecoSpec.cxx | 17 ++++++----------- Detectors/ZDC/workflow/src/RecoWorkflow.cxx | 4 ++-- .../ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx | 11 ++++++----- .../ZDC/workflow/src/o2-zdc-raw2digits.cxx | 4 +--- .../ZDC/workflow/src/zdc-reco-workflow.cxx | 4 +--- 8 files changed, 26 insertions(+), 34 deletions(-) diff --git a/Detectors/ZDC/workflow/include/ZDCWorkflow/DigitRecoSpec.h b/Detectors/ZDC/workflow/include/ZDCWorkflow/DigitRecoSpec.h index c52ebe16df429..e460c618fa8ee 100644 --- a/Detectors/ZDC/workflow/include/ZDCWorkflow/DigitRecoSpec.h +++ b/Detectors/ZDC/workflow/include/ZDCWorkflow/DigitRecoSpec.h @@ -30,23 +30,23 @@ class DigitRecoSpec : public o2::framework::Task { public: DigitRecoSpec(); - DigitRecoSpec(const int verbosity, const bool debugOut, const std::string& ccdbURL); + DigitRecoSpec(const int verbosity, const bool debugOut); ~DigitRecoSpec() override = default; void run(o2::framework::ProcessingContext& pc) final; void init(o2::framework::InitContext& ic) final; void endOfStream(o2::framework::EndOfStreamContext& ec) final; private: - DigiReco mDR; // Reconstruction object - std::string mccdbHost; // Alternative ccdb server - int mVerbosity = 0; // Verbosity level during recostruction - bool mDebugOut = false; // Save temporary reconstruction structures on root file - bool mInitialized = false; // Connect once to CCDB during initialization + DigiReco mDR; // Reconstruction object + std::string mccdbHost{"http://ccdb-test.cern.ch:8080"}; // Alternative ccdb server + int mVerbosity = 0; // Verbosity level during recostruction + bool mDebugOut = false; // Save temporary reconstruction structures on root file + bool mInitialized = false; // Connect once to CCDB during initialization TStopwatch mTimer; }; /// create a processor spec -framework::DataProcessorSpec getDigitRecoSpec(const int verbosity, const bool enableDebugOut, const std::string ccdbURL); +framework::DataProcessorSpec getDigitRecoSpec(const int verbosity, const bool enableDebugOut); } // namespace zdc } // namespace o2 diff --git a/Detectors/ZDC/workflow/include/ZDCWorkflow/RecoWorkflow.h b/Detectors/ZDC/workflow/include/ZDCWorkflow/RecoWorkflow.h index 18b02aa4f9bb2..6191e4d820b15 100644 --- a/Detectors/ZDC/workflow/include/ZDCWorkflow/RecoWorkflow.h +++ b/Detectors/ZDC/workflow/include/ZDCWorkflow/RecoWorkflow.h @@ -19,7 +19,7 @@ namespace o2 { namespace zdc { -framework::WorkflowSpec getRecoWorkflow(const bool useMC, const bool disableRootInp, const bool disableRootOut, const int verbosity, const bool enableDebugOut, const std::string ccdbURL); +framework::WorkflowSpec getRecoWorkflow(const bool useMC, const bool disableRootInp, const bool disableRootOut, const int verbosity, const bool enableDebugOut); } // namespace zdc } // namespace o2 #endif diff --git a/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDataReaderDPLSpec.h b/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDataReaderDPLSpec.h index 8d8aeaba3ea53..40913613e6e91 100644 --- a/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDataReaderDPLSpec.h +++ b/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDataReaderDPLSpec.h @@ -46,7 +46,7 @@ class ZDCDataReaderDPLSpec : public Task { public: ZDCDataReaderDPLSpec() = default; - ZDCDataReaderDPLSpec(const RawReaderZDC& rawReader, const std::string& ccdbURL, const bool verifyTrigger); + ZDCDataReaderDPLSpec(const RawReaderZDC& rawReader, const bool verifyTrigger); ~ZDCDataReaderDPLSpec() override = default; void init(InitContext& ic) final; void run(ProcessingContext& pc) final; @@ -57,7 +57,7 @@ class ZDCDataReaderDPLSpec : public Task RawReaderZDC mRawReader; }; -framework::DataProcessorSpec getZDCDataReaderDPLSpec(const RawReaderZDC& rawReader, const std::string& ccdbURL, const bool verifyTrigger); +framework::DataProcessorSpec getZDCDataReaderDPLSpec(const RawReaderZDC& rawReader, const bool verifyTrigger); } // namespace zdc } // namespace o2 diff --git a/Detectors/ZDC/workflow/src/DigitRecoSpec.cxx b/Detectors/ZDC/workflow/src/DigitRecoSpec.cxx index db7c5a428f16b..40cee8bae910e 100644 --- a/Detectors/ZDC/workflow/src/DigitRecoSpec.cxx +++ b/Detectors/ZDC/workflow/src/DigitRecoSpec.cxx @@ -42,24 +42,18 @@ DigitRecoSpec::DigitRecoSpec() { mTimer.Stop(); mTimer.Reset(); - if (mccdbHost.empty()) { - mccdbHost = "http://ccdb-test.cern.ch:8080"; - } } -DigitRecoSpec::DigitRecoSpec(const int verbosity, const bool debugOut, const std::string& ccdbURL) - : mVerbosity(verbosity), mDebugOut(debugOut), mccdbHost(ccdbURL) +DigitRecoSpec::DigitRecoSpec(const int verbosity, const bool debugOut) + : mVerbosity(verbosity), mDebugOut(debugOut) { - if (mccdbHost.empty()) { - mccdbHost = "http://ccdb-test.cern.ch:8080"; - } mTimer.Stop(); mTimer.Reset(); } void DigitRecoSpec::init(o2::framework::InitContext& ic) { - // At this stage we cannot access the CCDB yet + mccdbHost = ic.options().get("ccdb-url"); } void DigitRecoSpec::run(ProcessingContext& pc) @@ -188,7 +182,7 @@ void DigitRecoSpec::endOfStream(EndOfStreamContext& ec) mTimer.CpuTime(), mTimer.RealTime(), mTimer.Counter() - 1); } -framework::DataProcessorSpec getDigitRecoSpec(const int verbosity = 0, const bool enableDebugOut = false, const std::string ccdbURL = "") +framework::DataProcessorSpec getDigitRecoSpec(const int verbosity = 0, const bool enableDebugOut = false) { std::vector inputs; inputs.emplace_back("trig", "ZDC", "DIGITSBC", 0, Lifetime::Timeframe); @@ -204,7 +198,8 @@ framework::DataProcessorSpec getDigitRecoSpec(const int verbosity = 0, const boo "zdc-digi-reco", inputs, outputs, - AlgorithmSpec{adaptFromTask(verbosity, enableDebugOut, ccdbURL)}}; + AlgorithmSpec{adaptFromTask(verbosity, enableDebugOut)}, + o2::framework::Options{{"ccdb-url", o2::framework::VariantType::String, "http://ccdb-test.cern.ch:8080", {"CCDB Url"}}}}; } } // namespace zdc diff --git a/Detectors/ZDC/workflow/src/RecoWorkflow.cxx b/Detectors/ZDC/workflow/src/RecoWorkflow.cxx index cc16438b609ad..c1dde1a7b8299 100644 --- a/Detectors/ZDC/workflow/src/RecoWorkflow.cxx +++ b/Detectors/ZDC/workflow/src/RecoWorkflow.cxx @@ -20,13 +20,13 @@ namespace o2 namespace zdc { -framework::WorkflowSpec getRecoWorkflow(const bool useMC, const bool disableRootInp, const bool disableRootOut, const int verbosity, const bool enableDebugOut, const std::string ccdbURL) +framework::WorkflowSpec getRecoWorkflow(const bool useMC, const bool disableRootInp, const bool disableRootOut, const int verbosity, const bool enableDebugOut) { framework::WorkflowSpec specs; if (!disableRootInp) { specs.emplace_back(o2::zdc::getDigitReaderSpec(useMC)); } - specs.emplace_back(o2::zdc::getDigitRecoSpec(verbosity, enableDebugOut, ccdbURL)); + specs.emplace_back(o2::zdc::getDigitRecoSpec(verbosity, enableDebugOut)); if (!disableRootOut) { specs.emplace_back(o2::zdc::getZDCRecoWriterDPLSpec()); } diff --git a/Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx b/Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx index 3e8c54f78aa82..f0fd5039e5fe9 100644 --- a/Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx +++ b/Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx @@ -20,13 +20,14 @@ namespace o2 namespace zdc { -ZDCDataReaderDPLSpec::ZDCDataReaderDPLSpec(const RawReaderZDC& rawReader, const std::string& ccdbURL, const bool verifyTrigger) - : mRawReader(rawReader), mccdbHost(ccdbURL), mVerifyTrigger(verifyTrigger) +ZDCDataReaderDPLSpec::ZDCDataReaderDPLSpec(const RawReaderZDC& rawReader, const bool verifyTrigger) + : mRawReader(rawReader), mVerifyTrigger(verifyTrigger) { } void ZDCDataReaderDPLSpec::init(InitContext& ic) { + mccdbHost = ic.options().get("ccdb-url"); o2::ccdb::BasicCCDBManager::instance().setURL(mccdbHost); } @@ -65,7 +66,7 @@ void ZDCDataReaderDPLSpec::run(ProcessingContext& pc) mRawReader.makeSnapshot(pc); } -framework::DataProcessorSpec getZDCDataReaderDPLSpec(const RawReaderZDC& rawReader, const std::string& ccdbURL, const bool verifyTrigger) +framework::DataProcessorSpec getZDCDataReaderDPLSpec(const RawReaderZDC& rawReader, const bool verifyTrigger) { LOG(INFO) << "DataProcessorSpec initDataProcSpec() for RawReaderZDC"; std::vector outputSpec; @@ -74,8 +75,8 @@ framework::DataProcessorSpec getZDCDataReaderDPLSpec(const RawReaderZDC& rawRead "zdc-datareader-dpl", o2::framework::select("TF:ZDC/RAWDATA"), outputSpec, - adaptFromTask(rawReader, ccdbURL, verifyTrigger), - Options{}}; + adaptFromTask(rawReader, verifyTrigger), + Options{{"ccdb-url", o2::framework::VariantType::String, "http://ccdb-test.cern.ch:8080", {"CCDB Url"}}}}; } } // namespace zdc } // namespace o2 diff --git a/Detectors/ZDC/workflow/src/o2-zdc-raw2digits.cxx b/Detectors/ZDC/workflow/src/o2-zdc-raw2digits.cxx index b6ccb9275113e..42f42e6f2abf8 100644 --- a/Detectors/ZDC/workflow/src/o2-zdc-raw2digits.cxx +++ b/Detectors/ZDC/workflow/src/o2-zdc-raw2digits.cxx @@ -24,7 +24,6 @@ void customize(std::vector& workflowOptions) {"dump-blocks-process", VariantType::Bool, false, {"enable dumping of event blocks at processor side"}}, {"dump-blocks-reader", VariantType::Bool, false, {"enable dumping of event blocks at reader side"}}, {"disable-root-output", VariantType::Bool, false, {"disable root-files output writers"}}, - {"ccdb-url", VariantType::String, "http://ccdb-test.cern.ch:8080", {"url of CCDB"}}, {"not-check-trigger", VariantType::Bool, false, {"avoid to check trigger condition during conversion"}}, {"configKeyValues", VariantType::String, "", {"Semicolon separated key=value strings ..."}}}; std::swap(workflowOptions, options); @@ -42,7 +41,6 @@ WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) auto dumpProcessor = configcontext.options().get("dump-blocks-process"); auto dumpReader = configcontext.options().get("dump-blocks-reader"); auto disableRootOut = configcontext.options().get("disable-root-output"); - auto ccdbURL = configcontext.options().get("ccdb-url"); auto checkTrigger = true; auto notCheckTrigger = configcontext.options().get("not-check-trigger"); if (notCheckTrigger) { @@ -52,7 +50,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) o2::conf::ConfigurableParam::updateFromString(configcontext.options().get("configKeyValues")); WorkflowSpec specs; - specs.emplace_back(o2::zdc::getZDCDataReaderDPLSpec(o2::zdc::RawReaderZDC{dumpReader}, ccdbURL, checkTrigger)); + specs.emplace_back(o2::zdc::getZDCDataReaderDPLSpec(o2::zdc::RawReaderZDC{dumpReader}, checkTrigger)); // if (useProcess) { // specs.emplace_back(o2::zdc::getZDCDataProcessDPLSpec(dumpProcessor)); // } diff --git a/Detectors/ZDC/workflow/src/zdc-reco-workflow.cxx b/Detectors/ZDC/workflow/src/zdc-reco-workflow.cxx index b3b9e5b3ba3c5..050caf2db60b8 100644 --- a/Detectors/ZDC/workflow/src/zdc-reco-workflow.cxx +++ b/Detectors/ZDC/workflow/src/zdc-reco-workflow.cxx @@ -24,7 +24,6 @@ void customize(std::vector& workflowOptions) workflowOptions.push_back(ConfigParamSpec{"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writers"}}); workflowOptions.push_back(ConfigParamSpec{"verbosity", VariantType::Int, 0, {"verbosity level"}}); workflowOptions.push_back(ConfigParamSpec{"enable-debug-output", VariantType::Bool, false, {"enable debug tree output"}}); - workflowOptions.push_back(ConfigParamSpec{"ccdb-url", VariantType::String, "http://ccdb-test.cern.ch:8080", {"url of CCDB"}}); std::string keyvaluehelp("Semicolon separated key=value strings ..."); workflowOptions.push_back(ConfigParamSpec{"configKeyValues", VariantType::String, "", {keyvaluehelp}}); } @@ -46,8 +45,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) auto disableRootOut = configcontext.options().get("disable-root-output"); auto verbosity = configcontext.options().get("verbosity"); auto enableDebugOut = configcontext.options().get("enable-debug-output"); - auto ccdbURL = configcontext.options().get("ccdb-url"); LOG(INFO) << "WorkflowSpec getRecoWorkflow useMC " << useMC; - return std::move(o2::zdc::getRecoWorkflow(useMC, disableRootInp, disableRootOut, verbosity, enableDebugOut, ccdbURL)); + return std::move(o2::zdc::getRecoWorkflow(useMC, disableRootInp, disableRootOut, verbosity, enableDebugOut)); } From fddeff64fda63c5a94f649bd47099f4c4432a7fb Mon Sep 17 00:00:00 2001 From: Ivana Hrivnacova Date: Wed, 23 Jun 2021 18:43:00 +0200 Subject: [PATCH 013/314] Updated g4config.in: - Use new Geant4 command for Cerenkov process, as the old one is not working well in Geant4 10.7. - This should solved the problem reported in JIRA (https://alice.its.cern.ch/jira/browse/O2-2390) --- Detectors/gconfig/g4config.in | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/gconfig/g4config.in b/Detectors/gconfig/g4config.in index e36d1056884dd..b1a0aa626e376 100644 --- a/Detectors/gconfig/g4config.in +++ b/Detectors/gconfig/g4config.in @@ -23,7 +23,7 @@ /process/optical/processActivation Scintillation 0 /process/optical/processActivation OpWLS 0 /process/optical/processActivation OpMieHG 0 -/process/optical/setTrackSecondariesFirst Cerenkov 0 +/process/optical/cerenkov/setTrackSecondariesFirst false /mcMagField/stepperType NystromRK4 # PAI for TRD From 406a22d373498f07f0e9bbda67e1f7634673c425 Mon Sep 17 00:00:00 2001 From: David Rohr Date: Tue, 22 Jun 2021 23:28:27 +0200 Subject: [PATCH 014/314] FST: Remove pipeline argument for CPV, no longer needed after clusterizer fix --- prodtests/full-system-test/dpl-workflow.sh | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/prodtests/full-system-test/dpl-workflow.sh b/prodtests/full-system-test/dpl-workflow.sh index e32698d4f8235..7925e85fa4dc5 100755 --- a/prodtests/full-system-test/dpl-workflow.sh +++ b/prodtests/full-system-test/dpl-workflow.sh @@ -84,13 +84,11 @@ if [ $EPNPIPELINES != 0 ]; then N_TPCITS=$(($(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) > 0 ? $(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) : 1)) N_ITSDEC=$(($(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) > 0 ? $(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) : 1)) N_EMC=$(($(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) > 0 ? $(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) : 1)) - N_CPV=$(($(expr 5 \* $EPNPIPELINES \* $NGPUS / 4) > 0 ? $(expr 5 \* $EPNPIPELINES \* $NGPUS / 4) : 1)) else N_TPCENT=1 N_TPCITS=1 N_ITSDEC=1 N_EMC=1 - N_CPV=1 fi # Input workflow @@ -142,7 +140,7 @@ fi # Workflows disabled in async mode if [ $CTFINPUT == 0 ]; then WORKFLOW+="o2-phos-reco-workflow $ARGS_ALL --input-type raw --output-type cells --disable-root-input --disable-root-output $DISABLE_MC | " - WORKFLOW+="o2-cpv-reco-workflow $ARGS_ALL --input-type raw --output-type clusters --disable-root-input --disable-root-output $DISABLE_MC --pipeline CPVClusterizerSpec:$N_CPV | " + WORKFLOW+="o2-cpv-reco-workflow $ARGS_ALL --input-type raw --output-type clusters --disable-root-input --disable-root-output $DISABLE_MC | " WORKFLOW+="o2-emcal-reco-workflow $ARGS_ALL --input-type raw --output-type cells --disable-root-output $DISABLE_MC --pipeline EMCALRawToCellConverterSpec:$N_EMC | " WORKFLOW+="o2-zdc-raw2digits $ARGS_ALL --disable-root-output | " WORKFLOW+="o2-hmpid-raw-to-digits-stream-workflow $ARGS_ALL | " From dfc43d42c0d2b323f3b10d722abdd650d9645d10 Mon Sep 17 00:00:00 2001 From: David Rohr Date: Tue, 22 Jun 2021 23:38:39 +0200 Subject: [PATCH 015/314] TRD should respect number of GPUs configured for OMP, set to 1 during sync reco --- GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx | 2 +- prodtests/full-system-test/dpl-workflow.sh | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx index 770d5c70e0402..5cb5757b5068d 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx @@ -261,7 +261,7 @@ void GPUTRDTracker_t::DoTracking(GPUChainTracking* chainTracking) chainTracking->DoTRDGPUTracking(); } else { #ifdef WITH_OPENMP -#pragma omp parallel for +#pragma omp parallel for num_threads(mRec->GetProcessingSettings().ompThreads) for (int iTrk = 0; iTrk < mNTracks; ++iTrk) { if (omp_get_num_threads() > mMaxThreads) { GPUError("Number of parallel threads too high, aborting tracking"); diff --git a/prodtests/full-system-test/dpl-workflow.sh b/prodtests/full-system-test/dpl-workflow.sh index 7925e85fa4dc5..2e45eb77f2206 100755 --- a/prodtests/full-system-test/dpl-workflow.sh +++ b/prodtests/full-system-test/dpl-workflow.sh @@ -43,7 +43,7 @@ TRD_CONFIG= if [ $SYNCMODE == 1 ]; then ITS_CONFIG_KEY+="fastMultConfig.cutMultClusLow=30;fastMultConfig.cutMultClusHigh=2000;fastMultConfig.cutMultVtxHigh=500;" GPU_CONFIG_KEY+="GPU_global.synchronousProcessing=1;GPU_proc.clearO2OutputFromGPU=1;" - TRD_CONFIG+=" --tracking-sources ITS-TPC" + TRD_CONFIG+=" --tracking-sources ITS-TPC --configKeyValues 'GPU_proc.ompThreads=1;'" else TRD_CONFIG+=" --tracking-sources TPC,ITS-TPC" fi From a0034c3bfed8a464a734a68f7efb8dc5e848381c Mon Sep 17 00:00:00 2001 From: wiechula Date: Tue, 22 Jun 2021 00:56:28 +0200 Subject: [PATCH 016/314] Add possibility to read StfBuilder files directly --- .../include/TPCReconstruction/RawReaderCRU.h | 5 +- .../TPC/reconstruction/src/RawReaderCRU.cxx | 47 ++++++++++++++----- 2 files changed, 39 insertions(+), 13 deletions(-) diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderCRU.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderCRU.h index ff2b0988d4679..73efcbd835a6a 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderCRU.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderCRU.h @@ -410,7 +410,8 @@ class RawReaderCRUEventSync LinkInfo& getLinkInfo(const RDH& rdh, DataType dataType) { if (!mLastEvent) { - createEvent(rdh, dataType); + const auto heartbeatOrbit = RDHUtils::getHeartBeatOrbit(rdh); + createEvent(heartbeatOrbit, dataType); } const auto feeId = RDHUtils::getFEEID(rdh); @@ -455,7 +456,7 @@ class RawReaderCRUEventSync void sortEvents() { std::sort(mEventInformation.begin(), mEventInformation.end()); } /// create a new event or return the one with the given HB orbit - EventInfo& createEvent(const RDH& rdh, DataType dataType); + EventInfo& createEvent(const uint32_t heartbeatOrbit, DataType dataType); /// analyse events and mark complete events void analyse(RAWDataType rawDataType = RAWDataType::GBT); diff --git a/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx b/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx index 4323393b76acf..2ccd04f9363fe 100644 --- a/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx +++ b/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx @@ -18,6 +18,7 @@ #include "TSystem.h" #include "TObjArray.h" +#include "Headers/DataHeader.h" #include "TPCReconstruction/RawReaderCRU.h" #include "TPCBase/Mapper.h" #include "Framework/Logger.h" @@ -28,7 +29,10 @@ using namespace o2::tpc::rawreader; std::ostream& operator<<(std::ostream& output, const RDH& rdh); -std::istream& operator>>(std::istream& input, RDH& rdh); + +template +std::istream& operator>>(std::istream& input, DataType& data); + void printHeader(); void printHorizontal(const RDH& rdh); @@ -42,10 +46,8 @@ RawReaderCRUEventSync::LinkInfo& RawReaderCRUEventSync::getLinkInfo(uint32_t hea } */ -RawReaderCRUEventSync::EventInfo& RawReaderCRUEventSync::createEvent(const RDH& rdh, DataType dataType) +RawReaderCRUEventSync::EventInfo& RawReaderCRUEventSync::createEvent(const uint32_t heartbeatOrbit, DataType dataType) { - const auto heartbeatOrbit = RDHUtils::getHeartBeatOrbit(rdh); - // TODO: might be that reversing the loop below has the same effect as using mLastEvent if (mLastEvent && mLastEvent->hasHearbeatOrbit(heartbeatOrbit)) { return *mLastEvent; @@ -218,6 +220,8 @@ int RawReaderCRU::scanFile() mFileSize = file.tellg(); file.seekg(0, file.beg); + const bool isTFfile = (mInputFileName.rfind(".tf") == mInputFileName.size() - 3); + // the file is supposed to contain N x 8kB packets. So the number of packets // can be determined by the file-size. Ideally, this is not required but the // information is derived directly from the header size and payload size. @@ -226,11 +230,30 @@ int RawReaderCRU::scanFile() // read in the RDH, then jump to the next RDH position RDH rdh; + o2::header::DataHeader dh; uint32_t currentPacket = 0; uint32_t lastHeartbeatOrbit = 0; - size_t currentPos = 0; + + if (isTFfile) { + // skip the StfBuilder meta data information + file >> dh; + file.seekg(dh.payloadSize, std::ios::cur); + file >> dh; + file.seekg(dh.payloadSize, std::ios::cur); + } + + size_t currentPos = file.tellg(); + size_t dhPayloadSize{}; + size_t dhPayloadSizeSeen{}; while ((currentPos < mFileSize) && !file.eof()) { + // ===| in case of TF data file read data header |=== + if (isTFfile && (!dhPayloadSize || (dhPayloadSizeSeen == dhPayloadSize))) { + file >> dh; + dhPayloadSize = dh.payloadSize; + dhPayloadSizeSeen = 0; + currentPos = file.tellg(); + } // ===| read in the RawDataHeader at the current position |================= file >> rdh; @@ -239,6 +262,7 @@ int RawReaderCRU::scanFile() const size_t offset = packetSize - RDHUtils::getHeaderSize(rdh); const auto memorySize = RDHUtils::getMemorySize(rdh); const auto payloadSize = memorySize - RDHUtils::getHeaderSize(rdh); + dhPayloadSizeSeen += packetSize; // ===| check for truncated file |========================================== const size_t curPos = file.tellg(); @@ -302,7 +326,7 @@ int RawReaderCRU::scanFile() RDHUtils::setFEEID(rdh, feeId); } - const auto heartbeatOrbit = RDHUtils::getHeartBeatOrbit(rdh); + const auto heartbeatOrbit = isTFfile ? dh.firstTForbit : RDHUtils::getHeartBeatOrbit(rdh); const auto endPoint = rdh_utils::getEndPoint(feeId); const auto linkID = rdh_utils::getLink(feeId); const auto globalLinkID = linkID + endPoint * 12; @@ -321,7 +345,7 @@ int RawReaderCRU::scanFile() if (mManager) { // in case of triggered mode, we use the first heartbeat orbit as event identifier if ((lastHeartbeatOrbit == 0) || (heartbeatOrbit != lastHeartbeatOrbit)) { - mManager->mEventSync.createEvent(rdh, mManager->getDataType()); + mManager->mEventSync.createEvent(heartbeatOrbit, mManager->getDataType()); lastHeartbeatOrbit = heartbeatOrbit; } linkInfo = &mManager->mEventSync.getLinkInfo(rdh, mManager->getDataType()); @@ -1093,11 +1117,12 @@ void printHorizontal(const RDH& rdh) (uint64_t)RDHUtils::getStop(rdh)); } -std::istream& operator>>(std::istream& input, RDH& rdh) +template +std::istream& operator>>(std::istream& input, DataType& data) { - const int headerSize = sizeof(rdh); - auto charPtr = reinterpret_cast(&rdh); - input.read(charPtr, headerSize); + const int dataTypeSize = sizeof(data); + auto charPtr = reinterpret_cast(&data); + input.read(charPtr, dataTypeSize); return input; } From 98fc5f651b438c2e965fc7d8c72bdc33ae237e0d Mon Sep 17 00:00:00 2001 From: Nazar Burmasov Date: Sun, 20 Jun 2021 16:49:31 +0300 Subject: [PATCH 017/314] Move track extra info to a holder struct --- .../AODProducerWorkflowSpec.h | 24 +- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 226 ++++++++---------- 2 files changed, 127 insertions(+), 123 deletions(-) diff --git a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h index e44fdd4aa6900..86ab7464c365f 100644 --- a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h +++ b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h @@ -198,6 +198,28 @@ class AODProducerWorkflowDPL : public Task uint32_t mFDDAmplitude = 0xFFFFF000; // 11 bits uint32_t mT0Amplitude = 0xFFFFF000; // 11 bits + struct TrackExtraInfo { + float tpcInnerParam = 0.f; + uint32_t flags = 0; + uint8_t itsClusterMap = 0; + uint8_t tpcNClsFindable = 0; + int8_t tpcNClsFindableMinusFound = 0; + int8_t tpcNClsFindableMinusCrossedRows = 0; + uint8_t tpcNClsShared = 0; + uint8_t trdPattern = 0; + float itsChi2NCl = -999.f; + float tpcChi2NCl = -999.f; + float trdChi2 = -999.f; + float tofChi2 = -999.f; + float tpcSignal = -999.f; + float trdSignal = -999.f; + float tofSignal = -999.f; + float length = -999.f; + float tofExpMom = -999.f; + float trackEtaEMCAL = -999.f; + float trackPhiEMCAL = -999.f; + }; + void collectBCs(gsl::span& ft0RecPoints, gsl::span& primVertices, const std::vector& mcRecords, @@ -210,7 +232,7 @@ class AODProducerWorkflowDPL : public Task const o2::track::TrackParCov& track, int collisionID, int src); template - void addToTracksExtraTable(TracksExtraCursorType& tracksExtraCursor); + void addToTracksExtraTable(TracksExtraCursorType& tracksExtraCursor, TrackExtraInfo& extraInfoHolder); template void addToMFTTracksTable(mftTracksCursorType& mftTracksCursor, const o2::mft::TrackMFT& track, int collisionID); diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index cd8851678b9b6..09533f691cfbb 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -55,27 +55,6 @@ using GID = o2::dataformats::GlobalTrackID; namespace o2::aodproducer { -// using global variables to pass parameters to extra table filler -float tpcInnerParam = 0.f; -uint32_t flags = 0; -uint8_t itsClusterMap = 0; -uint8_t tpcNClsFindable = 0; -int8_t tpcNClsFindableMinusFound = 0; -int8_t tpcNClsFindableMinusCrossedRows = 0; -uint8_t tpcNClsShared = 0; -uint8_t trdPattern = 0; -float itsChi2NCl = -999.f; -float tpcChi2NCl = -999.f; -float trdChi2 = -999.f; -float tofChi2 = -999.f; -float tpcSignal = -999.f; -float trdSignal = -999.f; -float tofSignal = -999.f; -float length = -999.f; -float tofExpMom = -999.f; -float trackEtaEMCAL = -999.f; -float trackPhiEMCAL = -999.f; - void AODProducerWorkflowDPL::collectBCs(gsl::span& ft0RecPoints, gsl::span& primVertices, const std::vector& mcRecords, @@ -173,29 +152,29 @@ void AODProducerWorkflowDPL::addToTracksTable(TracksCursorType& tracksCursor, Tr } template -void AODProducerWorkflowDPL::addToTracksExtraTable(TracksExtraCursorType& tracksExtraCursor) +void AODProducerWorkflowDPL::addToTracksExtraTable(TracksExtraCursorType& tracksExtraCursor, TrackExtraInfo& extraInfoHolder) { // extra tracksExtraCursor(0, - truncateFloatFraction(tpcInnerParam, mTrack1Pt), - flags, - itsClusterMap, - tpcNClsFindable, - tpcNClsFindableMinusFound, - tpcNClsFindableMinusCrossedRows, - tpcNClsShared, - trdPattern, - truncateFloatFraction(itsChi2NCl, mTrackCovOffDiag), - truncateFloatFraction(tpcChi2NCl, mTrackCovOffDiag), - truncateFloatFraction(trdChi2, mTrackCovOffDiag), - truncateFloatFraction(tofChi2, mTrackCovOffDiag), - truncateFloatFraction(tpcSignal, mTrackSignal), - truncateFloatFraction(trdSignal, mTrackSignal), - truncateFloatFraction(tofSignal, mTrackSignal), - truncateFloatFraction(length, mTrackSignal), - truncateFloatFraction(tofExpMom, mTrack1Pt), - truncateFloatFraction(trackEtaEMCAL, mTrackPosEMCAL), - truncateFloatFraction(trackPhiEMCAL, mTrackPosEMCAL)); + truncateFloatFraction(extraInfoHolder.tpcInnerParam, mTrack1Pt), + extraInfoHolder.flags, + extraInfoHolder.itsClusterMap, + extraInfoHolder.tpcNClsFindable, + extraInfoHolder.tpcNClsFindableMinusFound, + extraInfoHolder.tpcNClsFindableMinusCrossedRows, + extraInfoHolder.tpcNClsShared, + extraInfoHolder.trdPattern, + truncateFloatFraction(extraInfoHolder.itsChi2NCl, mTrackCovOffDiag), + truncateFloatFraction(extraInfoHolder.tpcChi2NCl, mTrackCovOffDiag), + truncateFloatFraction(extraInfoHolder.trdChi2, mTrackCovOffDiag), + truncateFloatFraction(extraInfoHolder.tofChi2, mTrackCovOffDiag), + truncateFloatFraction(extraInfoHolder.tpcSignal, mTrackSignal), + truncateFloatFraction(extraInfoHolder.trdSignal, mTrackSignal), + truncateFloatFraction(extraInfoHolder.tofSignal, mTrackSignal), + truncateFloatFraction(extraInfoHolder.length, mTrackSignal), + truncateFloatFraction(extraInfoHolder.tofExpMom, mTrack1Pt), + truncateFloatFraction(extraInfoHolder.trackEtaEMCAL, mTrackPosEMCAL), + truncateFloatFraction(extraInfoHolder.trackPhiEMCAL, mTrackPosEMCAL)); } template @@ -225,7 +204,7 @@ void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& // mark reconstructed MC particles to store them into the table for (int i = 0; i < mcTruthITS.size(); i++) { auto& mcTruth = mcTruthITS[i]; - if (!mcTruth.isValid() || !isStoredITS[i]) { + if (!mcTruth.isValid()) { continue; } int source = mcTruth.getSourceID(); @@ -235,7 +214,7 @@ void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& } for (int i = 0; i < mcTruthMFT.size(); i++) { auto& mcTruth = mcTruthMFT[i]; - if (!mcTruth.isValid() || !isStoredMFT[i]) { + if (!mcTruth.isValid()) { continue; } int source = mcTruth.getSourceID(); @@ -245,7 +224,7 @@ void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& } for (int i = 0; i < mcTruthTPC.size(); i++) { auto& mcTruth = mcTruthTPC[i]; - if (!mcTruth.isValid() || !isStoredTPC[i]) { + if (!mcTruth.isValid()) { continue; } int source = mcTruth.getSourceID(); @@ -288,7 +267,7 @@ void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& for (int particle = 0; particle < mcParticles.size(); particle++) { auto mapItem = toStore.find(Triplet_t(source, event, particle)); if (mapItem != toStore.end()) { - mapItem->second = tableIndex; + mapItem->second = tableIndex - 1; tableIndex++; } } @@ -296,7 +275,7 @@ void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& // if all mc particles are stored, all mc particles will be enumerated if (!mRecoOnly) { for (int particle = 0; particle < mcParticles.size(); particle++) { - toStore[Triplet_t(source, event, particle)] = tableIndex; + toStore[Triplet_t(source, event, particle)] = tableIndex - 1; tableIndex++; } } @@ -419,6 +398,9 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) { mTimer.Start(false); + // initialize track extra holder structure + TrackExtraInfo extraInfoHolder; + o2::globaltracking::RecoContainer recoData; recoData.collectData(pc, *mDataRequest); @@ -660,45 +642,45 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) int end = start + trackRefU.getEntriesOfSource(src); LOG(DEBUG) << "Unassigned tracks: src = " << src << ", start = " << start << ", end = " << end; for (int ti = start; ti < end; ti++) { - tpcInnerParam = 0.f; - flags = 0; - itsClusterMap = 0; - tpcNClsFindable = 0; - tpcNClsFindableMinusFound = 0; - tpcNClsFindableMinusCrossedRows = 0; - tpcNClsShared = 0; - trdPattern = 0; - itsChi2NCl = -999.f; - tpcChi2NCl = -999.f; - trdChi2 = -999.f; - tofChi2 = -999.f; - tpcSignal = -999.f; - trdSignal = -999.f; - tofSignal = -999.f; - length = -999.f; - tofExpMom = -999.f; - trackEtaEMCAL = -999.f; - trackPhiEMCAL = -999.f; + extraInfoHolder.tpcInnerParam = 0.f; + extraInfoHolder.flags = 0; + extraInfoHolder.itsClusterMap = 0; + extraInfoHolder.tpcNClsFindable = 0; + extraInfoHolder.tpcNClsFindableMinusFound = 0; + extraInfoHolder.tpcNClsFindableMinusCrossedRows = 0; + extraInfoHolder.tpcNClsShared = 0; + extraInfoHolder.trdPattern = 0; + extraInfoHolder.itsChi2NCl = -999.f; + extraInfoHolder.tpcChi2NCl = -999.f; + extraInfoHolder.trdChi2 = -999.f; + extraInfoHolder.tofChi2 = -999.f; + extraInfoHolder.tpcSignal = -999.f; + extraInfoHolder.trdSignal = -999.f; + extraInfoHolder.tofSignal = -999.f; + extraInfoHolder.length = -999.f; + extraInfoHolder.tofExpMom = -999.f; + extraInfoHolder.trackEtaEMCAL = -999.f; + extraInfoHolder.trackPhiEMCAL = -999.f; auto& trackIndex = primVerGIs[ti]; if (src == GIndex::Source::ITS && mFillTracksITS) { const auto& track = tracksITS[trackIndex.getIndex()]; isStoredITS[trackIndex.getIndex()] = true; // extra info - itsClusterMap = track.getPattern(); + extraInfoHolder.itsClusterMap = track.getPattern(); // track addToTracksTable(tracksCursor, tracksCovCursor, track, -1, src); - addToTracksExtraTable(tracksExtraCursor); + addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); } if (src == GIndex::Source::TPC && mFillTracksTPC) { const auto& track = tracksTPC[trackIndex.getIndex()]; isStoredTPC[trackIndex.getIndex()] = true; // extra info - tpcChi2NCl = track.getNClusters() ? track.getChi2() / track.getNClusters() : 0; - tpcSignal = track.getdEdx().dEdxTotTPC; - tpcNClsFindable = track.getNClusters(); + extraInfoHolder.tpcChi2NCl = track.getNClusters() ? track.getChi2() / track.getNClusters() : 0; + extraInfoHolder.tpcSignal = track.getdEdx().dEdxTotTPC; + extraInfoHolder.tpcNClsFindable = track.getNClusters(); // track addToTracksTable(tracksCursor, tracksCovCursor, track, -1, src); - addToTracksExtraTable(tracksExtraCursor); + addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); } if (src == GIndex::Source::ITSTPC && mFillTracksITSTPC) { const auto& track = tracksITSTPC[trackIndex.getIndex()]; @@ -707,41 +689,41 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) if (contributorsGID[GIndex::Source::ITS].isIndexSet()) { isStoredITS[track.getRefITS()] = true; const auto& itsOrig = recoData.getITSTrack(contributorsGID[GIndex::ITS]); - itsClusterMap = itsOrig.getPattern(); + extraInfoHolder.itsClusterMap = itsOrig.getPattern(); } if (contributorsGID[GIndex::Source::TPC].isIndexSet()) { isStoredTPC[track.getRefTPC()] = true; const auto& tpcOrig = recoData.getTPCTrack(contributorsGID[GIndex::TPC]); - tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; - tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; - tpcNClsFindable = tpcOrig.getNClusters(); + extraInfoHolder.tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; + extraInfoHolder.tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; + extraInfoHolder.tpcNClsFindable = tpcOrig.getNClusters(); } addToTracksTable(tracksCursor, tracksCovCursor, track, -1, src); - addToTracksExtraTable(tracksExtraCursor); + addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); } if (src == GIndex::Source::ITSTPCTOF && mFillTracksITSTPC) { auto contributorsGID = recoData.getSingleDetectorRefs(trackIndex); const auto& track = recoData.getITSTPCTOFTrack(contributorsGID[GIndex::Source::ITSTPCTOF]); const auto& tofMatch = recoData.getTOFMatch(contributorsGID[GIndex::Source::ITSTPCTOF]); - tofChi2 = tofMatch.getChi2(); + extraInfoHolder.tofChi2 = tofMatch.getChi2(); const auto& tofInt = tofMatch.getLTIntegralOut(); - tofSignal = tofInt.getTOF(0); // fixme: what id should be used here? - length = tofInt.getL(); + extraInfoHolder.tofSignal = tofInt.getTOF(0); // fixme: what id should be used here? + extraInfoHolder.length = tofInt.getL(); // extra info from sub-tracks if (contributorsGID[GIndex::Source::ITS].isIndexSet()) { isStoredITS[track.getRefITS()] = true; const auto& itsOrig = recoData.getITSTrack(contributorsGID[GIndex::ITS]); - itsClusterMap = itsOrig.getPattern(); + extraInfoHolder.itsClusterMap = itsOrig.getPattern(); } if (contributorsGID[GIndex::Source::TPC].isIndexSet()) { isStoredTPC[track.getRefTPC()] = true; const auto& tpcOrig = recoData.getTPCTrack(contributorsGID[GIndex::TPC]); - tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; - tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; - tpcNClsFindable = tpcOrig.getNClusters(); + extraInfoHolder.tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; + extraInfoHolder.tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; + extraInfoHolder.tpcNClsFindable = tpcOrig.getNClusters(); } addToTracksTable(tracksCursor, tracksCovCursor, track, -1, src); - addToTracksExtraTable(tracksExtraCursor); + addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); } if (src == GIndex::Source::MFT && mFillTracksMFT) { const auto& track = tracksMFT[trackIndex.getIndex()]; @@ -794,45 +776,45 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) LOG(DEBUG) << " ====> Collision " << collisionID << " ; src = " << src << " : ntracks = " << end - start; LOG(DEBUG) << "start = " << start << ", end = " << end; for (int ti = start; ti < end; ti++) { - tpcInnerParam = 0.f; - flags = 0; - itsClusterMap = 0; - tpcNClsFindable = 0; - tpcNClsFindableMinusFound = 0; - tpcNClsFindableMinusCrossedRows = 0; - tpcNClsShared = 0; - trdPattern = 0; - itsChi2NCl = -999.f; - tpcChi2NCl = -999.f; - trdChi2 = -999.f; - tofChi2 = -999.f; - tpcSignal = -999.f; - trdSignal = -999.f; - tofSignal = -999.f; - length = -999.f; - tofExpMom = -999.f; - trackEtaEMCAL = -999.f; - trackPhiEMCAL = -999.f; + extraInfoHolder.tpcInnerParam = 0.f; + extraInfoHolder.flags = 0; + extraInfoHolder.itsClusterMap = 0; + extraInfoHolder.tpcNClsFindable = 0; + extraInfoHolder.tpcNClsFindableMinusFound = 0; + extraInfoHolder.tpcNClsFindableMinusCrossedRows = 0; + extraInfoHolder.tpcNClsShared = 0; + extraInfoHolder.trdPattern = 0; + extraInfoHolder.itsChi2NCl = -999.f; + extraInfoHolder.tpcChi2NCl = -999.f; + extraInfoHolder.trdChi2 = -999.f; + extraInfoHolder.tofChi2 = -999.f; + extraInfoHolder.tpcSignal = -999.f; + extraInfoHolder.trdSignal = -999.f; + extraInfoHolder.tofSignal = -999.f; + extraInfoHolder.length = -999.f; + extraInfoHolder.tofExpMom = -999.f; + extraInfoHolder.trackEtaEMCAL = -999.f; + extraInfoHolder.trackPhiEMCAL = -999.f; auto& trackIndex = primVerGIs[ti]; if (src == GIndex::Source::ITS && mFillTracksITS) { const auto& track = tracksITS[trackIndex.getIndex()]; isStoredITS[trackIndex.getIndex()] = true; // extra info - itsClusterMap = track.getPattern(); + extraInfoHolder.itsClusterMap = track.getPattern(); // track addToTracksTable(tracksCursor, tracksCovCursor, track, collisionID, src); - addToTracksExtraTable(tracksExtraCursor); + addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); } if (src == GIndex::Source::TPC && mFillTracksTPC) { const auto& track = tracksTPC[trackIndex.getIndex()]; isStoredTPC[trackIndex.getIndex()] = true; // extra info - tpcChi2NCl = track.getNClusters() ? track.getChi2() / track.getNClusters() : 0; - tpcSignal = track.getdEdx().dEdxTotTPC; - tpcNClsFindable = track.getNClusters(); + extraInfoHolder.tpcChi2NCl = track.getNClusters() ? track.getChi2() / track.getNClusters() : 0; + extraInfoHolder.tpcSignal = track.getdEdx().dEdxTotTPC; + extraInfoHolder.tpcNClsFindable = track.getNClusters(); // track addToTracksTable(tracksCursor, tracksCovCursor, track, collisionID, src); - addToTracksExtraTable(tracksExtraCursor); + addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); } if (src == GIndex::Source::ITSTPC && mFillTracksITSTPC) { const auto& track = tracksITSTPC[trackIndex.getIndex()]; @@ -841,41 +823,41 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) if (contributorsGID[GIndex::Source::ITS].isIndexSet()) { isStoredITS[track.getRefITS()] = true; const auto& itsOrig = recoData.getITSTrack(contributorsGID[GIndex::ITS]); - itsClusterMap = itsOrig.getPattern(); + extraInfoHolder.itsClusterMap = itsOrig.getPattern(); } if (contributorsGID[GIndex::Source::TPC].isIndexSet()) { isStoredTPC[track.getRefTPC()] = true; const auto& tpcOrig = recoData.getTPCTrack(contributorsGID[GIndex::TPC]); - tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; - tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; - tpcNClsFindable = tpcOrig.getNClusters(); + extraInfoHolder.tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; + extraInfoHolder.tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; + extraInfoHolder.tpcNClsFindable = tpcOrig.getNClusters(); } addToTracksTable(tracksCursor, tracksCovCursor, track, collisionID, src); - addToTracksExtraTable(tracksExtraCursor); + addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); } if (src == GIndex::Source::ITSTPCTOF && mFillTracksITSTPC) { auto contributorsGID = recoData.getSingleDetectorRefs(trackIndex); const auto& track = recoData.getITSTPCTOFTrack(contributorsGID[GIndex::Source::ITSTPCTOF]); const auto& tofMatch = recoData.getTOFMatch(contributorsGID[GIndex::Source::ITSTPCTOF]); - tofChi2 = tofMatch.getChi2(); + extraInfoHolder.tofChi2 = tofMatch.getChi2(); const auto& tofInt = tofMatch.getLTIntegralOut(); - tofSignal = tofInt.getTOF(0); // fixme: what id should be used here? - length = tofInt.getL(); + extraInfoHolder.tofSignal = tofInt.getTOF(0); // fixme: what id should be used here? + extraInfoHolder.length = tofInt.getL(); // extra info from sub-tracks if (contributorsGID[GIndex::Source::ITS].isIndexSet()) { isStoredITS[track.getRefITS()] = true; const auto& itsOrig = recoData.getITSTrack(contributorsGID[GIndex::ITS]); - itsClusterMap = itsOrig.getPattern(); + extraInfoHolder.itsClusterMap = itsOrig.getPattern(); } if (contributorsGID[GIndex::Source::TPC].isIndexSet()) { isStoredTPC[track.getRefTPC()] = true; const auto& tpcOrig = recoData.getTPCTrack(contributorsGID[GIndex::TPC]); - tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; - tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; - tpcNClsFindable = tpcOrig.getNClusters(); + extraInfoHolder.tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; + extraInfoHolder.tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; + extraInfoHolder.tpcNClsFindable = tpcOrig.getNClusters(); } addToTracksTable(tracksCursor, tracksCovCursor, track, collisionID, src); - addToTracksExtraTable(tracksExtraCursor); + addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); } if (src == GIndex::Source::MFT && mFillTracksMFT) { const auto& track = tracksMFT[trackIndex.getIndex()]; From 886c53c7135c88282e7f48ca182a1e66b39977ee Mon Sep 17 00:00:00 2001 From: Nazar Burmasov Date: Sun, 20 Jun 2021 17:26:21 +0300 Subject: [PATCH 018/314] Move MFT track labels to a separate table --- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 11 +++++++---- Framework/Core/include/Framework/AnalysisDataModel.h | 10 ++++++++++ 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index 09533f691cfbb..44400501202b7 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -110,7 +110,7 @@ uint64_t AODProducerWorkflowDPL::getTFNumber(const o2::InteractionRecord& tfStar uint32_t initialOrbit = mapStartOrbit->at(runNumber); uint16_t firstRecBC = tfStartIR.bc; - uint32_t firstRecOrbit = initialOrbit + tfStartIR.orbit; + uint32_t firstRecOrbit = tfStartIR.orbit; const o2::InteractionRecord firstRec(firstRecBC, firstRecOrbit); ts += firstRec.bc2ns() / 1000000; @@ -454,6 +454,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto& mftTracksBuilder = pc.outputs().make(Output{"AOD", "MFTTRACK"}); auto& mcParticlesBuilder = pc.outputs().make(Output{"AOD", "MCPARTICLE"}); auto& mcTrackLabelBuilder = pc.outputs().make(Output{"AOD", "MCTRACKLABEL"}); + auto& mcMftTrackLabelBuilder = pc.outputs().make(Output{"AOD", "MCMFTTRACKLABEL"}); auto& fv0aBuilder = pc.outputs().make(Output{"AOD", "FV0A"}); auto& fddBuilder = pc.outputs().make(Output{"AOD", "FDD"}); auto& fv0cBuilder = pc.outputs().make(Output{"AOD", "FV0C"}); @@ -470,6 +471,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto mftTracksCursor = mftTracksBuilder.cursor(); auto mcParticlesCursor = mcParticlesBuilder.cursor(); auto mcTrackLabelCursor = mcTrackLabelBuilder.cursor(); + auto mcMftTrackLabelCursor = mcMftTrackLabelBuilder.cursor(); auto fv0aCursor = fv0aBuilder.cursor(); auto fv0cCursor = fv0cBuilder.cursor(); auto fddCursor = fddBuilder.cursor(); @@ -998,9 +1000,9 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) if (mcTruthMFT.isNoise()) { labelMask |= (0x1 << 14); } - mcTrackLabelCursor(0, - labelID, - labelMask); + mcMftTrackLabelCursor(0, + labelID, + labelMask); } } } @@ -1042,6 +1044,7 @@ DataProcessorSpec getAODProducerWorkflowSpec(GID::mask_t src, bool useMC, bool f outputs.emplace_back(OutputLabel{"O2mfttrack"}, "AOD", "MFTTRACK", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2mcparticle"}, "AOD", "MCPARTICLE", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2mctracklabel"}, "AOD", "MCTRACKLABEL", 0, Lifetime::Timeframe); + outputs.emplace_back(OutputLabel{"O2mcmfttracklabel"}, "AOD", "MCMFTTRACKLABEL", 0, Lifetime::Timeframe); outputs.emplace_back(OutputSpec{"TFN", "TFNumber"}); outputs.emplace_back(OutputLabel{"O2fv0a"}, "AOD", "FV0A", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2fv0c"}, "AOD", "FV0C", 0, Lifetime::Timeframe); diff --git a/Framework/Core/include/Framework/AnalysisDataModel.h b/Framework/Core/include/Framework/AnalysisDataModel.h index 731dde9395007..daa27edac97a5 100644 --- a/Framework/Core/include/Framework/AnalysisDataModel.h +++ b/Framework/Core/include/Framework/AnalysisDataModel.h @@ -806,6 +806,16 @@ DECLARE_SOA_TABLE(McTrackLabels, "AOD", "MCTRACKLABEL", //! Table joined to the mctracklabel::McParticleId, mctracklabel::McMask); using McTrackLabel = McTrackLabels::iterator; +namespace mcmfttracklabel +{ +DECLARE_SOA_INDEX_COLUMN(McParticle, mcParticle); //! MC particle +DECLARE_SOA_COLUMN(McMask, mcMask, uint16_t); //! Bit mask to indicate detector mismatches (bit ON means mismatch). Bit 0-6: mismatch at ITS layer. Bit 7-9: # of TPC mismatches in the ranges 0, 1, 2-3, 4-7, 8-15, 16-31, 32-63, >64. Bit 10: TRD, bit 11: TOF, bit 15: indicates negative label +} // namespace mcmfttracklabel + +DECLARE_SOA_TABLE(McMftTrackLabels, "AOD", "MCMFTTRACKLABEL", //! Table joined to the mft track table containing the MC index + mcmfttracklabel::McParticleId, mcmfttracklabel::McMask); +using McMftTrackLabel = McMftTrackLabels::iterator; + namespace mccalolabel { DECLARE_SOA_INDEX_COLUMN(McParticle, mcParticle); //! MC particle From ba0085a668854dac4020bae09accc5561ec685c4 Mon Sep 17 00:00:00 2001 From: Nazar Burmasov Date: Tue, 22 Jun 2021 13:28:41 +0300 Subject: [PATCH 019/314] Fix naming of the table and data type of the mask --- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 14 ++++++++------ .../Core/include/Framework/AnalysisDataModel.h | 6 +++--- 2 files changed, 11 insertions(+), 9 deletions(-) diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index 44400501202b7..b7765e82cc7b4 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -454,7 +454,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto& mftTracksBuilder = pc.outputs().make(Output{"AOD", "MFTTRACK"}); auto& mcParticlesBuilder = pc.outputs().make(Output{"AOD", "MCPARTICLE"}); auto& mcTrackLabelBuilder = pc.outputs().make(Output{"AOD", "MCTRACKLABEL"}); - auto& mcMftTrackLabelBuilder = pc.outputs().make(Output{"AOD", "MCMFTTRACKLABEL"}); + auto& mcMFTTrackLabelBuilder = pc.outputs().make(Output{"AOD", "MCMFTTRACKLABEL"}); auto& fv0aBuilder = pc.outputs().make(Output{"AOD", "FV0A"}); auto& fddBuilder = pc.outputs().make(Output{"AOD", "FDD"}); auto& fv0cBuilder = pc.outputs().make(Output{"AOD", "FV0C"}); @@ -471,7 +471,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto mftTracksCursor = mftTracksBuilder.cursor(); auto mcParticlesCursor = mcParticlesBuilder.cursor(); auto mcTrackLabelCursor = mcTrackLabelBuilder.cursor(); - auto mcMftTrackLabelCursor = mcMftTrackLabelBuilder.cursor(); + auto mcMFTTrackLabelCursor = mcMFTTrackLabelBuilder.cursor(); auto fv0aCursor = fv0aBuilder.cursor(); auto fv0cCursor = fv0cBuilder.cursor(); auto fddCursor = fddBuilder.cursor(); @@ -909,6 +909,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) uint32_t labelITS; uint32_t labelTPC; uint16_t labelMask; + uint8_t mftLabelMask; // need to go through labels in the same order as for tracks for (auto& trackRef : primVer2TRefs) { @@ -921,6 +922,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) labelITS = labelID; labelTPC = labelID; labelMask = 0; + mftLabelMask = 0; // its labels if (src == GIndex::Source::ITS && mFillTracksITS) { auto& mcTruthITS = tracksITSMCTruth[trackIndex.getIndex()]; @@ -995,14 +997,14 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) labelID = toStore.at(Triplet_t(mcTruthMFT.getSourceID(), mcTruthMFT.getEventID(), mcTruthMFT.getTrackID())); } if (mcTruthMFT.isFake()) { - labelMask |= (0x1 << 15); + mftLabelMask |= (0x1 << 7); } if (mcTruthMFT.isNoise()) { - labelMask |= (0x1 << 14); + mftLabelMask |= (0x1 << 6); } - mcMftTrackLabelCursor(0, + mcMFTTrackLabelCursor(0, labelID, - labelMask); + mftLabelMask); } } } diff --git a/Framework/Core/include/Framework/AnalysisDataModel.h b/Framework/Core/include/Framework/AnalysisDataModel.h index daa27edac97a5..7c9ec7540ea8d 100644 --- a/Framework/Core/include/Framework/AnalysisDataModel.h +++ b/Framework/Core/include/Framework/AnalysisDataModel.h @@ -809,12 +809,12 @@ using McTrackLabel = McTrackLabels::iterator; namespace mcmfttracklabel { DECLARE_SOA_INDEX_COLUMN(McParticle, mcParticle); //! MC particle -DECLARE_SOA_COLUMN(McMask, mcMask, uint16_t); //! Bit mask to indicate detector mismatches (bit ON means mismatch). Bit 0-6: mismatch at ITS layer. Bit 7-9: # of TPC mismatches in the ranges 0, 1, 2-3, 4-7, 8-15, 16-31, 32-63, >64. Bit 10: TRD, bit 11: TOF, bit 15: indicates negative label +DECLARE_SOA_COLUMN(McMask, mcMask, uint8_t); } // namespace mcmfttracklabel -DECLARE_SOA_TABLE(McMftTrackLabels, "AOD", "MCMFTTRACKLABEL", //! Table joined to the mft track table containing the MC index +DECLARE_SOA_TABLE(McMFTTrackLabels, "AOD", "MCMFTTRACKLABEL", //! Table joined to the mft track table containing the MC index mcmfttracklabel::McParticleId, mcmfttracklabel::McMask); -using McMftTrackLabel = McMftTrackLabels::iterator; +using McMFTTrackLabel = McMFTTrackLabels::iterator; namespace mccalolabel { From 9ba3863f2fa3386271b37c9b8e9c3ba5b9e203d8 Mon Sep 17 00:00:00 2001 From: jgrosseo Date: Fri, 25 Jun 2021 09:12:04 +0200 Subject: [PATCH 020/314] adding meta data to aod merger (#6503) --- Analysis/Core/src/AODMerger.cxx | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/Analysis/Core/src/AODMerger.cxx b/Analysis/Core/src/AODMerger.cxx index 0cbd8149e29d1..e00352838c4da 100644 --- a/Analysis/Core/src/AODMerger.cxx +++ b/Analysis/Core/src/AODMerger.cxx @@ -74,6 +74,7 @@ int main(int argc, char* argv[]) in.open(inputCollection); TString line; bool connectedToAliEn = false; + TMap* metaData = nullptr; int mergedDFs = 0; while (in.good()) { in >> line; @@ -95,6 +96,29 @@ int main(int argc, char* argv[]) keyList->Sort(); for (auto key1 : *keyList) { + if (((TObjString*)key1)->GetString().EqualTo("metaData")) { + auto metaDataCurrentFile = (TMap*)inputFile->Get("metaData"); + if (metaData == nullptr) { + metaData = metaDataCurrentFile; + outputFile->cd(); + metaData->Write("metaData", TObject::kSingleKey); + } else { + for (auto metaDataPair : *metaData) { + auto metaDataKey = ((TPair*)metaDataPair)->Key(); + if (metaDataCurrentFile->Contains(((TObjString*)metaDataKey)->GetString())) { + auto value = (TObjString*)metaData->GetValue(((TObjString*)metaDataKey)->GetString()); + auto valueCurrentFile = (TObjString*)metaDataCurrentFile->GetValue(((TObjString*)metaDataKey)->GetString()); + if (!value->GetString().EqualTo(valueCurrentFile->GetString())) { + printf("WARNING: Metadata differs between input files. Key %s : %s vs. %s\n", ((TObjString*)metaDataKey)->GetString().Data(), + value->GetString().Data(), valueCurrentFile->GetString().Data()); + } + } else { + printf("WARNING: Metadata differs between input files. Key %s is not present in current file\n", ((TObjString*)metaDataKey)->GetString().Data()); + } + } + } + } + if (!((TObjString*)key1)->GetString().BeginsWith("DF_")) { continue; } From 072ede13804921da5edb22e24ee310ea87b4287b Mon Sep 17 00:00:00 2001 From: sstiefel19 <55794986+sstiefel19@users.noreply.github.com> Date: Fri, 25 Jun 2021 09:13:51 +0200 Subject: [PATCH 021/314] gammaTask first prototype (#6034) --- .../AnalysisDataModel/StrangenessTables.h | 13 + Analysis/Tasks/CMakeLists.txt | 1 + Analysis/Tasks/PWGGA/CMakeLists.txt | 4 + Analysis/Tasks/PWGGA/gammaConversionsMC.cxx | 335 ++++++++++++++++++ .../include/Framework/AnalysisDataModel.h | 9 +- 5 files changed, 361 insertions(+), 1 deletion(-) create mode 100644 Analysis/Tasks/PWGGA/CMakeLists.txt create mode 100644 Analysis/Tasks/PWGGA/gammaConversionsMC.cxx diff --git a/Analysis/DataModel/include/AnalysisDataModel/StrangenessTables.h b/Analysis/DataModel/include/AnalysisDataModel/StrangenessTables.h index 977161d5f7b4c..49dac7b5a8757 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/StrangenessTables.h +++ b/Analysis/DataModel/include/AnalysisDataModel/StrangenessTables.h @@ -73,6 +73,18 @@ DECLARE_SOA_DYNAMIC_COLUMN(QtArm, qtarm, //! return std::sqrt(RecoDecay::P2(pxneg, pyneg, pzneg) - dp * dp / momTot); //qtarm }); +// Psi pair angle: angle between the plane defined by the electron and positron momenta and the xy plane +DECLARE_SOA_DYNAMIC_COLUMN(PsiPair, psipair, //! + [](float pxpos, float pypos, float pzpos, float pxneg, float pyneg, float pzneg) { + auto clipToPM1 = [](float x) { return x < -1.f ? -1.f : (x > 1.f ? 1.f : x); }; + float ptot2 = RecoDecay::P2(pxpos, pypos, pzpos) * RecoDecay::P2(pxneg, pyneg, pzneg); + float argcos = RecoDecay::dotProd(array{pxpos, pypos, pzpos}, array{pxneg, pyneg, pzneg}) / std::sqrt(ptot2); + float thetaPos = std::atan2(RecoDecay::sqrtSumOfSquares(pxpos, pypos), pzpos); + float thetaNeg = std::atan2(RecoDecay::sqrtSumOfSquares(pxneg, pyneg), pzneg); + float argsin = (thetaNeg - thetaPos) / std::acos(clipToPM1(argcos)); + return std::asin(clipToPM1(argsin)); + }); + //Calculated on the fly with mass assumption + dynamic tables DECLARE_SOA_DYNAMIC_COLUMN(MLambda, mLambda, //! [](float pxpos, float pypos, float pzpos, float pxneg, float pyneg, float pzneg) -> float { return RecoDecay::M(array{array{pxpos, pypos, pzpos}, array{pxneg, pyneg, pzneg}}, array{RecoDecay::getMassPDG(kProton), RecoDecay::getMassPDG(kPiPlus)}); }); @@ -115,6 +127,7 @@ DECLARE_SOA_TABLE_FULL(StoredV0Datas, "V0Datas", "AOD", "V0DATA", //! v0data::DCAV0ToPV, v0data::Alpha, v0data::QtArm, + v0data::PsiPair, //Invariant masses v0data::MLambda, diff --git a/Analysis/Tasks/CMakeLists.txt b/Analysis/Tasks/CMakeLists.txt index a0593f0228745..769abd5ac9c0e 100644 --- a/Analysis/Tasks/CMakeLists.txt +++ b/Analysis/Tasks/CMakeLists.txt @@ -13,6 +13,7 @@ add_subdirectory(PWGCF) add_subdirectory(PWGPP) add_subdirectory(PWGDQ) add_subdirectory(PWGHF) +add_subdirectory(PWGGA) add_subdirectory(PWGJE) add_subdirectory(PWGLF) add_subdirectory(PWGUD) diff --git a/Analysis/Tasks/PWGGA/CMakeLists.txt b/Analysis/Tasks/PWGGA/CMakeLists.txt new file mode 100644 index 0000000000000..9f42842030240 --- /dev/null +++ b/Analysis/Tasks/PWGGA/CMakeLists.txt @@ -0,0 +1,4 @@ +o2_add_dpl_workflow(gammaconversionsmc + SOURCES gammaConversionsMC.cxx + PUBLIC_LINK_LIBRARIES O2::Framework O2::DetectorsBase O2::AnalysisDataModel O2::AnalysisCore O2::DetectorsVertexing + COMPONENT_NAME Analysis) diff --git a/Analysis/Tasks/PWGGA/gammaConversionsMC.cxx b/Analysis/Tasks/PWGGA/gammaConversionsMC.cxx new file mode 100644 index 0000000000000..42ecc1316599a --- /dev/null +++ b/Analysis/Tasks/PWGGA/gammaConversionsMC.cxx @@ -0,0 +1,335 @@ + +#include "Framework/runDataProcessing.h" +#include "Framework/AnalysisTask.h" +#include "Framework/AnalysisDataModel.h" + +#include "AnalysisDataModel/StrangenessTables.h" +#include "AnalysisDataModel/HFSecondaryVertex.h" // for BigTracks + +#include "AnalysisDataModel/PID/PIDResponse.h" +#include "AnalysisDataModel/PID/PIDTPC.h" + +#include +#include + +#include +#include + +using namespace o2; +using namespace o2::framework; +using namespace o2::framework::expressions; + +using tracksAndTPCInfo = soa::Join; + +struct GammaConversionsMc { + + Configurable fSinglePtCut{"fSinglePtCut", 0.04, "minimum daughter track pt"}; + + Configurable fEtaCut{"fEtaCut", 0.8, "accepted eta range"}; + + Configurable fMinR{"fMinR", 5., "minimum conversion radius of the V0s"}; + Configurable fMaxR{"fMaxR", 180., "maximum conversion radius of the V0s"}; + + Configurable fPIDnSigmaBelowElectronLine{"fPIDnSigmaBelowElectronLine", -3., "minimum sigma electron PID for V0 daughter tracks"}; + + Configurable fPIDnSigmaAboveElectronLine{"fPIDnSigmaAboveElectronLine", 3., "maximum sigma electron PID for V0 daughter tracks"}; + + Configurable fPIDnSigmaAbovePionLine{"fPIDnSigmaAbovePionLine", 3., "minimum sigma to be over the pion line for low momentum tracks"}; //case 4: 3.0sigma, 1.0 sigma at high momentum + + Configurable fPIDnSigmaAbovePionLineHighP{"fPIDnSigmaAbovePionLineHighP", 1., "minimum sigma to be over the pion line for high momentum tracks"}; + + Configurable fPIDMinPnSigmaAbovePionLine{"fPIDMinPnSigmaAbovePionLine", 0.4, "minimum track momentum to apply any pion rejection"}; //case 7: // 0.4 GeV + + Configurable fPIDMaxPnSigmaAbovePionLine{"fPIDMaxPnSigmaAbovePionLine", 8., "border between low and high momentum pion rejection"}; //case 7: // 8. GeV + + Configurable fMinTPCFoundOverFindableCls{"fMinTPCNClsFoundOverFindable", 0.6, "minimum ratio found tpc clusters over findable"}; //case 9: // 0.6 + + Configurable fMinTPCCrossedRowsOverFindableCls{"fMinTPCCrossedRowsOverFindableCls", 0.0, "minimum ratio TPC crossed rows over findable clusters"}; + + Configurable fQtPtMax{"fQtPtMax", 0.11, "up to fQtMax, multiply the pt of the V0s by this value to get the maximum qt "}; + + Configurable fQtMax{"fQtMax", 0.040, "maximum qt"}; + Configurable fMaxPhotonAsymmetry{"fMaxPhotonAsymmetry", 0.95, "maximum photon asymetry"}; + Configurable fPsiPairCut{"fPsiPairCut", 0.1, "maximum psi angle of the track pair"}; + + Configurable fCosPAngleCut{"fCosPAngleCut", 0.85, "mimimum cosinus of the pointing angle"}; // case 4 + + HistogramRegistry registry{ + "registry", + { + {"IsPhotonSelected", "IsPhotonSelected", {HistType::kTH1F, {{13, -0.5f, 11.5f}}}}, + + {"beforeCuts/hPtRec", "hPtRec_before", {HistType::kTH1F, {{100, 0.0f, 25.0f}}}}, + {"beforeCuts/hEtaRec", "hEtaRec_before", {HistType::kTH1F, {{1000, -2.f, 2.f}}}}, + {"beforeCuts/hPhiRec", "hEtaRec_before", {HistType::kTH1F, {{1000, 0.f, 2.f * M_PI}}}}, + {"beforeCuts/hConvPointR", "hConvPointR_before", {HistType::kTH1F, {{800, 0.f, 200.f}}}}, + + {"hPtRec", "hPtRec", {HistType::kTH1F, {{100, 0.0f, 25.0f}}}}, + {"hEtaRec", "hEtaRec", {HistType::kTH1F, {{1000, -2.f, 2.f}}}}, + {"hPhiRec", "hEtaRec", {HistType::kTH1F, {{1000, 0.f, 2.f * M_PI}}}}, + {"hConvPointR", "hConvPointR", {HistType::kTH1F, {{800, 0.f, 200.f}}}}, + + {"hTPCdEdxSigEl", "hTPCdEdxSigEl", {HistType::kTH2F, {{150, 0.03f, 20.f}, {400, -10.f, 10.f}}}}, + {"hTPCdEdxSigPi", "hTPCdEdxSigPi", {HistType::kTH2F, {{150, 0.03f, 20.f}, {400, -10.f, 10.f}}}}, + {"hTPCdEdx", "hTPCdEdx", {HistType::kTH2F, {{150, 0.03f, 20.f}, {800, 0.f, 200.f}}}}, + + {"hTPCFoundOverFindableCls", "hTPCFoundOverFindableCls", {HistType::kTH1F, {{100, 0.f, 1.f}}}}, + {"hTPCCrossedRowsOverFindableCls", "hTPCCrossedRowsOverFindableCls", {HistType::kTH1F, {{100, 0.f, 1.5f}}}}, + + {"hArmenteros", "hArmenteros", {HistType::kTH2F, {{200, -1.f, 1.f}, {250, 0.f, 25.f}}}}, + {"hPsiPtRec", "hPsiPtRec", {HistType::kTH2F, {{500, -2.f, 2.f}, {100, 0.f, 25.f}}}}, + + {"hCosPAngle", "hCosPAngle", {HistType::kTH1F, {{1000, -1.f, 1.f}}}}, + + // resolution histos + {"resolutions/hPtRes", "hPtRes_Rec-MC", {HistType::kTH1F, {{100, -0.5f, 0.5f}}}}, + {"resolutions/hEtaRes", "hEtaRes_Rec-MC", {HistType::kTH1F, {{100, -2.f, 2.f}}}}, + {"resolutions/hPhiRes", "hPhiRes_Rec-MC", {HistType::kTH1F, {{100, -M_PI, M_PI}}}}, + + {"resolutions/hConvPointRRes", "hConvPointRRes_Rec-MC", {HistType::kTH1F, {{100, -200.f, 200.f}}}}, + {"resolutions/hConvPointAbsoluteDistanceRes", "hConvPointAbsoluteDistanceRes", {HistType::kTH1F, {{100, -0.0f, 200.f}}}}, + }, + }; + + enum photonCuts { + kPhotonIn = 0, + kTrackEta, + kTrackPt, + kElectronPID, + kPionRejLowMom, + kPionRejHighMom, + kTPCFoundOverFindableCls, + kTPCCrossedRowsOverFindableCls, + kV0Radius, + kArmenteros, + kPsiPair, + kCosinePA, + kPhotonOut + }; + + std::vector fPhotCutsLabels{ + "kPhotonIn", + "kTrackEta", + "kTrackPt", + "kElectronPID", + "kPionRejLowMom", + "kPionRejHighMom", + "kTPCFoundOverFindableCls", + "kTPCCrossedRowsOverFindableCls", + "kV0Radius", + "kArmenteros", + "kPsiPair", + "kCosinePA", + "kPhotonOut"}; + + void init(InitContext const&) + { + TAxis* lXaxis = registry.get(HIST("IsPhotonSelected"))->GetXaxis(); + for (size_t i = 0; i < fPhotCutsLabels.size(); ++i) { + lXaxis->SetBinLabel(i + 1, fPhotCutsLabels[i]); + } + } + + void process(aod::Collision const& theCollision, + aod::V0Datas const& theV0s, + tracksAndTPCInfo const& theTracks, + aod::McParticles const& theMcParticles) + { + for (auto& lV0 : theV0s) { + + fillHistogramsBeforeCuts(lV0); + + auto lTrackPos = lV0.template posTrack_as(); //positive daughter + auto lTrackNeg = lV0.template negTrack_as(); //negative daughter + + // apply track cuts + if (!(trackPassesCuts(lTrackPos) && trackPassesCuts(lTrackNeg))) { + continue; + } + + float lV0CosinePA = RecoDecay::CPA(array{theCollision.posX(), theCollision.posY(), theCollision.posZ()}, array{lV0.x(), lV0.y(), lV0.z()}, array{lV0.px(), lV0.py(), lV0.pz()}); + + // apply photon cuts + if (!passesPhotonCuts(lV0, lV0CosinePA)) { + continue; + } + + fillHistogramsAfterCuts(lV0, lTrackPos, lTrackNeg, lV0CosinePA); + + processTruePhotons(lV0, lTrackPos, lTrackNeg, theMcParticles); + } + } + + template + void fillHistogramsBeforeCuts(const T& theV0) + { + // fill some QA histograms before any cuts + registry.fill(HIST("beforeCuts/hPtRec"), theV0.pt()); + registry.fill(HIST("beforeCuts/hEtaRec"), theV0.eta()); + registry.fill(HIST("beforeCuts/hPhiRec"), theV0.phi()); + registry.fill(HIST("beforeCuts/hConvPointR"), theV0.v0radius()); + registry.fill(HIST("IsPhotonSelected"), kPhotonIn); + } + + template + bool trackPassesCuts(const T& theTrack) + { + + // single track eta cut + if (TMath::Abs(theTrack.eta()) > fEtaCut) { + registry.fill(HIST("IsPhotonSelected"), kTrackEta); + return kFALSE; + } + + // single track pt cut + if (theTrack.pt() < fSinglePtCut) { + registry.fill(HIST("IsPhotonSelected"), kTrackPt); + return kFALSE; + } + + if (!(selectionPIDTPC_track(theTrack))) { + return kFALSE; + } + + if (theTrack.tpcFoundOverFindableCls() < fMinTPCFoundOverFindableCls) { + registry.fill(HIST("IsPhotonSelected"), kTPCFoundOverFindableCls); + return kFALSE; + } + + if (theTrack.tpcCrossedRowsOverFindableCls() < fMinTPCCrossedRowsOverFindableCls) { + registry.fill(HIST("IsPhotonSelected"), kTPCCrossedRowsOverFindableCls); + return kFALSE; + } + + return kTRUE; + } + + template + bool passesPhotonCuts(const T& theV0, float theV0CosinePA) + { + if (theV0.v0radius() < fMinR || theV0.v0radius() > fMaxR) { + registry.fill(HIST("IsPhotonSelected"), kV0Radius); + return kFALSE; + } + + if (!ArmenterosQtCut(theV0.alpha(), theV0.qtarm(), theV0.pt())) { + registry.fill(HIST("IsPhotonSelected"), kArmenteros); + return kFALSE; + } + + if (TMath::Abs(theV0.psipair()) > fPsiPairCut) { + registry.fill(HIST("IsPhotonSelected"), kPsiPair); + return kFALSE; + } + + if (theV0CosinePA < fCosPAngleCut) { + registry.fill(HIST("IsPhotonSelected"), kCosinePA); + return kFALSE; + } + + return kTRUE; + } + + template + void fillHistogramsAfterCuts(const TV0& theV0, const TTRACK& theTrackPos, const TTRACK& theTrackNeg, float theV0CosinePA) + { + registry.fill(HIST("IsPhotonSelected"), kPhotonOut); + + registry.fill(HIST("hPtRec"), theV0.pt()); + registry.fill(HIST("hEtaRec"), theV0.eta()); + registry.fill(HIST("hPhiRec"), theV0.phi()); + registry.fill(HIST("hConvPointR"), theV0.v0radius()); + + registry.fill(HIST("hTPCdEdxSigEl"), theTrackNeg.p(), theTrackNeg.tpcNSigmaEl()); + registry.fill(HIST("hTPCdEdxSigEl"), theTrackPos.p(), theTrackPos.tpcNSigmaEl()); + registry.fill(HIST("hTPCdEdxSigPi"), theTrackNeg.p(), theTrackNeg.tpcNSigmaPi()); + registry.fill(HIST("hTPCdEdxSigPi"), theTrackPos.p(), theTrackPos.tpcNSigmaPi()); + + registry.fill(HIST("hTPCdEdx"), theTrackNeg.p(), theTrackNeg.tpcSignal()); + registry.fill(HIST("hTPCdEdx"), theTrackPos.p(), theTrackPos.tpcSignal()); + + registry.fill(HIST("hTPCFoundOverFindableCls"), theTrackNeg.tpcFoundOverFindableCls()); + registry.fill(HIST("hTPCFoundOverFindableCls"), theTrackPos.tpcFoundOverFindableCls()); + + registry.fill(HIST("hTPCCrossedRowsOverFindableCls"), theTrackNeg.tpcCrossedRowsOverFindableCls()); + registry.fill(HIST("hTPCCrossedRowsOverFindableCls"), theTrackPos.tpcCrossedRowsOverFindableCls()); + + registry.fill(HIST("hArmenteros"), theV0.alpha(), theV0.qtarm()); + registry.fill(HIST("hPsiPtRec"), theV0.psipair(), theV0.pt()); + + registry.fill(HIST("hCosPAngle"), theV0CosinePA); + } + + template + void processTruePhotons(const TV0& theV0, const TTRACK& theTrackPos, const TTRACK& theTrackNeg, const TMC& theMcParticles) + { + // todo: verify it is enough to check only mother0 being equal + if (theTrackPos.mcParticle().mother0() > -1 && + theTrackPos.mcParticle().mother0() == theTrackNeg.mcParticle().mother0()) { + auto lMother = theMcParticles.iteratorAt(theTrackPos.mcParticle().mother0()); + + if (lMother.pdgCode() == 22) { + + registry.fill(HIST("resolutions/hPtRes"), theV0.pt() - lMother.pt()); + registry.fill(HIST("resolutions/hEtaRes"), theV0.eta() - lMother.eta()); + registry.fill(HIST("resolutions/hPhiRes"), theV0.phi() - lMother.phi()); + + TVector3 lConvPointRec(theV0.x(), theV0.y(), theV0.z()); + TVector3 lPosTrackVtxMC(theTrackPos.mcParticle().vx(), theTrackPos.mcParticle().vy(), theTrackPos.mcParticle().vz()); + // take the origin of the positive mc track as conversion point (should be identical with negative, verified this on a few photons) + TVector3 lConvPointMC(lPosTrackVtxMC); + + registry.fill(HIST("resolutions/hConvPointRRes"), lConvPointRec.Perp() - lConvPointMC.Perp()); + registry.fill(HIST("resolutions/hConvPointAbsoluteDistanceRes"), TVector3(lConvPointRec - lConvPointMC).Mag()); + } + } + } + + Bool_t ArmenterosQtCut(Double_t theAlpha, Double_t theQt, Double_t thePt) + { + // in AliPhysics this is the cut for if fDo2DQt && fDoQtGammaSelection == 2 + Float_t lQtMaxPtDep = fQtPtMax * thePt; + if (lQtMaxPtDep > fQtMax) { + lQtMaxPtDep = fQtMax; + } + if (!(TMath::Power(theAlpha / fMaxPhotonAsymmetry, 2) + TMath::Power(theQt / lQtMaxPtDep, 2) < 1)) { + return kFALSE; + } + return kTRUE; + } + + template + bool selectionPIDTPC_track(const T& theTrack) + { + // TPC Electron Line + if (theTrack.tpcNSigmaEl() < fPIDnSigmaBelowElectronLine || theTrack.tpcNSigmaEl() > fPIDnSigmaAboveElectronLine) { + registry.fill(HIST("IsPhotonSelected"), kElectronPID); + return kFALSE; + } + + // TPC Pion Line + if (theTrack.p() > fPIDMinPnSigmaAbovePionLine) { + // low pt Pion rej + if (theTrack.p() < fPIDMaxPnSigmaAbovePionLine) { + if (theTrack.tpcNSigmaEl() > fPIDnSigmaBelowElectronLine && theTrack.tpcNSigmaEl() < fPIDnSigmaAboveElectronLine && theTrack.tpcNSigmaPi() < fPIDnSigmaAbovePionLine) { + registry.fill(HIST("IsPhotonSelected"), kPionRejLowMom); + return kFALSE; + } + } + // High Pt Pion rej + else { + if (theTrack.tpcNSigmaEl() > fPIDnSigmaBelowElectronLine && theTrack.tpcNSigmaEl() < fPIDnSigmaAboveElectronLine && theTrack.tpcNSigmaPi() < fPIDnSigmaAbovePionLineHighP) { + registry.fill(HIST("IsPhotonSelected"), kPionRejHighMom); + return kFALSE; + } + } + } + return kTRUE; + } +}; + +WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) +{ + return WorkflowSpec{ + adaptAnalysisTask(cfgc)}; +} diff --git a/Framework/Core/include/Framework/AnalysisDataModel.h b/Framework/Core/include/Framework/AnalysisDataModel.h index 7c9ec7540ea8d..61e682e90544c 100644 --- a/Framework/Core/include/Framework/AnalysisDataModel.h +++ b/Framework/Core/include/Framework/AnalysisDataModel.h @@ -240,7 +240,13 @@ DECLARE_SOA_DYNAMIC_COLUMN(ITSNClsInnerBarrel, itsNClsInnerBarrel, //! Number of return itsNclsInnerBarrel; }); -DECLARE_SOA_DYNAMIC_COLUMN(TPCCrossedRowsOverFindableCls, tpcCrossedRowsOverFindableCls, //! Ratio of crossed rows over findable clusters +DECLARE_SOA_DYNAMIC_COLUMN(TPCFoundOverFindableCls, tpcFoundOverFindableCls, //! Ratio of found over findable clusters + [](uint8_t tpcNClsFindable, int8_t tpcNClsFindableMinusFound) -> float { + int16_t tpcNClsFound = (int16_t)tpcNClsFindable - tpcNClsFindableMinusFound; + return (float)tpcNClsFound / (float)tpcNClsFindable; + }); + +DECLARE_SOA_DYNAMIC_COLUMN(TPCCrossedRowsOverFindableCls, tpcCrossedRowsOverFindableCls, //! Ratio crossed rows over findable clusters [](uint8_t tpcNClsFindable, int8_t tpcNClsFindableMinusCrossedRows) -> float { int16_t tpcNClsCrossedRows = (int16_t)tpcNClsFindable - tpcNClsFindableMinusCrossedRows; return (float)tpcNClsCrossedRows / (float)tpcNClsFindable; @@ -304,6 +310,7 @@ DECLARE_SOA_TABLE(TracksExtra, "AOD", "TRACKEXTRA", //! Additional track informa track::TPCNClsCrossedRows, track::ITSNCls, track::ITSNClsInnerBarrel, track::TPCCrossedRowsOverFindableCls, + track::TPCFoundOverFindableCls, track::TPCFractionSharedCls, track::TrackEtaEMCAL, track::TrackPhiEMCAL); From db4b250aeb44e139d6cb144cda9641bb4d76e7c0 Mon Sep 17 00:00:00 2001 From: Peter Hristov Date: Fri, 25 Jun 2021 09:51:50 +0200 Subject: [PATCH 022/314] Include TMap.h (Root v6-24) (#6521) Co-authored-by: hristov --- Analysis/Core/src/AODMerger.cxx | 1 + 1 file changed, 1 insertion(+) diff --git a/Analysis/Core/src/AODMerger.cxx b/Analysis/Core/src/AODMerger.cxx index e00352838c4da..857ecc967a49f 100644 --- a/Analysis/Core/src/AODMerger.cxx +++ b/Analysis/Core/src/AODMerger.cxx @@ -19,6 +19,7 @@ #include "TDirectory.h" #include "TObjString.h" #include +#include // AOD merger with correct index rewriting // No need to know the datamodel because the branch names follow a canonical standard (identified by fIndex) From bdfefa4b27c3cd644d9a9271440705333b67ac5e Mon Sep 17 00:00:00 2001 From: manso Date: Wed, 23 Jun 2021 11:26:02 +0200 Subject: [PATCH 023/314] Correct numering of ts array --- Detectors/ITSMFT/MFT/base/src/Flex.cxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Detectors/ITSMFT/MFT/base/src/Flex.cxx b/Detectors/ITSMFT/MFT/base/src/Flex.cxx index 62861743d7641..62a3f23757ef5 100644 --- a/Detectors/ITSMFT/MFT/base/src/Flex.cxx +++ b/Detectors/ITSMFT/MFT/base/src/Flex.cxx @@ -351,11 +351,11 @@ TGeoVolume* Flex::makeLines(Int_t nbsensors, Double_t length, Double_t widthflex length_line = length - Geometry::sConnectorOffset - TMath::Nint((iline - 6) / 3) * SegmentationAlpide::SensorSizeCols - SegmentationAlpide::SensorSizeCols / 2; - ts[iline] = new TGeoTranslation(Form("t%d", iline), length / 2 - length_line / 2 - Geometry::sConnectorOffset, - -2 * (iline - 6) * Geometry::sLineWidth + 0.5 - widthflex / 2, 0.); + ts[iline - 6] = new TGeoTranslation(Form("t%d", iline), length / 2 - length_line / 2 - Geometry::sConnectorOffset, + -2 * (iline - 6) * Geometry::sLineWidth + 0.5 - widthflex / 2, 0.); line[iline] = new TGeoBBox(Form("line%d", iline), length_line / 2, Geometry::sLineWidth / 2, thickness / 2 + Geometry::sEpsilon); - layerl[iline] = new TGeoSubtraction(layern[iline - 1], line[iline], nullptr, ts[iline]); + layerl[iline] = new TGeoSubtraction(layern[iline - 1], line[iline], nullptr, ts[iline - 6]); layern[iline] = new TGeoCompositeShape(Form("layer%d", iline), layerl[iline]); kTotalLinesNb++; } From 40dbd2869e9a39339058d53d312fbcb1e96c40e5 Mon Sep 17 00:00:00 2001 From: Mario Sitta Date: Fri, 25 Jun 2021 12:03:47 +0200 Subject: [PATCH 024/314] Bug fix in computing angular position of step supports on IB Side C End Wheels --- Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx b/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx index 7f6f67388f0b3..760f650c810d0 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx @@ -633,8 +633,8 @@ void V3Services::ibEndWheelSideC(const Int_t iLay, TGeoVolume* endWheel, const T static const Double_t sEndWCStepHoleZdist = 4.0 * sMm; static const Double_t sEndWCStepHolePhi[3] = {30.0, 22.5, 18.0}; // Deg - static const Double_t sEndWCStepHolePhi0[2] = {9.5, 10.5}; // Deg - static const Double_t sEndWCStepYlow = 7.0 * sMm; + static const Double_t sEndWCStepHolePhi0[2] = {9.5, 10.5}; // Deg - Lay 1-2 + static const Double_t sEndWCStepYlow = 7.0 * sMm; // Lay 0 only // Local variables Double_t xlen, ylen, zlen; @@ -763,7 +763,10 @@ void V3Services::ibEndWheelSideC(const Int_t iLay, TGeoVolume* endWheel, const T endWheel->AddNode(endWheelCVol, 1, new TGeoCombiTrans(0, 0, -zpos, new TGeoRotation("", 0, 180, 0))); // The position of the Steps is given wrt the holes (see eg. ALIITSUP0187) - dphi = sEndWCStepHolePhi0[iLay]; + if (iLay == 0) + dphi = (sEndWCStepYlow / sEndWCStepYdispl[iLay]) * TMath::RadToDeg(); + else + dphi = sEndWCStepHolePhi0[iLay - 1]; Int_t numberOfStaves = GeometryTGeo::Instance()->getNumberOfStaves(iLay); zpos += (static_cast(stepCVol->GetShape()))->GetDZ(); From 223f16d82376d03e469c459395ed6a926e2b5511 Mon Sep 17 00:00:00 2001 From: Mario Sitta Date: Fri, 25 Jun 2021 12:24:00 +0200 Subject: [PATCH 025/314] Fix Clang format on previous commit --- Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx b/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx index 760f650c810d0..8fd6d1e91363f 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx @@ -633,8 +633,8 @@ void V3Services::ibEndWheelSideC(const Int_t iLay, TGeoVolume* endWheel, const T static const Double_t sEndWCStepHoleZdist = 4.0 * sMm; static const Double_t sEndWCStepHolePhi[3] = {30.0, 22.5, 18.0}; // Deg - static const Double_t sEndWCStepHolePhi0[2] = {9.5, 10.5}; // Deg - Lay 1-2 - static const Double_t sEndWCStepYlow = 7.0 * sMm; // Lay 0 only + static const Double_t sEndWCStepHolePhi0[2] = {9.5, 10.5}; // Deg - Lay 1-2 + static const Double_t sEndWCStepYlow = 7.0 * sMm; // Lay 0 only // Local variables Double_t xlen, ylen, zlen; From d0daf5a728e40431b2f00ea9918426aa7523151b Mon Sep 17 00:00:00 2001 From: Mario Sitta Date: Fri, 25 Jun 2021 12:26:27 +0200 Subject: [PATCH 026/314] Add braces around if clause in last commit --- Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx b/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx index 8fd6d1e91363f..64fe310fbeb5f 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx @@ -763,10 +763,11 @@ void V3Services::ibEndWheelSideC(const Int_t iLay, TGeoVolume* endWheel, const T endWheel->AddNode(endWheelCVol, 1, new TGeoCombiTrans(0, 0, -zpos, new TGeoRotation("", 0, 180, 0))); // The position of the Steps is given wrt the holes (see eg. ALIITSUP0187) - if (iLay == 0) + if (iLay == 0) { dphi = (sEndWCStepYlow / sEndWCStepYdispl[iLay]) * TMath::RadToDeg(); - else + } else { dphi = sEndWCStepHolePhi0[iLay - 1]; + } Int_t numberOfStaves = GeometryTGeo::Instance()->getNumberOfStaves(iLay); zpos += (static_cast(stepCVol->GetShape()))->GetDZ(); From 7a1e12f0b112adba56059b0efeed16fbeaa6c57a Mon Sep 17 00:00:00 2001 From: Ivana Hrivnacova Date: Sat, 26 Jun 2021 01:13:18 +0200 Subject: [PATCH 027/314] Updated copyright headers in files omitted in the previous update (#6527) * Updated copyright headers in files ommitted in the previous update * Add missing copyright notice Co-authored-by: Timo Wilken --- Analysis/ALICE3/include/ALICE3Analysis/FTOF.h | 9 +++++---- Analysis/ALICE3/src/pidFTOFqa.cxx | 9 +++++---- Analysis/Tasks/PWGGA/gammaConversionsMC.cxx | 10 ++++++++++ Analysis/Tasks/PWGPP/CMakeLists.txt | 13 +++++++------ DataFormats/Detectors/FIT/common/CMakeLists.txt | 13 +++++++------ .../common/include/DataFormatsFIT/RawEventData.h | 9 +++++---- .../Detectors/FIT/common/src/RawEventData.cxx | 9 +++++---- .../ZDC/include/DataFormatsZDC/BCRecData.h | 9 +++++---- .../ZDC/include/DataFormatsZDC/FEEConfig.h | 9 +++++---- .../ZDC/include/DataFormatsZDC/RecEventAux.h | 9 +++++---- .../ZDC/include/DataFormatsZDC/ZDCEnergy.h | 9 +++++---- .../ZDC/include/DataFormatsZDC/ZDCTDCData.h | 9 +++++---- DataFormats/Detectors/ZDC/src/BCRecData.cxx | 9 +++++---- DataFormats/Detectors/ZDC/src/RecEventAux.cxx | 9 +++++---- DataFormats/Detectors/ZDC/src/ZDCEnergy.cxx | 9 +++++---- DataFormats/Detectors/ZDC/src/ZDCTDCData.cxx | 9 +++++---- .../include/FT0Calibration/FT0CalibCollector.h | 9 +++++---- .../include/FT0Calibration/FT0CalibTimeSlewing.h | 9 +++++---- .../include/FT0Calibration/FT0CollectCalibInfo.h | 9 +++++---- .../FIT/FT0/calibration/src/FT0CalibCollector.cxx | 9 +++++---- .../FIT/FT0/calibration/src/FT0CalibTimeSlewing.cxx | 9 +++++---- .../testWorkflow/FT0CalibCollectorWriterSpec.h | 9 +++++---- .../testWorkflow/FT0CalibSlewingCollectorSpec.h | 9 +++++---- .../testWorkflow/ft0-collect-calib-workflow.cxx | 9 +++++---- .../FT0/calibration/testWorkflow/slew_upload.cxx | 9 +++++---- .../include/MIDWorkflow/RawInputSpecHandler.h | 9 +++++---- .../MUON/MID/Workflow/src/RawInputSpecHandler.cxx | 9 +++++---- .../MID/Workflow/src/tracks-reader-workflow.cxx | 9 +++++---- .../include/TPCCalibration/CalibLaserTracks.h | 9 +++++---- .../include/TPCCalibration/LaserTracksCalibrator.h | 9 +++++---- Detectors/TPC/calibration/src/CalibLaserTracks.cxx | 9 +++++---- .../TPC/calibration/src/LaserTracksCalibrator.cxx | 9 +++++---- .../include/TPCWorkflow/CalibLaserTracksSpec.h | 9 +++++---- .../workflow/include/TPCWorkflow/IDCToVectorSpec.h | 9 +++++---- .../include/TPCWorkflow/LaserTracksCalibratorSpec.h | 9 +++++---- Detectors/TPC/workflow/src/IDCToVectorSpec.cxx | 9 +++++---- .../TPC/workflow/src/tpc-calib-laser-tracks.cxx | 9 +++++---- Detectors/TPC/workflow/src/tpc-idc-to-vector.cxx | 9 +++++---- .../ALICE3/FT3/base/include/FT3Base/FT3BaseParam.h | 9 +++++---- .../Upgrades/ALICE3/FT3/base/src/FT3BaseParam.cxx | 9 +++++---- Detectors/ZDC/macro/CreateEnergyCalib.C | 9 +++++---- Detectors/ZDC/macro/CreateRecoConfigZDC.C | 9 +++++---- Detectors/ZDC/macro/CreateTDCCalib.C | 9 +++++---- Detectors/ZDC/macro/CreateTowerCalib.C | 9 +++++---- .../include/ZDCReconstruction/DigiReco.h | 9 +++++---- .../include/ZDCReconstruction/RecoConfigZDC.h | 9 +++++---- .../include/ZDCReconstruction/RecoParamZDC.h | 9 +++++---- .../include/ZDCReconstruction/ZDCEnergyParam.h | 9 +++++---- .../include/ZDCReconstruction/ZDCTDCParam.h | 9 +++++---- .../include/ZDCReconstruction/ZDCTowerParam.h | 9 +++++---- Detectors/ZDC/reconstruction/src/DigiReco.cxx | 9 +++++---- Detectors/ZDC/reconstruction/src/RecoConfigZDC.cxx | 9 +++++---- Detectors/ZDC/reconstruction/src/RecoParamZDC.cxx | 9 +++++---- Detectors/ZDC/reconstruction/src/ZDCEnergyParam.cxx | 9 +++++---- Detectors/ZDC/reconstruction/src/ZDCTDCParam.cxx | 9 +++++---- Detectors/ZDC/reconstruction/src/ZDCTowerParam.cxx | 9 +++++---- .../workflow/include/ZDCWorkflow/DigitRecoSpec.h | 9 +++++---- .../ZDC/workflow/include/ZDCWorkflow/RecoWorkflow.h | 9 +++++---- .../include/ZDCWorkflow/ZDCRecoWriterDPLSpec.h | 9 +++++---- Detectors/ZDC/workflow/src/DigitRecoSpec.cxx | 9 +++++---- Detectors/ZDC/workflow/src/RecoWorkflow.cxx | 9 +++++---- Detectors/ZDC/workflow/src/ZDCRecoWriterDPLSpec.cxx | 9 +++++---- .../ZDC/workflow/src/digits-reader-workflow.cxx | 9 +++++---- Detectors/ZDC/workflow/src/zdc-reco-workflow.cxx | 9 +++++---- 64 files changed, 329 insertions(+), 256 deletions(-) diff --git a/Analysis/ALICE3/include/ALICE3Analysis/FTOF.h b/Analysis/ALICE3/include/ALICE3Analysis/FTOF.h index b12a11b331778..e24c1c0585dbf 100644 --- a/Analysis/ALICE3/include/ALICE3Analysis/FTOF.h +++ b/Analysis/ALICE3/include/ALICE3Analysis/FTOF.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/ALICE3/src/pidFTOFqa.cxx b/Analysis/ALICE3/src/pidFTOFqa.cxx index 09eaaf89e44b9..096d87913eb19 100644 --- a/Analysis/ALICE3/src/pidFTOFqa.cxx +++ b/Analysis/ALICE3/src/pidFTOFqa.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/Tasks/PWGGA/gammaConversionsMC.cxx b/Analysis/Tasks/PWGGA/gammaConversionsMC.cxx index 42ecc1316599a..b5e39454ce312 100644 --- a/Analysis/Tasks/PWGGA/gammaConversionsMC.cxx +++ b/Analysis/Tasks/PWGGA/gammaConversionsMC.cxx @@ -1,3 +1,13 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. #include "Framework/runDataProcessing.h" #include "Framework/AnalysisTask.h" diff --git a/Analysis/Tasks/PWGPP/CMakeLists.txt b/Analysis/Tasks/PWGPP/CMakeLists.txt index ba86f2e8f9738..1f24aac8f9d64 100644 --- a/Analysis/Tasks/PWGPP/CMakeLists.txt +++ b/Analysis/Tasks/PWGPP/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_dpl_workflow(qa-event-track SOURCES qaEventTrack.cxx diff --git a/DataFormats/Detectors/FIT/common/CMakeLists.txt b/DataFormats/Detectors/FIT/common/CMakeLists.txt index 43eade5cc5e3b..63a8db43be8c8 100644 --- a/DataFormats/Detectors/FIT/common/CMakeLists.txt +++ b/DataFormats/Detectors/FIT/common/CMakeLists.txt @@ -1,12 +1,13 @@ -# Copyright CERN and copyright holders of ALICE O2. This software is distributed -# under the terms of the GNU General Public License v3 (GPL Version 3), copied -# verbatim in the file "COPYING". +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. # -# See http://alice-o2.web.cern.ch/license for full licensing information. +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". # # In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization or -# submit itself to any jurisdiction. +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. o2_add_library(DataFormatsFIT SOURCES src/RawEventData.cxx diff --git a/DataFormats/Detectors/FIT/common/include/DataFormatsFIT/RawEventData.h b/DataFormats/Detectors/FIT/common/include/DataFormatsFIT/RawEventData.h index ce0304a6803f6..41c2231e70182 100644 --- a/DataFormats/Detectors/FIT/common/include/DataFormatsFIT/RawEventData.h +++ b/DataFormats/Detectors/FIT/common/include/DataFormatsFIT/RawEventData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/FIT/common/src/RawEventData.cxx b/DataFormats/Detectors/FIT/common/src/RawEventData.cxx index f2be1a8ddfbb2..89b91625ce36f 100644 --- a/DataFormats/Detectors/FIT/common/src/RawEventData.cxx +++ b/DataFormats/Detectors/FIT/common/src/RawEventData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/BCRecData.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/BCRecData.h index 6803b11625792..c7c8f2f23dd4e 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/BCRecData.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/BCRecData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/FEEConfig.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/FEEConfig.h index 4bec3a9fd10ff..b084507b84519 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/FEEConfig.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/FEEConfig.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEventAux.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEventAux.h index 911af8b0be666..d09ea4541de20 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEventAux.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEventAux.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ZDCEnergy.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ZDCEnergy.h index ca402edc26aef..c07baadf64b42 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ZDCEnergy.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ZDCEnergy.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ZDCTDCData.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ZDCTDCData.h index 421cbe51aaa2d..4387116d55c1f 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ZDCTDCData.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ZDCTDCData.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/BCRecData.cxx b/DataFormats/Detectors/ZDC/src/BCRecData.cxx index 577b01ccb619c..7810644f022df 100644 --- a/DataFormats/Detectors/ZDC/src/BCRecData.cxx +++ b/DataFormats/Detectors/ZDC/src/BCRecData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/RecEventAux.cxx b/DataFormats/Detectors/ZDC/src/RecEventAux.cxx index 7e774ff4ec6fe..85cf2751852e2 100644 --- a/DataFormats/Detectors/ZDC/src/RecEventAux.cxx +++ b/DataFormats/Detectors/ZDC/src/RecEventAux.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/ZDCEnergy.cxx b/DataFormats/Detectors/ZDC/src/ZDCEnergy.cxx index dbf4010de6366..1f3162cd0b212 100644 --- a/DataFormats/Detectors/ZDC/src/ZDCEnergy.cxx +++ b/DataFormats/Detectors/ZDC/src/ZDCEnergy.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/DataFormats/Detectors/ZDC/src/ZDCTDCData.cxx b/DataFormats/Detectors/ZDC/src/ZDCTDCData.cxx index adc9b86dd2d98..01b9a43e1aad3 100644 --- a/DataFormats/Detectors/ZDC/src/ZDCTDCData.cxx +++ b/DataFormats/Detectors/ZDC/src/ZDCTDCData.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CalibCollector.h b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CalibCollector.h index b35c3cfcd3878..2074ea0703432 100644 --- a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CalibCollector.h +++ b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CalibCollector.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CalibTimeSlewing.h b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CalibTimeSlewing.h index aca85c12d39d2..6ff71b100fb26 100644 --- a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CalibTimeSlewing.h +++ b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CalibTimeSlewing.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CollectCalibInfo.h b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CollectCalibInfo.h index 1394348d3d10c..8d37e3e197fab 100644 --- a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CollectCalibInfo.h +++ b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CollectCalibInfo.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/src/FT0CalibCollector.cxx b/Detectors/FIT/FT0/calibration/src/FT0CalibCollector.cxx index 273d35b88dbad..aee0df75f401b 100644 --- a/Detectors/FIT/FT0/calibration/src/FT0CalibCollector.cxx +++ b/Detectors/FIT/FT0/calibration/src/FT0CalibCollector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/src/FT0CalibTimeSlewing.cxx b/Detectors/FIT/FT0/calibration/src/FT0CalibTimeSlewing.cxx index b590345f680b4..4c156409701bf 100644 --- a/Detectors/FIT/FT0/calibration/src/FT0CalibTimeSlewing.cxx +++ b/Detectors/FIT/FT0/calibration/src/FT0CalibTimeSlewing.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibCollectorWriterSpec.h b/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibCollectorWriterSpec.h index 1ad4df183ceda..223b2702d0830 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibCollectorWriterSpec.h +++ b/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibCollectorWriterSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibSlewingCollectorSpec.h b/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibSlewingCollectorSpec.h index 201beaae1216c..30e25cfadbbae 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibSlewingCollectorSpec.h +++ b/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibSlewingCollectorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/ft0-collect-calib-workflow.cxx b/Detectors/FIT/FT0/calibration/testWorkflow/ft0-collect-calib-workflow.cxx index db671455d3d5c..29c7d9719e0c1 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/ft0-collect-calib-workflow.cxx +++ b/Detectors/FIT/FT0/calibration/testWorkflow/ft0-collect-calib-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/slew_upload.cxx b/Detectors/FIT/FT0/calibration/testWorkflow/slew_upload.cxx index 2dcc209b24404..95432df99a130 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/slew_upload.cxx +++ b/Detectors/FIT/FT0/calibration/testWorkflow/slew_upload.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawInputSpecHandler.h b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawInputSpecHandler.h index 5ed2288b872b0..090cd120001a5 100644 --- a/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawInputSpecHandler.h +++ b/Detectors/MUON/MID/Workflow/include/MIDWorkflow/RawInputSpecHandler.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/RawInputSpecHandler.cxx b/Detectors/MUON/MID/Workflow/src/RawInputSpecHandler.cxx index 9317a730718f0..961bf14668a8c 100644 --- a/Detectors/MUON/MID/Workflow/src/RawInputSpecHandler.cxx +++ b/Detectors/MUON/MID/Workflow/src/RawInputSpecHandler.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/MUON/MID/Workflow/src/tracks-reader-workflow.cxx b/Detectors/MUON/MID/Workflow/src/tracks-reader-workflow.cxx index be79604fd315c..f9922fc5288f3 100644 --- a/Detectors/MUON/MID/Workflow/src/tracks-reader-workflow.cxx +++ b/Detectors/MUON/MID/Workflow/src/tracks-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/CalibLaserTracks.h b/Detectors/TPC/calibration/include/TPCCalibration/CalibLaserTracks.h index 1298baab04d9f..4a22598e53ad6 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/CalibLaserTracks.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/CalibLaserTracks.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/include/TPCCalibration/LaserTracksCalibrator.h b/Detectors/TPC/calibration/include/TPCCalibration/LaserTracksCalibrator.h index 247b75665d0bc..fe777704a6151 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/LaserTracksCalibrator.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/LaserTracksCalibrator.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/CalibLaserTracks.cxx b/Detectors/TPC/calibration/src/CalibLaserTracks.cxx index 7ccb8b0533ef0..b69fcbf0ac5a7 100644 --- a/Detectors/TPC/calibration/src/CalibLaserTracks.cxx +++ b/Detectors/TPC/calibration/src/CalibLaserTracks.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/calibration/src/LaserTracksCalibrator.cxx b/Detectors/TPC/calibration/src/LaserTracksCalibrator.cxx index c936ad80f5366..ba68cb35f1977 100644 --- a/Detectors/TPC/calibration/src/LaserTracksCalibrator.cxx +++ b/Detectors/TPC/calibration/src/LaserTracksCalibrator.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/CalibLaserTracksSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/CalibLaserTracksSpec.h index 14baf3716239f..750176aa66598 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/CalibLaserTracksSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/CalibLaserTracksSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/IDCToVectorSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/IDCToVectorSpec.h index 3320bc04e392a..635570ae6db38 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/IDCToVectorSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/IDCToVectorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/LaserTracksCalibratorSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/LaserTracksCalibratorSpec.h index b908a26229b49..35ab3f8ac09b1 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/LaserTracksCalibratorSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/LaserTracksCalibratorSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/IDCToVectorSpec.cxx b/Detectors/TPC/workflow/src/IDCToVectorSpec.cxx index c5863d5a3ba39..9f43e28bb78c2 100644 --- a/Detectors/TPC/workflow/src/IDCToVectorSpec.cxx +++ b/Detectors/TPC/workflow/src/IDCToVectorSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/tpc-calib-laser-tracks.cxx b/Detectors/TPC/workflow/src/tpc-calib-laser-tracks.cxx index 5801f336883aa..8524c255c096a 100644 --- a/Detectors/TPC/workflow/src/tpc-calib-laser-tracks.cxx +++ b/Detectors/TPC/workflow/src/tpc-calib-laser-tracks.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/TPC/workflow/src/tpc-idc-to-vector.cxx b/Detectors/TPC/workflow/src/tpc-idc-to-vector.cxx index e11e04a6e9d76..e5d3b736ec6cc 100644 --- a/Detectors/TPC/workflow/src/tpc-idc-to-vector.cxx +++ b/Detectors/TPC/workflow/src/tpc-idc-to-vector.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/FT3/base/include/FT3Base/FT3BaseParam.h b/Detectors/Upgrades/ALICE3/FT3/base/include/FT3Base/FT3BaseParam.h index 034591ad3c5d7..b286aa068611c 100644 --- a/Detectors/Upgrades/ALICE3/FT3/base/include/FT3Base/FT3BaseParam.h +++ b/Detectors/Upgrades/ALICE3/FT3/base/include/FT3Base/FT3BaseParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/Upgrades/ALICE3/FT3/base/src/FT3BaseParam.cxx b/Detectors/Upgrades/ALICE3/FT3/base/src/FT3BaseParam.cxx index fd8b428df2cfd..a5179299531a2 100644 --- a/Detectors/Upgrades/ALICE3/FT3/base/src/FT3BaseParam.cxx +++ b/Detectors/Upgrades/ALICE3/FT3/base/src/FT3BaseParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/macro/CreateEnergyCalib.C b/Detectors/ZDC/macro/CreateEnergyCalib.C index c363e00fb0658..e58de77610f58 100644 --- a/Detectors/ZDC/macro/CreateEnergyCalib.C +++ b/Detectors/ZDC/macro/CreateEnergyCalib.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/macro/CreateRecoConfigZDC.C b/Detectors/ZDC/macro/CreateRecoConfigZDC.C index 20416b9480f47..4cec1e5eece63 100644 --- a/Detectors/ZDC/macro/CreateRecoConfigZDC.C +++ b/Detectors/ZDC/macro/CreateRecoConfigZDC.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/macro/CreateTDCCalib.C b/Detectors/ZDC/macro/CreateTDCCalib.C index cc8db9e99b905..228349054a0d2 100644 --- a/Detectors/ZDC/macro/CreateTDCCalib.C +++ b/Detectors/ZDC/macro/CreateTDCCalib.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/macro/CreateTowerCalib.C b/Detectors/ZDC/macro/CreateTowerCalib.C index 08dc410a58246..8494dcded21fc 100644 --- a/Detectors/ZDC/macro/CreateTowerCalib.C +++ b/Detectors/ZDC/macro/CreateTowerCalib.C @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/DigiReco.h b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/DigiReco.h index d92eeefe2c3a8..18cb3cdb9ddb8 100644 --- a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/DigiReco.h +++ b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/DigiReco.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/RecoConfigZDC.h b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/RecoConfigZDC.h index 0f5136ec4fe48..0818383c94fbe 100644 --- a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/RecoConfigZDC.h +++ b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/RecoConfigZDC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/RecoParamZDC.h b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/RecoParamZDC.h index 47d07b4c0bd6c..af37d0cc4967f 100644 --- a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/RecoParamZDC.h +++ b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/RecoParamZDC.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/ZDCEnergyParam.h b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/ZDCEnergyParam.h index 3fbbe3ebcd105..2a420814a553e 100644 --- a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/ZDCEnergyParam.h +++ b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/ZDCEnergyParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/ZDCTDCParam.h b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/ZDCTDCParam.h index 3890cf79b40f6..5781464e9f782 100644 --- a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/ZDCTDCParam.h +++ b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/ZDCTDCParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/ZDCTowerParam.h b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/ZDCTowerParam.h index 31b6db95c8503..7e2eb82b11671 100644 --- a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/ZDCTowerParam.h +++ b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/ZDCTowerParam.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/src/DigiReco.cxx b/Detectors/ZDC/reconstruction/src/DigiReco.cxx index 929a5e24f8c6d..5c9645d63a0d8 100644 --- a/Detectors/ZDC/reconstruction/src/DigiReco.cxx +++ b/Detectors/ZDC/reconstruction/src/DigiReco.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/src/RecoConfigZDC.cxx b/Detectors/ZDC/reconstruction/src/RecoConfigZDC.cxx index 21ffe398822dd..f19cb6a737b3d 100644 --- a/Detectors/ZDC/reconstruction/src/RecoConfigZDC.cxx +++ b/Detectors/ZDC/reconstruction/src/RecoConfigZDC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/src/RecoParamZDC.cxx b/Detectors/ZDC/reconstruction/src/RecoParamZDC.cxx index 8a5a2ca330697..1d135c038d11f 100644 --- a/Detectors/ZDC/reconstruction/src/RecoParamZDC.cxx +++ b/Detectors/ZDC/reconstruction/src/RecoParamZDC.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/src/ZDCEnergyParam.cxx b/Detectors/ZDC/reconstruction/src/ZDCEnergyParam.cxx index c36f6ab0738c8..aec62cb50a8d7 100644 --- a/Detectors/ZDC/reconstruction/src/ZDCEnergyParam.cxx +++ b/Detectors/ZDC/reconstruction/src/ZDCEnergyParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/src/ZDCTDCParam.cxx b/Detectors/ZDC/reconstruction/src/ZDCTDCParam.cxx index 5a06eea79b1db..537996da7507b 100644 --- a/Detectors/ZDC/reconstruction/src/ZDCTDCParam.cxx +++ b/Detectors/ZDC/reconstruction/src/ZDCTDCParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/reconstruction/src/ZDCTowerParam.cxx b/Detectors/ZDC/reconstruction/src/ZDCTowerParam.cxx index daa4e6ac2c54d..466fcc2ece8e1 100644 --- a/Detectors/ZDC/reconstruction/src/ZDCTowerParam.cxx +++ b/Detectors/ZDC/reconstruction/src/ZDCTowerParam.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/include/ZDCWorkflow/DigitRecoSpec.h b/Detectors/ZDC/workflow/include/ZDCWorkflow/DigitRecoSpec.h index e460c618fa8ee..6cbdf616041a1 100644 --- a/Detectors/ZDC/workflow/include/ZDCWorkflow/DigitRecoSpec.h +++ b/Detectors/ZDC/workflow/include/ZDCWorkflow/DigitRecoSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/include/ZDCWorkflow/RecoWorkflow.h b/Detectors/ZDC/workflow/include/ZDCWorkflow/RecoWorkflow.h index 6191e4d820b15..aa2586d2488b9 100644 --- a/Detectors/ZDC/workflow/include/ZDCWorkflow/RecoWorkflow.h +++ b/Detectors/ZDC/workflow/include/ZDCWorkflow/RecoWorkflow.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCRecoWriterDPLSpec.h b/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCRecoWriterDPLSpec.h index 89f5748b40b21..a09083f69373b 100644 --- a/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCRecoWriterDPLSpec.h +++ b/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCRecoWriterDPLSpec.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/src/DigitRecoSpec.cxx b/Detectors/ZDC/workflow/src/DigitRecoSpec.cxx index 40cee8bae910e..57372dbf57040 100644 --- a/Detectors/ZDC/workflow/src/DigitRecoSpec.cxx +++ b/Detectors/ZDC/workflow/src/DigitRecoSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/src/RecoWorkflow.cxx b/Detectors/ZDC/workflow/src/RecoWorkflow.cxx index c1dde1a7b8299..098533cfe057f 100644 --- a/Detectors/ZDC/workflow/src/RecoWorkflow.cxx +++ b/Detectors/ZDC/workflow/src/RecoWorkflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/src/ZDCRecoWriterDPLSpec.cxx b/Detectors/ZDC/workflow/src/ZDCRecoWriterDPLSpec.cxx index 5a572050e3498..0f091e83bb280 100644 --- a/Detectors/ZDC/workflow/src/ZDCRecoWriterDPLSpec.cxx +++ b/Detectors/ZDC/workflow/src/ZDCRecoWriterDPLSpec.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/src/digits-reader-workflow.cxx b/Detectors/ZDC/workflow/src/digits-reader-workflow.cxx index 72014cfda9a5c..698188042e5dd 100644 --- a/Detectors/ZDC/workflow/src/digits-reader-workflow.cxx +++ b/Detectors/ZDC/workflow/src/digits-reader-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ZDC/workflow/src/zdc-reco-workflow.cxx b/Detectors/ZDC/workflow/src/zdc-reco-workflow.cxx index 050caf2db60b8..6cb0b2861bef2 100644 --- a/Detectors/ZDC/workflow/src/zdc-reco-workflow.cxx +++ b/Detectors/ZDC/workflow/src/zdc-reco-workflow.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization From 78aba6f883855eb9f9fcb77dd42b827bd4fa485e Mon Sep 17 00:00:00 2001 From: Francesco Noferini Date: Sat, 26 Jun 2021 15:05:56 +0200 Subject: [PATCH 028/314] TOF matcher workflow re-arranged (#6455) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * generalize TOF matcher * add MatchInfoTOFReco class * cleanup TOF reco workflow * Updated copyright headers in all files with new text … (#6430) * Updated copyright headers in all files with new text agreed in the O2 project * fix copyrights new TOF classes * Fixes * fix for checks Co-authored-by: Ivana Hrivnacova Co-authored-by: shahoian --- DataFormats/Reconstruction/CMakeLists.txt | 2 + .../MatchInfoTOFReco.h | 52 + .../Reconstruction/src/MatchInfoTOFReco.cxx | 19 +- .../src/ReconstructionDataFormatsLinkDef.h | 2 + Detectors/AOD/CMakeLists.txt | 1 - Detectors/CTF/workflow/CMakeLists.txt | 5 +- Detectors/GlobalTracking/CMakeLists.txt | 4 +- .../include/GlobalTracking/MatchTOF.h | 198 +-- Detectors/GlobalTracking/src/MatchTOF.cxx | 1190 ++++++----------- Detectors/GlobalTrackingWorkflow/README.md | 2 +- .../GlobalTrackingWorkflow/TOFMatcherSpec.h | 4 +- .../src/TOFMatcherSpec.cxx | 95 +- .../src/tof-matcher-workflow.cxx | 31 +- .../tofworkflow/CMakeLists.txt | 24 +- .../TOFWorkflow/RecoWorkflowWithTPCSpec.h | 28 - .../src/RecoWorkflowWithTPCSpec.cxx | 190 --- .../tofworkflow/src/tof-calibinfo-reader.cxx | 3 - .../tofworkflow/src/tof-matcher-global.cxx | 164 --- .../tofworkflow/src/tof-matcher-tpc.cxx | 166 --- .../tofworkflow/src/tof-reco-workflow.cxx | 42 +- Detectors/TOF/base/src/Geo.cxx | 2 +- .../TOF/workflowIO/src/TOFCalibWriterSpec.cxx | 4 +- .../workflowIO/src/TOFMatchedReaderSpec.cxx | 2 +- .../workflowIO/src/TOFMatchedWriterSpec.cxx | 2 +- macro/CMakeLists.txt | 8 - macro/checkTOFMatching.C | 2 +- macro/run_match_tof.C | 88 -- prodtests/full-system-test/dpl-workflow.sh | 8 +- prodtests/sim_challenge.sh | 27 +- 29 files changed, 613 insertions(+), 1752 deletions(-) create mode 100644 DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOFReco.h rename Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowSpec.h => DataFormats/Reconstruction/src/MatchInfoTOFReco.cxx (61%) delete mode 100644 Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowWithTPCSpec.h delete mode 100644 Detectors/GlobalTrackingWorkflow/tofworkflow/src/RecoWorkflowWithTPCSpec.cxx delete mode 100644 Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-global.cxx delete mode 100644 Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-tpc.cxx delete mode 100644 macro/run_match_tof.C diff --git a/DataFormats/Reconstruction/CMakeLists.txt b/DataFormats/Reconstruction/CMakeLists.txt index 3f0b132c802f1..f1cab92d49352 100644 --- a/DataFormats/Reconstruction/CMakeLists.txt +++ b/DataFormats/Reconstruction/CMakeLists.txt @@ -18,6 +18,7 @@ o2_add_library(ReconstructionDataFormats src/Vertex.cxx src/PrimaryVertex.cxx src/MatchInfoTOF.cxx + src/MatchInfoTOFReco.cxx src/TrackLTIntegral.cxx src/PID.cxx src/DCA.cxx @@ -43,6 +44,7 @@ o2_target_root_dictionary( include/ReconstructionDataFormats/Vertex.h include/ReconstructionDataFormats/PrimaryVertex.h include/ReconstructionDataFormats/MatchInfoTOF.h + include/ReconstructionDataFormats/MatchInfoTOFReco.h include/ReconstructionDataFormats/TrackLTIntegral.h include/ReconstructionDataFormats/PID.h include/ReconstructionDataFormats/DCA.h diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOFReco.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOFReco.h new file mode 100644 index 0000000000000..35ab341e46ee0 --- /dev/null +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOFReco.h @@ -0,0 +1,52 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file MatchInfoTOFReco.h +/// \brief Class to temporary store the output of the matching to TOF in reconstruction + +#ifndef ALICEO2_MATCHINFOTOFRECO_H +#define ALICEO2_MATCHINFOTOFRECO_H + +#include "ReconstructionDataFormats/MatchInfoTOF.h" + +namespace o2 +{ +namespace dataformats +{ +class MatchInfoTOFReco : public MatchInfoTOF +{ + using evGIdx = o2::dataformats::EvIndex; + using evIdx = o2::dataformats::EvIndex; + + public: + enum TrackType : int8_t { UNCONS = 0, + CONSTR, + SIZE, + TPC = 0, + ITSTPC, + TPCTRD, + ITSTPCTRD, + SIZEALL }; + + MatchInfoTOFReco(evIdx evIdxTOFCl, float chi2, o2::track::TrackLTIntegral trkIntLT, evGIdx evIdxTrack, TrackType trkType, float dt = 0, float z = 0) : MatchInfoTOF(evIdxTOFCl, chi2, trkIntLT, evIdxTrack, dt, z), mTrackType(trkType){}; + + MatchInfoTOFReco() = default; + + void setTrackType(TrackType value) { mTrackType = value; } + TrackType getTrackType() const { return mTrackType; } + + private: + TrackType mTrackType; ///< track type (TPC, ITSTPC, TPCTRD, ITSTPCTRD) + ClassDefNV(MatchInfoTOFReco, 1); +}; +} // namespace dataformats +} // namespace o2 +#endif diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowSpec.h b/DataFormats/Reconstruction/src/MatchInfoTOFReco.cxx similarity index 61% rename from Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowSpec.h rename to DataFormats/Reconstruction/src/MatchInfoTOFReco.cxx index ffad01cb111aa..b8de445df5234 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowSpec.h +++ b/DataFormats/Reconstruction/src/MatchInfoTOFReco.cxx @@ -9,20 +9,11 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#ifndef TOF_RECOWORKFLOW_H_ -#define TOF_RECOWORKFLOW_H_ +/// \file MatchInfoTOFReco.cxx +/// \brief Class to temporary store the output of the matching to TOF in reconstruction -#include "Framework/DataProcessorSpec.h" -#include "ReconstructionDataFormats/MatchInfoTOF.h" +#include "ReconstructionDataFormats/MatchInfoTOFReco.h" -namespace o2 -{ -namespace tof -{ +using namespace o2::dataformats; -o2::framework::DataProcessorSpec getTOFRecoWorkflowSpec(bool useMC, bool useFIT); - -} // end namespace tof -} // end namespace o2 - -#endif /* TOF_RECOWORKFLOW_H_ */ +ClassImp(o2::dataformats::MatchInfoTOFReco); diff --git a/DataFormats/Reconstruction/src/ReconstructionDataFormatsLinkDef.h b/DataFormats/Reconstruction/src/ReconstructionDataFormatsLinkDef.h index c7e31a3a08bec..843c51ab0d5b2 100644 --- a/DataFormats/Reconstruction/src/ReconstructionDataFormatsLinkDef.h +++ b/DataFormats/Reconstruction/src/ReconstructionDataFormatsLinkDef.h @@ -36,6 +36,8 @@ #pragma link C++ class o2::dataformats::MatchInfoTOF + ; #pragma link C++ class std::vector < o2::dataformats::MatchInfoTOF> + ; +#pragma link C++ class o2::dataformats::MatchInfoTOFReco + ; +#pragma link C++ class std::vector < o2::dataformats::MatchInfoTOFReco> + ; #pragma link C++ class o2::dataformats::TrackTPCTOF + ; #pragma link C++ class std::vector < o2::dataformats::TrackTPCTOF> + ; diff --git a/Detectors/AOD/CMakeLists.txt b/Detectors/AOD/CMakeLists.txt index 9d329980bbb80..0187e7835e7a2 100644 --- a/Detectors/AOD/CMakeLists.txt +++ b/Detectors/AOD/CMakeLists.txt @@ -25,7 +25,6 @@ o2_add_library( O2::MFTWorkflow O2::SimulationDataFormat O2::Steer - O2::TOFWorkflow O2::TPCWorkflow O2::CCDB O2::MathUtils diff --git a/Detectors/CTF/workflow/CMakeLists.txt b/Detectors/CTF/workflow/CMakeLists.txt index 82e1f21192514..0462350a3ee21 100644 --- a/Detectors/CTF/workflow/CMakeLists.txt +++ b/Detectors/CTF/workflow/CMakeLists.txt @@ -25,7 +25,7 @@ o2_add_library(CTFWorkflow O2::DataFormatsPHOS O2::DataFormatsCPV O2::DataFormatsZDC - O2::DataFormatsHMP + O2::DataFormatsHMP O2::DataFormatsParameters O2::ITSMFTWorkflow O2::TPCWorkflow @@ -33,14 +33,13 @@ o2_add_library(CTFWorkflow O2::FT0Workflow O2::FV0Workflow O2::FDDWorkflow - O2::TOFWorkflow O2::MCHWorkflow O2::MIDWorkflow O2::EMCALWorkflow O2::PHOSWorkflow O2::CPVWorkflow O2::ZDCWorkflow - O2::HMPIDWorkflow + O2::HMPIDWorkflow O2::Algorithm O2::CommonUtils) diff --git a/Detectors/GlobalTracking/CMakeLists.txt b/Detectors/GlobalTracking/CMakeLists.txt index cde8c5b8df64c..11db4b6cf5a4f 100644 --- a/Detectors/GlobalTracking/CMakeLists.txt +++ b/Detectors/GlobalTracking/CMakeLists.txt @@ -11,7 +11,8 @@ o2_add_library( GlobalTracking - SOURCES src/MatchTPCITS.cxx src/MatchTOF.cxx + SOURCES src/MatchTPCITS.cxx + src/MatchTOF.cxx src/MatchTPCITSParams.cxx src/MatchCosmics.cxx src/MatchCosmicsParams.cxx @@ -30,6 +31,7 @@ o2_add_library( O2::TPCReconstruction O2::TOFBase O2::TOFCalibration + O2::TOFWorkflowUtils O2::SimConfig O2::DataFormatsFT0 O2::DataFormatsGlobalTracking diff --git a/Detectors/GlobalTracking/include/GlobalTracking/MatchTOF.h b/Detectors/GlobalTracking/include/GlobalTracking/MatchTOF.h index ca2118de741a5..49738c9d45a14 100644 --- a/Detectors/GlobalTracking/include/GlobalTracking/MatchTOF.h +++ b/Detectors/GlobalTracking/include/GlobalTracking/MatchTOF.h @@ -25,7 +25,7 @@ #include "ReconstructionDataFormats/Track.h" #include "ReconstructionDataFormats/TrackTPCITS.h" #include "ReconstructionDataFormats/TrackTPCTOF.h" -#include "ReconstructionDataFormats/MatchInfoTOF.h" +#include "ReconstructionDataFormats/MatchInfoTOFReco.h" #include "ReconstructionDataFormats/GlobalTrackID.h" #include "DataFormatsTOF/CalibInfoTOF.h" #include "CommonDataFormat/EvIndex.h" @@ -37,19 +37,19 @@ #include "DataFormatsTPC/TrackTPC.h" #include "ReconstructionDataFormats/PID.h" #include "TPCFastTransform.h" +#include "CommonDataFormat/InteractionRecord.h" // from FIT #include "DataFormatsFT0/RecPoints.h" -#ifdef _ALLOW_DEBUG_TREES_ -//#define _ALLOW_TOF_DEBUG_ -#endif - -class TTree; - namespace o2 { +namespace globaltracking +{ +class RecoContainer; +} + namespace dataformats { template @@ -79,17 +79,11 @@ class MatchTOF using evIdx = o2::dataformats::EvIndex; using timeEst = o2::dataformats::TimeStampWithError; using matchTrack = std::pair; + using trkType = o2::dataformats::MatchInfoTOFReco::TrackType; public: ///< perform matching for provided input - void run(); - - ///< fill output tree - void fill(); - - ///< perform all initializations - void init(); - void initTPConly(); + void run(const o2::globaltracking::RecoContainer& inp); void setCosmics() { @@ -98,42 +92,7 @@ class MatchTOF mTimeTolerance = 50e3; } - ///< attach DPL data and run - void run(const gsl::span& trackArray, const gsl::span& clusterArray, const o2::dataformats::MCTruthContainer& toflab, const gsl::span& itstpclab); - void run(const gsl::span& trackArray, const gsl::span& clusterArray, const o2::dataformats::MCTruthContainer& toflab, const gsl::span& tpclab); - - ///< set tree/chain containing tracks - void setInputTreeTracks(TTree* tree) { mInputTreeTracks = tree; } - - ///< set tree/chain containing TPC tracks - void setInputTreeTPCTracks(TTree* tree) { mTreeTPCTracks = tree; } - - ///< set tree/chain containing TOF clusters - void setInputTreeTOFClusters(TTree* tree) { mTreeTOFClusters = tree; } - - ///< set output tree to write matched tracks - void setOutputTree(TTree* tr) { mOutputTree = tr; } - - ///< set output tree to write calibration infos - void setOutputTreeCalib(TTree* tr) { mOutputTreeCalib = tr; } - - ///< set input branch names for the input from the tree - void setTrackBranchName(const std::string& nm) { mTracksBranchName = nm; } - void setTPCTrackBranchName(const std::string& nm) { mTPCTracksBranchName = nm; } - void setTPCMCTruthBranchName(const std::string& nm) { mTPCMCTruthBranchName = nm; } - void setTOFMCTruthBranchName(const std::string& nm) { mTOFMCTruthBranchName = nm; } - void setTOFClusterBranchName(const std::string& nm) { mTOFClusterBranchName = nm; } - void setOutTOFMCTruthBranchName(const std::string& nm) { mOutTOFMCTruthBranchName = nm; } - void setOutTracksBranchName(const std::string& nm) { mOutTracksBranchName = nm; } - void setOutCalibBranchName(const std::string& nm) { mOutCalibBranchName = nm; } - - ///< get input branch names for the input from the tree - const std::string& getTracksBranchName() const { return mTracksBranchName; } - const std::string& getTPCTracksBranchName() const { return mTPCTracksBranchName; } - const std::string& getTPCMCTruthBranchName() const { return mTPCMCTruthBranchName; } - const std::string& getTOFMCTruthBranchName() const { return mTOFMCTruthBranchName; } - const std::string& getTOFClusterBranchName() const { return mTOFClusterBranchName; } - const std::string& getOutTOFMCTruthBranchName() const { return mOutTOFMCTruthBranchName; } + void setHighPurity(bool value = true) { mSetHighPurity = value; } ///< print settings void print() const; @@ -174,30 +133,10 @@ class MatchTOF } } - ///< get the name of output debug file - const std::string& getDebugTreeFileName() const { return mDebugTreeFileName; } - - ///< fill matching debug tree - void fillTOFmatchTree(const char* tname, int cacheTOF, int sectTOF, int plateTOF, int stripTOF, int padXTOF, int padZTOF, int cacheeTrk, int crossedStrip, int sectPropagation, int platePropagation, int stripPropagation, int padXPropagation, int padZPropagation, float resX, float resZ, float res, matchTrack& trk, float intLength, float intTimePion, float timeTOF); - void fillTOFmatchTreeWithLabels(const char* tname, int cacheTOF, int sectTOF, int plateTOF, int stripTOF, int padXTOF, int padZTOF, int cacheeTrk, int crossedStrip, int sectPropagation, int platePropagation, int stripPropagation, int padXPropagation, int padZPropagation, float resX, float resZ, float res, matchTrack& trk, int TPClabelTrackID, int TPClabelEventID, int TPClabelSourceID, int TOFlabelTrackID0, int TOFlabelEventID0, int TOFlabelSourceID0, int TOFlabelTrackID1, int TOFlabelEventID1, int TOFlabelSourceID1, int TOFlabelTrackID2, int TOFlabelEventID2, int TOFlabelSourceID2, float intLength, float intTimePion, float timeTOF); - void dumpWinnerMatches(); - - std::vector& getMatchedTrackVector() { return mMatchedTracks; } + std::vector& getMatchedTrackVector(trkType index) { return mMatchedTracks[index]; } std::vector& getCalibVector() { return mCalibInfoTOF; } - std::vector& getMatchedTOFLabelsVector() { return mOutTOFLabels; } ///< get vector of TOF label of matched tracks - - // this method is deprecated - void setFITRecPoints(const std::vector* recpoints) - { - if (recpoints) { - mFITRecPoints = {recpoints->data(), recpoints->size()}; - } - } - void setFITRecPoints(gsl::span recpoints) - { - mFITRecPoints = recpoints; - } + std::vector& getMatchedTOFLabelsVector(trkType index) { return mOutTOFLabels[index]; } ///< get vector of TOF label of matched tracks ///< set input TPC tracks cluster indices void setTPCTrackClusIdxInp(const gsl::span inp) @@ -217,14 +156,18 @@ class MatchTOF mTPCClusterIdxStruct = inp; } + void setFIT(bool value = true) { mIsFIT = value; } int findFITIndex(int bc); + void checkRefitter(); + bool makeConstrainedTPCTrack(int matchedID, o2::dataformats::TrackTPCTOF& trConstr); + ///< populate externally provided container by TOF-time-constrained TPC tracks template void makeConstrainedTPCTracks(V& container) { checkRefitter(); - int nmatched = mMatchedTracks.size(), nconstrained = 0; + int nmatched = mMatchedTracks[trkType::TPC].size(), nconstrained = 0; container.resize(nmatched); for (unsigned i = 0; i < nmatched; i++) { if (makeConstrainedTPCTrack(i, container[nconstrained])) { @@ -235,41 +178,42 @@ class MatchTOF } private: - void attachInputTrees(); - void attachInputTreesTPConly(); - bool prepareTracks(); - bool prepareTPCTracks(); + bool prepareFITData(); + int prepareInteractionTimes(); + bool prepareTPCData(); + void addTPCSeed(const o2::tpc::TrackTPC& _tr, o2::dataformats::GlobalTrackID srcGID, int tpcID); + void addITSTPCSeed(const o2::dataformats::TrackTPCITS& _tr, o2::dataformats::GlobalTrackID srcGID, int tpcID); + // void addTPCTRDSeed(const o2::track::TrackParCov& _tr, o2::dataformats::GlobalTrackID srcGID, int tpcID); + // void addITSTPCTRDSeed(const o2::track::TrackParCov& _tr, o2::dataformats::GlobalTrackID srcGID, int tpcID); bool prepareTOFClusters(); - bool loadTracksNextChunk(); - bool loadTPCTracksNextChunk(); - bool loadTOFClustersNextChunk(); void doMatching(int sec); void doMatchingForTPC(int sec); void selectBestMatches(); + void selectBestMatchesHP(); bool propagateToRefX(o2::track::TrackParCov& trc, float xRef /*in cm*/, float stepInCm /*in cm*/, o2::track::TrackLTIntegral& intLT); bool propagateToRefXWithoutCov(o2::track::TrackParCov& trc, float xRef /*in cm*/, float stepInCm /*in cm*/, float bz); void updateTimeDependentParams(); - void checkRefitter(); - bool makeConstrainedTPCTrack(int matchedID, o2::dataformats::TrackTPCTOF& trConstr); + + void splitOutputs(); //================================================================ // Data members + const o2::globaltracking::RecoContainer* mRecoCont = nullptr; + o2::InteractionRecord mStartIR{0, 0}; ///< IR corresponding to the start of the TF - bool mSAInitDone = false; ///< flag that standalone init already done - bool mWFInputAttached = false; ///< flag that the standalone input is attached + // for derived class + int mCurrTracksTreeEntry = 0; ///< current tracks tree entry loaded to memory float mXRef = Geo::RMIN; ///< reference radius to propage tracks for matching - int mCurrTracksTreeEntry = 0; ///< current tracks tree entry loaded to memory - int mCurrTOFClustersTreeEntry = 0; ///< current TOF clusters tree entry loaded to memory - bool mMCTruthON = false; ///< flag availability of MC truth ///========== Parameters to be set externally, e.g. from CCDB ==================== - float mBz = 0; ///< nominal Bz + float mBz = 0; ///< nominal Bz + float mMaxInvPt = 999.; ///< derived from nominal Bz // to be done later float mTPCTBinMUS = 0.; ///< TPC time bin duration in microseconds @@ -281,24 +225,21 @@ class MatchTOF float mSpaceTolerance = 10; ///< tolerance in cm for track-TOF time bracket matching int mSigmaTimeCut = 30.; ///< number of sigmas to cut on time when matching the track to the TOF cluster - TTree* mInputTreeTracks = nullptr; ///< input tree for tracks - TTree* mTreeTPCTracks = nullptr; ///< input tree for TPC tracks - TTree* mTreeTOFClusters = nullptr; ///< input tree for TOF clusters - - bool mIsITSused = true; - - TTree* mOutputTree = nullptr; ///< output tree for matched tracks + bool mIsFIT = false; + bool mIsITSTPCused = false; + bool mIsTPCused = false; + bool mIsTPCTRDused = false; + bool mIsITSTPCTRDused = false; + bool mSetHighPurity = false; - TTree* mOutputTreeCalib = nullptr; ///< output tree for calibration infos + // from ruben + gsl::span mTPCTracksArray; ///< input TPC tracks span ///>>>------ these are input arrays which should not be modified by the matching code // since this info is provided by external device - gsl::span mTracksArrayInp; ///< input tracks - std::vector* mTracksArrayInpVect; ///< input tracks (vector to read from tree) - gsl::span mTPCTracksArrayInp; ///< input TPC tracks - std::vector* mTPCTracksArrayInpVect; ///< input tracks (vector to read from tree) - gsl::span mTOFClustersArrayInp; ///< input TOF clusters - std::vector* mTOFClustersArrayInpVect; ///< input TOF clusters (vector to read from tree) + // std::vector mITSTPCTracksArrayInp; ///< input tracks + std::vector mTPCTracksArrayInp; ///< input TPC tracks + gsl::span mTOFClustersArrayInp; ///< input TOF clusters /// data needed for refit of time-constrained TPC tracks gsl::span mTPCTrackClusIdx; ///< input TPC track cluster indices span @@ -307,57 +248,46 @@ class MatchTOF std::unique_ptr mTPCTransform; ///< TPC cluster transformation std::unique_ptr mTPCRefitter; ///< TPC refitter used for TPC tracks refit during the reconstruction - o2::dataformats::MCTruthContainer mTOFClusLabels; ///< input TOF clusters MC labels - o2::dataformats::MCTruthContainer* mTOFClusLabelsPtr; ///< input TOF clusters MC labels (pointer to read from tree) - std::vector mTracksLblWork; ///* mTOFClusLabels; ///< input TOF clusters MC labels (pointer to read from tree) + std::vector mTracksLblWork[trkType::SIZE]; /// mTPCLabels; ///< TPC label of input tracks - std::vector* mTPCLabelsVect; ///< TPC label of input tracks (vector to read from tree) + int mNotPropagatedToTOF[trkType::SIZE]; ///< number of tracks failing in propagation - gsl::span mFITRecPoints; ///< FIT recpoints + gsl::span mFITRecPoints; ///< FIT recpoints /// <<<----- /// mTracksWork; /// mExtraTPCFwdTime; /// mLTinfos; /// mTOFClusWork; /// mSideTPC; /// mTracksWork[trkType::SIZE]; /// mExtraTPCFwdTime; /// mLTinfos[trkType::SIZE]; /// mTOFClusWork; /// mSideTPC; ///, o2::constants::math::NSectors> mTracksSectIndexCache; - ///< per sector indices of track entry in mTPCTracksWork - std::array, o2::constants::math::NSectors> mTPCTracksSectIndexCache; + std::array, o2::constants::math::NSectors> mTracksSectIndexCache[trkType::SIZE]; ///< per sector indices of TOF cluster entry in mTOFClusWork std::array, o2::constants::math::NSectors> mTOFClusSectIndexCache; /// mMatchedTracksPairs; + std::vector mMatchedTracksPairs; /// mCalibInfoTOF; /// mMatchedTracks; - std::vector mMatchedTracks; // this is the output of the matching - std::vector mOutTOFLabels; ///< TOF label of matched tracks + std::vector mMatchedTracks[trkType::SIZE]; // this is the output of the matching -> UNCONS, CONSTR + std::vector mMatchedTracksAll[trkType::SIZEALL]; // this is the output of the matching -> TPC, ITS-TPC, TPC-TRD, ITS-TPC-TRD + std::vector mOutTOFLabels[trkType::SIZE]; ///< TOF label of matched tracks + std::vector mOutTOFLabelsAll[trkType::SIZEALL]; ///< TOF label of matched tracks + + std::vector mMatchedTracksIndex[trkType::SIZE]; // vector of indexes of the tracks to be matched - int mNumOfTracks; // number of tracks to be matched - std::vector mMatchedTracksIndex; // vector of indexes of the tracks to be matched int mNumOfClusters; // number of clusters to be matched int* mMatchedClustersIndex = nullptr; //[mNumOfClusters] - std::string mTracksBranchName = "TPCITS"; ///< name of branch containing input matched tracks - std::string mTPCTracksBranchName = "TPCTracks"; ///< name of branch containing actual TPC tracks - std::string mTPCMCTruthBranchName = "MatchMCTruth"; ///< name of branch containing TPC labels - std::string mTOFMCTruthBranchName = "TOFClusterMCTruth"; ///< name of branch containing TOF clusters labels - std::string mTOFClusterBranchName = "TOFCluster"; ///< name of branch containing input ITS clusters - std::string mOutTracksBranchName = "TOFMatchInfo"; ///< name of branch containing output matched tracks - std::string mOutCalibBranchName = "TOFCalibInfo"; ///< name of branch containing output calibration infos - std::string mOutTOFMCTruthBranchName = "MatchTOFMCTruth"; ///< name of branch containing TOF labels for output matched tracks - std::string mOutTPCTrackMCTruthBranchName = "TPCTracksMCTruth"; ///< name of branch containing TPC labels for input TPC tracks - std::unique_ptr mDBGOut; UInt_t mDBGFlags = 0; std::string mDebugTreeFileName = "dbg_matchTOF.root"; ///< name for the debug tree file @@ -365,11 +295,9 @@ class MatchTOF ///----------- aux stuff --------------/// static constexpr float MAXSNP = 0.85; // max snp of ITS or TPC track at xRef to be matched - Bool_t mIsworkflowON = kFALSE; - TStopwatch mTimerTot; TStopwatch mTimerDBG; - ClassDefNV(MatchTOF, 3); + ClassDefNV(MatchTOF, 1); }; } // namespace globaltracking } // namespace o2 diff --git a/Detectors/GlobalTracking/src/MatchTOF.cxx b/Detectors/GlobalTracking/src/MatchTOF.cxx index a9e4d479b7a2c..c3fe595cec87e 100644 --- a/Detectors/GlobalTracking/src/MatchTOF.cxx +++ b/Detectors/GlobalTracking/src/MatchTOF.cxx @@ -41,249 +41,74 @@ #include "TPCBase/ParameterElectronics.h" #include "TPCReconstruction/TPCFastTransformHelperO2.h" +#include "DataFormatsGlobalTracking/RecoContainer.h" +#include "DataFormatsGlobalTracking/RecoContainerCreateTracksVariadic.h" + using namespace o2::globaltracking; using evGIdx = o2::dataformats::EvIndex; using evIdx = o2::dataformats::EvIndex; +using trkType = o2::dataformats::MatchInfoTOFReco::TrackType; +using Cluster = o2::tof::Cluster; +using GTrackID = o2::dataformats::GlobalTrackID; ClassImp(MatchTOF); //______________________________________________ -void MatchTOF::run() +void MatchTOF::run(const o2::globaltracking::RecoContainer& inp) { ///< running the matching + mRecoCont = &inp; + mStartIR = inp.startIR; updateTimeDependentParams(); - if (!mWFInputAttached && !mSAInitDone) { - LOG(ERROR) << "run called with mSAInitDone=" << mSAInitDone << " and mWFInputAttached=" << mWFInputAttached; - throw std::runtime_error("standalone init was not done or workflow input was not yet attached"); - } mTimerTot.Start(); - // we load all TOF clusters (to be checked if we need to split per time frame) - prepareTOFClusters(); - mTimerTot.Stop(); LOGF(INFO, "Timing prepareTOFCluster: Cpu: %.3e s Real: %.3e s in %d slots", mTimerTot.CpuTime(), mTimerTot.RealTime(), mTimerTot.Counter() - 1); mTimerTot.Start(); - if (mIsworkflowON) { - LOG(DEBUG) << "Number of entries in track tree = " << mCurrTracksTreeEntry; - - if (mIsITSused) { - prepareTracks(); - } else { - prepareTPCTracks(); - } - - mMatchedTracks.clear(); - mOutTOFLabels.clear(); - - mTimerTot.Stop(); - LOGF(INFO, "Timing prepare tracks: Cpu: %.3e s Real: %.3e s in %d slots", mTimerTot.CpuTime(), mTimerTot.RealTime(), mTimerTot.Counter() - 1); - mTimerTot.Start(); - - for (int sec = o2::constants::math::NSectors; sec--;) { - LOG(INFO) << "Doing matching for sector " << sec << "..."; - if (mIsITSused) { - doMatching(sec); - } else { - doMatchingForTPC(sec); - } - LOG(INFO) << "...done. Now check the best matches"; - selectBestMatches(); - } - } - - // we do the matching per entry of the TPCITS matched tracks tree - while (!mIsworkflowON && mCurrTracksTreeEntry + 1 < mInputTreeTracks->GetEntries()) { // we add "+1" because mCurrTracksTreeEntry starts from -1, and it is incremented in loadTracksNextChunk which is called by prepareTracks - LOG(DEBUG) << "Number of entries in track tree = " << mCurrTracksTreeEntry; - - if (mIsITSused) { - prepareTracks(); - } else { - prepareTPCTracks(); - } - - mMatchedTracks.clear(); - mOutTOFLabels.clear(); - - mTimerTot.Stop(); - LOGF(INFO, "Timing prepare tracks: Cpu: %.3e s Real: %.3e s in %d slots", mTimerTot.CpuTime(), mTimerTot.RealTime(), mTimerTot.Counter() - 1); - mTimerTot.Start(); - - for (int sec = o2::constants::math::NSectors; sec--;) { - LOG(INFO) << "Doing matching for sector " << sec << "..."; - if (mIsITSused) { - doMatching(sec); - } else { - doMatchingForTPC(sec); - } - LOG(INFO) << "...done. Now check the best matches"; - selectBestMatches(); - } - - mTimerTot.Stop(); - LOGF(INFO, "Timing Do Matching: Cpu: %.3e s Real: %.3e s in %d slots", mTimerTot.CpuTime(), mTimerTot.RealTime(), mTimerTot.Counter() - 1); - mTimerTot.Start(); - - fill(); - } - -#ifdef _ALLOW_TOF_DEBUG_ - if (mDBGFlags) - mDBGOut.reset(); -#endif - - mWFInputAttached = false; - - mTimerTot.Stop(); - LOGF(INFO, "Timing Do Matching: Cpu: %.3e s Real: %.3e s in %d slots", mTimerTot.CpuTime(), mTimerTot.RealTime(), mTimerTot.Counter() - 1); -} - -//______________________________________________ -void MatchTOF::fill() -{ - mOutputTree->Fill(); - if (mOutputTreeCalib) { - mOutputTreeCalib->Fill(); + for (int i = 0; i < trkType::SIZE; i++) { + mMatchedTracks[i].clear(); + mTracksWork[i].clear(); + mOutTOFLabels[i].clear(); } -} -//______________________________________________ -void MatchTOF::run(const gsl::span& trackArray, const gsl::span& clusterArray, const o2::dataformats::MCTruthContainer& toflab, const gsl::span& itstpclab) -{ - mIsITSused = true; - mTracksArrayInp = trackArray; - mTOFClustersArrayInp = clusterArray; - mIsworkflowON = kTRUE; - mTOFClusLabels = toflab; - mTPCLabels = itstpclab; - - mMCTruthON = (mTOFClusLabels.getNElements() && mTPCLabels.size()); - mWFInputAttached = true; - mSAInitDone = true; - run(); -} -//______________________________________________ -void MatchTOF::run(const gsl::span& trackArray, const gsl::span& clusterArray, const o2::dataformats::MCTruthContainer& toflab, const gsl::span& tpclab) -{ - mIsITSused = false; - mTPCTracksArrayInp = trackArray; - mTOFClustersArrayInp = clusterArray; - mIsworkflowON = kTRUE; - mTOFClusLabels = toflab; - mTPCLabels = tpclab; - - mMCTruthON = (mTOFClusLabels.getNElements() && mTPCLabels.size()); - mWFInputAttached = true; - mSAInitDone = true; - - run(); -} -//______________________________________________ -void MatchTOF::init() -{ - ///< initizalizations - mIsITSused = true; - - if (mSAInitDone) { - LOG(ERROR) << "Initialization was already done"; + if (!prepareTOFClusters()) { // check cluster before of tracks to see also if MC is required return; } - attachInputTrees(); - // create output branch with track-tof matching - if (mOutputTree) { - mOutputTree->Branch(mOutTracksBranchName.data(), &mMatchedTracks); - LOG(INFO) << "Matched tracks will be stored in " << mOutTracksBranchName << " branch of tree " - << mOutputTree->GetName(); - if (mMCTruthON) { - mOutputTree->Branch(mOutTOFMCTruthBranchName.data(), &mOutTOFLabels); - LOG(INFO) << "TOF Tracks Labels branch: " << mOutTOFMCTruthBranchName; - } - - } else { - LOG(INFO) << "Output tree is not attached, matched tracks will not be stored"; - } - - // create output branch for calibration info - if (mOutputTreeCalib) { - mOutputTreeCalib->Branch(mOutCalibBranchName.data(), &mCalibInfoTOF); - LOG(INFO) << "Calib infos will be stored in " << mOutCalibBranchName << " branch of tree " - << mOutputTreeCalib->GetName(); - } else { - LOG(INFO) << "Calib Output tree is not attached, calib infos will not be stored"; - } - -#ifdef _ALLOW_TOF_DEBUG_ - // debug streamer - if (mDBGFlags) { - mDBGOut = std::make_unique(mDebugTreeFileName.data(), "recreate"); - } -#endif - - mSAInitDone = true; - - { - mTimerTot.Stop(); - mTimerTot.Reset(); - } - - print(); -} -//______________________________________________ -void MatchTOF::initTPConly() -{ - ///< initizalizations - - mIsITSused = false; - - if (mSAInitDone) { - LOG(ERROR) << "Initialization was already done"; + if (!prepareTPCData() || !prepareFITData()) { return; } - attachInputTreesTPConly(); - // create output branch with track-tof matching - if (mOutputTree) { - mOutputTree->Branch(mOutTracksBranchName.data(), &mMatchedTracks); - LOG(INFO) << "Matched tracks will be stored in " << mOutTracksBranchName << " branch of tree " - << mOutputTree->GetName(); - if (mMCTruthON) { - mOutputTree->Branch(mOutTOFMCTruthBranchName.data(), &mOutTOFLabels); - LOG(INFO) << "TOF Tracks Labels branch: " << mOutTOFMCTruthBranchName; - } - - } else { - LOG(INFO) << "Output tree is not attached, matched tracks will not be stored"; - } - - // create output branch for calibration info - if (mOutputTreeCalib) { - mOutputTreeCalib->Branch(mOutCalibBranchName.data(), &mCalibInfoTOF); - LOG(INFO) << "Calib infos will be stored in " << mOutCalibBranchName << " branch of tree " - << mOutputTreeCalib->GetName(); - } else { - LOG(INFO) << "Calib Output tree is not attached, calib infos will not be stored"; - } + mTimerTot.Stop(); + LOGF(INFO, "Timing prepare tracks: Cpu: %.3e s Real: %.3e s in %d slots", mTimerTot.CpuTime(), mTimerTot.RealTime(), mTimerTot.Counter() - 1); + mTimerTot.Start(); -#ifdef _ALLOW_TOF_DEBUG_ - // debug streamer - if (mDBGFlags) { - mDBGOut = std::make_unique(mDebugTreeFileName.data(), "recreate"); + for (int sec = o2::constants::math::NSectors; sec--;) { + mMatchedTracksPairs.clear(); // new sector + LOG(INFO) << "Doing matching for sector " << sec << "..."; + if (mIsITSTPCused || mIsTPCTRDused || mIsITSTPCTRDused) { + doMatching(sec); + } + if (mIsTPCused) { + doMatchingForTPC(sec); + } + LOG(INFO) << "...done. Now check the best matches"; + selectBestMatches(); } -#endif - mSAInitDone = true; + // re-arrange outputs from constrained/unconstrained to the 4 cases (TPC, ITS-TPC, TPC-TRD, ITS-TPC-TRD) to be implemented as soon as TPC-TRD and ITS-TPC-TRD tracks available + // splitOutputs(); - { - mTimerTot.Stop(); - mTimerTot.Reset(); - } + mIsTPCused = false; + mIsITSTPCused = false; + mIsTPCTRDused = false; + mIsITSTPCTRDused = false; - print(); + mTimerTot.Stop(); + LOGF(INFO, "Timing Do Matching: Cpu: %.3e s Real: %.3e s in %d slots", mTimerTot.CpuTime(), mTimerTot.RealTime(), mTimerTot.Counter() - 1); } - //______________________________________________ void MatchTOF::print() const { @@ -298,381 +123,224 @@ void MatchTOF::print() const LOG(INFO) << "**********************************************************************"; } - //______________________________________________ void MatchTOF::printCandidatesTOF() const { ///< print the candidates for the matching } - -//______________________________________________ -void MatchTOF::attachInputTrees() +//_____________________________________________________ +bool MatchTOF::prepareFITData() { - ///< attaching the input tree - LOG(DEBUG) << "attachInputTrees"; - if (!mInputTreeTracks) { - LOG(FATAL) << "Input tree with tracks is not set"; - } - - if (!mTreeTOFClusters) { - LOG(FATAL) << "TOF clusters data input tree is not set"; + // If available, read FIT Info + if (mIsFIT) { + mFITRecPoints = mRecoCont->getFT0RecPoints(); + // prepareInteractionTimes(); } - - // input tracks (this is the pairs of ITS-TPC matches) - - if (!mInputTreeTracks->GetBranch(mTracksBranchName.data())) { - LOG(FATAL) << "Did not find tracks branch " << mTracksBranchName << " in the input tree"; - } - mInputTreeTracks->SetBranchAddress(mTracksBranchName.data(), &mTracksArrayInpVect); - LOG(INFO) << "Attached tracks " << mTracksBranchName << " branch with " << mInputTreeTracks->GetEntries() - << " entries"; - - // input TOF clusters - - if (!mTreeTOFClusters->GetBranch(mTOFClusterBranchName.data())) { - LOG(FATAL) << "Did not find TOF clusters branch " << mTOFClusterBranchName << " in the input tree"; - } - mTreeTOFClusters->SetBranchAddress(mTOFClusterBranchName.data(), &mTOFClustersArrayInpVect); - LOG(INFO) << "Attached TOF clusters " << mTOFClusterBranchName << " branch with " << mTreeTOFClusters->GetEntries() - << " entries"; - // is there MC info available ? - mMCTruthON = true; - if (mTreeTOFClusters->GetBranch(mTOFMCTruthBranchName.data())) { - mTOFClusLabelsPtr = &mTOFClusLabels; - mTreeTOFClusters->SetBranchAddress(mTOFMCTruthBranchName.data(), &mTOFClusLabelsPtr); - LOG(INFO) << "Found TOF Clusters MCLabels branch " << mTOFMCTruthBranchName; - } else { - mMCTruthON = false; - } - if (mInputTreeTracks->GetBranch(mTPCMCTruthBranchName.data())) { - mInputTreeTracks->SetBranchAddress(mTPCMCTruthBranchName.data(), &mTPCLabelsVect); - LOG(INFO) << "Found TPC tracks MCLabels branch " << mTPCMCTruthBranchName.data(); - } else { - mMCTruthON = false; - } - - mCurrTracksTreeEntry = -1; - mCurrTOFClustersTreeEntry = -1; + return true; } //______________________________________________ -void MatchTOF::attachInputTreesTPConly() +int MatchTOF::prepareInteractionTimes() { - ///< attaching the input tree - LOG(DEBUG) << "attachInputTrees"; - - if (!mTreeTPCTracks) { - LOG(FATAL) << "TPC tracks data input tree is not set"; - } - - if (!mTreeTOFClusters) { - LOG(FATAL) << "TOF clusters data input tree is not set"; - } - - // input tracks (this is the TPC tracks) - - if (!mTreeTPCTracks->GetBranch(mTPCTracksBranchName.data())) { - LOG(FATAL) << "Did not find tracks branch " << mTPCTracksBranchName << " in the input tree"; - } - mTreeTPCTracks->SetBranchAddress(mTPCTracksBranchName.data(), &mTPCTracksArrayInpVect); - LOG(INFO) << "Attached tracks " << mTPCTracksBranchName << " branch with " << mTreeTPCTracks->GetEntries() - << " entries"; - - // input TOF clusters - - if (!mTreeTOFClusters->GetBranch(mTOFClusterBranchName.data())) { - LOG(FATAL) << "Did not find TOF clusters branch " << mTOFClusterBranchName << " in the input tree"; - } - mTreeTOFClusters->SetBranchAddress(mTOFClusterBranchName.data(), &mTOFClustersArrayInpVect); - LOG(INFO) << "Attached TOF clusters " << mTOFClusterBranchName << " branch with " << mTreeTOFClusters->GetEntries() - << " entries"; - // is there MC info available ? - mMCTruthON = true; - if (mTreeTOFClusters->GetBranch(mTOFMCTruthBranchName.data())) { - mTOFClusLabelsPtr = &mTOFClusLabels; - mTreeTOFClusters->SetBranchAddress(mTOFMCTruthBranchName.data(), &mTOFClusLabelsPtr); - LOG(INFO) << "Found TOF Clusters MCLabels branch " << mTOFMCTruthBranchName; - } else { - mMCTruthON = false; - } - if (mTreeTPCTracks->GetBranch(mOutTPCTrackMCTruthBranchName.data())) { - mTreeTPCTracks->SetBranchAddress(mOutTPCTrackMCTruthBranchName.data(), &mTPCLabelsVect); - LOG(INFO) << "Found TPC tracks MCLabels branch " << mOutTPCTrackMCTruthBranchName; - } else { - mMCTruthON = false; - } - - mCurrTracksTreeEntry = -1; - mCurrTOFClustersTreeEntry = -1; + // do nothing. If you think it can be useful have a look at MatchTPCITS + return 0; } - //______________________________________________ -bool MatchTOF::prepareTracks() +bool MatchTOF::prepareTPCData() { - ///< prepare the tracks that we want to match to TOF + mNotPropagatedToTOF[trkType::UNCONS] = 0; + mNotPropagatedToTOF[trkType::CONSTR] = 0; - if (!mIsworkflowON && !loadTracksNextChunk()) { - return false; - } + mTPCTracksArrayInp.clear(); - mNumOfTracks = mTracksArrayInp.size(); - if (mNumOfTracks == 0) { - return false; // no tracks to be matched - } - mMatchedTracksIndex.resize(mNumOfTracks); - std::fill(mMatchedTracksIndex.begin(), mMatchedTracksIndex.end(), -1); // initializing all to -1 + for (int it = 0; it < trkType::SIZE; it++) { + mMatchedTracksIndex[it].clear(); - // copy the track params, propagate to reference X and build sector tables - mTracksWork.clear(); - mLTinfos.clear(); - mTracksWork.reserve(mNumOfTracks); - mLTinfos.reserve(mNumOfTracks); - if (mMCTruthON) { - mTracksLblWork.clear(); - mTracksLblWork.reserve(mNumOfTracks); - } - for (int sec = o2::constants::math::NSectors; sec--;) { - mTracksSectIndexCache[sec].clear(); - mTracksSectIndexCache[sec].reserve(100 + 1.2 * mNumOfTracks / o2::constants::math::NSectors); - } - - float maxInvPt = abs(mBz) > 0.1 ? 1. / (abs(mBz) * 0.05) : 999.; - - LOG(DEBUG) << "\n\nWe have %d tracks to try to match to TOF: " << mNumOfTracks; - int nNotPropagatedToTOF = 0; - for (int it = 0; it < mNumOfTracks; it++) { - const o2::dataformats::TrackTPCITS& trcOrig = mTracksArrayInp[it]; // TODO: check if we cannot directly use the o2::track::TrackParCov class instead of o2::dataformats::TrackTPCITS, and then avoid the casting below; this is the track at the vertex - std::array globalPos; - - // create working copy of track param - mTracksWork.emplace_back(std::make_pair(trcOrig.getParamOut(), trcOrig.getTimeMUS())); //, mCurrTracksTreeEntry, it); - mLTinfos.emplace_back(trcOrig.getLTIntegralOut()); - // make a copy of the TPC track that we have to propagate - //o2::tpc::TrackTPC* trc = new o2::tpc::TrackTPC(trcTPCOrig); // this would take the TPCout track - //auto& trc = mTracksWork.back(); // with this we take the TPCITS track propagated to the vertex - auto& trc = mTracksWork.back().first; // with this we take the TPCITS track propagated to the vertex - auto& intLT = mLTinfos.back(); // we get the integrated length from TPC-ITC outward propagation - - if (trc.getX() < o2::constants::geom::XTPCOuterRef - 1.) { // tpc-its track outward propagation did not reach outer ref.radius, skip this track - nNotPropagatedToTOF++; - continue; - } + mLTinfos[it].clear(); - // propagate to matching Xref - trc.getXYZGlo(globalPos); - LOG(DEBUG) << "Global coordinates Before propagating to 371 cm: globalPos[0] = " << globalPos[0] << ", globalPos[1] = " << globalPos[1] << ", globalPos[2] = " << globalPos[2]; - LOG(DEBUG) << "Radius xy Before propagating to 371 cm = " << TMath::Sqrt(globalPos[0] * globalPos[0] + globalPos[1] * globalPos[1]); - LOG(DEBUG) << "Radius xyz Before propagating to 371 cm = " << TMath::Sqrt(globalPos[0] * globalPos[0] + globalPos[1] * globalPos[1] + globalPos[2] * globalPos[2]); - if (!propagateToRefXWithoutCov(trc, mXRef, 2, mBz)) { // we first propagate to 371 cm without considering the covariance matrix - nNotPropagatedToTOF++; - continue; + if (mMCTruthON) { + mTracksLblWork[it].clear(); } - - // the "rough" propagation worked; now we can propagate considering also the cov matrix - if (!propagateToRefX(trc, mXRef, 2, intLT) || TMath::Abs(trc.getZ()) > Geo::MAXHZTOF) { // we check that the propagation with the cov matrix worked; CHECK: can it happen that it does not if the propagation without the errors succeeded? - nNotPropagatedToTOF++; - continue; + for (int sec = o2::constants::math::NSectors; sec--;) { + mTracksSectIndexCache[it][sec].clear(); } + } - trc.getXYZGlo(globalPos); + auto creator = [this](auto& trk, GTrackID gid, float time0, float terr) { + const int nclustersMin = 0; + if constexpr (isTPCTrack()) { + if (trk.getNClusters() < nclustersMin) { + return true; + } - LOG(DEBUG) << "Global coordinates After propagating to 371 cm: globalPos[0] = " << globalPos[0] << ", globalPos[1] = " << globalPos[1] << ", globalPos[2] = " << globalPos[2]; - LOG(DEBUG) << "Radius xy After propagating to 371 cm = " << TMath::Sqrt(globalPos[0] * globalPos[0] + globalPos[1] * globalPos[1]); - LOG(DEBUG) << "Radius xyz After propagating to 371 cm = " << TMath::Sqrt(globalPos[0] * globalPos[0] + globalPos[1] * globalPos[1] + globalPos[2] * globalPos[2]); - LOG(DEBUG) << "The track will go to sector " << o2::math_utils::angle2Sector(TMath::ATan2(globalPos[1], globalPos[0])); + if (std::abs(trk.getQ2Pt()) > mMaxInvPt) { + return true; + } + this->addTPCSeed(trk, gid, gid.getIndex()); + } + if constexpr (isTPCITSTrack()) { + if (trk.getParamOut().getX() < o2::constants::geom::XTPCOuterRef - 1.) { + return true; + } + this->addITSTPCSeed(trk, gid, gid.getIndex()); + } + return true; + }; + mRecoCont->createTracksVariadic(creator); - mTracksSectIndexCache[o2::math_utils::angle2Sector(TMath::ATan2(globalPos[1], globalPos[0]))].push_back(it); - //delete trc; // Check: is this needed? + for (int it = 0; it < trkType::SIZE; it++) { + mMatchedTracksIndex[it].resize(mTracksWork[it].size()); + std::fill(mMatchedTracksIndex[it].begin(), mMatchedTracksIndex[it].end(), -1); // initializing all to -1 } - LOG(INFO) << "Total number of tracks = " << mNumOfTracks << ", Number of tracks that failed to be propagated to TOF = " << nNotPropagatedToTOF; + if (mIsTPCused) { + LOG(INFO) << "Total number of TPC tracks = " << mTracksLblWork[trkType::UNCONS].size() << ", Number of UNCONSTRAINED tracks that failed to be propagated to TOF = " << mNotPropagatedToTOF[trkType::UNCONS]; - // sort tracks in each sector according to their time (increasing in time) - for (int sec = o2::constants::math::NSectors; sec--;) { - auto& indexCache = mTracksSectIndexCache[sec]; - LOG(INFO) << "Sorting sector" << sec << " | " << indexCache.size() << " tracks"; - if (!indexCache.size()) { - continue; - } - std::sort(indexCache.begin(), indexCache.end(), [this](int a, int b) { - auto& trcA = mTracksWork[a].second; - auto& trcB = mTracksWork[b].second; - return ((trcA.getTimeStamp() - mSigmaTimeCut * trcA.getTimeStampError()) - (trcB.getTimeStamp() - mSigmaTimeCut * trcB.getTimeStampError()) < 0.); - }); - } // loop over tracks of single sector + // sort tracks in each sector according to their time (increasing in time) + for (int sec = o2::constants::math::NSectors; sec--;) { + auto& indexCache = mTracksSectIndexCache[trkType::UNCONS][sec]; + LOG(INFO) << "Sorting sector" << sec << " | " << indexCache.size() << " tracks"; + if (!indexCache.size()) { + continue; + } + std::sort(indexCache.begin(), indexCache.end(), [this](int a, int b) { + auto& trcA = mTracksWork[trkType::UNCONS][a].second; + auto& trcB = mTracksWork[trkType::UNCONS][b].second; + return ((trcA.getTimeStamp() - trcA.getTimeStampError()) - (trcB.getTimeStamp() - trcB.getTimeStampError()) < 0.); + }); + } // loop over tracks of single sector + } + if (mIsITSTPCused || mIsTPCTRDused || mIsITSTPCTRDused) { + LOG(INFO) << "Total number of TPC tracks = " << mTracksLblWork[trkType::CONSTR].size() << ", Number of CONSTRAINED tracks that failed to be propagated to TOF = " << mNotPropagatedToTOF[trkType::CONSTR]; - // Uncomment for local debug - /* - // printing the tracks - std::array globalPos; - int itmp = 0; - for (int sec = o2::constants::math::NSectors; sec--;) { - auto& cacheTrk = mTracksSectIndexCache[sec]; // array of cached tracks indices for this sector; reminder: they are ordered in time! - for (int itrk = 0; itrk < cacheTrk.size(); itrk++){ - itmp++; - auto& trc = mTracksWork[cacheTrk[itrk]]; - trc.getXYZGlo(globalPos); - //printf("Track %d: Global coordinates After propagating to 371 cm: globalPos[0] = %f, globalPos[1] = %f, globalPos[2] = %f\n", itrk, globalPos[0], globalPos[1], globalPos[2]); - // Printf("The phi angle is %f", TMath::ATan2(globalPos[1], globalPos[0])); - } + // sort tracks in each sector according to their time (increasing in time) + for (int sec = o2::constants::math::NSectors; sec--;) { + auto& indexCache = mTracksSectIndexCache[trkType::CONSTR][sec]; + LOG(INFO) << "Sorting sector" << sec << " | " << indexCache.size() << " tracks"; + if (!indexCache.size()) { + continue; + } + std::sort(indexCache.begin(), indexCache.end(), [this](int a, int b) { + auto& trcA = mTracksWork[trkType::CONSTR][a].second; + auto& trcB = mTracksWork[trkType::CONSTR][b].second; + return ((trcA.getTimeStamp() - mSigmaTimeCut * trcA.getTimeStampError()) - (trcB.getTimeStamp() - mSigmaTimeCut * trcB.getTimeStampError()) < 0.); + }); + } // loop over tracks of single sector } - Printf("we have %d tracks",itmp); - */ return true; } //______________________________________________ -bool MatchTOF::prepareTPCTracks() +void MatchTOF::addITSTPCSeed(const o2::dataformats::TrackTPCITS& _tr, o2::dataformats::GlobalTrackID srcGID, int tpcID) { - ///< prepare the tracks that we want to match to TOF + mIsITSTPCused = true; - if (!mIsworkflowON && !loadTPCTracksNextChunk()) { - return false; - } + std::array globalPos; - mNumOfTracks = mTPCTracksArrayInp.size(); - if (mNumOfTracks == 0) { - return false; // no tracks to be matched - } - mMatchedTracksIndex.resize(mNumOfTracks); - std::fill(mMatchedTracksIndex.begin(), mMatchedTracksIndex.end(), -1); // initializing all to -1 + // current track index + int it = mTracksWork[trkType::CONSTR].size(); - // copy the track params, propagate to reference X and build sector tables - mTracksWork.clear(); - mTracksWork.reserve(mNumOfTracks); - mSideTPC.clear(); - mSideTPC.reserve(mNumOfTracks); - mExtraTPCFwdTime.clear(); - mExtraTPCFwdTime.reserve(mNumOfTracks); + auto trc = _tr.getParamOut(); + o2::track::TrackLTIntegral intLT0 = _tr.getLTIntegralOut(); - for (int sec = o2::constants::math::NSectors; sec--;) { - mTPCTracksSectIndexCache[sec].clear(); - mTPCTracksSectIndexCache[sec].reserve(100 + 1.2 * mNumOfTracks / o2::constants::math::NSectors); + // propagate to matching Xref + trc.getXYZGlo(globalPos); + LOG(DEBUG) << "Global coordinates Before propagating to 371 cm: globalPos[0] = " << globalPos[0] << ", globalPos[1] = " << globalPos[1] << ", globalPos[2] = " << globalPos[2]; + LOG(DEBUG) << "Radius xy Before propagating to 371 cm = " << TMath::Sqrt(globalPos[0] * globalPos[0] + globalPos[1] * globalPos[1]); + LOG(DEBUG) << "Radius xyz Before propagating to 371 cm = " << TMath::Sqrt(globalPos[0] * globalPos[0] + globalPos[1] * globalPos[1] + globalPos[2] * globalPos[2]); + if (!propagateToRefXWithoutCov(trc, mXRef, 2, mBz)) { // we first propagate to 371 cm without considering the covariance matrix + mNotPropagatedToTOF[trkType::CONSTR]++; + return; } - float maxInvPt = abs(mBz) > 0.1 ? 1. / (abs(mBz) * 0.05) : 999.; - int nclustersMin = 0; - LOG(INFO) << "Max track Inv pT allowed = " << maxInvPt; - LOG(INFO) << "Min track Nclusters allowed = " << nclustersMin; - - LOG(DEBUG) << "\n\nWe have %d tracks to try to match to TOF: " << mNumOfTracks; - int nNotPropagatedToTOF = 0; - for (int it = 0; it < mNumOfTracks; it++) { - const o2::tpc::TrackTPC& trcOrig = mTPCTracksArrayInp[it]; // TODO: check if we cannot directly use the o2::track::TrackParCov class instead of o2::dataformats::TrackTPCITS, and then avoid the casting below; this is the track at the vertex - std::array globalPos; - - // create working copy of track param - timeEst timeInfo; - // set - float extraErr = 0; - if (mIsCosmics) { - extraErr = 100; - } - timeInfo.setTimeStamp(trcOrig.getTime0() * mTPCTBinMUS); - timeInfo.setTimeStampError((trcOrig.getDeltaTBwd() + 5) * mTPCTBinMUS + extraErr); - mSideTPC.push_back(trcOrig.hasASideClustersOnly() ? 1 : (trcOrig.hasCSideClustersOnly() ? -1 : 0)); - mExtraTPCFwdTime.push_back((trcOrig.getDeltaTFwd() + 5) * mTPCTBinMUS + extraErr); + // the "rough" propagation worked; now we can propagate considering also the cov matrix + if (!propagateToRefX(trc, mXRef, 2, intLT0) || TMath::Abs(trc.getZ()) > Geo::MAXHZTOF) { // we check that the propagation with the cov matrix worked; CHECK: can it happen that it does not if the prop> + mNotPropagatedToTOF[trkType::CONSTR]++; + return; + } - // make a copy of the TPC track that we have to propagate - mTracksWork.emplace_back(std::make_pair(trcOrig.getOuterParam(), timeInfo)); // RS Why do we creat a track copy before deciding that the track should be propagated? - auto& trc = mTracksWork.back().first; + trc.getXYZGlo(globalPos); - o2::track::TrackLTIntegral intLT0{}; // we get the integrated length from TPC-ITC outward propagation - auto& intLT = mLTinfos.emplace_back(intLT0); + LOG(DEBUG) << "Global coordinates After propagating to 371 cm: globalPos[0] = " << globalPos[0] << ", globalPos[1] = " << globalPos[1] << ", globalPos[2] = " << globalPos[2]; + LOG(DEBUG) << "Radius xy After propagating to 371 cm = " << TMath::Sqrt(globalPos[0] * globalPos[0] + globalPos[1] * globalPos[1]); + LOG(DEBUG) << "Radius xyz After propagating to 371 cm = " << TMath::Sqrt(globalPos[0] * globalPos[0] + globalPos[1] * globalPos[1] + globalPos[2] * globalPos[2]); + LOG(DEBUG) << "The track will go to sector " << o2::math_utils::angle2Sector(TMath::ATan2(globalPos[1], globalPos[0])); - if (trcOrig.getNClusters() < nclustersMin) { - nNotPropagatedToTOF++; - continue; - } + // create working copy of track param + mTracksWork[trkType::CONSTR].emplace_back(std::make_pair(trc, _tr.getTimeMUS())); + mLTinfos[trkType::CONSTR].emplace_back(intLT0); - if (std::abs(trc.getQ2Pt()) > maxInvPt) { // tpc-its track outward propagation did not reach outer ref.radius, skip this track - nNotPropagatedToTOF++; - continue; - } + if (mMCTruthON) { + mTracksLblWork[trkType::CONSTR].emplace_back(mRecoCont->getTPCITSTrackMCLabel(srcGID)); + } - o2::base::Propagator::Instance()->estimateLTFast(intLT, trc); // init intLT with fast estimate + mTracksSectIndexCache[trkType::CONSTR][o2::math_utils::angle2Sector(TMath::ATan2(globalPos[1], globalPos[0]))].push_back(it); + //delete trc; // Check: is this needed? +} +//______________________________________________ +void MatchTOF::addTPCSeed(const o2::tpc::TrackTPC& _tr, o2::dataformats::GlobalTrackID srcGID, int tpcID) +{ + mIsTPCused = true; -#ifdef _ALLOW_TOF_DEBUG_ - // propagate to matching Xref - trc.getXYZGlo(globalPos); - LOG(INFO) << "Global coordinates Before propagating to 371 cm: globalPos[0] = " << globalPos[0] << ", globalPos[1] = " << globalPos[1] << ", globalPos[2] = " << globalPos[2]; - LOG(INFO) << "Radius xy Before propagating to 371 cm = " << TMath::Sqrt(globalPos[0] * globalPos[0] + globalPos[1] * globalPos[1]); - LOG(INFO) << "Radius xyz Before propagating to 371 cm = " << TMath::Sqrt(globalPos[0] * globalPos[0] + globalPos[1] * globalPos[1] + globalPos[2] * globalPos[2]); - // the "very rough" propagation worked; now we can propagate considering also the cov matrix -#endif + std::array globalPos; - if (!propagateToRefXWithoutCov(trc, mXRef, 10, mBz)) { // we first propagate to 371 cm without considering the covariance matrix - nNotPropagatedToTOF++; - continue; - } + // current track index + int it = mTracksWork[trkType::UNCONS].size(); - if (trc.getX() < o2::constants::geom::XTPCOuterRef - 1.) { - if (!propagateToRefX(trc, o2::constants::geom::XTPCOuterRef, 10, intLT) || TMath::Abs(trc.getZ()) > Geo::MAXHZTOF) { // we check that the propagation with the cov matrix worked; CHECK: can it happen that it does not if the propagation without the errors succeeded? - nNotPropagatedToTOF++; - continue; - } - } + // create working copy of track param + timeEst timeInfo; + // set + float extraErr = 0; + if (mIsCosmics) { + extraErr = 100; + } - // the "rough" propagation worked; now we can propagate considering also the cov matrix - if (!propagateToRefX(trc, mXRef, 2, intLT) || TMath::Abs(trc.getZ()) > Geo::MAXHZTOF) { // we check that the propagation with the cov matrix worked; CHECK: can it happen that it does not if the propagation without the errors succeeded? - nNotPropagatedToTOF++; - continue; - } + auto trc = _tr.getOuterParam(); - trc.getXYZGlo(globalPos); + if (!propagateToRefXWithoutCov(trc, mXRef, 10, mBz)) { // we first propagate to 371 cm without considering the covariance matri + mNotPropagatedToTOF[trkType::UNCONS]++; + return; + } -#ifdef _ALLOW_TOF_DEBUG_ - LOG(INFO) << "Global coordinates After propagating to 371 cm: globalPos[0] = " << globalPos[0] << ", globalPos[1] = " << globalPos[1] << ", globalPos[2] = " << globalPos[2]; - LOG(INFO) << "Radius xy After propagating to 371 cm = " << TMath::Sqrt(globalPos[0] * globalPos[0] + globalPos[1] * globalPos[1]); - LOG(INFO) << "Radius xyz After propagating to 371 cm = " << TMath::Sqrt(globalPos[0] * globalPos[0] + globalPos[1] * globalPos[1] + globalPos[2] * globalPos[2]); - LOG(INFO) << "The track will go to sector " << o2::math_utils::angle2Sector(TMath::ATan2(globalPos[1], globalPos[0])); -#endif + o2::track::TrackLTIntegral intLT0; //mTPCTracksWork.back().getLTIntegralOut(); // we get the integrated length from TPC-ITC outward propagation - mTracksSectIndexCache[o2::math_utils::angle2Sector(TMath::ATan2(globalPos[1], globalPos[0]))].push_back(it); - //delete trc; // Check: is this needed? + if (trc.getX() < o2::constants::geom::XTPCOuterRef - 1.) { + if (!propagateToRefX(trc, o2::constants::geom::XTPCOuterRef, 10, intLT0) || TMath::Abs(trc.getZ()) > Geo::MAXHZTOF) { // we check that the propagation with the cov matrix worked; CHECK: can it happ + mNotPropagatedToTOF[trkType::UNCONS]++; + return; + } } - LOG(INFO) << "Total number of tracks = " << mNumOfTracks << ", Number of tracks that failed to be propagated to TOF = " << nNotPropagatedToTOF; + // the "rough" propagation worked; now we can propagate considering also the cov matrix + if (!propagateToRefX(trc, mXRef, 2, intLT0) || TMath::Abs(trc.getZ()) > Geo::MAXHZTOF) { // we check that the propagation with the cov matrix worked; CHECK: can it happen that it does not if the prop> + mNotPropagatedToTOF[trkType::UNCONS]++; + return; + } - // sort tracks in each sector according to their time (increasing in time) - for (int sec = o2::constants::math::NSectors; sec--;) { - auto& indexCache = mTracksSectIndexCache[sec]; - LOG(INFO) << "Sorting sector" << sec << " | " << indexCache.size() << " tracks"; - if (!indexCache.size()) { - continue; - } - std::sort(indexCache.begin(), indexCache.end(), [this](int a, int b) { - auto& trcA = mTracksWork[a].second; - auto& trcB = mTracksWork[b].second; - return ((trcA.getTimeStamp() - trcA.getTimeStampError()) - (trcB.getTimeStamp() - trcB.getTimeStampError()) < 0.); - }); + timeInfo.setTimeStamp(_tr.getTime0() * mTPCTBinMUS); + timeInfo.setTimeStampError((_tr.getDeltaTBwd() + 5) * mTPCTBinMUS + extraErr); + mSideTPC.push_back(_tr.hasASideClustersOnly() ? 1 : (_tr.hasCSideClustersOnly() ? -1 : 0)); + mExtraTPCFwdTime.push_back((_tr.getDeltaTFwd() + 5) * mTPCTBinMUS + extraErr); - } // loop over tracks of single sector + mTracksWork[trkType::UNCONS].emplace_back(std::make_pair(trc, timeInfo)); + mTPCTracksArrayInp.emplace_back(_tr); - // Uncomment for local debug - /* - // printing the tracks - std::array globalPos; - int itmp = 0; - for (int sec = o2::constants::math::NSectors; sec--;) { - Printf("sector %d", sec); - auto& cacheTrk = mTracksSectIndexCache[sec]; // array of cached tracks indices for this sector; reminder: they are ordered in time! - for (int itrk = 0; itrk < cacheTrk.size(); itrk++){ - itmp++; - auto& trc = mTracksWork[cacheTrk[itrk]].first; - auto& trcAttr = mTracksWork[cacheTrk[itrk]].second; - trc.getXYZGlo(globalPos); - printf("Track %d: Global coordinates After propagating to 371 cm: globalPos[0] = %f, globalPos[1] = %f, globalPos[2] = %f -- timestamp = %f +/- %f\n", itrk, globalPos[0], globalPos[1], globalPos[2],trcAttr.getTimeStamp(),trcAttr.getTimeStampError()); - // Printf("The phi angle is %f", TMath::ATan2(globalPos[1], globalPos[0])); - } + if (mMCTruthON) { + mTracksLblWork[trkType::UNCONS].emplace_back(mRecoCont->getTPCTrackMCLabel(srcGID)); } - Printf("we have %d tracks",itmp); -*/ + mLTinfos[trkType::UNCONS].emplace_back(intLT0); - return true; + trc.getXYZGlo(globalPos); + + mTracksSectIndexCache[trkType::UNCONS][o2::math_utils::angle2Sector(TMath::ATan2(globalPos[1], globalPos[0]))].push_back(it); + //delete trc; // Check: is this needed? } //______________________________________________ bool MatchTOF::prepareTOFClusters() { + mTOFClustersArrayInp = mRecoCont->getTOFClusters(); + mTOFClusLabels = mRecoCont->getTOFClustersMCLabels(); + mMCTruthON = mTOFClusLabels && mTOFClusLabels->getNElements(); + ///< prepare the tracks that we want to match to TOF // copy the track params, propagate to reference X and build sector tables @@ -689,34 +357,17 @@ bool MatchTOF::prepareTOFClusters() } mNumOfClusters = 0; - while (!mIsworkflowON && loadTOFClustersNextChunk()) { - int nClusterInCurrentChunk = mTOFClustersArrayInp.size(); - LOG(DEBUG) << "nClusterInCurrentChunk = " << nClusterInCurrentChunk; - mNumOfClusters += nClusterInCurrentChunk; - for (int it = 0; it < nClusterInCurrentChunk; it++) { - const Cluster& clOrig = mTOFClustersArrayInp[it]; - // create working copy of track param - mTOFClusWork.emplace_back(clOrig); - auto& cl = mTOFClusWork.back(); - cl.setEntryInTree(mCurrTOFClustersTreeEntry); - // cache work track index - mTOFClusSectIndexCache[cl.getSector()].push_back(mTOFClusWork.size() - 1); - } - } - if (mIsworkflowON) { - int nClusterInCurrentChunk = mTOFClustersArrayInp.size(); - LOG(DEBUG) << "nClusterInCurrentChunk = " << nClusterInCurrentChunk; - mNumOfClusters += nClusterInCurrentChunk; - for (int it = 0; it < nClusterInCurrentChunk; it++) { - const Cluster& clOrig = mTOFClustersArrayInp[it]; - // create working copy of track param - mTOFClusWork.emplace_back(clOrig); - auto& cl = mTOFClusWork.back(); - cl.setEntryInTree(mCurrTOFClustersTreeEntry); - // cache work track index - mTOFClusSectIndexCache[cl.getSector()].push_back(mTOFClusWork.size() - 1); - } + int nClusterInCurrentChunk = mTOFClustersArrayInp.size(); + LOG(DEBUG) << "nClusterInCurrentChunk = " << nClusterInCurrentChunk; + mNumOfClusters += nClusterInCurrentChunk; + for (int it = 0; it < nClusterInCurrentChunk; it++) { + const Cluster& clOrig = mTOFClustersArrayInp[it]; + // create working copy of track param + mTOFClusWork.emplace_back(clOrig); + auto& cl = mTOFClusWork.back(); + // cache work track index + mTOFClusSectIndexCache[cl.getSector()].push_back(mTOFClusWork.size() - 1); } // sort clusters in each sector according to their time (increasing in time) @@ -741,74 +392,14 @@ bool MatchTOF::prepareTOFClusters() return true; } - -//_____________________________________________________ -bool MatchTOF::loadTracksNextChunk() -{ - ///< load next chunk of tracks to be matched to TOF - while (++mCurrTracksTreeEntry < mInputTreeTracks->GetEntries()) { - mInputTreeTracks->GetEntry(mCurrTracksTreeEntry); - mTracksArrayInp = gsl::span{*mTracksArrayInpVect}; - LOG(INFO) << "Loading tracks entry " << mCurrTracksTreeEntry << " -> " << mTracksArrayInp.size() - << " tracks"; - if (!mTracksArrayInp.size()) { - continue; - } - if (mMCTruthON) { - mTPCLabels = gsl::span{*mTPCLabelsVect}; - } - return true; - } - --mCurrTracksTreeEntry; - return false; -} -//_____________________________________________________ -bool MatchTOF::loadTPCTracksNextChunk() -{ - ///< load next chunk of tracks to be matched to TOF - while (++mCurrTracksTreeEntry < mTreeTPCTracks->GetEntries()) { - mTreeTPCTracks->GetEntry(mCurrTracksTreeEntry); - mTPCTracksArrayInp = gsl::span{*mTPCTracksArrayInpVect}; - LOG(INFO) << "Loading TPC tracks entry " << mCurrTracksTreeEntry << " -> " << mTPCTracksArrayInp.size() - << " tracks"; - if (!mTPCTracksArrayInp.size()) { - continue; - } - return true; - } - --mCurrTracksTreeEntry; - return false; -} -//______________________________________________ -bool MatchTOF::loadTOFClustersNextChunk() -{ - LOG(DEBUG) << "Loat clusters next chunck"; - ///< load next chunk of clusters to be matched to TOF - LOG(DEBUG) << "Loading TOF clusters: number of entries in tree = " << mTreeTOFClusters->GetEntries(); - while (++mCurrTOFClustersTreeEntry < mTreeTOFClusters->GetEntries()) { - mTreeTOFClusters->GetEntry(mCurrTOFClustersTreeEntry); - mTOFClustersArrayInp = gsl::span{*mTOFClustersArrayInpVect}; - LOG(DEBUG) << "Loading TOF clusters entry " << mCurrTOFClustersTreeEntry << " -> " << mTOFClustersArrayInp.size() - << " clusters"; - LOG(INFO) << "Loading TOF clusters entry " << mCurrTOFClustersTreeEntry << " -> " << mTOFClustersArrayInp.size() - << " clusters"; - if (!mTOFClustersArrayInp.size()) { - continue; - } - return true; - } - --mCurrTOFClustersTreeEntry; - return false; -} //______________________________________________ void MatchTOF::doMatching(int sec) { + trkType type = trkType::CONSTR; ///< do the real matching per sector - mMatchedTracksPairs.clear(); // new sector - - auto& cacheTOF = mTOFClusSectIndexCache[sec]; // array of cached TOF cluster indices for this sector; reminder: they are ordered in time! - auto& cacheTrk = mTracksSectIndexCache[sec]; // array of cached tracks indices for this sector; reminder: they are ordered in time! + auto& cacheTOF = mTOFClusSectIndexCache[sec]; // array of cached TOF cluster indices for this sector; reminder: they are ordered in time! + auto& cacheTrk = mTracksSectIndexCache[type][sec]; // array of cached tracks indices for this sector; reminder: they are ordered in time! int nTracks = cacheTrk.size(), nTOFCls = cacheTOF.size(); LOG(INFO) << "Matching sector " << sec << ": number of tracks: " << nTracks << ", number of TOF clusters: " << nTOFCls; if (!nTracks || !nTOFCls) { @@ -833,30 +424,24 @@ void MatchTOF::doMatching(int sec) nStepsInsideSameStrip[ii] = 0; } int nStripsCrossedInPropagation = 0; // how many strips were hit during the propagation - auto& trackWork = mTracksWork[cacheTrk[itrk]]; + auto& trackWork = mTracksWork[type][cacheTrk[itrk]]; auto& trefTrk = trackWork.first; - auto& intLT = mLTinfos[cacheTrk[itrk]]; + auto& intLT = mLTinfos[type][cacheTrk[itrk]]; // Printf("intLT (before doing anything): length = %f, time (Pion) = %f", intLT.getL(), intLT.getTOF(o2::track::PID::Pion)); - float minTrkTime = (trackWork.second.getTimeStamp() - mSigmaTimeCut * trackWork.second.getTimeStampError()) * 1.E6; // minimum time in ps - float maxTrkTime = (trackWork.second.getTimeStamp() + mSigmaTimeCut * trackWork.second.getTimeStampError()) * 1.E6; // maximum time in ps - int istep = 1; // number of steps - float step = 1.0; // step size in cm - //uncomment for local debug - /* - //trefTrk.getXYZGlo(posBeforeProp); - //float posBeforeProp[3] = {trefTrk.getX(), trefTrk.getY(), trefTrk.getZ()}; // in local ref system - //printf("Global coordinates: posBeforeProp[0] = %f, posBeforeProp[1] = %f, posBeforeProp[2] = %f\n", posBeforeProp[0], posBeforeProp[1], posBeforeProp[2]); - //Printf("Radius xy = %f", TMath::Sqrt(posBeforeProp[0]*posBeforeProp[0] + posBeforeProp[1]*posBeforeProp[1])); - //Printf("Radius xyz = %f", TMath::Sqrt(posBeforeProp[0]*posBeforeProp[0] + posBeforeProp[1]*posBeforeProp[1] + posBeforeProp[2]*posBeforeProp[2])); - */ - -#ifdef _ALLOW_TOF_DEBUG_ - if (mDBGFlags) { - (*mDBGOut) << "propOK" - << "track=" << trefTrk << "\n"; - } -#endif + float minTrkTime = (trackWork.second.getTimeStamp() - mSigmaTimeCut * trackWork.second.getTimeStampError()) * 1.E6; // minimum time in ps + float maxTrkTime = (trackWork.second.getTimeStamp() + mSigmaTimeCut * trackWork.second.getTimeStampError()) * 1.E6; // maximum time in ps + int istep = 1; // number of steps + float step = 1.0; // step size in cm + + //uncomment for local debug + /* + //trefTrk.getXYZGlo(posBeforeProp); + //float posBeforeProp[3] = {trefTrk.getX(), trefTrk.getY(), trefTrk.getZ()}; // in local ref system + //printf("Global coordinates: posBeforeProp[0] = %f, posBeforeProp[1] = %f, posBeforeProp[2] = %f\n", posBeforeProp[0], posBeforeProp[1], posBeforeProp[2]); + //Printf("Radius xy = %f", TMath::Sqrt(posBeforeProp[0]*posBeforeProp[0] + posBeforeProp[1]*posBeforeProp[1])); + //Printf("Radius xyz = %f", TMath::Sqrt(posBeforeProp[0]*posBeforeProp[0] + posBeforeProp[1]*posBeforeProp[1] + posBeforeProp[2]*posBeforeProp[2])); + */ // initializing for (int ii = 0; ii < 2; ii++) { @@ -876,6 +461,7 @@ void MatchTOF::doMatching(int sec) for (int ii = 0; ii < 3; ii++) { // we need to change the type... posFloat[ii] = pos[ii]; } + // uncomment below only for local debug; this will produce A LOT of output - one print per propagation step /* Printf("posFloat[0] = %f, posFloat[1] = %f, posFloat[2] = %f", posFloat[0], posFloat[1], posFloat[2]); @@ -895,20 +481,6 @@ void MatchTOF::doMatching(int sec) continue; } - // to reduce the active region of the strip -> uncomment these lines - // float yresidual = TMath::Abs(deltaPosTemp[1]); - // if(yresidual > 0.55){ - // reachedPoint += step; - // continue; - // } - - // printf("res %f %f %f -- %f %f %f (%d)\n",deltaPosTemp[0],deltaPosTemp[1],deltaPosTemp[2],pos[0],pos[1],pos[2],detIdTemp[2]); - - // if you want to exit from the strip matched uncomment this line - // reachedPoint += 3.0; // go out from the strip at the next step - - // printf("idet: %d %d %d %d %d\n",detIdTemp[0],detIdTemp[1],detIdTemp[2],detIdTemp[3],detIdTemp[4]); - // uncomment below only for local debug; this will produce A LOT of output - one print per propagation step //Printf("detIdTemp[0] = %d, detIdTemp[1] = %d, detIdTemp[2] = %d, detIdTemp[3] = %d, detIdTemp[4] = %d", detIdTemp[0], detIdTemp[1], detIdTemp[2], detIdTemp[3], detIdTemp[4]); // if (nStripsCrossedInPropagation == 0) { // print in case you have a useful propagation @@ -926,6 +498,7 @@ void MatchTOF::doMatching(int sec) // check if after the propagation we are in a TOF strip // we ended in a TOF strip // LOG(DEBUG) << "nStripsCrossedInPropagation = " << nStripsCrossedInPropagation << ", detId[nStripsCrossedInPropagation][0] = " << detId[nStripsCrossedInPropagation][0] << ", detIdTemp[0] = " << detIdTemp[0] << ", detId[nStripsCrossedInPropagation][1] = " << detId[nStripsCrossedInPropagation][1] << ", detIdTemp[1] = " << detIdTemp[1] << ", detId[nStripsCrossedInPropagation][2] = " << detId[nStripsCrossedInPropagation][2] << ", detIdTemp[2] = " << detIdTemp[2]; + if (nStripsCrossedInPropagation == 0 || // we are crossing a strip for the first time... (nStripsCrossedInPropagation >= 1 && (detId[nStripsCrossedInPropagation - 1][0] != detIdTemp[0] || detId[nStripsCrossedInPropagation - 1][1] != detIdTemp[1] || detId[nStripsCrossedInPropagation - 1][2] != detIdTemp[2]))) { // ...or we are crossing a new strip if (nStripsCrossedInPropagation == 0) { @@ -957,27 +530,12 @@ void MatchTOF::doMatching(int sec) nStepsInsideSameStrip[nStripsCrossedInPropagation - 1]++; } } - // LOG(DEBUG) << "while done, we propagated track " << itrk << " in %d strips" << nStripsCrossedInPropagation; - // LOG(INFO) << "while done, we propagated track " << itrk << " in %d strips" << nStripsCrossedInPropagation; - - // uncomment for debug purposes, to check tracks that did not cross any strip - /* - if (nStripsCrossedInPropagation == 0) { - auto labelTPCNoStripsCrossed = mTPCLabels->at(mTracksSectIndexCache[sec][itrk]); - Printf("The current track (index = %d) never crossed a strip", cacheTrk[itrk]); - Printf("TrackID = %d, EventID = %d, SourceID = %d", labelTPCNoStripsCrossed.getTrackID(), labelTPCNoStripsCrossed.getEventID(), labelTPCNoStripsCrossed.getSourceID()); - printf("Global coordinates: pos[0] = %f, pos[1] = %f, pos[2] = %f\n", pos[0], pos[1], pos[2]); - printf("detIdTemp[0] = %d, detIdTemp[1] = %d, detIdTemp[2] = %d, detIdTemp[3] = %d, detIdTemp[4] = %d\n", detIdTemp[0], detIdTemp[1], detIdTemp[2], detIdTemp[3], detIdTemp[4]); - printf("deltaPosTemp[0] = %f, deltaPosTemp[1] = %f, deltaPosTemp[2] = %f\n", deltaPosTemp[0], deltaPosTemp[1], deltaPosTemp[2]); - } - */ for (Int_t imatch = 0; imatch < nStripsCrossedInPropagation; imatch++) { // we take as residual the average of the residuals along the propagation in the same strip deltaPos[imatch][0] /= nStepsInsideSameStrip[imatch]; deltaPos[imatch][1] /= nStepsInsideSameStrip[imatch]; deltaPos[imatch][2] /= nStepsInsideSameStrip[imatch]; - // LOG(DEBUG) << "matched strip " << imatch << ": deltaPos[0] = " << deltaPos[imatch][0] << ", deltaPos[1] = " << deltaPos[imatch][1] << ", deltaPos[2] = " << deltaPos[imatch][2] << ", residual (x, z) = " << TMath::Sqrt(deltaPos[imatch][0] * deltaPos[imatch][0] + deltaPos[imatch][2] * deltaPos[imatch][2]); } if (nStripsCrossedInPropagation == 0) { @@ -1051,22 +609,6 @@ void MatchTOF::doMatching(int sec) float res = TMath::Sqrt(resX * resX + resZ * resZ); LOG(DEBUG) << "resX = " << resX << ", resZ = " << resZ << ", res = " << res; -#ifdef _ALLOW_TOF_DEBUG_ - fillTOFmatchTree("match0", cacheTOF[itof], indices[0], indices[1], indices[2], indices[3], indices[4], cacheTrk[itrk], iPropagation, detId[iPropagation][0], detId[iPropagation][1], detId[iPropagation][2], detId[iPropagation][3], detId[iPropagation][4], resX, resZ, res, trackWork, trkLTInt[iPropagation].getL(), trkLTInt[iPropagation].getTOF(o2::track::PID::Pion), trefTOF.getTime()); - int tofLabelTrackID[3] = {-1, -1, -1}; - int tofLabelEventID[3] = {-1, -1, -1}; - int tofLabelSourceID[3] = {-1, -1, -1}; - if (mMCTruthON) { - const auto& labelsTOF = mTOFClusLabels.getLabels(mTOFClusSectIndexCache[indices[0]][itof]); - for (int ilabel = 0; ilabel < labelsTOF.size(); ilabel++) { - tofLabelTrackID[ilabel] = labelsTOF[ilabel].getTrackID(); - tofLabelEventID[ilabel] = labelsTOF[ilabel].getEventID(); - tofLabelSourceID[ilabel] = labelsTOF[ilabel].getSourceID(); - } - auto labelTPC = mTPCLabels[mTracksSectIndexCache[sec][itrk]]; - fillTOFmatchTreeWithLabels("matchPossibleWithLabels", cacheTOF[itof], indices[0], indices[1], indices[2], indices[3], indices[4], cacheTrk[itrk], iPropagation, detId[iPropagation][0], detId[iPropagation][1], detId[iPropagation][2], detId[iPropagation][3], detId[iPropagation][4], resX, resZ, res, trackWork, labelTPC.getTrackID(), labelTPC.getEventID(), labelTPC.getSourceID(), tofLabelTrackID[0], tofLabelEventID[0], tofLabelSourceID[0], tofLabelTrackID[1], tofLabelEventID[1], tofLabelSourceID[1], tofLabelTrackID[2], tofLabelEventID[2], tofLabelSourceID[2], trkLTInt[iPropagation].getL(), trkLTInt[iPropagation].getTOF(o2::track::PID::Pion), trefTOF.getTime()); - } -#endif if (indices[0] != detId[iPropagation][0]) { continue; } @@ -1077,40 +619,17 @@ void MatchTOF::doMatching(int sec) continue; } float chi2 = res; // TODO: take into account also the time! -#ifdef _ALLOW_TOF_DEBUG_ - fillTOFmatchTree("match1", cacheTOF[itof], indices[0], indices[1], indices[2], indices[3], indices[4], cacheTrk[itrk], iPropagation, detId[iPropagation][0], detId[iPropagation][1], detId[iPropagation][2], detId[iPropagation][3], detId[iPropagation][4], resX, resZ, res, trackWork, trkLTInt[iPropagation].getL(), trkLTInt[iPropagation].getTOF(o2::track::PID::Pion), trefTOF.getTime()); - if (mMCTruthON) { - auto labelTPC = mTPCLabels[mTracksSectIndexCache[sec][itrk]]; - fillTOFmatchTreeWithLabels("matchOkWithLabels", cacheTOF[itof], indices[0], indices[1], indices[2], indices[3], indices[4], cacheTrk[itrk], iPropagation, detId[iPropagation][0], detId[iPropagation][1], detId[iPropagation][2], detId[iPropagation][3], detId[iPropagation][4], resX, resZ, res, trackWork, labelTPC.getTrackID(), labelTPC.getEventID(), labelTPC.getSourceID(), tofLabelTrackID[0], tofLabelEventID[0], tofLabelSourceID[0], tofLabelTrackID[1], tofLabelEventID[1], tofLabelSourceID[1], tofLabelTrackID[2], tofLabelEventID[2], tofLabelSourceID[2], trkLTInt[iPropagation].getL(), trkLTInt[iPropagation].getTOF(o2::track::PID::Pion), trefTOF.getTime()); - } -#endif if (res < mSpaceTolerance) { // matching ok! - LOG(DEBUG) << "MATCHING FOUND: We have a match! between track " << mTracksSectIndexCache[indices[0]][itrk] << " and TOF cluster " << mTOFClusSectIndexCache[indices[0]][itof]; + LOG(DEBUG) << "MATCHING FOUND: We have a match! between track " << mTracksSectIndexCache[type][indices[0]][itrk] << " and TOF cluster " << mTOFClusSectIndexCache[indices[0]][itof]; foundCluster = true; // set event indexes (to be checked) evIdx eventIndexTOFCluster(trefTOF.getEntryInTree(), mTOFClusSectIndexCache[indices[0]][itof]); - evGIdx eventIndexTracks(mCurrTracksTreeEntry, {uint32_t(mTracksSectIndexCache[indices[0]][itrk]), o2::dataformats::GlobalTrackID::ITSTPC}); - mMatchedTracksPairs.emplace_back(eventIndexTOFCluster, chi2, trkLTInt[iPropagation], eventIndexTracks); // TODO: check if this is correct! - -#ifdef _ALLOW_TOF_DEBUG_ - if (mMCTruthON) { - const auto& labelsTOF = mTOFClusLabels.getLabels(mTOFClusSectIndexCache[indices[0]][itof]); - auto labelTPC = mTPCLabels[mTracksSectIndexCache[sec][itrk]]; - for (int ilabel = 0; ilabel < labelsTOF.size(); ilabel++) { - LOG(DEBUG) << "TOF label " << ilabel << labelsTOF[ilabel]; - } - LOG(DEBUG) << "TPC label " << labelTPC; - fillTOFmatchTreeWithLabels("matchOkWithLabelsInSpaceTolerance", cacheTOF[itof], indices[0], indices[1], indices[2], indices[3], indices[4], cacheTrk[itrk], iPropagation, detId[iPropagation][0], detId[iPropagation][1], detId[iPropagation][2], detId[iPropagation][3], detId[iPropagation][4], resX, resZ, res, trackWork, labelTPC.getTrackID(), labelTPC.getEventID(), labelTPC.getSourceID(), tofLabelTrackID[0], tofLabelEventID[0], tofLabelSourceID[0], tofLabelTrackID[1], tofLabelEventID[1], tofLabelSourceID[1], tofLabelTrackID[2], tofLabelEventID[2], tofLabelSourceID[2], trkLTInt[iPropagation].getL(), trkLTInt[iPropagation].getTOF(o2::track::PID::Pion), trefTOF.getTime()); - } -#endif + evGIdx eventIndexTracks(mCurrTracksTreeEntry, {uint32_t(mTracksSectIndexCache[type][indices[0]][itrk]), o2::dataformats::GlobalTrackID::ITSTPC}); + mMatchedTracksPairs.emplace_back(eventIndexTOFCluster, chi2, trkLTInt[iPropagation], eventIndexTracks, type); // TODO: check if this is correct! } } } - if (!foundCluster && mMCTruthON) { - auto labelTPC = mTPCLabels[mTracksSectIndexCache[sec][itrk]]; - LOG(DEBUG) << "We did not find any TOF cluster for track " << cacheTrk[itrk] << " (label = " << labelTPC << ", pt = " << trefTrk.getPt(); - } } return; } @@ -1127,10 +646,8 @@ void MatchTOF::doMatchingForTPC(int sec) double BCgranularity = Geo::BC_TIME_INPS * bc_grouping; ///< do the real matching per sector - mMatchedTracksPairs.clear(); // new sector - - auto& cacheTOF = mTOFClusSectIndexCache[sec]; // array of cached TOF cluster indices for this sector; reminder: they are ordered in time! - auto& cacheTrk = mTracksSectIndexCache[sec]; // array of cached tracks indices for this sector; reminder: they are ordered in time! + auto& cacheTOF = mTOFClusSectIndexCache[sec]; // array of cached TOF cluster indices for this sector; reminder: they are ordered in time! + auto& cacheTrk = mTracksSectIndexCache[trkType::UNCONS][sec]; // array of cached tracks indices for this sector; reminder: they are ordered in time! int nTracks = cacheTrk.size(), nTOFCls = cacheTOF.size(); LOG(INFO) << "Matching sector " << sec << ": number of tracks: " << nTracks << ", number of TOF clusters: " << nTOFCls; if (!nTracks || !nTOFCls) { @@ -1155,23 +672,20 @@ void MatchTOF::doMatchingForTPC(int sec) LOG(DEBUG) << "Trying to match %d tracks" << cacheTrk.size(); for (int itrk = 0; itrk < cacheTrk.size(); itrk++) { - auto& trackWork = mTracksWork[cacheTrk[itrk]]; + auto& trackWork = mTracksWork[trkType::UNCONS][cacheTrk[itrk]]; auto& trefTrk = trackWork.first; - auto& intLT = mLTinfos[cacheTrk[itrk]]; + auto& intLT = mLTinfos[trkType::UNCONS][cacheTrk[itrk]]; BCcand.clear(); nStripsCrossedInPropagation.clear(); int side = mSideTPC[cacheTrk[itrk]]; - // look at BC candidates for the track itof0 = 0; double minTrkTime = (trackWork.second.getTimeStamp() - trackWork.second.getTimeStampError()) * 1.E6; // minimum time in ps minTrkTime = int(minTrkTime / BCgranularity) * BCgranularity; // align min to a BC double maxTrkTime = (trackWork.second.getTimeStamp() + mExtraTPCFwdTime[cacheTrk[itrk]]) * 1.E6; // maximum time in ps - // printf("trk time %f - %f (max shift +/- %f cm)\n",minTrkTime,maxTrkTime,trackWork.second.getTimeStampError()*vdrift ); - if (mIsCosmics) { for (double tBC = minTrkTime; tBC < maxTrkTime; tBC += BCgranularity) { unsigned long ibc = (unsigned long)(tBC * Geo::BC_TIME_INPS_INV); @@ -1183,8 +697,6 @@ void MatchTOF::doMatchingForTPC(int sec) for (auto itof = itof0; itof < nTOFCls; itof++) { auto& trefTOF = mTOFClusWork[cacheTOF[itof]]; -// printf("clus time = %f\n",trefTOF.getTime()); - if (trefTOF.getTime() < minTrkTime) { // this cluster has a time that is too small for the current track, we will get to the next one itof0 = itof + 1; continue; @@ -1216,8 +728,6 @@ void MatchTOF::doMatchingForTPC(int sec) } } - // printf("BC = %ld\n",BCcand.size()); - detId.clear(); detId.reserve(BCcand.size()); trkLTInt.clear(); @@ -1227,13 +737,12 @@ void MatchTOF::doMatchingForTPC(int sec) nStepsInsideSameStrip.clear(); nStepsInsideSameStrip.reserve(BCcand.size()); - // printf("%d) ts_error = %f -- z_error = %f\n", itrk, trackWork.second.getTimeStampError(), trackWork.second.getTimeStampError() * vdrift); - // Printf("intLT (before doing anything): length = %f, time (Pion) = %f", intLT.getL(), intLT.getTOF(o2::track::PID::Pion)); int istep = 1; // number of steps float step = 1.0; // step size in cm - //uncomment for local debug - /* + + //uncomment for local debug + /* //trefTrk.getXYZGlo(posBeforeProp); //float posBeforeProp[3] = {trefTrk.getX(), trefTrk.getY(), trefTrk.getZ()}; // in local ref system //printf("Global coordinates: posBeforeProp[0] = %f, posBeforeProp[1] = %f, posBeforeProp[2] = %f\n", posBeforeProp[0], posBeforeProp[1], posBeforeProp[2]); @@ -1241,13 +750,6 @@ void MatchTOF::doMatchingForTPC(int sec) //Printf("Radius xyz = %f", TMath::Sqrt(posBeforeProp[0]*posBeforeProp[0] + posBeforeProp[1]*posBeforeProp[1] + posBeforeProp[2]*posBeforeProp[2])); */ -#ifdef _ALLOW_TOF_DEBUG_ - if (mDBGFlags) { - (*mDBGOut) << "propOK" - << "track=" << trefTrk << "\n"; - } -#endif - int detIdTemp[5] = {-1, -1, -1, -1, -1}; // TOF detector id at the current propagation point double reachedPoint = mXRef + istep * step; @@ -1268,11 +770,12 @@ void MatchTOF::doMatchingForTPC(int sec) for (int ii = 0; ii < 3; ii++) { // we need to change the type... posFloat[ii] = pos[ii]; } + // uncomment below only for local debug; this will produce A LOT of output - one print per propagation step /* - Printf("posFloat[0] = %f, posFloat[1] = %f, posFloat[2] = %f", posFloat[0], posFloat[1], posFloat[2]); - Printf("radius xy = %f", TMath::Sqrt(posFloat[0]*posFloat[0] + posFloat[1]*posFloat[1])); - Printf("radius xyz = %f", TMath::Sqrt(posFloat[0]*posFloat[0] + posFloat[1]*posFloat[1] + posFloat[2]*posFloat[2])); + Printf("posFloat[0] = %f, posFloat[1] = %f, posFloat[2] = %f", posFloat[0], posFloat[1], posFloat[2]); + Printf("radius xy = %f", TMath::Sqrt(posFloat[0]*posFloat[0] + posFloat[1]*posFloat[1])); + Printf("radius xyz = %f", TMath::Sqrt(posFloat[0]*posFloat[0] + posFloat[1]*posFloat[1] + posFloat[2]*posFloat[2])); */ reachedPoint += step; @@ -1339,7 +842,6 @@ void MatchTOF::doMatchingForTPC(int sec) deltaPos[ibc][imatch][0] /= nStepsInsideSameStrip[ibc][imatch]; deltaPos[ibc][imatch][1] /= nStepsInsideSameStrip[ibc][imatch]; deltaPos[ibc][imatch][2] /= nStepsInsideSameStrip[ibc][imatch]; - // LOG(DEBUG) << "matched strip " << imatch << ": deltaPos[0] = " << deltaPos[imatch][0] << ", deltaPos[1] = " << deltaPos[imatch][1] << ", deltaPos[2] = " << deltaPos[imatch][2] << ", residual (x, z) = " << TMath::Sqrt(deltaPos[imatch][0] * deltaPos[imatch][0] + deltaPos[imatch][2] * deltaPos[imatch][2]); } if (nStripsCrossedInPropagation[ibc] == 0) { @@ -1354,7 +856,7 @@ void MatchTOF::doMatchingForTPC(int sec) // compare the times of the track and the TOF clusters - remember that they both are ordered in time! if (trefTOF.getTime() < minTime) { // this cluster has a time that is too small for the current track, we will get to the next one - itof0 = itof + 1; // but for the next track that we will check, we will ignore this cluster (the time is anyway too small) + itof0 = itof + 1; // but for the next track that we will check, we will ignore this cluster (the time is anyway too small) continue; } if (trefTOF.getTime() > maxTime) { // no more TOF clusters can be matched to this track @@ -1432,19 +934,15 @@ void MatchTOF::doMatchingForTPC(int sec) float chi2 = mIsCosmics ? resX : res; // TODO: take into account also the time! if (res < mSpaceTolerance) { // matching ok! - LOG(DEBUG) << "MATCHING FOUND: We have a match! between track " << mTracksSectIndexCache[indices[0]][itrk] << " and TOF cluster " << mTOFClusSectIndexCache[indices[0]][itof]; + LOG(DEBUG) << "MATCHING FOUND: We have a match! between track " << mTracksSectIndexCache[trkType::UNCONS][indices[0]][itrk] << " and TOF cluster " << mTOFClusSectIndexCache[indices[0]][itof]; foundCluster = true; // set event indexes (to be checked) evIdx eventIndexTOFCluster(trefTOF.getEntryInTree(), mTOFClusSectIndexCache[indices[0]][itof]); - evGIdx eventIndexTracks(mCurrTracksTreeEntry, {uint32_t(mTracksSectIndexCache[indices[0]][itrk]), o2::dataformats::GlobalTrackID::TPC}); - mMatchedTracksPairs.emplace_back(eventIndexTOFCluster, chi2, trkLTInt[ibc][iPropagation], eventIndexTracks, resZ / vdrift * side, trefTOF.getZ()); // TODO: check if this is correct! + evGIdx eventIndexTracks(mCurrTracksTreeEntry, {uint32_t(mTracksSectIndexCache[trkType::UNCONS][indices[0]][itrk]), o2::dataformats::GlobalTrackID::TPC}); + mMatchedTracksPairs.emplace_back(eventIndexTOFCluster, chi2, trkLTInt[ibc][iPropagation], eventIndexTracks, trkType::UNCONS, resZ / vdrift * side, trefTOF.getZ()); // TODO: check if this is correct! } } } - if (!foundCluster && mMCTruthON) { - const auto& labelTPC = mTPCLabels[mTracksSectIndexCache[sec][itrk]]; - LOG(DEBUG) << "We did not find any TOF cluster for track " << cacheTrk[itrk] << " (label = " << labelTPC << ", pt = " << trefTrk.getPt(); - } } } return; @@ -1477,24 +975,30 @@ int MatchTOF::findFITIndex(int bc) //______________________________________________ void MatchTOF::selectBestMatches() { + if (mSetHighPurity) { + selectBestMatchesHP(); + return; + } ///< define the track-TOFcluster pair per sector LOG(INFO) << "Number of pair matched = " << mMatchedTracksPairs.size(); // first, we sort according to the chi2 - std::sort(mMatchedTracksPairs.begin(), mMatchedTracksPairs.end(), [this](o2::dataformats::MatchInfoTOF& a, o2::dataformats::MatchInfoTOF& b) { return (a.getChi2() < b.getChi2()); }); + std::sort(mMatchedTracksPairs.begin(), mMatchedTracksPairs.end(), [this](o2::dataformats::MatchInfoTOFReco& a, o2::dataformats::MatchInfoTOFReco& b) { return (a.getChi2() < b.getChi2()); }); int i = 0; + // then we take discard the pairs if their track or cluster was already matched (since they are ordered in chi2, we will take the best matching) - for (const o2::dataformats::MatchInfoTOF& matchingPair : mMatchedTracksPairs) { - if (mMatchedTracksIndex[matchingPair.getTrackIndex()] != -1) { // the track was already filled + for (const o2::dataformats::MatchInfoTOFReco& matchingPair : mMatchedTracksPairs) { + int trkType = (int)matchingPair.getTrackType(); + if (mMatchedTracksIndex[trkType][matchingPair.getTrackIndex()] != -1) { // the track was already filled continue; } - if (mMatchedClustersIndex[matchingPair.getTOFClIndex()] != -1) { // the track was already filled + if (mMatchedClustersIndex[matchingPair.getTOFClIndex()] != -1) { // the cluster was already filled continue; } - mMatchedTracksIndex[matchingPair.getTrackIndex()] = mMatchedTracks.size(); // index of the MatchInfoTOF correspoding to this track - mMatchedClustersIndex[matchingPair.getTOFClIndex()] = mMatchedTracksIndex[matchingPair.getTrackIndex()]; // index of the track that was matched to this cluster - mMatchedTracks.push_back(matchingPair); // array of MatchInfoTOF + mMatchedTracksIndex[trkType][matchingPair.getTrackIndex()] = mMatchedTracks[trkType].size(); // index of the MatchInfoTOF correspoding to this track + mMatchedClustersIndex[matchingPair.getTOFClIndex()] = mMatchedTracksIndex[trkType][matchingPair.getTrackIndex()]; // index of the track that was matched to this cluster + mMatchedTracks[trkType].push_back(matchingPair); // array of MatchInfoTOF // get fit info double t0info = 0; @@ -1511,32 +1015,109 @@ void MatchTOF::selectBestMatches() // add also calibration infos mCalibInfoTOF.emplace_back(mTOFClusWork[matchingPair.getTOFClIndex()].getMainContributingChannel(), int(mTOFClusWork[matchingPair.getTOFClIndex()].getTimeRaw() * 1E12), // add time stamp - mTOFClusWork[matchingPair.getTOFClIndex()].getTimeRaw() - mLTinfos[matchingPair.getTrackIndex()].getTOF(o2::track::PID::Pion) - t0info, + mTOFClusWork[matchingPair.getTOFClIndex()].getTimeRaw() - mLTinfos[trkType][matchingPair.getTrackIndex()].getTOF(o2::track::PID::Pion) - t0info, mTOFClusWork[matchingPair.getTOFClIndex()].getTot()); if (mMCTruthON) { - const auto& labelsTOF = mTOFClusLabels.getLabels(matchingPair.getTOFClIndex()); - const auto& labelTPC = mTPCLabels[matchingPair.getTrackIndex()]; - // we want to store positive labels independently of how they are flagged from TPC,ITS people - LOG(DEBUG) << "TPC label" << labelTPC; - bool labelOk = false; // whether we have found or not the same TPC label of the track among the labels of the TOF cluster - - for (int ilabel = 0; ilabel < labelsTOF.size(); ilabel++) { - LOG(DEBUG) << "TOF label " << ilabel << labelsTOF[ilabel]; - if (labelsTOF[ilabel] == labelTPC) { // if we find one TOF cluster label that is the same as the TPC one, we are happy - even if it is not the first one - mOutTOFLabels.push_back(labelsTOF[ilabel]); - labelOk = true; - break; + const auto& labelsTOF = mTOFClusLabels->getLabels(matchingPair.getTOFClIndex()); + auto& labelTrack = mTracksLblWork[trkType][matchingPair.getTrackIndex()]; + // we have not found the track label among those associated to the TOF cluster --> fake match! We will associate the label of the main channel, but negative + bool fake = true; + for (auto& lbl : labelsTOF) { + if (labelTrack == lbl) { // compares src, evID, trID, ignores fake flag. + fake = false; } } - if (!labelOk) { - // we have not found the track label among those associated to the TOF cluster --> fake match! We will associate the label of the main channel, but negative - if (!labelsTOF.size()) { - throw std::runtime_error("TOF label not found since size of label is zero. This should not happen!!!!"); + mOutTOFLabels[trkType].emplace_back(labelsTOF[0].getTrackID(), labelsTOF[0].getEventID(), labelsTOF[0].getSourceID(), fake); + } + i++; + } +} +//______________________________________________ +void MatchTOF::selectBestMatchesHP() +{ + ///< define the track-TOFcluster pair per sector + float chi2SeparationCut = 2; + float chi2S = 3; + + LOG(INFO) << "Number of pair matched = " << mMatchedTracksPairs.size(); + + std::vector tmpMatch; + + // first, we sort according to the chi2 + std::sort(mMatchedTracksPairs.begin(), mMatchedTracksPairs.end(), [this](o2::dataformats::MatchInfoTOFReco& a, o2::dataformats::MatchInfoTOFReco& b) { return (a.getChi2() < b.getChi2()); }); + int i = 0; + // then we take discard the pairs if their track or cluster was already matched (since they are ordered in chi2, we will take the best matching) + for (const o2::dataformats::MatchInfoTOFReco& matchingPair : mMatchedTracksPairs) { + int trkType = (int)matchingPair.getTrackType(); + + bool discard = matchingPair.getChi2() > chi2S; + + if (mMatchedTracksIndex[trkType][matchingPair.getTrackIndex()] != -1) { // the track was already filled, check if this competitor is not too close + auto winnerChi = tmpMatch[mMatchedTracksIndex[trkType][matchingPair.getTrackIndex()]].getChi2(); + if (winnerChi < 0) { // the winner was already discarded as ambiguous + continue; + } + if (matchingPair.getChi2() - winnerChi < chi2SeparationCut) { // discard previously validated winner and it has too close competitor + tmpMatch[mMatchedTracksIndex[trkType][matchingPair.getTrackIndex()]].setChi2(-1); + } + continue; + } + + if (mMatchedClustersIndex[matchingPair.getTOFClIndex()] != -1) { // the cluster was already filled, check if this competitor is not too close + auto winnerChi = tmpMatch[mMatchedClustersIndex[matchingPair.getTOFClIndex()]].getChi2(); + if (winnerChi < 0) { // the winner was already discarded as ambiguous + continue; + } + if (matchingPair.getChi2() - winnerChi < chi2SeparationCut) { // discard previously validated winner and it has too close competitor + tmpMatch[mMatchedClustersIndex[matchingPair.getTOFClIndex()]].setChi2(-1); + } + continue; + } + + if (!discard) { + mMatchedTracksIndex[trkType][matchingPair.getTrackIndex()] = tmpMatch.size(); // index of the MatchInfoTOF correspoding to this track + mMatchedClustersIndex[matchingPair.getTOFClIndex()] = mMatchedTracksIndex[trkType][matchingPair.getTrackIndex()]; // index of the track that was matched to this clus + tmpMatch.push_back(matchingPair); + } + } + + // now write final matches skipping disabled ones + for (auto& matchingPair : tmpMatch) { + if (matchingPair.getChi2() <= 0) { + continue; + } + int trkType = (int)matchingPair.getTrackType(); + mMatchedTracks[trkType].push_back(matchingPair); + + // get fit info + double t0info = 0; + + if (mFITRecPoints.size() > 0) { + int index = findFITIndex(mTOFClusWork[matchingPair.getTOFClIndex()].getBC()); + + if (index > -1) { + o2::InteractionRecord ir = mFITRecPoints[index].getInteractionRecord(); + t0info = ir.bc2ns() * 1E3; + } + } + + // add also calibration infos + mCalibInfoTOF.emplace_back(mTOFClusWork[matchingPair.getTOFClIndex()].getMainContributingChannel(), + int(mTOFClusWork[matchingPair.getTOFClIndex()].getTimeRaw() * 1E12), // add time stamp + mTOFClusWork[matchingPair.getTOFClIndex()].getTimeRaw() - mLTinfos[trkType][matchingPair.getTrackIndex()].getTOF(o2::track::PID::Pion) - t0info, + mTOFClusWork[matchingPair.getTOFClIndex()].getTot()); + if (mMCTruthON) { + const auto& labelsTOF = mTOFClusLabels->getLabels(matchingPair.getTOFClIndex()); + auto& labelTrack = mTracksLblWork[trkType][matchingPair.getTrackIndex()]; + // we have not found the track label among those associated to the TOF cluster --> fake match! We will associate the label of the main channel, but negative + bool fake = true; + for (auto& lbl : labelsTOF) { + if (labelTrack == lbl) { // compares src, evID, trID, ignores fake flag. + fake = false; } - mOutTOFLabels.emplace_back(labelsTOF[0].getTrackID(), labelsTOF[0].getEventID(), labelsTOF[0].getSourceID(), true); } + mOutTOFLabels[trkType].emplace_back(labelsTOF[0].getTrackID(), labelsTOF[0].getEventID(), labelsTOF[0].getSourceID(), fake); } - i++; } } //______________________________________________ @@ -1628,47 +1209,6 @@ void MatchTOF::setDebugFlag(UInt_t flag, bool on) mDBGFlags &= ~flag; } } - -//_________________________________________________________ -void MatchTOF::fillTOFmatchTree(const char* trname, int cacheTOF, int sectTOF, int plateTOF, int stripTOF, int padXTOF, int padZTOF, int cacheeTrk, int crossedStrip, int sectPropagation, int platePropagation, int stripPropagation, int padXPropagation, int padZPropagation, float resX, float resZ, float res, matchTrack& trk, float intLength, float intTimePion, float timeTOF) -{ - ///< fill debug tree for TOF tracks matching check - - mTimerDBG.Start(false); - - // Printf("************** Filling the debug tree with %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %d, %f, %f, %f", cacheTOF, sectTOF, plateTOF, stripTOF, padXTOF, padZTOF, cacheeTrk, crossedStrip, sectPropagation, platePropagation, stripPropagation, padXPropagation, padZPropagation, resX, resZ, res); - - if (mDBGFlags) { - (*mDBGOut) << trname - << "clusterTOF=" << cacheTOF << "sectTOF=" << sectTOF << "plateTOF=" << plateTOF << "stripTOF=" << stripTOF << "padXTOF=" << padXTOF << "padZTOF=" << padZTOF - << "crossedStrip=" << crossedStrip << "sectPropagation=" << sectPropagation << "platePropagation=" << platePropagation << "stripPropagation=" << stripPropagation << "padXPropagation=" << padXPropagation - << "resX=" << resX << "resZ=" << resZ << "res=" << res << "track=" << trk.first << "intLength=" << intLength << "intTimePion=" << intTimePion << "timeTOF=" << timeTOF << "\n"; - } - mTimerDBG.Stop(); -} - -//_________________________________________________________ -void MatchTOF::fillTOFmatchTreeWithLabels(const char* trname, int cacheTOF, int sectTOF, int plateTOF, int stripTOF, int padXTOF, int padZTOF, int cacheeTrk, int crossedStrip, int sectPropagation, int platePropagation, int stripPropagation, int padXPropagation, int padZPropagation, float resX, float resZ, float res, matchTrack& trk, int TPClabelTrackID, int TPClabelEventID, int TPClabelSourceID, int TOFlabelTrackID0, int TOFlabelEventID0, int TOFlabelSourceID0, int TOFlabelTrackID1, int TOFlabelEventID1, int TOFlabelSourceID1, int TOFlabelTrackID2, int TOFlabelEventID2, int TOFlabelSourceID2, float intLength, float intTimePion, float timeTOF) -{ - ///< fill debug tree for TOF tracks matching check - - mTimerDBG.Start(false); - - if (mDBGFlags) { - (*mDBGOut) << trname - << "clusterTOF=" << cacheTOF << "sectTOF=" << sectTOF << "plateTOF=" << plateTOF << "stripTOF=" << stripTOF << "padXTOF=" << padXTOF << "padZTOF=" << padZTOF - << "crossedStrip=" << crossedStrip << "sectPropagation=" << sectPropagation << "platePropagation=" << platePropagation << "stripPropagation=" << stripPropagation << "padXPropagation=" << padXPropagation - << "resX=" << resX << "resZ=" << resZ << "res=" << res << "track=" << trk.first - << "TPClabelTrackID=" << TPClabelTrackID << "TPClabelEventID=" << TPClabelEventID << "TPClabelSourceID=" << TPClabelSourceID - << "TOFlabelTrackID0=" << TOFlabelTrackID0 << "TOFlabelEventID0=" << TOFlabelEventID0 << "TOFlabelSourceID0=" << TOFlabelSourceID0 - << "TOFlabelTrackID1=" << TOFlabelTrackID1 << "TOFlabelEventID1=" << TOFlabelEventID1 << "TOFlabelSourceID1=" << TOFlabelSourceID1 - << "TOFlabelTrackID2=" << TOFlabelTrackID2 << "TOFlabelEventID2=" << TOFlabelEventID2 << "TOFlabelSourceID2=" << TOFlabelSourceID2 - << "intLength=" << intLength << "intTimePion=" << intTimePion << "timeTOF=" << timeTOF - << "\n"; - } - mTimerDBG.Stop(); -} - //______________________________________________ void MatchTOF::updateTimeDependentParams() { @@ -1680,20 +1220,21 @@ void MatchTOF::updateTimeDependentParams() mTPCBin2Z = mTPCTBinMUS * gasParam.DriftV; mBz = o2::base::Propagator::Instance()->getNominalBz(); + mMaxInvPt = abs(mBz) > 0.1 ? 1. / (abs(mBz) * 0.05) : 999.; } //_________________________________________________________ bool MatchTOF::makeConstrainedTPCTrack(int matchedID, o2::dataformats::TrackTPCTOF& trConstr) { - auto& match = mMatchedTracks[matchedID]; + auto& match = mMatchedTracks[trkType::TPC][matchedID]; const auto& tpcTrOrig = mTPCTracksArrayInp[match.getTrackIndex()]; const auto& tofCl = mTOFClustersArrayInp[match.getTOFClIndex()]; const auto& intLT = match.getLTIntegralOut(); // correct the time of the track - auto timeTOFMUS = (tofCl.getTime() - intLT.getTOF(tpcTrOrig.getPID())) * 1e-6; // tof time in \mus, FIXME: account for time of flight to R TOF - auto timeTOFTB = timeTOFMUS * mTPCTBinMUSInv; // TOF time in TPC timebins - auto deltaTBins = timeTOFTB - tpcTrOrig.getTime0(); // time shift in timeBins - float timeErr = 0.010; // assume 10 ns error FIXME + auto timeTOFMUS = (tofCl.getTime() - intLT.getTOF(tpcTrOrig.getPID())) * 1e-6; // tof time in \mus, FIXME: account for time of flight to R TOF + auto timeTOFTB = timeTOFMUS * mTPCTBinMUSInv; // TOF time in TPC timebins + auto deltaTBins = timeTOFTB - tpcTrOrig.getTime0(); // time shift in timeBins + float timeErr = 0.010; // assume 10 ns error FIXME auto dzCorr = deltaTBins * mTPCBin2Z; if (mTPCClusterIdxStruct) { // refit was requested @@ -1741,7 +1282,22 @@ bool MatchTOF::makeConstrainedTPCTrack(int matchedID, o2::dataformats::TrackTPCT return true; } - +//_________________________________________________________ +void MatchTOF::splitOutputs() +{ + mMatchedTracksAll[trkType::TPC].clear(); + mMatchedTracksAll[trkType::ITSTPC].clear(); + mMatchedTracksAll[trkType::TPCTRD].clear(); + mMatchedTracksAll[trkType::ITSTPCTRD].clear(); + mOutTOFLabelsAll[trkType::TPC].clear(); + mOutTOFLabelsAll[trkType::ITSTPC].clear(); + mOutTOFLabelsAll[trkType::TPCTRD].clear(); + mOutTOFLabelsAll[trkType::ITSTPCTRD].clear(); + + // copy unconstrained to tpc + + // split constrained to the three cases +} //_________________________________________________________ void MatchTOF::checkRefitter() { diff --git a/Detectors/GlobalTrackingWorkflow/README.md b/Detectors/GlobalTrackingWorkflow/README.md index cb7f7b70de840..4add05b9a97db 100644 --- a/Detectors/GlobalTrackingWorkflow/README.md +++ b/Detectors/GlobalTrackingWorkflow/README.md @@ -22,7 +22,7 @@ o2-tpc-reco-workflow --tpc-digit-reader '--infile tpcdigits.root' --input-type o2-its-reco-workflow --trackerCA --tracking-mode cosmics --shm-segment-size 10000000000 --run | tee recITS.log o2-tpcits-match-workflow --tpc-track-reader tpctracks.root --tpc-native-cluster-reader "--infile tpc-native-clusters.root" --shm-segment-size 10000000000 --run | tee recTPCITS.log o2-tof-reco-workflow --shm-segment-size 10000000000 --run | tee recTOF.log -o2-tof-matcher-tpc --shm-segment-size 10000000000 --run | tee recTOF_TPC.log +o2-tof-matcher-workflow --shm-segment-size 10000000000 --run | tee recTOF_Tracks.log o2-cosmics-match-workflow --shm-segment-size 10000000000 --run | tee cosmics.log ``` diff --git a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TOFMatcherSpec.h b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TOFMatcherSpec.h index d5e1f8f54f6d0..2ef95e15d41f6 100644 --- a/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TOFMatcherSpec.h +++ b/Detectors/GlobalTrackingWorkflow/include/GlobalTrackingWorkflow/TOFMatcherSpec.h @@ -15,7 +15,7 @@ #define O2_TOF_MATCHER_SPEC #include "Framework/DataProcessorSpec.h" -#include "ReconstructionDataFormats/MatchInfoTOF.h" +#include "ReconstructionDataFormats/MatchInfoTOFReco.h" using namespace o2::framework; @@ -25,7 +25,7 @@ namespace globaltracking { /// create a processor spec -framework::DataProcessorSpec getTOFMatcherSpec(o2::dataformats::GlobalTrackID::mask_t src, bool useMC, bool useFIT); +framework::DataProcessorSpec getTOFMatcherSpec(o2::dataformats::GlobalTrackID::mask_t src, bool useMC, bool useFIT, bool tpcRefit, bool highpur); } // namespace globaltracking } // namespace o2 diff --git a/Detectors/GlobalTrackingWorkflow/src/TOFMatcherSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/TOFMatcherSpec.cxx index 553a93ea5f3c9..8f67c904566a3 100644 --- a/Detectors/GlobalTrackingWorkflow/src/TOFMatcherSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/TOFMatcherSpec.cxx @@ -39,12 +39,6 @@ #include "GlobalTracking/MatchTOF.h" #include "GlobalTrackingWorkflow/TOFMatcherSpec.h" -// from FIT -#include "DataFormatsFT0/RecPoints.h" - -#include // for make_shared, make_unique, unique_ptr -#include - using namespace o2::framework; // using MCLabelsTr = gsl::span; // using GTrackID = o2::dataformats::GlobalTrackID; @@ -62,7 +56,7 @@ namespace globaltracking class TOFMatcherSpec : public Task { public: - TOFMatcherSpec(std::shared_ptr dr, bool useMC, bool useFIT) : mDataRequest(dr), mUseMC(useMC), mUseFIT(useFIT) {} + TOFMatcherSpec(std::shared_ptr dr, bool useMC, bool useFIT, bool tpcRefit, bool highpur) : mDataRequest(dr), mUseMC(useMC), mUseFIT(useFIT), mDoTPCRefit(tpcRefit), mSetHighPurity(highpur) {} ~TOFMatcherSpec() override = default; void init(InitContext& ic) final; void run(ProcessingContext& pc) final; @@ -72,6 +66,8 @@ class TOFMatcherSpec : public Task std::shared_ptr mDataRequest; bool mUseMC = true; bool mUseFIT = false; + bool mDoTPCRefit = false; + bool mSetHighPurity = false; MatchTOF mMatcher; ///< Cluster finder TStopwatch mTimer; }; @@ -95,6 +91,9 @@ void TOFMatcherSpec::init(InitContext& ic) } else { LOG(INFO) << "Material LUT " << matLUTFile << " file is absent, only TGeo can be used"; } + if (mSetHighPurity) { + mMatcher.setHighPurity(); + } } void TOFMatcherSpec::run(ProcessingContext& pc) @@ -103,28 +102,44 @@ void TOFMatcherSpec::run(ProcessingContext& pc) RecoContainer recoData; recoData.collectData(pc, *mDataRequest.get()); - const auto clustersRO = pc.inputs().get>("tofcluster"); - - if (mUseFIT) { - // Note: the particular variable will go out of scope, but the span is passed by copy to the - // worker and the underlying memory is valid throughout the whole computation - auto recPoints = std::move(pc.inputs().get>("fitrecpoints")); - mMatcher.setFITRecPoints(recPoints); - LOG(INFO) << "TOF Reco Workflow pulled " << recPoints.size() << " FIT RecPoints"; - } - o2::dataformats::MCTruthContainer toflab; - if (mUseMC) { - const auto toflabel = pc.inputs().get*>("tofclusterlabel"); - toflab = std::move(*toflabel); + LOG(INFO) << "isTrackSourceLoaded: TPC -> " << recoData.isTrackSourceLoaded(o2::dataformats::GlobalTrackID::Source::TPC); + LOG(INFO) << "isTrackSourceLoaded: ITSTPC -> " << recoData.isTrackSourceLoaded(o2::dataformats::GlobalTrackID::Source::ITSTPC); + LOG(INFO) << "isTrackSourceLoaded: TPCTRD -> " << recoData.isTrackSourceLoaded(o2::dataformats::GlobalTrackID::Source::TPCTRD); + LOG(INFO) << "isTrackSourceLoaded: ITSTPCTRD -> " << recoData.isTrackSourceLoaded(o2::dataformats::GlobalTrackID::Source::ITSTPCTRD); + + bool isTPCused = recoData.isTrackSourceLoaded(o2::dataformats::GlobalTrackID::Source::TPC); + bool isITSTPCused = recoData.isTrackSourceLoaded(o2::dataformats::GlobalTrackID::Source::ITSTPC); + bool isTPCTRDused = recoData.isTrackSourceLoaded(o2::dataformats::GlobalTrackID::Source::TPCTRD); + bool isITSTPCTRDused = recoData.isTrackSourceLoaded(o2::dataformats::GlobalTrackID::Source::ITSTPCTRD); + + mMatcher.setFIT(mUseFIT); + + mMatcher.run(recoData); + + if (isTPCused) { + pc.outputs().snapshot(Output{o2::header::gDataOriginTOF, "MATCHINFOS_TPC", 0, Lifetime::Timeframe}, mMatcher.getMatchedTrackVector(o2::dataformats::MatchInfoTOFReco::TrackType::TPC)); + if (mUseMC) { + pc.outputs().snapshot(Output{o2::header::gDataOriginTOF, "MCMATCHINFOS_TPC", 0, Lifetime::Timeframe}, mMatcher.getMatchedTOFLabelsVector(o2::dataformats::MatchInfoTOFReco::TrackType::TPC)); + } + + auto nmatch = mMatcher.getMatchedTrackVector(o2::dataformats::MatchInfoTOFReco::TrackType::TPC).size(); + if (mDoTPCRefit) { + LOG(INFO) << "Refitting " << nmatch << " matched TPC tracks with TOF time info"; + } else { + LOG(INFO) << "Shifting Z for " << nmatch << " matched TPC tracks according to TOF time info"; + } + auto& tracksTPCTOF = pc.outputs().make>(OutputRef{"tpctofTracks"}, nmatch); + mMatcher.makeConstrainedTPCTracks(tracksTPCTOF); } - //mMatcher.run(tracksRO, clustersRO, toflab, itstpclab); - - pc.outputs().snapshot(Output{o2::header::gDataOriginTOF, "MATCHINFOS", 0, Lifetime::Timeframe}, mMatcher.getMatchedTrackVector()); - if (mUseMC) { - pc.outputs().snapshot(Output{o2::header::gDataOriginTOF, "MCMATCHTOF", 0, Lifetime::Timeframe}, mMatcher.getMatchedTOFLabelsVector()); + if (isITSTPCused) { + pc.outputs().snapshot(Output{o2::header::gDataOriginTOF, "MATCHINFOS", 0, Lifetime::Timeframe}, mMatcher.getMatchedTrackVector(o2::dataformats::MatchInfoTOFReco::TrackType::ITSTPC)); + if (mUseMC) { + pc.outputs().snapshot(Output{o2::header::gDataOriginTOF, "MCMATCHINFOS", 0, Lifetime::Timeframe}, mMatcher.getMatchedTOFLabelsVector(o2::dataformats::MatchInfoTOFReco::TrackType::ITSTPC)); + } } + pc.outputs().snapshot(Output{o2::header::gDataOriginTOF, "CALIBDATA", 0, Lifetime::Timeframe}, mMatcher.getCalibVector()); mTimer.Stop(); @@ -136,34 +151,36 @@ void TOFMatcherSpec::endOfStream(EndOfStreamContext& ec) mTimer.CpuTime(), mTimer.RealTime(), mTimer.Counter() - 1); } -DataProcessorSpec getTOFMatcherSpec(GTrackID::mask_t src, bool useMC, bool useFIT) +DataProcessorSpec getTOFMatcherSpec(GTrackID::mask_t src, bool useMC, bool useFIT, bool tpcRefit, bool highpur) { auto dataRequest = std::make_shared(); dataRequest->requestTracks(src, useMC); - - std::vector inputs = dataRequest->inputs; - std::vector outputs; - - inputs.emplace_back("tofcluster", o2::header::gDataOriginTOF, "CLUSTERS", 0, Lifetime::Timeframe); - if (useMC) { - inputs.emplace_back("tofclusterlabel", o2::header::gDataOriginTOF, "CLUSTERSMCTR", 0, Lifetime::Timeframe); - } - + dataRequest->requestClusters(GTrackID::getSourceMask(GTrackID::TOF), useMC); if (useFIT) { - inputs.emplace_back("fitrecpoints", o2::header::gDataOriginFT0, "RECPOINTS", 0, Lifetime::Timeframe); + dataRequest->requestClusters(GTrackID::getSourceMask(GTrackID::FT0), false); } + std::vector outputs; + + outputs.emplace_back(o2::header::gDataOriginTOF, "MATCHINFOS_TPC", 0, Lifetime::Timeframe); outputs.emplace_back(o2::header::gDataOriginTOF, "MATCHINFOS", 0, Lifetime::Timeframe); + outputs.emplace_back(o2::header::gDataOriginTOF, "MATCHINFO_2", 0, Lifetime::Timeframe); + outputs.emplace_back(o2::header::gDataOriginTOF, "MATCHINFO_3", 0, Lifetime::Timeframe); if (useMC) { - outputs.emplace_back(o2::header::gDataOriginTOF, "MCMATCHTOF", 0, Lifetime::Timeframe); + outputs.emplace_back(o2::header::gDataOriginTOF, "MCMATCHINFOS_TPC", 0, Lifetime::Timeframe); + outputs.emplace_back(o2::header::gDataOriginTOF, "MCMATCHINFOS", 0, Lifetime::Timeframe); + outputs.emplace_back(o2::header::gDataOriginTOF, "MCMATCHINFO_2", 0, Lifetime::Timeframe); + outputs.emplace_back(o2::header::gDataOriginTOF, "MCMATCHINFO_3", 0, Lifetime::Timeframe); } outputs.emplace_back(o2::header::gDataOriginTOF, "CALIBDATA", 0, Lifetime::Timeframe); + outputs.emplace_back(OutputLabel{"tpctofTracks"}, o2::header::gDataOriginTOF, "TOFTRACKS_TPC", 0, Lifetime::Timeframe); + return DataProcessorSpec{ "tof-matcher", - inputs, + dataRequest->inputs, outputs, - AlgorithmSpec{adaptFromTask(dataRequest, useMC, useFIT)}, + AlgorithmSpec{adaptFromTask(dataRequest, useMC, useFIT, tpcRefit, highpur)}, Options{ {"material-lut-path", VariantType::String, "", {"Path of the material LUT file"}}}}; } diff --git a/Detectors/GlobalTrackingWorkflow/src/tof-matcher-workflow.cxx b/Detectors/GlobalTrackingWorkflow/src/tof-matcher-workflow.cxx index d29b0413a14e6..b11a21e2f6263 100644 --- a/Detectors/GlobalTrackingWorkflow/src/tof-matcher-workflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/tof-matcher-workflow.cxx @@ -39,9 +39,10 @@ void customize(std::vector& workflowOptions) {"disable-mc", o2::framework::VariantType::Bool, false, {"disable MC propagation even if available"}}, {"disable-root-input", o2::framework::VariantType::Bool, false, {"disable root-files input reader"}}, {"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writer"}}, - {"track-sources", VariantType::String, std::string{GID::ALL}, {"comma-separated list of sources to use"}}, + {"track-sources", VariantType::String, std::string{GID::ALL}, {"comma-separated list of sources to use: allowed TPC,ITS-TPC,TPC-TRD,ITS-TPC-TRD (all)"}}, {"use-fit", o2::framework::VariantType::Bool, false, {"enable access to fit info for calibration"}}, {"use-ccdb", o2::framework::VariantType::Bool, false, {"enable access to ccdb tof calibration objects"}}, + {"high-purity", o2::framework::VariantType::Bool, false, {"enable high purity matching cuts"}}, {"output-type", o2::framework::VariantType::String, "matching-info,calib-info", {"matching-info, calib-info"}}, {"configKeyValues", VariantType::String, "", {"Semicolon separated key=value strings ..."}}}; @@ -57,7 +58,8 @@ void customize(std::vector& workflowOptions) WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) { WorkflowSpec specs; - GID::mask_t alowedSources = GID::getSourcesMask("ITS,TPC,ITS-TPC,TPC-TOF,ITS-TPC-TOF"); + GID::mask_t alowedSources = GID::getSourcesMask("TPC,ITS-TPC"); + // GID::mask_t alowedSources = GID::getSourcesMask("TPC,ITS-TPC,TPC-TRD,ITS-TPC-TRD"); // Update the (declared) parameters if changed from the command line o2::conf::ConfigurableParam::updateFromString(configcontext.options().get("configKeyValues")); @@ -69,7 +71,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) auto disableRootOut = configcontext.options().get("disable-root-output"); auto useFIT = configcontext.options().get("use-fit"); auto useCCDB = configcontext.options().get("use-ccdb"); - bool writeTOFTPC = false; + auto highpur = configcontext.options().get("high-purity"); bool writematching = 0; bool writecalib = 0; @@ -93,26 +95,31 @@ WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) LOG(INFO) << "TOF use-fit = " << useFIT; LOG(INFO) << "TOF disable-root-input = " << disableRootIn; LOG(INFO) << "TOF disable-root-output = " << disableRootOut; + LOG(INFO) << "TOF matching enable high-purity = " << highpur; GID::mask_t src = alowedSources & GID::getSourcesMask(configcontext.options().get("track-sources")); - GID::mask_t dummy; + GID::mask_t mcmaskcl; GID::mask_t nonemask = GID::getSourcesMask(GID::NONE); + GID::mask_t clustermask = GID::getSourcesMask("TOF"); + if (useFIT) { + clustermask |= GID::getSourceMask(GID::FT0); + } - o2::globaltracking::InputHelper::addInputSpecs(configcontext, specs, nonemask, nonemask, src, useMC, dummy); // only tracks needed - - if (!disableRootIn) { // input data loaded from root files - LOG(INFO) << "Insert TOF Cluster Reader"; - specs.emplace_back(o2::tof::getClusterReaderSpec(useMC)); + if (useMC) { + mcmaskcl |= GID::getSourceMask(GID::TOF); } - specs.emplace_back(o2::globaltracking::getTOFMatcherSpec(src, useMC, useFIT)); + o2::globaltracking::InputHelper::addInputSpecs(configcontext, specs, clustermask, nonemask, src, useMC, mcmaskcl); + + specs.emplace_back(o2::globaltracking::getTOFMatcherSpec(src, useMC, useFIT, false, highpur)); // doTPCrefit not yet supported (need to load TPC clusters?) if (!disableRootOut) { if (writematching) { - specs.emplace_back(o2::tof::getTOFMatchedWriterSpec(useMC, "o2match_toftpc.root", writeTOFTPC)); + specs.emplace_back(o2::tof::getTOFMatchedWriterSpec(useMC, "o2match_tof_tpc.root", 1)); + specs.emplace_back(o2::tof::getTOFMatchedWriterSpec(useMC, "o2match_tof_itstpc.root", 0)); } if (writecalib) { - specs.emplace_back(o2::tof::getTOFCalibWriterSpec("o2calib_toftpc.root", writeTOFTPC)); + specs.emplace_back(o2::tof::getTOFCalibWriterSpec("o2calib_tof.root", 0)); } } diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/CMakeLists.txt b/Detectors/GlobalTrackingWorkflow/tofworkflow/CMakeLists.txt index 5de38a868f929..41c505506d76f 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/CMakeLists.txt +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/CMakeLists.txt @@ -9,30 +9,14 @@ # granted to it by virtue of its status as an Intergovernmental Organization # or submit itself to any jurisdiction. -o2_add_library(TOFWorkflow - SOURCES src/RecoWorkflowSpec.cxx - src/RecoWorkflowWithTPCSpec.cxx - PUBLIC_LINK_LIBRARIES O2::Framework O2::TOFBase O2::DataFormatsTOF O2::TOFReconstruction - O2::GlobalTracking O2::GlobalTrackingWorkflowReaders O2::TOFWorkflowIO O2::TOFWorkflowUtils - O2::TOFCalibration O2::DataFormatsFT0 O2::FT0Reconstruction O2::FT0Workflow - O2::TPCWorkflow O2::ITSWorkflow) - o2_add_executable(reco-workflow COMPONENT_NAME tof SOURCES src/tof-reco-workflow.cxx - PUBLIC_LINK_LIBRARIES O2::TOFWorkflow) - -o2_add_executable(matcher-global - COMPONENT_NAME tof - SOURCES src/tof-matcher-global.cxx - PUBLIC_LINK_LIBRARIES O2::TOFWorkflow) - -o2_add_executable(matcher-tpc - COMPONENT_NAME tof - SOURCES src/tof-matcher-tpc.cxx - PUBLIC_LINK_LIBRARIES O2::TOFWorkflow) + PUBLIC_LINK_LIBRARIES O2::Framework O2::TOFBase O2::DataFormatsTOF O2::TOFReconstruction + O2::TOFWorkflowIO O2::TOFWorkflowUtils + O2::TOFCalibration) o2_add_executable(calib-reader COMPONENT_NAME tof SOURCES src/tof-calibinfo-reader.cxx - PUBLIC_LINK_LIBRARIES O2::TOFWorkflow) + PUBLIC_LINK_LIBRARIES O2::Framework O2::DataFormatsTOF O2::TOFBase O2::TOFWorkflowIO O2::TOFWorkflowUtils O2::TOFCalibration) diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowWithTPCSpec.h b/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowWithTPCSpec.h deleted file mode 100644 index 342a68c3b6c1e..0000000000000 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/include/TOFWorkflow/RecoWorkflowWithTPCSpec.h +++ /dev/null @@ -1,28 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -#ifndef TOF_RECOWORKFLOWWITHTPC_H_ -#define TOF_RECOWORKFLOWWITHTPC_H_ - -#include "Framework/DataProcessorSpec.h" -#include "ReconstructionDataFormats/MatchInfoTOF.h" - -namespace o2 -{ -namespace tof -{ - -o2::framework::DataProcessorSpec getTOFRecoWorkflowWithTPCSpec(bool useMC, bool useFIT, bool doTPCRefit, bool iscosmics); - -} // end namespace tof -} // end namespace o2 - -#endif /* TOF_RECOWORKFLOWWITHTPC_H_ */ diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/RecoWorkflowWithTPCSpec.cxx b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/RecoWorkflowWithTPCSpec.cxx deleted file mode 100644 index d55dcde324c7f..0000000000000 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/RecoWorkflowWithTPCSpec.cxx +++ /dev/null @@ -1,190 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -#include "TOFWorkflow/RecoWorkflowWithTPCSpec.h" -#include "DataFormatsTPC/WorkflowHelper.h" -#include "Framework/ConfigParamRegistry.h" -#include "Framework/ControlService.h" -#include "Framework/DataProcessorSpec.h" -#include "Framework/DataRefUtils.h" -#include "Framework/Lifetime.h" -#include "Framework/Task.h" -#include "Framework/SerializationMethods.h" -#include "Headers/DataHeader.h" -#include "DataFormatsTOF/Cluster.h" -#include "GlobalTracking/MatchTOF.h" -#include "DetectorsBase/GeometryManager.h" -#include "DetectorsBase/Propagator.h" -#include "DetectorsCommonDataFormats/NameConf.h" -#include -#include "TStopwatch.h" - -// from FIT -#include "DataFormatsFT0/RecPoints.h" - -#include // for make_shared, make_unique, unique_ptr -#include - -using namespace o2::framework; - -namespace o2 -{ -namespace tof -{ - -// use the tasking system of DPL -// just need to implement 2 special methods init + run (there is no need to inherit from anything) -class TOFDPLRecoWorkflowWithTPCTask -{ - using evIdx = o2::dataformats::EvIndex; - using MatchOutputType = std::vector; - - bool mUseMC = true; - bool mUseFIT = false; - bool mDoTPCRefit = false; - bool mIsCosmics = false; - - public: - explicit TOFDPLRecoWorkflowWithTPCTask(bool useMC, bool useFIT, bool doTPCRefit, bool iscosmics) : mUseMC(useMC), mUseFIT(useFIT), mDoTPCRefit(doTPCRefit), mIsCosmics(iscosmics) {} - - void init(framework::InitContext& ic) - { - // nothing special to be set up - o2::base::GeometryManager::loadGeometry(); - o2::base::Propagator::initFieldFromGRP(); - std::string matLUTPath = ic.options().get("material-lut-path"); - std::string matLUTFile = o2::base::NameConf::getMatLUTFileName(matLUTPath); - if (o2::utils::Str::pathExists(matLUTFile)) { - auto* lut = o2::base::MatLayerCylSet::loadFromFile(matLUTFile); - o2::base::Propagator::Instance()->setMatLUT(lut); - LOG(INFO) << "Loaded material LUT from " << matLUTFile; - } else { - LOG(INFO) << "Material LUT " << matLUTFile << " file is absent, only TGeo can be used"; - } - - mTimer.Stop(); - mTimer.Reset(); - } - - void run(framework::ProcessingContext& pc) - { - if (mIsCosmics) { - mMatcher.setCosmics(); - } - mMatcher.print(); - - mTimer.Start(false); - //>>>---------- attach input data --------------->>> - const auto clustersRO = pc.inputs().get>("tofcluster"); - const auto tracksRO = pc.inputs().get>("tracks"); - - if (mUseFIT) { - // Note: the particular variable will go out of scope, but the span is passed by copy to the - // worker and the underlying memory is valid throughout the whole computation - auto recPoints = std::move(pc.inputs().get>("fitrecpoints")); - mMatcher.setFITRecPoints(recPoints); - LOG(INFO) << "TOF Reco WorkflowWithTPC pulled " << recPoints.size() << " FIT RecPoints"; - } - - // we do a copy of the input but we are looking for a way to avoid it (current problem in conversion form unique_ptr to *) - - o2::dataformats::MCTruthContainer toflab; - gsl::span tpclab; - if (mUseMC) { - const auto toflabel = pc.inputs().get*>("tofclusterlabel"); - tpclab = pc.inputs().get>("tpctracklabel"); - toflab = std::move(*toflabel); - } - - std::decay_t inputsTPCclusters; - if (mDoTPCRefit) { - mMatcher.setTPCTrackClusIdxInp(pc.inputs().get>("trackTPCClRefs")); - mMatcher.setTPCClustersSharingMap(pc.inputs().get>("clusTPCshmap")); - inputsTPCclusters = o2::tpc::getWorkflowTPCInput(pc); - mMatcher.setTPCClustersInp(&inputsTPCclusters->clusterIndex); - } - - mMatcher.run(tracksRO, clustersRO, toflab, tpclab); - - auto nmatch = mMatcher.getMatchedTrackVector().size(); - if (mDoTPCRefit) { - LOG(INFO) << "Refitting " << nmatch << " matched TPC tracks with TOF time info"; - } else { - LOG(INFO) << "Shifting Z for " << nmatch << " matched TPC tracks according to TOF time info"; - } - auto& tracksTPCTOF = pc.outputs().make>(OutputRef{"tpctofTracks"}, nmatch); - mMatcher.makeConstrainedTPCTracks(tracksTPCTOF); - - // in run_match_tof aggiugnere esplicitamente la chiamata a fill del tree (nella classe MatchTOF) e il metodo per leggere i vettori di output - - //... - // LOG(INFO) << "TOF CLUSTERER : TRANSFORMED " << digits->size() - // << " DIGITS TO " << mClustersArray.size() << " CLUSTERS"; - - // send matching-info - pc.outputs().snapshot(Output{o2::header::gDataOriginTOF, "MATCHINFOS_TPC", 0, Lifetime::Timeframe}, mMatcher.getMatchedTrackVector()); - if (mUseMC) { - pc.outputs().snapshot(Output{o2::header::gDataOriginTOF, "MCMATCHTOF_TPC", 0, Lifetime::Timeframe}, mMatcher.getMatchedTOFLabelsVector()); - } - pc.outputs().snapshot(Output{o2::header::gDataOriginTOF, "CALIBDATA_TPC", 0, Lifetime::Timeframe}, mMatcher.getCalibVector()); - mTimer.Stop(); - } - - void endOfStream(EndOfStreamContext& ec) - { - LOGF(INFO, "TOF Matching total timing: Cpu: %.3e Real: %.3e s in %d slots", - mTimer.CpuTime(), mTimer.RealTime(), mTimer.Counter() - 1); - } - - private: - o2::globaltracking::MatchTOF mMatcher; ///< Cluster finder - TStopwatch mTimer; -}; - -o2::framework::DataProcessorSpec getTOFRecoWorkflowWithTPCSpec(bool useMC, bool useFIT, bool doTPCRefit, bool iscosmics) -{ - std::vector inputs; - std::vector outputs; - inputs.emplace_back("tofcluster", o2::header::gDataOriginTOF, "CLUSTERS", 0, Lifetime::Timeframe); - inputs.emplace_back("tracks", o2::header::gDataOriginTPC, "TRACKS", 0, Lifetime::Timeframe); - if (doTPCRefit) { - inputs.emplace_back("trackTPCClRefs", o2::header::gDataOriginTPC, "CLUSREFS", 0, Lifetime::Timeframe); - inputs.emplace_back("clusTPC", ConcreteDataTypeMatcher{o2::header::gDataOriginTPC, "CLUSTERNATIVE"}, Lifetime::Timeframe); - inputs.emplace_back("clusTPCshmap", o2::header::gDataOriginTPC, "CLSHAREDMAP", 0, Lifetime::Timeframe); - } - if (useMC) { - inputs.emplace_back("tofclusterlabel", o2::header::gDataOriginTOF, "CLUSTERSMCTR", 0, Lifetime::Timeframe); - inputs.emplace_back("tpctracklabel", o2::header::gDataOriginTPC, "TRACKSMCLBL", 0, Lifetime::Timeframe); - } - - if (useFIT) { - inputs.emplace_back("fitrecpoints", o2::header::gDataOriginFT0, "RECPOINTS", 0, Lifetime::Timeframe); - } - - outputs.emplace_back(o2::header::gDataOriginTOF, "MATCHINFOS_TPC", 0, Lifetime::Timeframe); - outputs.emplace_back(OutputLabel{"tpctofTracks"}, o2::header::gDataOriginTOF, "TOFTRACKS_TPC", 0, Lifetime::Timeframe); - - if (useMC) { - outputs.emplace_back(o2::header::gDataOriginTOF, "MCMATCHTOF_TPC", 0, Lifetime::Timeframe); - } - outputs.emplace_back(o2::header::gDataOriginTOF, "CALIBDATA_TPC", 0, Lifetime::Timeframe); - - return DataProcessorSpec{ - "TOFRecoWorkflowWithTPC", - inputs, - outputs, - AlgorithmSpec{adaptFromTask(useMC, useFIT, doTPCRefit, iscosmics)}, - Options{ - {"material-lut-path", VariantType::String, "", {"Path of the material LUT file"}}}}; -} - -} // end namespace tof -} // end namespace o2 diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-calibinfo-reader.cxx b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-calibinfo-reader.cxx index 59d91d63ae8db..c6c3ef42096c8 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-calibinfo-reader.cxx +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-calibinfo-reader.cxx @@ -15,12 +15,9 @@ /// @brief Basic DPL workflow for TOF reconstruction starting from digits #include "DetectorsBase/Propagator.h" -#include "GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h" #include "TOFWorkflowIO/CalibInfoReaderSpec.h" #include "Framework/WorkflowSpec.h" #include "Framework/ConfigParamSpec.h" -#include "TOFWorkflow/RecoWorkflowSpec.h" -#include "Algorithm/RangeTokenizer.h" #include "FairLogger.h" #include "CommonUtils/ConfigurableParam.h" #include "DetectorsCommonDataFormats/NameConf.h" diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-global.cxx b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-global.cxx deleted file mode 100644 index b0a0bbe7c6656..0000000000000 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-global.cxx +++ /dev/null @@ -1,164 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -/// @file tof-reco-workflow.cxx -/// @author Francesco Noferini -/// @since 2019-05-22 -/// @brief Basic DPL workflow for TOF reconstruction starting from digits - -#include "DetectorsBase/Propagator.h" -#include "GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h" -#include "TOFWorkflowIO/ClusterReaderSpec.h" -#include "TOFWorkflowIO/TOFMatchedWriterSpec.h" -#include "TOFWorkflowIO/TOFCalibWriterSpec.h" -#include "Framework/WorkflowSpec.h" -#include "Framework/ConfigParamSpec.h" -#include "TOFWorkflow/RecoWorkflowSpec.h" -#include "Algorithm/RangeTokenizer.h" -#include "FairLogger.h" -#include "CommonUtils/ConfigurableParam.h" -#include "DetectorsCommonDataFormats/NameConf.h" -#include "DetectorsRaw/HBFUtilsInitializer.h" - -// FIT -#include "FT0Workflow/RecPointReaderSpec.h" - -#include -#include -#include - -// add workflow options, note that customization needs to be declared before -// including Framework/runDataProcessing -void customize(std::vector& workflowOptions) -{ - std::vector options{ - {"input-type", o2::framework::VariantType::String, "clusters,tracks", {"clusters, tracks, fit"}}, - {"output-type", o2::framework::VariantType::String, "matching-info,calib-info", {"matching-info, calib-info"}}, - {"disable-mc", o2::framework::VariantType::Bool, false, {"disable sending of MC information, TBI"}}, - {"tof-sectors", o2::framework::VariantType::String, "0-17", {"TOF sector range, e.g. 5-7,8,9 ,TBI"}}, - {"tof-lanes", o2::framework::VariantType::Int, 1, {"number of parallel lanes up to the matcher, TBI"}}, - {"use-ccdb", o2::framework::VariantType::Bool, false, {"enable access to ccdb tof calibration objects"}}, - {"use-fit", o2::framework::VariantType::Bool, false, {"enable access to fit info for calibration"}}, - {"input-desc", o2::framework::VariantType::String, "CRAWDATA", {"Input specs description string"}}, - {"disable-root-input", o2::framework::VariantType::Bool, false, {"disable root-files input readers"}}, - {"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writers"}}, - {"configKeyValues", o2::framework::VariantType::String, "", {"Semicolon separated key=value strings ..."}}}; - - o2::raw::HBFUtilsInitializer::addConfigOption(options); - - std::swap(workflowOptions, options); -} - -#include "Framework/runDataProcessing.h" // the main driver - -using namespace o2::framework; - -/// The workflow executable for the stand alone TOF reconstruction workflow -/// The basic workflow for TOF reconstruction is defined in RecoWorkflow.cxx -/// and contains the following default processors -/// - digit reader -/// - clusterer -/// - cluster raw decoder -/// - track-TOF matcher -/// -/// The default workflow can be customized by specifying input and output types -/// e.g. digits, raw, clusters. -/// -/// MC info is processed by default, disabled by using command line option `--disable-mc` -/// -/// This function hooks up the the workflow specifications into the DPL driver. -WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) -{ - WorkflowSpec specs; - o2::conf::ConfigurableParam::updateFromString(cfgc.options().get("configKeyValues")); - - // the lane configuration defines the subspecification ids to be distributed among the lanes. - auto nLanes = cfgc.options().get("tof-lanes"); - auto inputType = cfgc.options().get("input-type"); - auto outputType = cfgc.options().get("output-type"); - - bool writematching = 0; - bool writecalib = 0; - - if (outputType.rfind("matching-info") < outputType.size()) { - writematching = 1; - } - if (outputType.rfind("calib-info") < outputType.size()) { - writecalib = 1; - } - - bool clusterinput = 0; - bool trackinput = 0; - bool fitinput = 0; - - if (inputType.rfind("clusters") < inputType.size()) { - clusterinput = 1; - } - if (inputType.rfind("tracks") < inputType.size()) { - trackinput = 1; - } - auto useMC = !cfgc.options().get("disable-mc"); - auto useCCDB = cfgc.options().get("use-ccdb"); - auto useFIT = cfgc.options().get("use-fit"); - bool disableRootInput = cfgc.options().get("disable-root-input"); - bool disableRootOutput = cfgc.options().get("disable-root-output"); - - if (inputType.rfind("fit") < inputType.size()) { - fitinput = 1; - useFIT = 1; - } - - LOG(INFO) << "TOF RECO WORKFLOW configuration"; - LOG(INFO) << "TOF input = " << cfgc.options().get("input-type"); - LOG(INFO) << "TOF output = " << cfgc.options().get("output-type"); - LOG(INFO) << "TOF sectors = " << cfgc.options().get("tof-sectors"); - LOG(INFO) << "TOF disable-mc = " << cfgc.options().get("disable-mc"); - LOG(INFO) << "TOF lanes = " << cfgc.options().get("tof-lanes"); - LOG(INFO) << "TOF use-ccdb = " << cfgc.options().get("use-ccdb"); - LOG(INFO) << "TOF use-fit = " << cfgc.options().get("use-fit"); - LOG(INFO) << "TOF disable-root-input = " << disableRootInput; - LOG(INFO) << "TOF disable-root-output = " << disableRootOutput; - - if (!disableRootInput) { // input data loaded from root files - if (clusterinput) { - LOG(INFO) << "Insert TOF Cluster Reader"; - specs.emplace_back(o2::tof::getClusterReaderSpec(useMC)); - } - if (trackinput) { - LOG(INFO) << "Insert ITS-TPC Track Reader"; - specs.emplace_back(o2::globaltracking::getTrackTPCITSReaderSpec(useMC)); - } - - if (fitinput) { - LOG(INFO) << "Insert FIT RecPoint Reader"; - specs.emplace_back(o2::ft0::getRecPointReaderSpec(useMC)); - } - } - LOG(INFO) << "Insert TOF Matching"; - specs.emplace_back(o2::tof::getTOFRecoWorkflowSpec(useMC, useFIT)); - - if (!disableRootOutput) { - if (writematching) { - LOG(INFO) << "Insert TOF Matched Info Writer"; - specs.emplace_back(o2::tof::getTOFMatchedWriterSpec(useMC)); - } - if (writecalib) { - LOG(INFO) << "Insert TOF Calib Info Writer"; - specs.emplace_back(o2::tof::getTOFCalibWriterSpec()); - } - } - LOG(INFO) << "Number of active devices = " << specs.size(); - - // configure dpl timer to inject correct firstTFOrbit: start from the 1st orbit of TF containing 1st sampled orbit - o2::raw::HBFUtilsInitializer hbfIni(cfgc, specs); - - return std::move(specs); -} diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-tpc.cxx b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-tpc.cxx deleted file mode 100644 index c703d274a4851..0000000000000 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-matcher-tpc.cxx +++ /dev/null @@ -1,166 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -/// @file tof-reco-workflow.cxx -/// @author Francesco Noferini -/// @since 2019-05-22 -/// @brief Basic DPL workflow for TOF reconstruction starting from digits - -#include "DetectorsBase/Propagator.h" -#include "TOFWorkflowIO/ClusterReaderSpec.h" -#include "TOFWorkflowIO/TOFMatchedWriterSpec.h" -#include "TOFWorkflowIO/TOFCalibWriterSpec.h" -#include "Framework/WorkflowSpec.h" -#include "Framework/ConfigParamSpec.h" -#include "TOFWorkflow/RecoWorkflowWithTPCSpec.h" -#include "Algorithm/RangeTokenizer.h" -#include "FairLogger.h" -#include "CommonUtils/ConfigurableParam.h" -#include "DetectorsCommonDataFormats/NameConf.h" -#include "TPCReaderWorkflow/TrackReaderSpec.h" -#include "TPCReaderWorkflow/ClusterReaderSpec.h" -#include "TPCWorkflow/ClusterSharingMapSpec.h" -#include "DetectorsRaw/HBFUtilsInitializer.h" - -// GRP -#include "DataFormatsParameters/GRPObject.h" - -// FIT -#include "FT0Workflow/RecPointReaderSpec.h" - -#include -#include -#include - -// add workflow options, note that customization needs to be declared before -// including Framework/runDataProcessing -void customize(std::vector& workflowOptions) -{ - std::vector options{ - {"output-type", o2::framework::VariantType::String, "matching-info", {"matching-info, calib-info"}}, - {"disable-mc", o2::framework::VariantType::Bool, false, {"disable sending of MC information, TBI"}}, - {"tof-sectors", o2::framework::VariantType::String, "0-17", {"TOF sector range, e.g. 5-7,8,9 ,TBI"}}, - {"tof-lanes", o2::framework::VariantType::Int, 1, {"number of parallel lanes up to the matcher, TBI"}}, - {"use-ccdb", o2::framework::VariantType::Bool, false, {"enable access to ccdb tof calibration objects"}}, - {"use-fit", o2::framework::VariantType::Bool, false, {"enable access to fit info for calibration"}}, - {"input-desc", o2::framework::VariantType::String, "CRAWDATA", {"Input specs description string"}}, - {"tpc-refit", o2::framework::VariantType::Bool, false, {"refit matched TPC tracks"}}, - {"disable-root-input", o2::framework::VariantType::Bool, false, {"disable root-files input readers"}}, - {"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writers"}}, - {"cosmics", o2::framework::VariantType::Bool, false, {"reco for cosmics"}}, - {"configKeyValues", o2::framework::VariantType::String, "", {"Semicolon separated key=value strings ..."}}}; - - o2::raw::HBFUtilsInitializer::addConfigOption(options); - - std::swap(workflowOptions, options); -} - -#include "Framework/runDataProcessing.h" // the main driver - -using namespace o2::framework; - -/// The workflow executable for the stand alone TOF reconstruction workflow -/// The basic workflow for TOF reconstruction is defined in RecoWorkflow.cxx -/// and contains the following default processors -/// - digit reader -/// - clusterer -/// - cluster raw decoder -/// - track-TOF matcher -/// -/// The default workflow can be customized by specifying input and output types -/// e.g. digits, raw, clusters. -/// -/// MC info is processed by default, disabled by using command line option `--disable-mc` -/// -/// This function hooks up the the workflow specifications into the DPL driver. -WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) -{ - WorkflowSpec specs; - o2::conf::ConfigurableParam::updateFromString(cfgc.options().get("configKeyValues")); - - // the lane configuration defines the subspecification ids to be distributed among the lanes. - auto nLanes = cfgc.options().get("tof-lanes"); - auto outputType = cfgc.options().get("output-type"); - - bool writematching = 0; - bool writecalib = 0; - - if (outputType.rfind("matching-info") < outputType.size()) { - writematching = 1; - } - if (outputType.rfind("calib-info") < outputType.size()) { - writecalib = 1; - } - - auto useMC = !cfgc.options().get("disable-mc"); - auto useCCDB = cfgc.options().get("use-ccdb"); - auto useFIT = cfgc.options().get("use-fit"); - auto doTPCRefit = cfgc.options().get("tpc-refit"); - bool disableRootInput = cfgc.options().get("disable-root-input"); - bool disableRootOutput = cfgc.options().get("disable-root-output"); - auto isCosmics = cfgc.options().get("cosmics"); - - LOG(INFO) << "TOF RECO WORKFLOW configuration"; - LOG(INFO) << "TOF output = " << cfgc.options().get("output-type"); - LOG(INFO) << "TOF sectors = " << cfgc.options().get("tof-sectors"); - LOG(INFO) << "TOF disable-mc = " << cfgc.options().get("disable-mc"); - LOG(INFO) << "TOF lanes = " << cfgc.options().get("tof-lanes"); - LOG(INFO) << "TOF use-ccdb = " << cfgc.options().get("use-ccdb"); - LOG(INFO) << "TOF use-fit = " << cfgc.options().get("use-fit"); - LOG(INFO) << "TOF tpc-refit = " << cfgc.options().get("tpc-refit"); - LOG(INFO) << "TOF disable-root-input = " << disableRootInput; - LOG(INFO) << "TOF disable-root-output = " << disableRootOutput; - - // useMC = false; - // LOG(INFO) << "TOF disable MC forced"; - // writecalib = false; - // LOG(INFO) << "TOF CalibInfo disabled (forced)"; - - if (!disableRootInput) { // input data loaded from root files - LOG(INFO) << "Insert TOF Cluster Reader"; - specs.emplace_back(o2::tof::getClusterReaderSpec(useMC)); - - LOG(INFO) << "Insert TPC Track Reader"; - specs.emplace_back(o2::tpc::getTPCTrackReaderSpec(useMC)); - - if (doTPCRefit) { - LOG(INFO) << "Insert TPC Cluster Reader"; - specs.emplace_back(o2::tpc::getClusterReaderSpec(false)); - specs.emplace_back(o2::tpc::getClusterSharingMapSpec()); - } - - if (useFIT) { - LOG(INFO) << "Insert FIT RecPoint Reader"; - specs.emplace_back(o2::ft0::getRecPointReaderSpec(useMC)); - } - } - - LOG(INFO) << "Insert TOF Matching"; - specs.emplace_back(o2::tof::getTOFRecoWorkflowWithTPCSpec(useMC, useFIT, doTPCRefit, isCosmics)); - - if (!disableRootOutput) { - if (writematching) { - LOG(INFO) << "Insert TOF Matched Info Writer"; - specs.emplace_back(o2::tof::getTOFMatchedWriterSpec(useMC, "o2match_toftpc.root", true)); - } - if (writecalib) { - LOG(INFO) << "Insert TOF Calib Info Writer"; - specs.emplace_back(o2::tof::getTOFCalibWriterSpec("o2calib_toftpc.root", true)); - } - } - - LOG(INFO) << "Number of active devices = " << specs.size(); - - // configure dpl timer to inject correct firstTFOrbit: start from the 1st orbit of TF containing 1st sampled orbit - o2::raw::HBFUtilsInitializer hbfIni(cfgc, specs); - - return std::move(specs); -} diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-reco-workflow.cxx b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-reco-workflow.cxx index 77b234b7d2cfc..a70432dd8b9d7 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-reco-workflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-reco-workflow.cxx @@ -15,30 +15,22 @@ /// @brief Basic DPL workflow for TOF reconstruction starting from digits #include "DetectorsBase/Propagator.h" -#include "GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h" #include "TOFWorkflowIO/DigitReaderSpec.h" #include "TOFWorkflowIO/TOFDigitWriterSpec.h" #include "TOFWorkflowIO/ClusterReaderSpec.h" #include "TOFWorkflowUtils/TOFClusterizerSpec.h" #include "TOFWorkflowIO/TOFClusterWriterSpec.h" -#include "TOFWorkflowIO/TOFMatchedWriterSpec.h" -#include "TOFWorkflowIO/TOFCalibWriterSpec.h" #include "TOFWorkflowIO/TOFRawWriterSpec.h" #include "TOFWorkflowUtils/CompressedDecodingTask.h" #include "TOFWorkflowUtils/EntropyEncoderSpec.h" #include "TOFWorkflowUtils/EntropyDecoderSpec.h" #include "Framework/WorkflowSpec.h" #include "Framework/ConfigParamSpec.h" -#include "TOFWorkflow/RecoWorkflowSpec.h" -#include "Algorithm/RangeTokenizer.h" #include "FairLogger.h" #include "CommonUtils/ConfigurableParam.h" #include "DetectorsCommonDataFormats/NameConf.h" #include "DetectorsRaw/HBFUtilsInitializer.h" -// FIT -#include "FT0Workflow/RecPointReaderSpec.h" - #include #include #include @@ -49,12 +41,11 @@ void customize(std::vector& workflowOptions) { std::vector options{ {"input-type", o2::framework::VariantType::String, "digits", {"digits, raw, clusters"}}, - {"output-type", o2::framework::VariantType::String, "clusters,matching-info,calib-info", {"digits, clusters, matching-info, calib-info, raw, ctf"}}, + {"output-type", o2::framework::VariantType::String, "clusters", {"digits, clusters, raw, ctf"}}, {"disable-mc", o2::framework::VariantType::Bool, false, {"disable sending of MC information, TBI"}}, {"tof-sectors", o2::framework::VariantType::String, "0-17", {"TOF sector range, e.g. 5-7,8,9 ,TBI"}}, {"tof-lanes", o2::framework::VariantType::Int, 1, {"number of parallel lanes up to the matcher, TBI"}}, {"use-ccdb", o2::framework::VariantType::Bool, false, {"enable access to ccdb tof calibration objects"}}, - {"use-fit", o2::framework::VariantType::Bool, false, {"enable access to fit info for calibration"}}, {"input-desc", o2::framework::VariantType::String, "CRAWDATA", {"Input specs description string"}}, {"disable-root-input", o2::framework::VariantType::Bool, false, {"disable root-files input readers"}}, {"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writers"}}, @@ -98,8 +89,6 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) auto outputType = cfgc.options().get("output-type"); bool writecluster = 0; - bool writematching = 0; - bool writecalib = 0; bool writedigit = 0; bool writeraw = 0; bool writectf = 0; @@ -108,12 +97,6 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) if (outputType.rfind("clusters") < outputType.size()) { writecluster = 1; } - if (outputType.rfind("matching-info") < outputType.size()) { - writematching = 1; - } - if (outputType.rfind("calib-info") < outputType.size()) { - writecalib = 1; - } if (outputType.rfind("digits") < outputType.size()) { writedigit = 1; } @@ -142,7 +125,6 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) auto useMC = !cfgc.options().get("disable-mc"); auto useCCDB = cfgc.options().get("use-ccdb"); - auto useFIT = cfgc.options().get("use-fit"); bool disableRootInput = cfgc.options().get("disable-root-input") || rawinput; bool disableRootOutput = cfgc.options().get("disable-root-output"); bool conetmode = cfgc.options().get("conet-mode"); @@ -157,7 +139,6 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) LOG(INFO) << "TOF disable-mc = " << cfgc.options().get("disable-mc"); LOG(INFO) << "TOF lanes = " << cfgc.options().get("tof-lanes"); LOG(INFO) << "TOF use-ccdb = " << cfgc.options().get("use-ccdb"); - LOG(INFO) << "TOF use-fit = " << cfgc.options().get("use-fit"); LOG(INFO) << "TOF disable-root-input = " << disableRootInput; LOG(INFO) << "TOF disable-root-output = " << disableRootOutput; LOG(INFO) << "TOF conet-mode = " << conetmode; @@ -199,27 +180,6 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) } } - if (useFIT && !disableRootInput) { - specs.emplace_back(o2::ft0::getRecPointReaderSpec(useMC)); - } - - if (writematching || writecalib) { - if (!disableRootInput) { - LOG(INFO) << "Insert ITS-TPC Track Reader"; - specs.emplace_back(o2::globaltracking::getTrackTPCITSReaderSpec(useMC)); - } - LOG(INFO) << "Insert TOF Matching"; - specs.emplace_back(o2::tof::getTOFRecoWorkflowSpec(useMC, useFIT)); - - if (writematching && !disableRootOutput) { - LOG(INFO) << "Insert TOF Matched Info Writer"; - specs.emplace_back(o2::tof::getTOFMatchedWriterSpec(useMC)); - } - if (writecalib && !disableRootOutput) { - LOG(INFO) << "Insert TOF Calib Info Writer"; - specs.emplace_back(o2::tof::getTOFCalibWriterSpec()); - } - } if (writectf) { LOG(INFO) << "Insert TOF CTF encoder"; specs.emplace_back(o2::tof::getEntropyEncoderSpec()); diff --git a/Detectors/TOF/base/src/Geo.cxx b/Detectors/TOF/base/src/Geo.cxx index 823da6217ab9c..9be33f4a76a7c 100644 --- a/Detectors/TOF/base/src/Geo.cxx +++ b/Detectors/TOF/base/src/Geo.cxx @@ -40,7 +40,7 @@ void Geo::Init() LOG(INFO) << "tof::Geo: Initialization of TOF rotation parameters"; if (!gGeoManager) { - LOG(WARNING) << " no TGeo! Loading it"; + LOG(INFO) << " no TGeo! Loading it"; o2::base::GeometryManager::loadGeometry(); } diff --git a/Detectors/TOF/workflowIO/src/TOFCalibWriterSpec.cxx b/Detectors/TOF/workflowIO/src/TOFCalibWriterSpec.cxx index 4084278a4dc89..b89f15d3cbad5 100644 --- a/Detectors/TOF/workflowIO/src/TOFCalibWriterSpec.cxx +++ b/Detectors/TOF/workflowIO/src/TOFCalibWriterSpec.cxx @@ -41,11 +41,11 @@ DataProcessorSpec getTOFCalibWriterSpec(const char* outdef, bool toftpc) auto logger = [](CalibInfosType const& indata) { LOG(INFO) << "RECEIVED MATCHED SIZE " << indata.size(); }; - o2::header::DataDescription ddCalib{"CALIBDATA"}, ddCalib_tpc{"CALIBDATA_TPC"}; + o2::header::DataDescription ddCalib{"CALIBDATA"}; return MakeRootTreeWriterSpec("TOFCalibWriter", outdef, "calibTOF", - BranchDefinition{InputSpec{"input", o2::header::gDataOriginTOF, toftpc ? ddCalib_tpc : ddCalib, 0}, + BranchDefinition{InputSpec{"input", o2::header::gDataOriginTOF, ddCalib, 0}, "TOFCalibInfo", "calibinfo-branch-name", 1, diff --git a/Detectors/TOF/workflowIO/src/TOFMatchedReaderSpec.cxx b/Detectors/TOF/workflowIO/src/TOFMatchedReaderSpec.cxx index 06b76f470eb87..07426540392a9 100644 --- a/Detectors/TOF/workflowIO/src/TOFMatchedReaderSpec.cxx +++ b/Detectors/TOF/workflowIO/src/TOFMatchedReaderSpec.cxx @@ -104,7 +104,7 @@ DataProcessorSpec getTOFMatchedReaderSpec(bool useMC, bool tpcmatch, bool readTr outputs, AlgorithmSpec{adaptFromTask(useMC, tpcmatch, readTracks)}, Options{ - {"tof-matched-infile", VariantType::String, tpcmatch ? "o2match_toftpc.root" : "o2match_tof.root", {"Name of the input file"}}, + {"tof-matched-infile", VariantType::String, tpcmatch ? "o2match_tof_tpc.root" : "o2match_tof_itstpc.root", {"Name of the input file"}}, {"input-dir", VariantType::String, "none", {"Input directory"}}, {"treename", VariantType::String, "matchTOF", {"Name of top-level TTree"}}, }}; diff --git a/Detectors/TOF/workflowIO/src/TOFMatchedWriterSpec.cxx b/Detectors/TOF/workflowIO/src/TOFMatchedWriterSpec.cxx index a2dc22849588b..ca488913b32ae 100644 --- a/Detectors/TOF/workflowIO/src/TOFMatchedWriterSpec.cxx +++ b/Detectors/TOF/workflowIO/src/TOFMatchedWriterSpec.cxx @@ -48,7 +48,7 @@ DataProcessorSpec getTOFMatchedWriterSpec(bool useMC, const char* outdef, bool w LOG(INFO) << "TOF LABELS GOT " << labeltof.size() << " LABELS "; }; o2::header::DataDescription ddMatchInfo{"MATCHINFOS"}, ddMatchInfo_tpc{"MATCHINFOS_TPC"}, - ddMCMatchTOF{"MCMATCHTOF"}, ddMCMatchTOF_tpc{"MCMATCHTOF_TPC"}; + ddMCMatchTOF{"MCMATCHINFOS"}, ddMCMatchTOF_tpc{"MCMATCHINFOS_TPC"}; return MakeRootTreeWriterSpec(writeTOFTPC ? "TOFMatchedWriter_TPC" : "TOFMatchedWriter", outdef, diff --git a/macro/CMakeLists.txt b/macro/CMakeLists.txt index f97caed8db21f..97ffe710215e0 100644 --- a/macro/CMakeLists.txt +++ b/macro/CMakeLists.txt @@ -47,7 +47,6 @@ install(FILES CheckDigits_mft.C run_cmp2digit_tof.C compareTOFDigits.C compareTOFClusters.C - run_match_tof.C run_primary_vertexer_ITS.C run_rawdecoding_its.C run_rawdecoding_mft.C @@ -297,13 +296,6 @@ o2_add_test_root_macro(compareTOFClusters.C PUBLIC_LINK_LIBRARIES O2::DataFormatsTOF LABELS tof) -# FIXME: move to subsystem dir -o2_add_test_root_macro(run_match_tof.C - PUBLIC_LINK_LIBRARIES O2::Field O2::DataFormatsParameters - O2::DetectorsBase - O2::GlobalTracking - LABELS tof COMPILE_ONLY) - # FIXME: move to subsystem dir o2_add_test_root_macro(run_primary_vertexer_ITS.C PUBLIC_LINK_LIBRARIES O2::DataFormatsITSMFT diff --git a/macro/checkTOFMatching.C b/macro/checkTOFMatching.C index 90acd4ebf48e1..f5b1deffe6378 100644 --- a/macro/checkTOFMatching.C +++ b/macro/checkTOFMatching.C @@ -24,7 +24,7 @@ void checkTOFMatching(bool batchMode = true) // macro to check the matching TOF-ITSTPC tracks // getting TOF info - TFile* fmatchTOF = new TFile("o2match_tof.root"); + TFile* fmatchTOF = new TFile("o2match_tof_itstpc.root"); TTree* matchTOF = (TTree*)fmatchTOF->Get("matchTOF"); std::vector* TOFMatchInfo; TOFMatchInfo = new std::vector; diff --git a/macro/run_match_tof.C b/macro/run_match_tof.C deleted file mode 100644 index dcb7fe5f4eb4d..0000000000000 --- a/macro/run_match_tof.C +++ /dev/null @@ -1,88 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -#if !defined(__CLING__) || defined(__ROOTCLING__) -#define MS_GSL_V3 -#include -#include -#include -#include -#include -#include - -#include "Field/MagneticField.h" -#include "DataFormatsParameters/GRPObject.h" -#include "DetectorsBase/GeometryManager.h" -#include "DetectorsBase/Propagator.h" - -#include "GlobalTracking/MatchTOF.h" -#endif - -#define _ALLOW_DEBUG_TREES_ // to allow debug and control tree output - -void run_match_tof(std::string path = "./", std::string outputfile = "o2match_tof.root", - std::string outputfileCalib = "o2calib_tof.root", - std::string inputTracksTPCITS = "o2match_itstpc.root", - std::string inputTracksTPC = "tpctracks.root", - std::string inputClustersTOF = "tofclusters.root", - std::string inputGRP = "o2sim_grp.root") -{ - - o2::globaltracking::MatchTOF matching; - - if (path.back() != '/') { - path += '/'; - } - - //>>>---------- attach input data --------------->>> - TChain tracks("matchTPCITS"); - tracks.AddFile((path + inputTracksTPCITS).data()); - matching.setInputTreeTracks(&tracks); - - TChain tpcTracks("events"); - tpcTracks.AddFile((path + inputTracksTPC).data()); - matching.setInputTreeTPCTracks(&tpcTracks); - matching.setTPCTrackBranchName("TPCTracks"); - - TChain tofClusters("o2sim"); - tofClusters.AddFile((path + inputClustersTOF).data()); - matching.setInputTreeTOFClusters(&tofClusters); - - //<<<---------- attach input data ---------------<<< - - // create/attach output tree - TFile outFile((path + outputfile).data(), "recreate"); - TTree outTree("matchTOF", "Matched TOF-tracks"); - matching.setOutputTree(&outTree); - TFile outFileCalib((path + outputfileCalib).data(), "recreate"); - TTree outTreeCalib("calibTOF", "Calib TOF infos"); - matching.setOutputTreeCalib(&outTreeCalib); - -#ifdef _ALLOW_DEBUG_TREES_ - matching.setDebugTreeFileName(path + matching.getDebugTreeFileName()); - matching.setDebugFlag(o2::globaltracking::MatchTOF::MatchTreeAll); -#endif - - //-------- init geometry and field --------// - o2::base::GeometryManager::loadGeometry(path); - o2::base::Propagator::initFieldFromGRP(path + inputGRP); - - matching.init(); - - matching.run(); - - outFile.cd(); - outTree.Write(); - outFile.Close(); - outFileCalib.cd(); - outTreeCalib.Write(); - outFileCalib.Close(); -} diff --git a/prodtests/full-system-test/dpl-workflow.sh b/prodtests/full-system-test/dpl-workflow.sh index 2e45eb77f2206..3891165ea951d 100755 --- a/prodtests/full-system-test/dpl-workflow.sh +++ b/prodtests/full-system-test/dpl-workflow.sh @@ -36,7 +36,7 @@ GPU_OUTPUT=tracks,clusters GPU_CONFIG= GPU_CONFIG_KEY= TOF_INPUT=raw -TOF_OUTPUT=clusters,matching-info +TOF_OUTPUT=clusters ITS_CONFIG= ITS_CONFIG_KEY= TRD_CONFIG= @@ -128,7 +128,9 @@ WORKFLOW+="o2-trd-global-tracking $ARGS_ALL --disable-root-input --disable-root- # Workflows disabled in sync mode if [ $SYNCMODE == 0 ]; then - WORKFLOW+="o2-tof-matcher-tpc $ARGS_ALL --disable-root-input --disable-root-output $DISABLE_MC | " + WORKFLOW+="o2-tof-matcher-workflow $ARGS_ALL --disable-root-input --disable-root-output $DISABLE_MC --track-sources \"TPC,ITS-TPC\" | " + + WORKFLOW+="o2-tof-matcher-workflow $ARGS_ALL --disable-root-input --disable-root-output $DISABLE_MC | " WORKFLOW+="o2-mid-reco-workflow $ARGS_ALL --disable-root-output $DISABLE_MC | " WORKFLOW+="o2-mft-reco-workflow $ARGS_ALL --clusters-from-upstream $DISABLE_MC --disable-root-output | " WORKFLOW+="o2-primary-vertexing-workflow $ARGS_ALL $DISABLE_MC --disable-root-input --disable-root-output --validate-with-ft0 | " @@ -139,6 +141,8 @@ fi # Workflows disabled in async mode if [ $CTFINPUT == 0 ]; then + WORKFLOW+="o2-tof-matcher-workflow $ARGS_ALL --disable-root-input --disable-root-output $DISABLE_MC --track-sources \"ITS-TPC\" | " + WORKFLOW+="o2-phos-reco-workflow $ARGS_ALL --input-type raw --output-type cells --disable-root-input --disable-root-output $DISABLE_MC | " WORKFLOW+="o2-cpv-reco-workflow $ARGS_ALL --input-type raw --output-type clusters --disable-root-input --disable-root-output $DISABLE_MC | " WORKFLOW+="o2-emcal-reco-workflow $ARGS_ALL --input-type raw --output-type cells --disable-root-output $DISABLE_MC --pipeline EMCALRawToCellConverterSpec:$N_EMC | " diff --git a/prodtests/sim_challenge.sh b/prodtests/sim_challenge.sh index 68449e925e908..8c11b6876816d 100755 --- a/prodtests/sim_challenge.sh +++ b/prodtests/sim_challenge.sh @@ -156,25 +156,30 @@ if [ "$doreco" == "1" ]; then taskwrapper trdMatch.log o2-trd-global-tracking $gloOpt echo "Return status of itstpcMatch: $?" - echo "Running ITSTPC-TOF macthing flow" + echo "Running TOF reco flow to produce clusters" #needs results of TOF digitized data and results of o2-tpcits-match-workflow - taskwrapper tofMatch.log o2-tof-reco-workflow $gloOpt - echo "Return status of its-tpc-tof match: $?" + taskwrapper tofReco.log o2-tof-reco-workflow $gloOpt + echo "Return status of tof cluster reco : $?" - echo "Running TPC-TOF macthing flow" - #needs results of TOF clusters data from o2-tof-reco-workflow and results of o2-tpc-reco-workflow - taskwrapper tofMatchTPC.log o2-tof-matcher-tpc $gloOpt - echo "Return status of o2-tof-matcher-tpc: $?" + echo "Running Track-TOF macthing flow" + #needs results of TOF clusters data from o2-tof-reco-workflow and results of o2-tpc-reco-workflow and ITS-TPC matching + taskwrapper tofMatchTracks.log o2-tof-matcher-workflow $gloOpt + echo "Return status of o2-tof-matcher-workflow: $?" + + echo "Running TOF matching QA" + #need results of ITSTPC-TOF matching (+ TOF clusters and ITS-TPC tracks) + taskwrapper tofmatch_qa.log root -b -q -l $O2_ROOT/share/macro/checkTOFMatching.C + echo "Return status of TOF matching qa: $?" echo "Running primary vertex finding flow" #needs results of TPC-ITS matching and FIT workflows taskwrapper pvfinder.log o2-primary-vertexing-workflow $gloOpt echo "Return status of primary vertexing: $?" - echo "Running TOF matching QA" - #need results of ITSTPC-TOF matching (+ TOF clusters and ITS-TPC tracks) - taskwrapper tofmatch_qa.log root -b -q -l $O2_ROOT/share/macro/checkTOFMatching.C - echo "Return status of TOF matching qa: $?" + echo "Running secondary vertex finding flow" + #needs results of all trackers + P.Vertexer + taskwrapper svfinder.log o2-secondary-vertexing-workflow $gloOpt + echo "Return status of secondary vertexing: $?" echo "Running ZDC reconstruction" #need ZDC digits From 2e48ea001e820628d34e075486f33613bd4b0a91 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Sun, 27 Jun 2021 08:35:24 +0200 Subject: [PATCH 029/314] DPL: add api to easily load and act on a plugin (#6524) --- Framework/Core/CMakeLists.txt | 1 + Framework/Core/include/Framework/Plugins.h | 16 +++++++ Framework/Core/src/Plugins.cxx | 55 ++++++++++++++++++++++ Framework/Core/src/runDataProcessing.cxx | 2 + 4 files changed, 74 insertions(+) create mode 100644 Framework/Core/src/Plugins.cxx diff --git a/Framework/Core/CMakeLists.txt b/Framework/Core/CMakeLists.txt index d946f3c477998..bf0cf5669549a 100644 --- a/Framework/Core/CMakeLists.txt +++ b/Framework/Core/CMakeLists.txt @@ -83,6 +83,7 @@ o2_add_library(Framework src/O2ControlLabels.cxx src/OutputSpec.cxx src/PropertyTreeHelpers.cxx + src/Plugins.cxx src/RCombinedDS.cxx src/ReadoutAdapter.cxx src/ResourcesMonitoringHelper.cxx diff --git a/Framework/Core/include/Framework/Plugins.h b/Framework/Core/include/Framework/Plugins.h index a72de955194aa..448ee4626d204 100644 --- a/Framework/Core/include/Framework/Plugins.h +++ b/Framework/Core/include/Framework/Plugins.h @@ -13,6 +13,9 @@ #include "Framework/AlgorithmSpec.h" #include +#include +#include +#include namespace o2::framework { @@ -40,6 +43,14 @@ struct DPLPluginHandle { DPLPluginHandle* previous; }; +// Struct to hold live plugin information which the plugin itself cannot +// know and that is owned by the framework. +struct PluginInfo { + uv_lib_t* dso = nullptr; + std::string name; + DPLPluginHandle* instance = nullptr; +}; + #define DEFINE_DPL_PLUGIN(NAME, KIND) \ extern "C" { \ DPLPluginHandle* dpl_plugin_callback(DPLPluginHandle* previous) \ @@ -75,7 +86,12 @@ struct PluginManager { } return nullptr; } + /// Load a DSO called @a dso and insert its handle in @a infos + /// On successfull completion @a onSuccess is called passing + /// the DPLPluginHandle provided by the library. + static void load(std::vector& infos, const char* dso, std::function& onSuccess); }; + } // namespace o2::framework #endif // O2_FRAMEWORK_PLUGINS_H_ diff --git a/Framework/Core/src/Plugins.cxx b/Framework/Core/src/Plugins.cxx new file mode 100644 index 0000000000000..614f67add02cb --- /dev/null +++ b/Framework/Core/src/Plugins.cxx @@ -0,0 +1,55 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. +#include "Framework/Plugins.h" +#include "Framework/Logger.h" +#include +#include +#include + +namespace o2::framework +{ + +void PluginManager::load(std::vector& libs, const char* dso, std::function& onSuccess) +{ + auto plugin = std::find_if(libs.begin(), libs.end(), [dso](PluginInfo& info) { return info.name == dso; }); + if (plugin != libs.end()) { + return onSuccess(plugin->instance); + } + uv_lib_t* supportLib = (uv_lib_t*)malloc(sizeof(uv_lib_t)); + int result = 0; +#ifdef __APPLE__ + char const* extension = "dylib"; +#else + char const* extension = "so"; +#endif + std::string filename = fmt::format("lib{}.{}", dso, extension); + result = uv_dlopen(filename.c_str(), supportLib); + if (result == -1) { + LOG(FATAL) << uv_dlerror(supportLib); + return; + } + void* callback = nullptr; + DPLPluginHandle* (*dpl_plugin_callback)(DPLPluginHandle*); + + result = uv_dlsym(supportLib, "dpl_plugin_callback", (void**)&dpl_plugin_callback); + if (result == -1) { + LOG(FATAL) << uv_dlerror(supportLib); + return; + } + if (dpl_plugin_callback == nullptr) { + LOGP(FATAL, "Could not find the {} plugin.", dso); + return; + } + DPLPluginHandle* pluginInstance = dpl_plugin_callback(nullptr); + libs.push_back({supportLib, dso}); + onSuccess(pluginInstance); +} +} // namespace o2::framework diff --git a/Framework/Core/src/runDataProcessing.cxx b/Framework/Core/src/runDataProcessing.cxx index 08d6dc3b446d5..155d4317dcd6e 100644 --- a/Framework/Core/src/runDataProcessing.cxx +++ b/Framework/Core/src/runDataProcessing.cxx @@ -2143,6 +2143,8 @@ int doMain(int argc, char** argv, o2::framework::WorkflowSpec const& workflow, { O2_SIGNPOST_INIT(); std::vector currentArgs; + std::vector plugins; + for (size_t ai = 1; ai < argc; ++ai) { currentArgs.push_back(argv[ai]); } From da4e4ec11f97819c1c0efbe8bb7e9b362c4da08f Mon Sep 17 00:00:00 2001 From: Dmitri Peresunko Date: Thu, 24 Jun 2021 15:25:28 +0300 Subject: [PATCH 030/314] swap HG/LG challens --- Detectors/PHOS/base/include/PHOSBase/Mapping.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Detectors/PHOS/base/include/PHOSBase/Mapping.h b/Detectors/PHOS/base/include/PHOSBase/Mapping.h index 3a5ef5a944e40..7921eda82a149 100644 --- a/Detectors/PHOS/base/include/PHOSBase/Mapping.h +++ b/Detectors/PHOS/base/include/PHOSBase/Mapping.h @@ -47,8 +47,8 @@ class Mapping static constexpr short NTRUReadoutChannels = 3136; ///< Total number of TRU readout channels static constexpr short TRUFinalProductionChannel = 123; // The last channel of production bits, contains markesr to choose between 2x2 and 4x4 algorithm - enum CaloFlag { kHighGain, - kLowGain, + enum CaloFlag { kLowGain, + kHighGain, kTRU }; ~Mapping() = default; From 0c7ad960c654310f46aa641b9fea2e0d2934e2f7 Mon Sep 17 00:00:00 2001 From: Dmitri Peresunko Date: Fri, 25 Jun 2021 00:44:48 +0300 Subject: [PATCH 031/314] Extend number of FEE in HWerror to 28 --- .../PHOS/reconstruction/src/AltroDecoder.cxx | 39 +++++++++++-------- 1 file changed, 23 insertions(+), 16 deletions(-) diff --git a/Detectors/PHOS/reconstruction/src/AltroDecoder.cxx b/Detectors/PHOS/reconstruction/src/AltroDecoder.cxx index bb2c5b02e3f40..bbb2a6e6955de 100644 --- a/Detectors/PHOS/reconstruction/src/AltroDecoder.cxx +++ b/Detectors/PHOS/reconstruction/src/AltroDecoder.cxx @@ -65,9 +65,11 @@ void AltroDecoder::readChannels(const std::vector& buffer, CaloRawFitt if (currentword != 0) { LOG(ERROR) << "Channel header mark not found, header word " << currentword; short fec = header.mHardwareAddress >> 7 & 0xf; //try to extract FEE number from header - if (fec < 0 || fec > 13) { + short branch = header.mHardwareAddress >> 11 & 0x1; + if (fec > 14) { fec = kGeneralSRUErr; } + fec += kGeneralTRUErr * branch; mOutputHWErrors.emplace_back(mddl, fec, 5); //5: channel header error } continue; @@ -77,9 +79,11 @@ void AltroDecoder::readChannels(const std::vector& buffer, CaloRawFitt if (numberofwords > payloadend - currentpos) { LOG(ERROR) << "Channel payload " << numberofwords << " larger than left in total " << payloadend - currentpos; short fec = header.mHardwareAddress >> 7 & 0xf; //try to extract FEE number from header - if (fec < 0 || fec > 13) { + short branch = header.mHardwareAddress >> 11 & 0x1; + if (fec > 14) { fec = kGeneralSRUErr; } + fec += kGeneralTRUErr * branch; mOutputHWErrors.emplace_back(mddl, fec, 6); //6: channel payload error continue; } @@ -92,9 +96,11 @@ void AltroDecoder::readChannels(const std::vector& buffer, CaloRawFitt << ", Address=0x" << std::hex << header.mHardwareAddress << ", word=0x" << currentword << std::dec; currentpos--; short fec = header.mHardwareAddress >> 7 & 0xf; //try to extract FEE number from header - if (fec < 0 || fec > 13) { + short branch = header.mHardwareAddress >> 11 & 0x1; + if (fec > 14) { fec = kGeneralSRUErr; } + fec += kGeneralTRUErr * branch; mOutputHWErrors.emplace_back(mddl, fec, 6); //6: channel payload error break; } @@ -118,9 +124,11 @@ void AltroDecoder::readChannels(const std::vector& buffer, CaloRawFitt if (!hwToAbsAddress(header.mHardwareAddress, absId, caloFlag)) { // do not decode, skip to hext channel short fec = header.mHardwareAddress >> 7 & 0xf; //try to extract FEE number from header - if (fec < 0 || fec > 13) { + short branch = header.mHardwareAddress >> 11 & 0x1; + if (fec > 14) { fec = kGeneralSRUErr; } + fec += kGeneralTRUErr * branch; mOutputHWErrors.emplace_back(mddl, fec, 7); //7: wrong hw address continue; } @@ -138,9 +146,11 @@ void AltroDecoder::readChannels(const std::vector& buffer, CaloRawFitt //set output cell if (fitResult == CaloRawFitter::FitStatus::kNoTime) { //Time evaluation error occured: should we add this err to list? short fec = header.mHardwareAddress >> 7 & 0xf; //try to extract FEE number from header - if (fec < 0 || fec > 13) { + short branch = header.mHardwareAddress >> 11 & 0x1; + if (fec > 14) { fec = kGeneralSRUErr; } + fec += kGeneralTRUErr * branch; mOutputHWErrors.emplace_back(mddl, fec, 8); //8: time calculation failed } if (!rawFitter->isOverflow()) { //Overflow is will show wrong chi2 @@ -209,28 +219,25 @@ bool AltroDecoder::hwToAbsAddress(short hwAddr, short& absId, Mapping::CaloFlag& short branch = hwAddr >> 11 & 0x1; short e2 = 0; - if (branch < 0 || branch > 1) { - e2 = 1; + if (fec > 14) { + e2 = 2; + fec = kGeneralSRUErr; + mOutputHWErrors.emplace_back(mddl, fec + branch * kGeneralTRUErr, 2); } else { - if (fec < 0 || fec > 15) { - e2 = 2; - fec = kGeneralSRUErr; - } else { - if (fec != 0 && (chip < 0 || chip > 4 || chip == 1)) { //Do not check for TRU (fec=0) - e2 = 3; - } + if (fec != 0 && (chip < 0 || chip > 4 || chip == 1)) { //Do not check for TRU (fec=0) + e2 = 3; + mOutputHWErrors.emplace_back(mddl, fec + branch * kGeneralTRUErr, 3); } } if (e2) { - mOutputHWErrors.emplace_back(mddl, fec, e2); return false; } //correct hw address, try to convert Mapping::ErrorStatus s = Mapping::Instance()->hwToAbsId(mddl, hwAddr, absId, caloFlag); if (s != Mapping::ErrorStatus::kOK) { - mOutputHWErrors.emplace_back(mddl, kGeneralSRUErr, 4); //4: error in mapping + mOutputHWErrors.emplace_back(mddl, branch * kGeneralTRUErr + kGeneralSRUErr, 4); //4: error in mapping return false; } return true; From 193f7db7bacc433ae72ed20150093691c98c6f6b Mon Sep 17 00:00:00 2001 From: sevdokim Date: Thu, 24 Jun 2021 18:37:47 +0200 Subject: [PATCH 032/314] fix for cpv clusterer --- .../reconstruction/include/CPVReconstruction/Clusterer.h | 4 ++-- Detectors/CPV/reconstruction/src/Clusterer.cxx | 6 +++--- Detectors/CPV/workflow/src/ClusterizerSpec.cxx | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/Detectors/CPV/reconstruction/include/CPVReconstruction/Clusterer.h b/Detectors/CPV/reconstruction/include/CPVReconstruction/Clusterer.h index 87dfcba88f1cb..15f9dbc660cd6 100644 --- a/Detectors/CPV/reconstruction/include/CPVReconstruction/Clusterer.h +++ b/Detectors/CPV/reconstruction/include/CPVReconstruction/Clusterer.h @@ -34,13 +34,13 @@ class Clusterer void initialize(); void process(gsl::span digits, gsl::span dtr, - const o2::dataformats::MCTruthContainer& dmc, + const o2::dataformats::MCTruthContainer* dmc, std::vector* clusters, std::vector* trigRec, o2::dataformats::MCTruthContainer* cluMC); void makeClusters(gsl::span digits); void evalCluProperties(gsl::span digits, std::vector* clusters, - const o2::dataformats::MCTruthContainer& dmc, + const o2::dataformats::MCTruthContainer* dmc, o2::dataformats::MCTruthContainer* cluMC); float responseShape(float dx, float dz); // Parameterization of EM shower diff --git a/Detectors/CPV/reconstruction/src/Clusterer.cxx b/Detectors/CPV/reconstruction/src/Clusterer.cxx index 6355e2b25db97..d48583a6b3859 100644 --- a/Detectors/CPV/reconstruction/src/Clusterer.cxx +++ b/Detectors/CPV/reconstruction/src/Clusterer.cxx @@ -36,7 +36,7 @@ void Clusterer::initialize() //____________________________________________________________________________ void Clusterer::process(gsl::span digits, gsl::span dtr, - const o2::dataformats::MCTruthContainer& dmc, + const o2::dataformats::MCTruthContainer* dmc, std::vector* clusters, std::vector* trigRec, o2::dataformats::MCTruthContainer* cluMC) { @@ -314,7 +314,7 @@ void Clusterer::unfoldOneCluster(FullCluster& iniClu, char nMax, gsl::span //____________________________________________________________________________ void Clusterer::evalCluProperties(gsl::span digits, std::vector* clusters, - const o2::dataformats::MCTruthContainer& dmc, + const o2::dataformats::MCTruthContainer* dmc, o2::dataformats::MCTruthContainer* cluMC) { @@ -356,7 +356,7 @@ void Clusterer::evalCluProperties(gsl::span digits, std::vector spDigList = dmc.getLabels(i); + gsl::span spDigList = dmc->getLabels(i); gsl::span spCluList = cluMC->getLabels(labelIndex); //get updated list auto digL = spDigList.begin(); while (digL != spDigList.end()) { diff --git a/Detectors/CPV/workflow/src/ClusterizerSpec.cxx b/Detectors/CPV/workflow/src/ClusterizerSpec.cxx index 3f66a133fa02f..49de053e9fb99 100644 --- a/Detectors/CPV/workflow/src/ClusterizerSpec.cxx +++ b/Detectors/CPV/workflow/src/ClusterizerSpec.cxx @@ -44,7 +44,7 @@ void ClusterizerSpec::run(framework::ProcessingContext& ctx) truthcont = ctx.inputs().get*>("digitsmctr"); } - mClusterizer.process(digits, digitsTR, *truthcont, &mOutputClusters, &mOutputClusterTrigRecs, &mOutputTruthCont); // Find clusters on digits (pass by ref) + mClusterizer.process(digits, digitsTR, truthcont.get(), &mOutputClusters, &mOutputClusterTrigRecs, &mOutputTruthCont); // Find clusters on digits (pass by ref) ctx.outputs().snapshot(o2::framework::Output{"CPV", "CLUSTERS", 0, o2::framework::Lifetime::Timeframe}, mOutputClusters); ctx.outputs().snapshot(o2::framework::Output{"CPV", "CLUSTERTRIGRECS", 0, o2::framework::Lifetime::Timeframe}, mOutputClusterTrigRecs); From 2b6f406b2e48878af79ffacd44ce47a57c1d1585 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Mon, 28 Jun 2021 08:15:18 +0200 Subject: [PATCH 033/314] DPL: add code to enable multithreaded dispatch (#6517) Dies due to the service registry not being correctly initialised for multithreaded usage. --- Framework/Core/include/Framework/DataProcessingDevice.h | 2 ++ Framework/Core/src/DataProcessingDevice.cxx | 5 +++++ 2 files changed, 7 insertions(+) diff --git a/Framework/Core/include/Framework/DataProcessingDevice.h b/Framework/Core/include/Framework/DataProcessingDevice.h index 00869c1f584a6..cc58bb76e8877 100644 --- a/Framework/Core/include/Framework/DataProcessingDevice.h +++ b/Framework/Core/include/Framework/DataProcessingDevice.h @@ -97,6 +97,8 @@ struct TaskStreamInfo { TaskStreamRef id; /// The context of the DataProcessor being run by this task DataProcessorContext* context; + /// The libuv task handle + uv_work_t task; /// Wether or not this task is running bool running = false; }; diff --git a/Framework/Core/src/DataProcessingDevice.cxx b/Framework/Core/src/DataProcessingDevice.cxx index 5d884e90083a5..17291f8cfc44f 100644 --- a/Framework/Core/src/DataProcessingDevice.cxx +++ b/Framework/Core/src/DataProcessingDevice.cxx @@ -567,8 +567,13 @@ bool DataProcessingDevice::ConditionalRun() stream.id = streamRef; stream.running = true; stream.context = &mDataProcessorContexes.at(0); +#ifdef DPL_ENABLE_THREADING + stream.task.data = &handle; + uv_queue_work(mState.loop, &stream.task, run_callback, run_completion); +#else run_callback(&handle); run_completion(&handle, 0); +#endif } else { mWasActive = false; } From 183579a0cce88858f88f7fe07ccc2cdaec378de4 Mon Sep 17 00:00:00 2001 From: Chiara Zampolli Date: Mon, 28 Jun 2021 10:35:52 +0200 Subject: [PATCH 034/314] DCS config data format (#6446) * typedef for DCS configuration using std::vector * Change delimiter, improve print clang-format Fix trailing space * Update functions - do not use pointers * update copyright --- DataFormats/Detectors/CMakeLists.txt | 1 + DataFormats/Detectors/DCS/CMakeLists.txt | 12 +++ .../include/DataFormatsDCS/DCSConfigObject.h | 84 +++++++++++++++++++ 3 files changed, 97 insertions(+) create mode 100644 DataFormats/Detectors/DCS/CMakeLists.txt create mode 100644 DataFormats/Detectors/DCS/include/DataFormatsDCS/DCSConfigObject.h diff --git a/DataFormats/Detectors/CMakeLists.txt b/DataFormats/Detectors/CMakeLists.txt index eb70795467708..a93a1c8c11da0 100644 --- a/DataFormats/Detectors/CMakeLists.txt +++ b/DataFormats/Detectors/CMakeLists.txt @@ -25,6 +25,7 @@ add_subdirectory(PHOS) add_subdirectory(CPV) add_subdirectory(CTP) add_subdirectory(GlobalTracking) +add_subdirectory(DCS) if(ENABLE_UPGRADES) add_subdirectory(Upgrades) else() diff --git a/DataFormats/Detectors/DCS/CMakeLists.txt b/DataFormats/Detectors/DCS/CMakeLists.txt new file mode 100644 index 0000000000000..685d6cbafc8e6 --- /dev/null +++ b/DataFormats/Detectors/DCS/CMakeLists.txt @@ -0,0 +1,12 @@ +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. +# +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". +# +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. + +o2_add_header_only_library(DataFormatsDCS) diff --git a/DataFormats/Detectors/DCS/include/DataFormatsDCS/DCSConfigObject.h b/DataFormats/Detectors/DCS/include/DataFormatsDCS/DCSConfigObject.h new file mode 100644 index 0000000000000..0900c520f53cc --- /dev/null +++ b/DataFormats/Detectors/DCS/include/DataFormatsDCS/DCSConfigObject.h @@ -0,0 +1,84 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file DCSConfigObject.h +/// \bried Data format to store DCS configurations + +#include +#include +#include +#include +#include + +#include + +namespace o2 +{ +namespace dcs +{ + +typedef std::vector DCSconfigObject_t; + +template +inline void addConfigItem(DCSconfigObject_t& configVector, std::string key, const T value) +{ + std::string keyValue = key + ":" + std::to_string(value) + ","; + std::copy(keyValue.begin(), keyValue.end(), std::back_inserter(configVector)); +} + +// explicit specialization for std::string +template <> +inline void addConfigItem(DCSconfigObject_t& configVector, std::string key, const std::string value) +{ + std::string keyValue = key + ":" + value + ","; + std::copy(keyValue.begin(), keyValue.end(), std::back_inserter(configVector)); +} + +// explicit specialization for char +template <> +inline void addConfigItem(DCSconfigObject_t& configVector, std::string key, const char value) +{ + std::string keyValue = key + ":" + value + ","; + std::copy(keyValue.begin(), keyValue.end(), std::back_inserter(configVector)); +} + +// explicit specialization for char* +template <> +inline void addConfigItem(DCSconfigObject_t& configVector, std::string key, const char* value) +{ + std::string keyValue = key + ":" + value + ","; + std::copy(keyValue.begin(), keyValue.end(), std::back_inserter(configVector)); +} + +// explicit specialization for TString +template <> +inline void addConfigItem(DCSconfigObject_t& configVector, std::string key, const TString value) +{ + std::string keyValue = key + ":" + value.Data() + ","; + std::copy(keyValue.begin(), keyValue.end(), std::back_inserter(configVector)); +} + +inline void printDCSConfig(const DCSconfigObject_t& configVector) +{ + std::string sConfig(configVector.begin(), configVector.end()); + std::cout << "string " + << " --> " << sConfig << std::endl; + auto const re = std::regex{R"(,+)"}; + auto vecRe = std::vector(std::sregex_token_iterator{begin(sConfig), end(sConfig), re, -1}, + std::sregex_token_iterator{}); + for (size_t i = 0; i < vecRe.size(); ++i) { + // vecRe[i].erase(vecRe[i].end() - 1); + std::cout << i << " --> " << vecRe[i] << std::endl; + } +} + +} // namespace dcs +} // namespace o2 From 87f5b98c8f6fd61338f5b01d4350a8b612f1a15e Mon Sep 17 00:00:00 2001 From: David Rohr Date: Mon, 28 Jun 2021 12:06:26 +0200 Subject: [PATCH 035/314] Add missing includes --- Common/Utils/include/CommonUtils/StringUtils.h | 1 + Detectors/DCS/src/AliasExpander.cxx | 1 + Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.cxx | 1 + 3 files changed, 3 insertions(+) diff --git a/Common/Utils/include/CommonUtils/StringUtils.h b/Common/Utils/include/CommonUtils/StringUtils.h index d47d3c8ae1ae2..33d132cc90f23 100644 --- a/Common/Utils/include/CommonUtils/StringUtils.h +++ b/Common/Utils/include/CommonUtils/StringUtils.h @@ -19,6 +19,7 @@ #include #include +#include #include #include diff --git a/Detectors/DCS/src/AliasExpander.cxx b/Detectors/DCS/src/AliasExpander.cxx index 9f9ce30d9ca31..b197d2fb78d67 100644 --- a/Detectors/DCS/src/AliasExpander.cxx +++ b/Detectors/DCS/src/AliasExpander.cxx @@ -10,6 +10,7 @@ // or submit itself to any jurisdiction. #include "DetectorsDCS/AliasExpander.h" +#include #include #include diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.cxx b/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.cxx index 08864de85dafa..948e82ad303f6 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.cxx +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.cxx @@ -12,6 +12,7 @@ #include "DigitFileFormat.h" #include #include +#include #include #include From 700df554b1f981159d53d668df5589f24ed92669 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Jacazio?= Date: Mon, 28 Jun 2021 12:14:31 +0200 Subject: [PATCH 036/314] Enable all species by default (#6513) --- Analysis/Tasks/PWGPP/qaEfficiency.cxx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Analysis/Tasks/PWGPP/qaEfficiency.cxx b/Analysis/Tasks/PWGPP/qaEfficiency.cxx index 47eb3eaf70d9b..4d55dd0ca67fa 100644 --- a/Analysis/Tasks/PWGPP/qaEfficiency.cxx +++ b/Analysis/Tasks/PWGPP/qaEfficiency.cxx @@ -26,11 +26,11 @@ using namespace o2::framework; void customize(std::vector& workflowOptions) { std::vector options{ - {"eff-el", VariantType::Int, 0, {"Efficiency for the Electron PDG code"}}, - {"eff-mu", VariantType::Int, 0, {"Efficiency for the Muon PDG code"}}, + {"eff-el", VariantType::Int, 1, {"Efficiency for the Electron PDG code"}}, + {"eff-mu", VariantType::Int, 1, {"Efficiency for the Muon PDG code"}}, {"eff-pi", VariantType::Int, 1, {"Efficiency for the Pion PDG code"}}, - {"eff-ka", VariantType::Int, 0, {"Efficiency for the Kaon PDG code"}}, - {"eff-pr", VariantType::Int, 0, {"Efficiency for the Proton PDG code"}}}; + {"eff-ka", VariantType::Int, 1, {"Efficiency for the Kaon PDG code"}}, + {"eff-pr", VariantType::Int, 1, {"Efficiency for the Proton PDG code"}}}; std::swap(workflowOptions, options); } From 71843ad767c058c226c69f04d6ba1c004889a51a Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Mon, 28 Jun 2021 14:43:05 +0300 Subject: [PATCH 037/314] Ignore .devcontainer/ and .devcontainer.json (#6535) --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 11b09f52f187f..11992ff478adc 100644 --- a/.gitignore +++ b/.gitignore @@ -55,6 +55,7 @@ compile_commands.json # IDEs files .cproject +.devcontainer* .project .idea .settings From 088740a4b228082ca70e431b16cb96cf4720d0eb Mon Sep 17 00:00:00 2001 From: David Rohr Date: Mon, 28 Jun 2021 13:43:28 +0200 Subject: [PATCH 038/314] DPL: Add env option to disable catching exceptions (#6499) --- .../include/Framework/runDataProcessing.h | 142 ++++++++++-------- Framework/Core/src/DataProcessingDevice.cxx | 34 +++-- 2 files changed, 101 insertions(+), 75 deletions(-) diff --git a/Framework/Core/include/Framework/runDataProcessing.h b/Framework/Core/include/Framework/runDataProcessing.h index 7a8b9de277475..957a543826291 100644 --- a/Framework/Core/include/Framework/runDataProcessing.h +++ b/Framework/Core/include/Framework/runDataProcessing.h @@ -149,78 +149,94 @@ std::vector injectCustomizations() policies.insert(std::end(policies), std::begin(policies), std::end(policies)); } +int mainNoCatch(int argc, char** argv) +{ + using namespace o2::framework; + using namespace boost::program_options; + + std::vector workflowOptions; + UserCustomizationsHelper::userDefinedCustomization(workflowOptions, 0); + auto requiredWorkflowOptions = WorkflowCustomizationHelpers::requiredWorkflowOptions(); + workflowOptions.insert(std::end(workflowOptions), std::begin(requiredWorkflowOptions), std::end(requiredWorkflowOptions)); + + std::vector completionPolicies; + UserCustomizationsHelper::userDefinedCustomization(completionPolicies, 0); + auto defaultCompletionPolicies = CompletionPolicy::createDefaultPolicies(); + completionPolicies.insert(std::end(completionPolicies), std::begin(defaultCompletionPolicies), std::end(defaultCompletionPolicies)); + + std::vector dispatchPolicies; + UserCustomizationsHelper::userDefinedCustomization(dispatchPolicies, 0); + auto defaultDispatchPolicies = DispatchPolicy::createDefaultPolicies(); + dispatchPolicies.insert(std::end(dispatchPolicies), std::begin(defaultDispatchPolicies), std::end(defaultDispatchPolicies)); + + std::vector resourcePolicies; + UserCustomizationsHelper::userDefinedCustomization(resourcePolicies, 0); + auto defaultResourcePolicies = ResourcePolicy::createDefaultPolicies(); + resourcePolicies.insert(std::end(resourcePolicies), std::begin(defaultResourcePolicies), std::end(defaultResourcePolicies)); + + std::vector> retrievers; + std::unique_ptr retriever{new BoostOptionsRetriever(true, argc, argv)}; + retrievers.emplace_back(std::move(retriever)); + auto workflowOptionsStore = std::make_unique(workflowOptions, std::move(retrievers)); + workflowOptionsStore->preload(); + workflowOptionsStore->activate(); + ConfigParamRegistry workflowOptionsRegistry(std::move(workflowOptionsStore)); + ConfigContext configContext(workflowOptionsRegistry, argc, argv); + o2::framework::WorkflowSpec specs = defineDataProcessing(configContext); + overrideCloning(configContext, specs); + overridePipeline(configContext, specs); + for (auto& spec : specs) { + UserCustomizationsHelper::userDefinedCustomization(spec.requiredServices, 0); + } + std::vector channelPolicies; + UserCustomizationsHelper::userDefinedCustomization(channelPolicies, 0); + auto defaultChannelPolicies = ChannelConfigurationPolicy::createDefaultPolicies(configContext); + channelPolicies.insert(std::end(channelPolicies), std::begin(defaultChannelPolicies), std::end(defaultChannelPolicies)); + return doMain(argc, argv, specs, channelPolicies, completionPolicies, dispatchPolicies, resourcePolicies, workflowOptions, configContext); +} + int main(int argc, char** argv) { using namespace o2::framework; using namespace boost::program_options; + static bool noCatch = getenv("O2_NO_CATCHALL_EXCEPTIONS") && strcmp(getenv("O2_NO_CATCHALL_EXCEPTIONS"), "0"); int result = 1; - try { - // The 0 here is an int, therefore having the template matching in the - // SFINAE expression above fit better the version which invokes user code over - // the default one. - // The default policy is a catch all pub/sub setup to be consistent with the past. - std::vector workflowOptions; - UserCustomizationsHelper::userDefinedCustomization(workflowOptions, 0); - auto requiredWorkflowOptions = WorkflowCustomizationHelpers::requiredWorkflowOptions(); - workflowOptions.insert(std::end(workflowOptions), std::begin(requiredWorkflowOptions), std::end(requiredWorkflowOptions)); - - std::vector completionPolicies; - UserCustomizationsHelper::userDefinedCustomization(completionPolicies, 0); - auto defaultCompletionPolicies = CompletionPolicy::createDefaultPolicies(); - completionPolicies.insert(std::end(completionPolicies), std::begin(defaultCompletionPolicies), std::end(defaultCompletionPolicies)); - - std::vector dispatchPolicies; - UserCustomizationsHelper::userDefinedCustomization(dispatchPolicies, 0); - auto defaultDispatchPolicies = DispatchPolicy::createDefaultPolicies(); - dispatchPolicies.insert(std::end(dispatchPolicies), std::begin(defaultDispatchPolicies), std::end(defaultDispatchPolicies)); - - std::vector resourcePolicies; - UserCustomizationsHelper::userDefinedCustomization(resourcePolicies, 0); - auto defaultResourcePolicies = ResourcePolicy::createDefaultPolicies(); - resourcePolicies.insert(std::end(resourcePolicies), std::begin(defaultResourcePolicies), std::end(defaultResourcePolicies)); - - std::vector> retrievers; - std::unique_ptr retriever{new BoostOptionsRetriever(true, argc, argv)}; - retrievers.emplace_back(std::move(retriever)); - auto workflowOptionsStore = std::make_unique(workflowOptions, std::move(retrievers)); - workflowOptionsStore->preload(); - workflowOptionsStore->activate(); - ConfigParamRegistry workflowOptionsRegistry(std::move(workflowOptionsStore)); - ConfigContext configContext(workflowOptionsRegistry, argc, argv); - o2::framework::WorkflowSpec specs = defineDataProcessing(configContext); - overrideCloning(configContext, specs); - overridePipeline(configContext, specs); - for (auto& spec : specs) { - UserCustomizationsHelper::userDefinedCustomization(spec.requiredServices, 0); + if (noCatch) { + result = mainNoCatch(argc, argv); + } else { + try { + // The 0 here is an int, therefore having the template matching in the + // SFINAE expression above fit better the version which invokes user code over + // the default one. + // The default policy is a catch all pub/sub setup to be consistent with the past. + result = mainNoCatch(argc, argv); + } catch (boost::exception& e) { + doBoostException(e, argv[0]); + throw; + } catch (std::exception const& error) { + doUnknownException(error.what(), argv[0]); + throw; + } catch (o2::framework::RuntimeErrorRef& ref) { + doDPLException(ref, argv[0]); + throw; + } catch (...) { + doUnknownException("", argv[0]); + throw; } - std::vector channelPolicies; - UserCustomizationsHelper::userDefinedCustomization(channelPolicies, 0); - auto defaultChannelPolicies = ChannelConfigurationPolicy::createDefaultPolicies(configContext); - channelPolicies.insert(std::end(channelPolicies), std::begin(defaultChannelPolicies), std::end(defaultChannelPolicies)); - result = doMain(argc, argv, specs, channelPolicies, completionPolicies, dispatchPolicies, resourcePolicies, workflowOptions, configContext); - } catch (boost::exception& e) { - doBoostException(e, argv[0]); - } catch (std::exception const& error) { - doUnknownException(error.what(), argv[0]); - } catch (o2::framework::RuntimeErrorRef& ref) { - doDPLException(ref, argv[0]); - } catch (...) { - doUnknownException("", argv[0]); - } - char* idstring = nullptr; - for (int argi = 0; argi < argc; argi++) { - if (strcmp(argv[argi], "--id") == 0 && argi + 1 < argc) { - idstring = argv[argi + 1]; - break; + char* idstring = nullptr; + for (int argi = 0; argi < argc; argi++) { + if (strcmp(argv[argi], "--id") == 0 && argi + 1 < argc) { + idstring = argv[argi + 1]; + break; + } } + o2::framework::OnWorkflowTerminationHook onWorkflowTerminationHook; + UserCustomizationsHelper::userDefinedCustomization(onWorkflowTerminationHook, 0); + onWorkflowTerminationHook(idstring); + doDefaultWorkflowTerminationHook(); + return result; } - o2::framework::OnWorkflowTerminationHook onWorkflowTerminationHook; - UserCustomizationsHelper::userDefinedCustomization(onWorkflowTerminationHook, 0); - onWorkflowTerminationHook(idstring); - doDefaultWorkflowTerminationHook(); - return result; } - #endif diff --git a/Framework/Core/src/DataProcessingDevice.cxx b/Framework/Core/src/DataProcessingDevice.cxx index 17291f8cfc44f..d9939ab246c9b 100644 --- a/Framework/Core/src/DataProcessingDevice.cxx +++ b/Framework/Core/src/DataProcessingDevice.cxx @@ -1197,9 +1197,11 @@ bool DataProcessingDevice::tryDispatchComputation(DataProcessorContext& context, uint64_t tStart = uv_hrtime(); preUpdateStats(action, record, tStart); - try { - if (context.deviceContext->state->quitRequested == false) { + static bool noCatch = getenv("O2_NO_CATCHALL_EXCEPTIONS") && strcmp(getenv("O2_NO_CATCHALL_EXCEPTIONS"), "0"); + + auto runNoCatch = [&context, &processContext]() { + if (context.deviceContext->state->quitRequested == false) { if (*context.statefulProcess) { ZoneScopedN("statefull process"); (*context.statefulProcess)(processContext); @@ -1214,16 +1216,24 @@ bool DataProcessingDevice::tryDispatchComputation(DataProcessorContext& context, context.registry->postProcessingCallbacks(processContext); } } - } catch (std::exception& ex) { - ZoneScopedN("error handling"); - /// Convert a standatd exception to a RuntimeErrorRef - /// Notice how this will lose the backtrace information - /// and report the exception coming from here. - auto e = runtime_error(ex.what()); - (*context.errorHandling)(e, record); - } catch (o2::framework::RuntimeErrorRef e) { - ZoneScopedN("error handling"); - (*context.errorHandling)(e, record); + }; + + if (noCatch) { + runNoCatch(); + } else { + try { + runNoCatch(); + } catch (std::exception& ex) { + ZoneScopedN("error handling"); + /// Convert a standard exception to a RuntimeErrorRef + /// Notice how this will lose the backtrace information + /// and report the exception coming from here. + auto e = runtime_error(ex.what()); + (*context.errorHandling)(e, record); + } catch (o2::framework::RuntimeErrorRef e) { + ZoneScopedN("error handling"); + (*context.errorHandling)(e, record); + } } postUpdateStats(action, record, tStart); From 4fbabaf5e42af813c3752a23506942a2f03167c4 Mon Sep 17 00:00:00 2001 From: jgrosseo Date: Mon, 28 Jun 2021 16:55:55 +0200 Subject: [PATCH 039/314] correct names for mcparticle mother and daughter indices (#6523) --- Framework/Core/include/Framework/ASoA.h | 45 ++++++++++--------- .../include/Framework/AnalysisDataModel.h | 33 ++++++++------ 2 files changed, 42 insertions(+), 36 deletions(-) diff --git a/Framework/Core/include/Framework/ASoA.h b/Framework/Core/include/Framework/ASoA.h index b98a7fb495f77..f7be0d723396e 100644 --- a/Framework/Core/include/Framework/ASoA.h +++ b/Framework/Core/include/Framework/ASoA.h @@ -1259,28 +1259,29 @@ constexpr auto is_binding_compatible_v() using metadata = std::void_t; \ } -#define DECLARE_SOA_COLUMN_FULL(_Name_, _Getter_, _Type_, _Label_) \ - struct _Name_ : o2::soa::Column<_Type_, _Name_> { \ - static constexpr const char* mLabel = _Label_; \ - static_assert(!((*(mLabel + 1) == 'I' && *(mLabel + 2) == 'n' && *(mLabel + 3) == 'd' && *(mLabel + 4) == 'e' && *(mLabel + 5) == 'x')), "Index is not a valid column name"); \ - using base = o2::soa::Column<_Type_, _Name_>; \ - using type = _Type_; \ - using column_t = _Name_; \ - _Name_(arrow::ChunkedArray const* column) \ - : o2::soa::Column<_Type_, _Name_>(o2::soa::ColumnIterator(column)) \ - { \ - } \ - \ - _Name_() = default; \ - _Name_(_Name_ const& other) = default; \ - _Name_& operator=(_Name_ const& other) = default; \ - \ - decltype(auto) _Getter_() const \ - { \ - return *mColumnIterator; \ - } \ - }; \ - static const o2::framework::expressions::BindingNode _Getter_ { _Label_, typeid(_Name_).hash_code(), \ +// TODO HACK && *(mLabel + 6) != 'M' && *(mLabel + 7) != 'c' four lines below is a hack until we have self-indexing columns and then should be removed. +#define DECLARE_SOA_COLUMN_FULL(_Name_, _Getter_, _Type_, _Label_) \ + struct _Name_ : o2::soa::Column<_Type_, _Name_> { \ + static constexpr const char* mLabel = _Label_; \ + static_assert(!((*(mLabel + 1) == 'I' && *(mLabel + 2) == 'n' && *(mLabel + 3) == 'd' && *(mLabel + 4) == 'e' && *(mLabel + 5) == 'x' && *(mLabel + 6) != 'M' && *(mLabel + 7) != 'c')), "Index is not a valid column name"); \ + using base = o2::soa::Column<_Type_, _Name_>; \ + using type = _Type_; \ + using column_t = _Name_; \ + _Name_(arrow::ChunkedArray const* column) \ + : o2::soa::Column<_Type_, _Name_>(o2::soa::ColumnIterator(column)) \ + { \ + } \ + \ + _Name_() = default; \ + _Name_(_Name_ const& other) = default; \ + _Name_& operator=(_Name_ const& other) = default; \ + \ + decltype(auto) _Getter_() const \ + { \ + return *mColumnIterator; \ + } \ + }; \ + static const o2::framework::expressions::BindingNode _Getter_ { _Label_, typeid(_Name_).hash_code(), \ o2::framework::expressions::selectArrowType<_Type_>() } #define DECLARE_SOA_COLUMN(_Name_, _Getter_, _Type_) \ diff --git a/Framework/Core/include/Framework/AnalysisDataModel.h b/Framework/Core/include/Framework/AnalysisDataModel.h index 61e682e90544c..fb9f2c7f4c7d9 100644 --- a/Framework/Core/include/Framework/AnalysisDataModel.h +++ b/Framework/Core/include/Framework/AnalysisDataModel.h @@ -767,20 +767,25 @@ DECLARE_SOA_INDEX_COLUMN(McCollision, mcCollision); //! MC collision of this par DECLARE_SOA_COLUMN(PdgCode, pdgCode, int); //! PDG code DECLARE_SOA_COLUMN(StatusCode, statusCode, int); //! Status code directly from the generator DECLARE_SOA_COLUMN(Flags, flags, uint8_t); //! ALICE specific flags. Do not use directly. Use the dynamic columns, e.g. producedByGenerator() -DECLARE_SOA_COLUMN(Mother0, mother0, int); //! Track index of the first mother -DECLARE_SOA_COLUMN(Mother1, mother1, int); //! Track index of the second mother -DECLARE_SOA_COLUMN(Daughter0, daughter0, int); //! Track index of the first daugther -DECLARE_SOA_COLUMN(Daughter1, daughter1, int); //! Track index of the second daugther -DECLARE_SOA_COLUMN(Weight, weight, float); //! MC weight -DECLARE_SOA_COLUMN(Px, px, float); //! Momentum in x in GeV/c -DECLARE_SOA_COLUMN(Py, py, float); //! Momentum in y in GeV/c -DECLARE_SOA_COLUMN(Pz, pz, float); //! Momentum in z in GeV/c -DECLARE_SOA_COLUMN(E, e, float); //! Energy -DECLARE_SOA_COLUMN(Vx, vx, float); //! X production vertex in cm -DECLARE_SOA_COLUMN(Vy, vy, float); //! Y production vertex in cm -DECLARE_SOA_COLUMN(Vz, vz, float); //! Z production vertex in cm -DECLARE_SOA_COLUMN(Vt, vt, float); //! Production time -DECLARE_SOA_DYNAMIC_COLUMN(Phi, phi, //! Phi +// TODO declaration to be swapped when self-indexing columns are available +//DECLARE_SOA_INDEX_COLUMN_FULL(Mother0, mother0, int, McParticle, "_Mother0"); //! Track index of the first mother +DECLARE_SOA_COLUMN_FULL(Mother0, mother0, int, "fIndexMcParticles_Mother0"); //! Track index of the first mother +//DECLARE_SOA_INDEX_COLUMN_FULL(Mother1, mother1, int, McParticle, "_Mother1"); //! Track index of the second mother +DECLARE_SOA_COLUMN_FULL(Mother1, mother1, int, "fIndexMcParticles_Mother1"); //! Track index of the first mother +//DECLARE_SOA_INDEX_COLUMN_FULL(Daughter0, daughter0, int, McParticle, "_Daughter0"); //! Track index of the first daugther +DECLARE_SOA_COLUMN_FULL(Daughter0, daughter0, int, "fIndexMcParticles_Daughter0"); //! Track index of the first daugther +//DECLARE_SOA_INDEX_COLUMN_FULL(Daughter1, daughter1, int, McParticle, "_Daughter1"); //! Track index of the first daugther +DECLARE_SOA_COLUMN_FULL(Daughter1, daughter1, int, "fIndexMcParticles_Daughter1"); //! Track index of the first daugther +DECLARE_SOA_COLUMN(Weight, weight, float); //! MC weight +DECLARE_SOA_COLUMN(Px, px, float); //! Momentum in x in GeV/c +DECLARE_SOA_COLUMN(Py, py, float); //! Momentum in y in GeV/c +DECLARE_SOA_COLUMN(Pz, pz, float); //! Momentum in z in GeV/c +DECLARE_SOA_COLUMN(E, e, float); //! Energy +DECLARE_SOA_COLUMN(Vx, vx, float); //! X production vertex in cm +DECLARE_SOA_COLUMN(Vy, vy, float); //! Y production vertex in cm +DECLARE_SOA_COLUMN(Vz, vz, float); //! Z production vertex in cm +DECLARE_SOA_COLUMN(Vt, vt, float); //! Production time +DECLARE_SOA_DYNAMIC_COLUMN(Phi, phi, //! Phi [](float px, float py) -> float { return static_cast(M_PI) + std::atan2(-py, -px); }); DECLARE_SOA_DYNAMIC_COLUMN(Eta, eta, //! Pseudorapidity [](float px, float py, float pz) -> float { return 0.5f * std::log((std::sqrt(px * px + py * py + pz * pz) + pz) / (std::sqrt(px * px + py * py + pz * pz) - pz)); }); From ef58fd3d58cdf228e4eea3413d9b5a5920b4f9c4 Mon Sep 17 00:00:00 2001 From: David Rohr Date: Mon, 28 Jun 2021 21:29:49 +0200 Subject: [PATCH 040/314] Workarounds for fmt 8.0.0 (#6538) --- Analysis/Tasks/PWGCF/correlations.cxx | 2 +- Analysis/Tutorials/src/configurableObjects.cxx | 5 ++++- Analysis/Tutorials/src/eventMixing.cxx | 4 ++-- Analysis/Tutorials/src/filters.cxx | 4 ++-- Detectors/MUON/MCH/Raw/Decoder/src/PageDecoder.cxx | 2 +- 5 files changed, 10 insertions(+), 7 deletions(-) diff --git a/Analysis/Tasks/PWGCF/correlations.cxx b/Analysis/Tasks/PWGCF/correlations.cxx index fef559b423f3a..7c49158ccf42b 100644 --- a/Analysis/Tasks/PWGCF/correlations.cxx +++ b/Analysis/Tasks/PWGCF/correlations.cxx @@ -271,7 +271,7 @@ struct CorrelationTask { LOGF(info, "Tracks for collision: %d | Vertex: %.1f | INT7: %d | V0M: %.1f", tracks.size(), collision.posZ(), collision.sel7(), collision.centV0M()); if (std::abs(collision.posZ()) > cfgCutVertex) { - LOGF(warning, "Unexpected: Vertex %f outside of cut %f", collision.posZ(), cfgCutVertex); + LOGF(warning, "Unexpected: Vertex %f outside of cut %f", collision.posZ(), (float)cfgCutVertex); } int bSign = 1; // TODO magnetic field from CCDB diff --git a/Analysis/Tutorials/src/configurableObjects.cxx b/Analysis/Tutorials/src/configurableObjects.cxx index 025e4ccf77dbb..3511780117a41 100644 --- a/Analysis/Tutorials/src/configurableObjects.cxx +++ b/Analysis/Tutorials/src/configurableObjects.cxx @@ -78,7 +78,10 @@ struct ConfigurableObjectDemo { void process(aod::Collision const&, aod::Tracks const& tracks) { - LOGF(INFO, "Cut1: %.3f; Cut2: %.3f", cut, mutable_cut); + std::stringstream tmpcut, tmpmutable_cut; + tmpcut << cut; + tmpmutable_cut << mutable_cut; + LOGF(INFO, "Cut1: %s; Cut2: %s", tmpcut.str(), tmpmutable_cut.str()); for (auto const& track : tracks) { if (track.globalIndex() % 500 == 0) { diff --git a/Analysis/Tutorials/src/eventMixing.cxx b/Analysis/Tutorials/src/eventMixing.cxx index a2d665ac5b6d9..2d1b6eee13368 100644 --- a/Analysis/Tutorials/src/eventMixing.cxx +++ b/Analysis/Tutorials/src/eventMixing.cxx @@ -157,12 +157,12 @@ struct MixedEventsPartitionedTracks { for (auto& [t1, t2] : combinations(CombinationsFullIndexPolicy(leftPhi1, leftPhi2))) { if (t1.phiraw() >= (float)philow || t2.phiraw() >= (float)philow) { - LOGF(info, "WRONG Mixed event left tracks pair: (%d, %d) from events (%d, %d), phi: (%.3f. %.3f) < %.3f", t1.index(), t2.index(), c1.index(), c2.index(), t1.phiraw(), t2.phiraw(), philow); + LOGF(info, "WRONG Mixed event left tracks pair: (%d, %d) from events (%d, %d), phi: (%.3f. %.3f) < %.3f", t1.index(), t2.index(), c1.index(), c2.index(), t1.phiraw(), t2.phiraw(), (float)philow); } } for (auto& [t1, t2] : combinations(CombinationsFullIndexPolicy(rightPhi1, rightPhi2))) { if (t1.phiraw() < (float)phiup || t2.phiraw() < (float)phiup) { - LOGF(info, "WRONG Mixed event right tracks pair: (%d, %d) from events (%d, %d), phi: (%.3f. %.3f) >= %.3f", t1.index(), t2.index(), c1.index(), c2.index(), t1.phiraw(), t2.phiraw(), phiup); + LOGF(info, "WRONG Mixed event right tracks pair: (%d, %d) from events (%d, %d), phi: (%.3f. %.3f) >= %.3f", t1.index(), t2.index(), c1.index(), c2.index(), t1.phiraw(), t2.phiraw(), (float)phiup); } } } diff --git a/Analysis/Tutorials/src/filters.cxx b/Analysis/Tutorials/src/filters.cxx index e50ee78c2ea1d..4cda08303f76d 100644 --- a/Analysis/Tutorials/src/filters.cxx +++ b/Analysis/Tutorials/src/filters.cxx @@ -83,10 +83,10 @@ struct SpawnExtendedTables { void process(soa::Filtered::iterator const& collision, soa::Filtered> const& tracks) { LOGF(INFO, "Collision: %d [N = %d out of %d], -%.1f < %.3f < %.1f", - collision.globalIndex(), tracks.size(), tracks.tableSize(), vtxZ, collision.posZ(), vtxZ); + collision.globalIndex(), tracks.size(), tracks.tableSize(), (float)vtxZ, collision.posZ(), (float)vtxZ); for (auto& track : tracks) { LOGF(INFO, "id = %d; eta: %.3f < %.3f < %.3f; phi: %.3f < %.3f < %.3f; pt: %.3f < %.3f < %.3f", - track.collisionId(), etalow, track.eta(), etaup, philow, track.nphi(), phiup, ptlow, track.pt(), ptup); + track.collisionId(), (float)etalow, track.eta(), (float)etaup, philow, track.nphi(), phiup, (float)ptlow, track.pt(), (float)ptup); } } }; diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/PageDecoder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/PageDecoder.cxx index c6e0da5ce166d..d5a47ab70f6ec 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/PageDecoder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/PageDecoder.cxx @@ -50,7 +50,7 @@ struct PayloadDecoderImpl { { auto solarId = fee2solar(feeLinkId); if (!solarId.has_value()) { - throw std::logic_error(fmt::format("{} could not get solarId from feelinkid={}\n", __PRETTY_FUNCTION__, feeLinkId)); + throw std::logic_error(fmt::format("{} could not get solarId from feelinkid={}\n", __PRETTY_FUNCTION__, asString(feeLinkId))); } return std::move(BareGBTDecoder(solarId.value(), decodedDataHandlers)); } From 7ad2447bb467d97d147c4ece87d15ba4d2d4474a Mon Sep 17 00:00:00 2001 From: Laurent Aphecetche Date: Tue, 29 Jun 2021 10:04:11 +0200 Subject: [PATCH 041/314] FST: change for macOS (#6492) --- prodtests/full-system-test/dpl-workflow.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/prodtests/full-system-test/dpl-workflow.sh b/prodtests/full-system-test/dpl-workflow.sh index 3891165ea951d..70dd9ebe78bcd 100755 --- a/prodtests/full-system-test/dpl-workflow.sh +++ b/prodtests/full-system-test/dpl-workflow.sh @@ -4,7 +4,11 @@ # --configKeyValues "NameConf.mDirGRP=;NameConf.mDirGeom=;NameConf.mDirMatLUT=;" # All workflows currently running in the FST parce the configKeyValues option, so the NameConf.mDirXXX keys can be added via global env.var. -MYDIR="$(dirname $(readlink -f $0))" +# Get this script's directory : use zsh first (e.g. on Mac) and fallback +# on `readlink -f` if zsh is not there +command -v zsh > /dev/null 2>&1 && MYDIR=$(dirname $(zsh -c 'echo ${0:A}' "$0")) +test -z ${MYDIR+x} && MYDIR="$(dirname $(readlink -f $0))" + source $MYDIR/setenv.sh if [ "0$O2_ROOT" == "0" ]; then From 7859ec8f5e9f425ec1a5524f14a17e84be62b35f Mon Sep 17 00:00:00 2001 From: Laurent Aphecetche Date: Tue, 29 Jun 2021 10:14:01 +0200 Subject: [PATCH 042/314] MCH: remove usage of to-be-banned #pragma once (#6491) --- Detectors/MUON/MCH/DevIO/Digits/DigitD0.h | 5 ++++- Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.h | 4 +++- Detectors/MUON/MCH/DevIO/Digits/DigitIO.h | 5 ++++- Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.h | 6 ++++-- Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.h | 5 ++++- Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.h | 4 +++- Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.h | 4 +++- Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.h | 4 +++- Detectors/MUON/MCH/DevIO/Digits/DigitReader.h | 11 +++++++---- Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.h | 5 ++++- Detectors/MUON/MCH/DevIO/Digits/DigitWriter.h | 11 +++++++---- Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.h | 4 +++- Detectors/MUON/MCH/DevIO/Digits/IO.h | 5 ++++- Detectors/MUON/MCH/DevIO/Digits/IOStruct.h | 5 ++++- Detectors/MUON/MCH/DevIO/Digits/ProgOptions.h | 7 +++++-- Detectors/MUON/MCH/DevIO/Digits/TestFileV0.h | 6 +++++- 16 files changed, 67 insertions(+), 24 deletions(-) diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitD0.h b/Detectors/MUON/MCH/DevIO/Digits/DigitD0.h index 46e9902b18c59..8083ab3608b19 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitD0.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitD0.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_DIGIT_D0_H +#define O2_MCH_DEVIO_DIGITS_DIGIT_D0_H #include #include @@ -31,3 +32,5 @@ struct DigitD0 { }; } // namespace o2::mch::io::impl + +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.h b/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.h index a1a2cd67118ef..d855b2dcab0d0 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitFileFormat.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_DIGIT_FILE_FORMAT_H +#define O2_MCH_DEVIO_DIGITS_DIGIT_FILE_FORMAT_H #include #include @@ -49,3 +50,4 @@ DigitFileFormat readDigitFileFormat(std::istream& in); bool isValid(DigitFileFormat dff); } // namespace o2::mch::io +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIO.h b/Detectors/MUON/MCH/DevIO/Digits/DigitIO.h index 2aa6861e6e417..64e39b673cb19 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIO.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIO.h @@ -9,7 +9,10 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_DIGIT_IO_H +#define O2_MCH_DEVIO_DIGITS_DIGIT_IO_H #include "DigitReader.h" #include "DigitWriter.h" + +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.h b/Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.h index f3b9d7e4f3b33..3967995132617 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOBaseTask.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_DIGIT_IO_BASE_TASK_H +#define O2_MCH_DEVIO_DIGITS_DIGIT_IO_BASE_TASK_H #include "Framework/ConfigParamSpec.h" #include @@ -31,7 +32,7 @@ class ROFRecord; namespace o2::mch::io { -/** +/** * DigitIOBaseTask implements the commonalities between reader and writer * tasks, like the handling of the common options. */ @@ -89,3 +90,4 @@ class DigitIOBaseTask std::vector getCommonOptions(); } // namespace o2::mch::io +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.h b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.h index f6dc786d8f28d..2998c423bbb38 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV0.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_DIGIT_IO_H +#define O2_MCH_DEVIO_DIGITS_DIGIT_IO_H #include "DigitReaderImpl.h" #include "DigitWriterImpl.h" @@ -57,3 +58,5 @@ struct DigitWriterV0 : public DigitWriterImpl { }; } // namespace o2::mch::io::impl + +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.h b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.h index 95fa3bcb1d968..a5cab602fee4a 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV1.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_DIGIT_IO_V1_H +#define O2_MCH_DEVIO_DIGITS_DIGIT_IO_V1_H #include "DigitReaderImpl.h" #include @@ -41,3 +42,4 @@ struct DigitWriterV1 : public DigitWriterImpl { }; } // namespace o2::mch::io::impl +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.h b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.h index f45dcb33335fb..8794750913e80 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV2.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_DIGIT_IO_V2_H +#define O2_MCH_DEVIO_DIGITS_DIGIT_IO_V2_H #include "DigitReaderImpl.h" #include "DigitWriterImpl.h" @@ -57,3 +58,4 @@ struct DigitWriterV2 : public DigitWriterImpl { }; } // namespace o2::mch::io::impl +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.h b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.h index c1e908f91ece7..344544ec6326e 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitIOV3.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_DIGIT_IO_V3_H +#define O2_MCH_DEVIO_DIGITS_DIGIT_IO_V3_H #include "DigitReaderImpl.h" #include @@ -41,3 +42,4 @@ struct DigitWriterV3 : public DigitWriterImpl { }; } // namespace o2::mch::io::impl +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitReader.h b/Detectors/MUON/MCH/DevIO/Digits/DigitReader.h index 4ed1da87048ab..9a90648b399e9 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitReader.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitReader.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_DIGIT_READER_H +#define O2_MCH_DEVIO_DIGITS_DIGIT_READER_H #include #include "DigitFileFormat.h" @@ -50,17 +51,17 @@ class DigitReader std::vector& rofs); /** Count the number of timeframes in the input stream. - * WARNING : depending on the size of the input this might be a + * WARNING : depending on the size of the input this might be a * costly operation */ size_t nofTimeFrames() const; /** Count the number of ROFRecords in the input stream - * WARNING : depending on the size of the input this might be a + * WARNING : depending on the size of the input this might be a * costly operation */ size_t nofROFs() const; /** Count the number of digits in the input stream - * WARNING : depending on the size of the input this might be a + * WARNING : depending on the size of the input this might be a * costly operation */ size_t nofDigits() const; @@ -81,3 +82,5 @@ class DigitReader }; } // namespace o2::mch::io + +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.h b/Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.h index a18c0c6c9ed3c..d1a13f4201494 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitReaderImpl.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_DIGIT_READER_IMPL_H +#define O2_MCH_DEVIO_DIGITS_DIGIT_READER_IMPL_H #include #include "DigitFileFormat.h" @@ -39,3 +40,5 @@ struct DigitReaderImpl { std::unique_ptr createDigitReaderImpl(int version); } // namespace o2::mch::io::impl + +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitWriter.h b/Detectors/MUON/MCH/DevIO/Digits/DigitWriter.h index cc7a16e13c91a..5153098240645 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitWriter.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitWriter.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_DIGIT_WRITER_H +#define O2_MCH_DEVIO_DIGITS_DIGIT_WRITER_H #include #include @@ -32,14 +33,14 @@ class DigitWriter { public: /** Create a text digit writer - * @param os output stream to write to + * @param os output stream to write to */ DigitWriter(std::ostream& os); /** Create a binary digit writer - * @param os output stream to write to + * @param os output stream to write to * @param dff the digit file format to be used - * @param maxSize if not zero indicate that writing should stop past + * @param maxSize if not zero indicate that writing should stop past * this size, expressed in KB. */ DigitWriter(std::ostream& os, DigitFileFormat format, @@ -65,3 +66,5 @@ class DigitWriter }; } // namespace io } // namespace o2::mch + +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.h b/Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.h index 1bdaeae0de348..171dcb8caead7 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.h +++ b/Detectors/MUON/MCH/DevIO/Digits/DigitWriterImpl.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_DIGIT_WRITER_IMPL_H +#define O2_MCH_DEVIO_DIGITS_DIGIT_WRITER_IMPL_H #include #include @@ -39,3 +40,4 @@ struct DigitWriterImpl { std::unique_ptr createDigitWriterImpl(int version); } // namespace o2::mch::io::impl +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/IO.h b/Detectors/MUON/MCH/DevIO/Digits/IO.h index b19cb4bf6039b..ff34a6922af8b 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/IO.h +++ b/Detectors/MUON/MCH/DevIO/Digits/IO.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_IO_H +#define O2_MCH_DEVIO_DIGITS_IO_H #include #include @@ -21,3 +22,5 @@ void writeNofItems(std::ostream& out, uint32_t nofItems); int advance(std::istream& in, size_t itemByteSize, const char* itemName); } // namespace o2::mch::io::impl + +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/IOStruct.h b/Detectors/MUON/MCH/DevIO/Digits/IOStruct.h index a6f6c9cbf24fd..40ae6ccfabf60 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/IOStruct.h +++ b/Detectors/MUON/MCH/DevIO/Digits/IOStruct.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_IO_STRUCT_H +#define O2_MCH_DEVIO_DIGITS_IO_STRUCT_H #include #include @@ -51,3 +52,5 @@ bool readBinaryStruct(std::istream& in, std::vector& items, const char* itemN } } // namespace o2::mch::io::impl + +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/ProgOptions.h b/Detectors/MUON/MCH/DevIO/Digits/ProgOptions.h index 45e2831056b0c..1c55c8dc67730 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/ProgOptions.h +++ b/Detectors/MUON/MCH/DevIO/Digits/ProgOptions.h @@ -9,9 +9,10 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_PROG_OPTIONS_H +#define O2_MCH_DEVIO_DIGITS_PROG_OPTIONS_H -/* Command line option names that are used by at least two +/* Command line option names that are used by at least two * executables (workflow or not). */ @@ -26,3 +27,5 @@ constexpr const char* OPTHELP_PRINT_DIGITS = "print digits"; constexpr const char* OPTNAME_PRINT_TFS = "print-tfs"; constexpr const char* OPTHELP_PRINT_TFS = "print number of digits and rofs per tf"; + +#endif diff --git a/Detectors/MUON/MCH/DevIO/Digits/TestFileV0.h b/Detectors/MUON/MCH/DevIO/Digits/TestFileV0.h index 0afaa5c9d159b..b39b9bc2a8837 100644 --- a/Detectors/MUON/MCH/DevIO/Digits/TestFileV0.h +++ b/Detectors/MUON/MCH/DevIO/Digits/TestFileV0.h @@ -9,7 +9,11 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_MCH_DEVIO_DIGITS_TEST_FILE_V0_H +#define O2_MCH_DEVIO_DIGITS_TEST_FILE_V0_H + #include extern std::array v0_buffer; + +#endif From d3c828791c3c290b2555204d7ec9cc34e9fea538 Mon Sep 17 00:00:00 2001 From: Peter Hristov Date: Tue, 29 Jun 2021 11:28:50 +0200 Subject: [PATCH 043/314] Fixes for M1 (#6542) * Resolve conflicts with PR #6492 * Fixes for the space checker Co-authored-by: hristov --- Utilities/Tools/jobutils.sh | 10 +++++++--- prodtests/full_system_test.sh | 2 +- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/Utilities/Tools/jobutils.sh b/Utilities/Tools/jobutils.sh index 60ea4386ae4bd..79f81fef0073b 100644 --- a/Utilities/Tools/jobutils.sh +++ b/Utilities/Tools/jobutils.sh @@ -187,12 +187,12 @@ taskwrapper() { grepcommand="grep -a -H ${pattern} $logfile ${JOBUTILS_JOB_SUPERVISEDFILES} >> encountered_exceptions_list 2>/dev/null" eval ${grepcommand} - + grepcommand="grep -a -h --count ${pattern} $logfile ${JOBUTILS_JOB_SUPERVISEDFILES} 2>/dev/null" # using eval here since otherwise the pattern is translated to a # a weirdly quoted stringlist RC=$(eval ${grepcommand}) - + # if we see an exception we will bring down the DPL workflow # after having given it some chance to shut-down itself # basically --> send kill to all children @@ -428,7 +428,11 @@ taskwrapper() { getNumberOfPhysicalCPUCores() { if [ "$(uname)" == "Darwin" ]; then CORESPERSOCKET=`system_profiler SPHardwareDataType | grep "Total Number of Cores:" | awk '{print $5}'` - SOCKETS=`system_profiler SPHardwareDataType | grep "Number of Processors:" | awk '{print $4}'` + if [ "$(uname -m)" == "arm64" ]; then + SOCKETS=1 + else + SOCKETS=`system_profiler SPHardwareDataType | grep "Number of Processors:" | awk '{print $4}'` + fi else # Do something under GNU/Linux platform CORESPERSOCKET=`lscpu | grep "Core(s) per socket" | awk '{print $4}'` diff --git a/prodtests/full_system_test.sh b/prodtests/full_system_test.sh index 2c9fd3d05b896..b236a9af2f368 100755 --- a/prodtests/full_system_test.sh +++ b/prodtests/full_system_test.sh @@ -74,7 +74,7 @@ ulimit -n 4096 # Make sure we can open sufficiently many files mkdir -p qed cd qed PbPbXSec="8." -taskwrapper qedsim.log o2-sim --seed $O2SIMSEED -j $NJOBS -n$NEventsQED -m PIPE ITS MFT FT0 FV0 FDD -g extgen -e ${FST_MC_ENGINE} --configKeyValues '"GeneratorExternal.fileName=$O2_ROOT/share/Generators/external/QEDLoader.C;QEDGenParam.yMin=-7;QEDGenParam.yMax=7;QEDGenParam.ptMin=0.001;QEDGenParam.ptMax=1.;Diamond.width[2]=6."' +taskwrapper qedsim.log o2-sim --seed $O2SIMSEED -j $NJOBS -n $NEventsQED -m PIPE ITS MFT FT0 FV0 FDD -g extgen -e ${FST_MC_ENGINE} --configKeyValues '"GeneratorExternal.fileName=$O2_ROOT/share/Generators/external/QEDLoader.C;QEDGenParam.yMin=-7;QEDGenParam.yMax=7;QEDGenParam.ptMin=0.001;QEDGenParam.ptMax=1.;Diamond.width[2]=6."' QED2HAD=$(awk "BEGIN {printf \"%.2f\",`grep xSectionQED qedgenparam.ini | cut -d'=' -f 2`/$PbPbXSec}") echo "Obtained ratio of QED to hadronic x-sections = $QED2HAD" >> qedsim.log cd .. From 4110bfb294ff0c3aa42f2da5b76a4b0e3f9e9fe2 Mon Sep 17 00:00:00 2001 From: wiechula <11199190+wiechula@users.noreply.github.com> Date: Tue, 29 Jun 2021 12:00:28 +0200 Subject: [PATCH 044/314] TPC: finalize trigger handling + unrelated fixes and improvements (#6541) * add treatment for CE in simple ccdb upload * smaller improvements and fixes * finalize handling of trigger information --- .../TPC/base/include/TPCBase/CDBInterface.h | 4 ++- Detectors/TPC/base/src/CDBInterface.cxx | 4 +-- .../TPC/monitor/macro/RunSimpleEventDisplay.C | 27 +++++++++++-------- .../src/RawProcessingHelpers.cxx | 14 +++++----- .../TPC/reconstruction/src/RawReaderCRU.cxx | 1 + 5 files changed, 29 insertions(+), 21 deletions(-) diff --git a/Detectors/TPC/base/include/TPCBase/CDBInterface.h b/Detectors/TPC/base/include/TPCBase/CDBInterface.h index e032485a45176..f72b781ac5f3b 100644 --- a/Detectors/TPC/base/include/TPCBase/CDBInterface.h +++ b/Detectors/TPC/base/include/TPCBase/CDBInterface.h @@ -40,6 +40,7 @@ enum class CDBType { CalPedestal, ///< Pedestal calibration CalNoise, ///< Noise calibration CalPulser, ///< Pulser calibration + CalCE, ///< Laser CE calibration CalPadGainFull, ///< Full pad gain calibration CalPadGainResidual, ///< ResidualpPad gain calibration (e.g. from tracks) /// @@ -60,6 +61,7 @@ const std::unordered_map CDBTypeMap{ {CDBType::CalPedestal, "TPC/Calib/Pedestal"}, {CDBType::CalNoise, "TPC/Calib/Noise"}, {CDBType::CalPulser, "TPC/Calib/Pulser"}, + {CDBType::CalCE, "TPC/Calib/CE"}, {CDBType::CalPadGainFull, "TPC/Calib/PadGainFull"}, {CDBType::CalPadGainResidual, "TPC/Calib/PadGainResidual"}, // @@ -294,7 +296,7 @@ class CDBStorage void uploadNoiseAndPedestal(std::string_view fileName, long first = -1, long last = -1); void uploadGainMap(std::string_view fileName, bool isFull = true, long first = -1, long last = -1); - void uploadPulserData(std::string_view fileName, long first = -1, long last = -1); + void uploadPulserOrCEData(CDBType type, std::string_view fileName, long first = -1, long last = -1); private: bool checkMetaData(MetaData_t metaData) const; diff --git a/Detectors/TPC/base/src/CDBInterface.cxx b/Detectors/TPC/base/src/CDBInterface.cxx index d2e9f77e6bc8f..c7c691cfc729d 100644 --- a/Detectors/TPC/base/src/CDBInterface.cxx +++ b/Detectors/TPC/base/src/CDBInterface.cxx @@ -365,7 +365,7 @@ void CDBStorage::uploadGainMap(std::string_view fileName, bool isFull, long firs } //______________________________________________________________________________ -void CDBStorage::uploadPulserData(std::string_view fileName, long first, long last) +void CDBStorage::uploadPulserOrCEData(CDBType type, std::string_view fileName, long first, long last) { std::unique_ptr f(TFile::Open(fileName.data())); CalDet*t0 = nullptr, *width = nullptr, *qtot = nullptr; @@ -382,7 +382,7 @@ void CDBStorage::uploadPulserData(std::string_view fileName, long first, long la pulserCalib["Width"] = *width; pulserCalib["Qtot"] = *qtot; - storeObject(&pulserCalib, CDBType::CalPulser, first, last); + storeObject(&pulserCalib, type, first, last); } //______________________________________________________________________________ diff --git a/Detectors/TPC/monitor/macro/RunSimpleEventDisplay.C b/Detectors/TPC/monitor/macro/RunSimpleEventDisplay.C index e9264ef12f955..4d961877c48ca 100644 --- a/Detectors/TPC/monitor/macro/RunSimpleEventDisplay.C +++ b/Detectors/TPC/monitor/macro/RunSimpleEventDisplay.C @@ -35,6 +35,7 @@ #include "TPCBase/Mapper.h" #include "TPCBase/CalDet.h" #include "TPCBase/CalArray.h" +#include "TPCBase/Painter.h" #include "FairLogger.h" #include #include @@ -169,7 +170,7 @@ void MonitorGui() mCheckFFT->SetTextColor(200); mCheckFFT->SetToolTipText("Switch on FFT calculation"); mCheckFFT->MoveResize(10, 10 + ysize * 4, xsize, (UInt_t)ysize); - mCheckFFT->SetDown(1); + mCheckFFT->SetDown(0); ToggleFFT(); //--------------------------- @@ -346,17 +347,19 @@ void DrawPadSignal(TString type) const bool init = (hFFT == nullptr); const double maxTime = h2->GetNbinsX() * 200.e-6; hFFT = h2->FFT(hFFT, "MAG M"); - hFFT->SetStats(0); - const auto nbinsx = hFFT->GetNbinsX(); - auto xax = hFFT->GetXaxis(); - xax->SetRange(2, nbinsx / 2); - if (init) { - xax->Set(nbinsx, xax->GetXmin() / maxTime, xax->GetXmax() / maxTime); - hFFT->SetNameTitle(Form("hFFT_%sROC", (roc < 36) ? "I" : "O"), "FFT magnitude;frequency (kHz);amplitude"); + if (hFFT) { + hFFT->SetStats(0); + const auto nbinsx = hFFT->GetNbinsX(); + auto xax = hFFT->GetXaxis(); + xax->SetRange(2, nbinsx / 2); + if (init) { + xax->Set(nbinsx, xax->GetXmin() / maxTime, xax->GetXmax() / maxTime); + hFFT->SetNameTitle(Form("hFFT_%sROC", (roc < 36) ? "I" : "O"), "FFT magnitude;frequency (kHz);amplitude"); + } + hFFT->Scale(2. / (nbinsx - 1)); + cFFT->cd(); + hFFT->Draw(); } - hFFT->Scale(2. / (nbinsx - 1)); - cFFT->cd(); - hFFT->Draw(); } } Update(Form("%s;%sFFT", type.Data(), type.Data())); @@ -520,6 +523,7 @@ void InitGUI() mHMaxA->SetStats(kFALSE); mHMaxA->SetUniqueID(0); //A-Side mHMaxA->Draw("colz"); + painter::drawSectorsXY(Side::A); //histograms and canvases for max values C-Side c = new TCanvas("MaxValsC", "MaxValsC", 0 * w, 1 * h, w, h); c->AddExec("findSec", "SelectSectorExec()"); @@ -527,6 +531,7 @@ void InitGUI() mHMaxC->SetStats(kFALSE); mHMaxC->SetUniqueID(1); //C-Side mHMaxC->Draw("colz"); + painter::drawSectorsXY(Side::C); } //histograms and canvases for max values IROC diff --git a/Detectors/TPC/reconstruction/src/RawProcessingHelpers.cxx b/Detectors/TPC/reconstruction/src/RawProcessingHelpers.cxx index 7eb419fe6b507..7b6550567419a 100644 --- a/Detectors/TPC/reconstruction/src/RawProcessingHelpers.cxx +++ b/Detectors/TPC/reconstruction/src/RawProcessingHelpers.cxx @@ -15,6 +15,7 @@ #include "Framework/Logger.h" #include "TPCBase/Mapper.h" #include "DataFormatsTPC/ZeroSuppressionLinkBased.h" +#include "DataFormatsTPC/Constants.h" #include "TPCReconstruction/RawProcessingHelpers.h" @@ -40,6 +41,7 @@ bool raw_processing_helpers::processZSdata(const char* data, size_t size, rdh_ut const uint32_t maxBunches = (uint32_t)o2::constants::lhc::LHCMaxBunches; int globalBCOffset = int(orbit - referenceOrbit) * o2::constants::lhc::LHCMaxBunches; + static int triggerBCOffset = 0; bool hasData{false}; @@ -62,13 +64,11 @@ bool raw_processing_helpers::processZSdata(const char* data, size_t size, rdh_ut // set trigger offset and skip trigger info if (header.isTriggerInfo()) { // for the moment only skip the trigger info - /* const auto triggerInfo = (zerosupp_link_based::TriggerContainer*)zsdata; const auto triggerOrbit = triggerInfo->triggerInfo.getOrbit(); const auto triggerBC = triggerInfo->triggerInfo.bunchCrossing; - globalBCOffset = int(orbit - triggerOrbit) * maxBunches - triggerBC; - fmt::print("orbit: {}, triggerOrbit: {}, triggerBC: {}, globalBCOffset: {}\n", orbit, triggerOrbit, triggerBC, globalBCOffset); - */ + triggerBCOffset = (int(triggerOrbit) - int(referenceOrbit)) * maxBunches + triggerBC; + LOGP(debug, "orbit: {}, triggerOrbit: {}, triggerBC: {}, triggerBCOffset: {}\n", orbit, triggerOrbit, triggerBC, triggerBCOffset); zsdata = (zerosupp_link_based::ContainerZS*)((const char*)zsdata + sizeof(zerosupp_link_based::Header) * (1 + header.numWordsPayload)); continue; } @@ -89,10 +89,10 @@ bool raw_processing_helpers::processZSdata(const char* data, size_t size, rdh_ut syncOffset = syncOffsetLinks[tpcGlobalLinkID]; } - const int bcOffset = (int(globalBCOffset) + int(bunchCrossingHeader) - int(syncOffset)); - const int timebin = bcOffset / 8; + const int bcOffset = (int(globalBCOffset) + int(bunchCrossingHeader) - int(syncOffset)) - triggerBCOffset; + const int timebin = bcOffset / constants::LHCBCPERTIMEBIN; if (bcOffset < 0) { - LOGP(debug, "skipping negative time bin with (globalBCoffset ({}) + bunchCrossingHeader ({}) - syncOffset({})) / 8 = {}", globalBCOffset, bunchCrossingHeader, syncOffset, timebin); + LOGP(debug, "skipping time bin with negative BC offset (globalBCoffset (({} - {}) * {} = {}) + bunchCrossingHeader ({}) - syncOffset({}) - triggerBCOffset({})) = {}", orbit, referenceOrbit, o2::constants::lhc::LHCMaxBunches, globalBCOffset, bunchCrossingHeader, syncOffset, triggerBCOffset, bcOffset); // go to next time bin zsdata = zsdata->next(); diff --git a/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx b/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx index 2ccd04f9363fe..5306065cc626a 100644 --- a/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx +++ b/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx @@ -153,6 +153,7 @@ void RawReaderCRUEventSync::streamTo(std::ostream& output) const std::cout << orbit << " "; } std::cout << "\n" + << " firstOrbit: " << event.getFirstOrbit() << "\n" << " Is complete: " << isComplete << "\n"; // cru loop From c3528917c2e37d59bf6dde7dc2da54a1b581c609 Mon Sep 17 00:00:00 2001 From: Jorge Lopez Date: Tue, 29 Jun 2021 12:22:04 +0200 Subject: [PATCH 045/314] TRD: Fix TRD digit method names (#6533) * Update TRD digit method names * use new method names in macro --- .../Detectors/TRD/include/DataFormatsTRD/Digit.h | 8 ++++---- DataFormats/Detectors/TRD/test/testDigit.cxx | 14 +++++++------- Detectors/TRD/macros/CheckDigits.C | 9 ++++----- Detectors/TRD/simulation/src/Trap2CRU.cxx | 4 ++-- 4 files changed, 17 insertions(+), 18 deletions(-) diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/Digit.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/Digit.h index d725c8b611379..6d32ae15cf883 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/Digit.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/Digit.h @@ -55,9 +55,9 @@ class Digit Digit& operator=(const Digit&) = default; // Modifiers void setROB(int rob) { mROB = rob; } - void setROB(int row, int pad) { mROB = HelperMethods::getROBfromPad(row, pad); } void setMCM(int mcm) { mMCM = mcm; } - void setMCM(int row, int pad) { mMCM = HelperMethods::getMCMfromPad(row, pad); } + void setROB(int row, int col) { mROB = HelperMethods::getROBfromPad(row, col); } // set ROB from pad row, column + void setMCM(int row, int col) { mMCM = HelperMethods::getMCMfromPad(row, col); } // set MCM from pad row, column void setChannel(int channel) { mChannel = channel; } void setDetector(int det) { mDetector = det; } void setADC(ArrayADC const& adc) { mADC = adc; } @@ -65,8 +65,8 @@ class Digit // Get methods int getDetector() const { return mDetector; } int getHCId() const { return mDetector * 2 + (mROB % 2); } - int getRow() const { return HelperMethods::getPadRowFromMCM(mROB, mMCM); } - int getPad() const { return HelperMethods::getPadColFromADC(mROB, mMCM, mChannel); } + int getPadRow() const { return HelperMethods::getPadRowFromMCM(mROB, mMCM); } + int getPadCol() const { return HelperMethods::getPadColFromADC(mROB, mMCM, mChannel); } int getROB() const { return mROB; } int getMCM() const { return mMCM; } int getChannel() const { return mChannel; } diff --git a/DataFormats/Detectors/TRD/test/testDigit.cxx b/DataFormats/Detectors/TRD/test/testDigit.cxx index 6ef30c484a9e9..1406cc8671e0c 100644 --- a/DataFormats/Detectors/TRD/test/testDigit.cxx +++ b/DataFormats/Detectors/TRD/test/testDigit.cxx @@ -32,8 +32,8 @@ using namespace o2::trd::constants; void testDigitDetRowPad(Digit& test, int det, int row, int pad) { - BOOST_CHECK(test.getPad() == pad); - BOOST_CHECK(test.getRow() == row); + BOOST_CHECK(test.getPadCol() == pad); + BOOST_CHECK(test.getPadRow() == row); BOOST_CHECK(test.getDetector() == det); } @@ -87,7 +87,7 @@ BOOST_AUTO_TEST_CASE(TRDDigit_test) //test block 1. Digit e(0, 0, 0, 0); //first channel of the first mcm, this is in fact the 19 pad of the first row, and connected to the 18th adc of the second trap ... - Digit f(0, e.getRow(), e.getPad()); // createa digit based on the above digits pad and row. + Digit f(0, e.getPadRow(), e.getPadCol()); // createa digit based on the above digits pad and row. // we *shoulud* end up with a rob:mcm of 0:1 and channel 18 testDigitDetROBMCM(f, 0, 0, 1, NCOLMCM); @@ -153,11 +153,11 @@ BOOST_AUTO_TEST_CASE(TRDDigit_test) for(int rob=0;rob<8;rob++)for(int mcm=0;mcm<16;mcm++)for(int channel=0;channel<21;channel++){ std::cout << "Digit e(0,"<GetEvent(iev); for (const auto& digit : *digitCont) { - // loop over det, pad, row? auto adcs = digit.getADC(); - int det = digit.getDetector(); - int row = digit.getRow(); - int pad = digit.getPad(); + int det = digit.getDetector(); // chamber + int row = digit.getPadRow(); // pad row + int col = digit.getPadCol(); // pad column hDet->Fill(det); hRow->Fill(row); - hPad->Fill(pad); + hPad->Fill(col); for (int tb = 0; tb < o2::trd::constants::TIMEBINS; ++tb) { ADC_t adc = adcs[tb]; if (adc == (ADC_t)SimParam::instance()->getADCoutRange()) { diff --git a/Detectors/TRD/simulation/src/Trap2CRU.cxx b/Detectors/TRD/simulation/src/Trap2CRU.cxx index 60390b7536fe8..f0d8501578448 100644 --- a/Detectors/TRD/simulation/src/Trap2CRU.cxx +++ b/Detectors/TRD/simulation/src/Trap2CRU.cxx @@ -164,8 +164,8 @@ void Trap2CRU::sortDataToLinks() << " mcm=" << mDigits[mDigitsIndex[digitcount]].getMCM() << " rob=" << mDigits[mDigitsIndex[digitcount]].getROB() << " channel=" << mDigits[mDigitsIndex[digitcount]].getChannel() - << " col=" << mDigits[mDigitsIndex[digitcount]].getRow() - << " pad=" << mDigits[mDigitsIndex[digitcount]].getPad() + << " col=" << mDigits[mDigitsIndex[digitcount]].getPadRow() + << " pad=" << mDigits[mDigitsIndex[digitcount]].getPadCol() << " adcsum=" << mDigits[mDigitsIndex[digitcount]].getADCsum() << " hcid=" << mDigits[mDigitsIndex[digitcount]].getHCId(); LOG(info) << "DDDDD " << mDigits[mDigitsIndex[digitcount]].getDetector() << ":" << mDigits[mDigitsIndex[digitcount]].getROB() << ":" << mDigits[mDigitsIndex[digitcount]].getMCM() << ":" << mDigits[mDigitsIndex[digitcount]].getChannel() << ":" << mDigits[mDigitsIndex[digitcount]].getADCsum() << ":" << mDigits[mDigitsIndex[digitcount]].getADC()[0] << ":" << mDigits[mDigitsIndex[digitcount]].getADC()[1] << ":" << mDigits[mDigitsIndex[digitcount]].getADC()[2] << "::" << mDigits[mDigitsIndex[digitcount]].getADC()[27] << ":" << mDigits[mDigitsIndex[digitcount]].getADC()[28] << ":" << mDigits[mDigitsIndex[digitcount]].getADC()[29]; From 97e1c156db54475ba0a88020f884dd54db9a339a Mon Sep 17 00:00:00 2001 From: AllaMaevskaya Date: Tue, 29 Jun 2021 16:59:53 +0300 Subject: [PATCH 046/314] alignment of FT0 modules (#6522) * clean up geometry * alignment * remove files --- Detectors/FIT/FT0/CMakeLists.txt | 1 + Detectors/FIT/FT0/base/CMakeLists.txt | 2 +- .../FIT/FT0/base/files/Sim2DataChannels.txt | 1 - .../FIT/FT0/base/include/FT0Base/Geometry.h | 24 ++- Detectors/FIT/FT0/base/src/Geometry.cxx | 87 +++++---- .../FT0Calibration/FT0CollectCalibInfo.h | 118 ------------ Detectors/FIT/FT0/macros/CMakeLists.txt | 14 ++ Detectors/FIT/FT0/macros/FT0Misaligner.C | 70 +++++++ .../include/FT0Simulation/Detector.h | 19 +- Detectors/FIT/FT0/simulation/src/Detector.cxx | 173 ++++++++---------- 10 files changed, 239 insertions(+), 270 deletions(-) delete mode 100644 Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CollectCalibInfo.h create mode 100644 Detectors/FIT/FT0/macros/CMakeLists.txt create mode 100644 Detectors/FIT/FT0/macros/FT0Misaligner.C diff --git a/Detectors/FIT/FT0/CMakeLists.txt b/Detectors/FIT/FT0/CMakeLists.txt index 83f8bbdd1ff73..fa31a5f6b65c7 100644 --- a/Detectors/FIT/FT0/CMakeLists.txt +++ b/Detectors/FIT/FT0/CMakeLists.txt @@ -15,3 +15,4 @@ add_subdirectory(reconstruction) add_subdirectory(simulation) add_subdirectory(workflow) add_subdirectory(calibration) +add_subdirectory(macros) diff --git a/Detectors/FIT/FT0/base/CMakeLists.txt b/Detectors/FIT/FT0/base/CMakeLists.txt index 52e34f97a9c13..03d79962df964 100644 --- a/Detectors/FIT/FT0/base/CMakeLists.txt +++ b/Detectors/FIT/FT0/base/CMakeLists.txt @@ -11,7 +11,7 @@ o2_add_library(FT0Base SOURCES src/Geometry.cxx - PUBLIC_LINK_LIBRARIES ROOT::Physics FairRoot::Base O2::FrameworkLogger) + PUBLIC_LINK_LIBRARIES ROOT::Physics FairRoot::Base O2::DetectorsBase O2::DetectorsCommonDataFormats O2::FrameworkLogger) o2_target_root_dictionary(FT0Base HEADERS include/FT0Base/Geometry.h) diff --git a/Detectors/FIT/FT0/base/files/Sim2DataChannels.txt b/Detectors/FIT/FT0/base/files/Sim2DataChannels.txt index a4c7439af282e..83ba832a70af0 100644 --- a/Detectors/FIT/FT0/base/files/Sim2DataChannels.txt +++ b/Detectors/FIT/FT0/base/files/Sim2DataChannels.txt @@ -1,3 +1,2 @@ 82 83 80 81 89 91 88 90 93 95 92 94 4 6 5 7 8 10 9 11 78 79 76 77 74 75 72 73 85 87 84 86 0 2 1 3 16 17 18 19 71 70 69 68 63 62 61 60 12 13 14 15 20 21 22 23 67 66 65 64 51 49 50 48 38 36 39 37 25 24 27 26 29 28 31 30 59 57 58 56 55 53 54 52 46 44 47 45 42 40 43 41 33 32 35 34 117 119 116 118 113 115 112 114 124 126 125 127 128 130 129 131 106 107 104 105 193 195 192 194 109 111 108 110 120 122 121 123 196 197 198 199 140 141 142 143 102 103 100 101 98 99 96 97 132 133 134 135 136 137 138 139 187 186 185 184 183 182 181 180 145 144 147 146 148 149 151 150 191 190 189 188 211 210 209 208 171 169 170 168 158 156 159 157 206 204 207 205 153 152 155 154 179 177 178 176 175 173 174 172 162 160 163 161 166 164 167 165 - diff --git a/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h b/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h index 7e2bc94cb346e..bbf9474613b7d 100644 --- a/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h +++ b/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h @@ -14,9 +14,15 @@ //////////////////////////////////////////////// // Full geomrtry hits classes for detector: FIT // //////////////////////////////////////////////// - +#include "DetectorsBase/GeometryManager.h" +#include "DetectorsCommonDataFormats/DetID.h" +#include "Framework/Logger.h" #include +#include #include +#include + +class TGeoPNEntry; namespace o2 { @@ -37,19 +43,31 @@ class Geometry /// TVector3 centerMCP(int imcp) { return mMCP[imcp]; } + TVector3 tiltMCP(int imcp) { return mAngles[imcp]; } - static constexpr int Nchannels = 229; // number od channels + static constexpr int Nchannels = 229; // number of LUT channels + static constexpr int Nsensors = 208; // number of channels static constexpr int NCellsA = 24; // number of radiatiors on A side static constexpr int NCellsC = 28; // number of radiatiors on C side static constexpr float ZdetA = 335.5; // number of radiatiors on A side static constexpr float ZdetC = 82; // number of radiatiors on C side static constexpr float ChannelWidth = 13.02; // channel width in ps static constexpr float ChannelWidthInverse = 0.076804916; // channel width in ps inverse + static constexpr o2::detectors::DetID::ID getDetID() { return o2::detectors::DetID::FT0; } + void setAsideModules(); + void setCsideModules(); + TGeoPNEntry* getPNEntry(int index) const + { + /// Get a pointer to the TGeoPNEntry of a chip identified by 'index' + /// Returns NULL in case of invalid index, missing TGeoManager or invalid symbolic name + return o2::base::GeometryManager::getPNEntry(getDetID(), index); + } private: TVector3 mMCP[52]; + TVector3 mAngles[28]; - ClassDefNV(Geometry, 1); + ClassDefNV(Geometry, 2); }; } // namespace ft0 } // namespace o2 diff --git a/Detectors/FIT/FT0/base/src/Geometry.cxx b/Detectors/FIT/FT0/base/src/Geometry.cxx index 8abe4eed45140..2aad6bb2c32f7 100644 --- a/Detectors/FIT/FT0/base/src/Geometry.cxx +++ b/Detectors/FIT/FT0/base/src/Geometry.cxx @@ -8,37 +8,53 @@ // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#include #include "FT0Base/Geometry.h" #include "TSystem.h" #include "Framework/Logger.h" #include +#include #include #include ClassImp(o2::ft0::Geometry); +using namespace TMath; +using namespace o2::detectors; using namespace o2::ft0; Geometry::Geometry() : mMCP{{0, 0, 0}} { - Float_t zDetA = 333; - Float_t xa[24] = {-11.8, -5.9, 0, 5.9, 11.8, -11.8, -5.9, 0, 5.9, 11.8, -12.8, -6.9, - 6.9, 12.8, -11.8, -5.9, 0, 5.9, 11.8, -11.8, -5.9, 0, 5.9, 11.8}; - - Float_t ya[24] = {11.9, 11.9, 12.9, 11.9, 11.9, 6.0, 6.0, 7.0, 6.0, 6.0, -0., -0., - 0., 0., -6.0, -6.0, -7.0, -6.0, -6.0, -11.9, -11.9, -12.9, -11.9, -11.9}; - - Float_t pmcp[3] = {2.949, 2.949, 2.8}; // MCP - - // Matrix(idrotm[901], 90., 0., 90., 90., 180., 0.); + setAsideModules(); + setCsideModules(); +} +void Geometry::setAsideModules() +{ + Float_t mPosModuleAx[Geometry::NCellsA] = {-12.2, -6.1, 0, 6.1, 12.2, -12.2, -6.1, 0, + 6.1, 12.2, -13.3743, -7.274299999999999, + 7.274299999999999, 13.3743, -12.2, -6.1, 0, + 6.1, 12.2, -12.2, -6.1, 0, 6.1, 12.2}; + + Float_t mPosModuleAy[Geometry::NCellsA] = {12.2, 12.2, 13.53, 12.2, 12.2, 6.1, 6.1, + 7.43, 6.1, 6.1, 0, 0, 0, 0, -6.1, -6.1, + -7.43, -6.1, -6.1, -12.2, -12.2, -13.53, + -12.2, -12.2}; + + // A side Translations + for (Int_t ipmt = 0; ipmt < NCellsA; ipmt++) { + mMCP[ipmt].SetXYZ(mPosModuleAx[ipmt], mPosModuleAy[ipmt], ZdetA); + } +} +void Geometry::setCsideModules() +{ // C side Concave Geometry + Float_t mInStart[3] = {2.9491, 2.9491, 2.5}; + Float_t mStartC[3] = {20., 20, 5.5}; - Double_t crad = 82.; // define concave c-side radius here + Double_t crad = ZdetC; // define concave c-side radius here - Double_t dP = pmcp[0]; // side length of mcp divided by 2 + Double_t dP = mInStart[0]; // side length of mcp divided by 2 // uniform angle between detector faces== Double_t btta = 2 * TMath::ATan(dP / crad); @@ -50,24 +66,26 @@ Geometry::Geometry() : mMCP{{0, 0, 0}} gridpoints[i] = crad * TMath::Sin((1 - 1 / (2 * TMath::Abs(grdin[i]))) * grdin[i] * btta); } - Double_t xi[28] = {gridpoints[1], gridpoints[2], gridpoints[3], gridpoints[4], gridpoints[0], gridpoints[1], - gridpoints[2], gridpoints[3], gridpoints[4], gridpoints[5], gridpoints[0], gridpoints[1], - gridpoints[4], gridpoints[5], gridpoints[0], gridpoints[1], gridpoints[4], gridpoints[5], - gridpoints[0], gridpoints[1], gridpoints[2], gridpoints[3], gridpoints[4], gridpoints[5], - gridpoints[1], gridpoints[2], gridpoints[3], gridpoints[4]}; - Double_t yi[28] = {gridpoints[5], gridpoints[5], gridpoints[5], gridpoints[5], gridpoints[4], gridpoints[4], - gridpoints[4], gridpoints[4], gridpoints[4], gridpoints[4], gridpoints[3], gridpoints[3], - gridpoints[3], gridpoints[3], gridpoints[2], gridpoints[2], gridpoints[2], gridpoints[2], - gridpoints[1], gridpoints[1], gridpoints[1], gridpoints[1], gridpoints[1], gridpoints[1], - gridpoints[0], gridpoints[0], gridpoints[0], gridpoints[0]}; - Double_t zi[28]; - for (Int_t i = 0; i < 28; i++) { + Double_t xi[NCellsC] = {gridpoints[1], gridpoints[2], gridpoints[3], gridpoints[4], gridpoints[0], + gridpoints[1], gridpoints[2], gridpoints[3], gridpoints[4], gridpoints[5], + gridpoints[0], gridpoints[1], gridpoints[4], gridpoints[5], gridpoints[0], + gridpoints[1], gridpoints[4], gridpoints[5], gridpoints[0], gridpoints[1], + gridpoints[2], gridpoints[3], gridpoints[4], gridpoints[5], gridpoints[1], + gridpoints[2], gridpoints[3], gridpoints[4]}; + Double_t yi[NCellsC] = {gridpoints[5], gridpoints[5], gridpoints[5], gridpoints[5], gridpoints[4], + gridpoints[4], gridpoints[4], gridpoints[4], gridpoints[4], gridpoints[4], + gridpoints[3], gridpoints[3], gridpoints[3], gridpoints[3], gridpoints[2], + gridpoints[2], gridpoints[2], gridpoints[2], gridpoints[1], gridpoints[1], + gridpoints[1], gridpoints[1], gridpoints[1], gridpoints[1], gridpoints[0], + gridpoints[0], gridpoints[0], gridpoints[0]}; + Double_t zi[NCellsC]; + for (Int_t i = 0; i < NCellsC; i++) { zi[i] = TMath::Sqrt(TMath::Power(crad, 2) - TMath::Power(xi[i], 2) - TMath::Power(yi[i], 2)); } // get rotation data - Double_t ac[28], bc[28], gc[28]; - for (Int_t i = 0; i < 28; i++) { + Double_t ac[NCellsC], bc[NCellsC], gc[NCellsC]; + for (Int_t i = 0; i < NCellsC; i++) { ac[i] = TMath::ATan(yi[i] / xi[i]) - TMath::Pi() / 2 + 2 * TMath::Pi(); if (xi[i] < 0) { bc[i] = TMath::ACos(zi[i] / crad); @@ -75,12 +93,12 @@ Geometry::Geometry() : mMCP{{0, 0, 0}} bc[i] = -1 * TMath::ACos(zi[i] / crad); } } - Double_t xc2[28], yc2[28], zc2[28]; + Double_t xc2[NCellsC], yc2[NCellsC], zc2[NCellsC]; // compensation based on node position within individual detector geometries // determine compensated radius - Double_t rcomp = crad /*+ pstartC[2] / 2.0*/; // - for (Int_t i = 0; i < 28; i++) { + Double_t rcomp = crad + mStartC[2] / 2.0; // + for (Int_t i = 0; i < NCellsC; i++) { // Get compensated translation data xc2[i] = rcomp * TMath::Cos(ac[i] + TMath::Pi() / 2) * TMath::Sin(-1 * bc[i]); yc2[i] = rcomp * TMath::Sin(ac[i] + TMath::Pi() / 2) * TMath::Sin(-1 * bc[i]); @@ -90,12 +108,7 @@ Geometry::Geometry() : mMCP{{0, 0, 0}} ac[i] *= 180 / TMath::Pi(); bc[i] *= 180 / TMath::Pi(); gc[i] = -1 * ac[i]; - } - // Set coordinate - for (int ipmt = 0; ipmt < 24; ipmt++) { - mMCP[ipmt].SetXYZ(xa[ipmt], xa[ipmt], zDetA); - } - for (int ipmt = 24; ipmt < 52; ipmt++) { - mMCP[ipmt].SetXYZ(xc2[ipmt - 24], yc2[ipmt - 24], zc2[ipmt - 24]); + mAngles[i].SetXYZ(ac[i], bc[i], gc[i]); + mMCP[i + NCellsA].SetXYZ(xc2[i], yc2[i], zc2[i]); } } diff --git a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CollectCalibInfo.h b/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CollectCalibInfo.h deleted file mode 100644 index 8d37e3e197fab..0000000000000 --- a/Detectors/FIT/FT0/calibration/include/FT0Calibration/FT0CollectCalibInfo.h +++ /dev/null @@ -1,118 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -/// \brief Class to collect info for FT0 calibration -/// \author Alla.Maevskaya@cern.ch - -#ifndef ALICEO2_FT0_FT0COLLECTCALIBINFO_ -#define ALICEO2_FT0_FT0COLLECTCALIBINFOFT0_ - -#include -#include -#include -#include -#include -#include -#include "FT0Calibration/FT0CalibrationInfoObject.h" -#include "FT0Base/Geometry.h" - -class TTree; - -namespace o2 -{ -namespace ft0 -{ -class FT0CollectCalibInfo -{ - using Geo = o2::ft0::Geometry; - - public: - static constexpr int MAXNUMBEROFHITS = 256; - - FT0CollectCalibInfo() : mMinTimestamp("minTimestamp", -1), mMaxTimestamp("maxTimestamp", -1) {} - - ///< collect the CalibInfo for the FT0 channels - void run(); - - ///< perform all initializations - void init(); - - ///< set tree/chain containing FT0 calib info - void setInputTreeFT0CalibInfo(TTree* tree) { mTreeFT0CalibInfo = tree; } - - ///< set output tree to write matched tracks - void setOutputTree(TTree* tr) { mOutputTree = tr; } - - ///< set input branch names for the input from the tree - void setFT0CalibInfoBranchName(const std::string& nm) { mFT0CalibInfoBranchName = nm; } - void setOutputBranchName(const std::string& nm) { mOutputBranchName = nm; } - - ///< get input branch names for the input from the tree - const std::string& getFT0CalibInfoBranchName() const { return mFT0CalibInfoBranchName; } - const std::string& getOutputBranchName() const { return mOutputBranchName; } - - ///< get the min/max timestamp for following calibration of LHCPhase - const TParameter& getMinTimestamp() const { return mMinTimestamp; } - const TParameter& getMaxTimestamp() const { return mMaxTimestamp; } - - ///< print settings - void print() const; - - private: - void attachInputTrees(); - bool loadFT0CalibInfo(); - - ///< add CalibInfoFT0 for a specific channel - void addHit(o2::ft0::FT0CalibrationInfoObject& FT0CalibrationInfoObject); - - ///< fill the output tree - void fillTree(); - - //================================================================ - - // Data members - - bool mInitDone = false; ///< flag init already done - int mCurrFT0InfoTreeEntry = -1; - - ///========== Parameters to be set externally, e.g. from CCDB ==================== - - // to be done later - - TTree* mTreeFT0CalibInfo = nullptr; ///< input tree with Calib infos - - TTree* mOutputTree = nullptr; ///< output tree for matched tracks - - ///>>>------ these are input arrays which should not be modified by the calibration code - // since this info is provided by external device - std::vector* mFT0CalibInfo = nullptr; ///< input FT0 calib info - /// <<<----- - std::vector mFT0CollectedCalibInfo[Geo::Nchannels]; ///< output FT0 calibration info - std::vector* mFT0CalibInfoOut = nullptr; ///< this is the pointer to the CalibInfo of a specific channel that we need to fill the output tree - - std::string mFT0CalibInfoBranchName = "FT0CalibInfo"; ///< name of branch containing input FT0 calib infos - std::string mOutputBranchName = "FT0CollectedCalibInfo"; ///< name of branch containing output - - TStopwatch mTimerTot; - TStopwatch mTimerDBG; - - TParameter mMinTimestamp; ///< minimum timestamp over the hits that we collect; we will need it at calibration time to - ///< book the histogram for the LHCPhase calibration - - TParameter mMaxTimestamp; ///< maximum timestamp over the hits that we collect; we will need it at calibration time to - ///< book the histogram for the LHCPhase calibration - - ClassDefNV(FT0CollectCalibInfo, 1); -}; -} // namespace ft0 -} // namespace o2 - -#endif diff --git a/Detectors/FIT/FT0/macros/CMakeLists.txt b/Detectors/FIT/FT0/macros/CMakeLists.txt new file mode 100644 index 0000000000000..c4ed27d2513ba --- /dev/null +++ b/Detectors/FIT/FT0/macros/CMakeLists.txt @@ -0,0 +1,14 @@ +# Copyright CERN and copyright holders of ALICE O2. This software is distributed +# under the terms of the GNU General Public License v3 (GPL Version 3), copied +# verbatim in the file "COPYING". +# +# See http://alice-o2.web.cern.ch/license for full licensing information. +# +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization or +# submit itself to any jurisdiction. + +o2_add_test_root_macro(FT0Misaligner.C + PUBLIC_LINK_LIBRARIES O2::CCDB + O2::FT0Simulation + LABELS ft0) diff --git a/Detectors/FIT/FT0/macros/FT0Misaligner.C b/Detectors/FIT/FT0/macros/FT0Misaligner.C new file mode 100644 index 0000000000000..9a04e79cc0689 --- /dev/null +++ b/Detectors/FIT/FT0/macros/FT0Misaligner.C @@ -0,0 +1,70 @@ +#if !defined(__CLING__) || defined(__ROOTCLING__) +//#define ENABLE_UPGRADES +#include "DetectorsCommonDataFormats/DetID.h" +#include "DetectorsCommonDataFormats/NameConf.h" +#include "DetectorsCommonDataFormats/AlignParam.h" +#include "DetectorsBase/GeometryManager.h" +#include "CCDB/CcdbApi.h" +#include "FT0Base/Geometry.h" +#include +#include +#include +#include +#endif + +using AlgPar = std::array; + +AlgPar generateMisalignment(double x, double y, double z, double psi, double theta, double phi); + +void FT0Misaligner(const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080", long tmin = 0, long tmax = -1, + double xA = 0., double yA = 0., double zA = 0., double psiA = 0., double thetaA = 0., double phiA = 0., + double xC = 0., double yC = 0., double zC = 0., double psiC = 0., double thetaC = 0., double phiC = 0., + const std::string& objectPath = "", + const std::string& fileName = "FT0Alignment.root") +{ + std::vector params; + o2::base::GeometryManager::loadGeometry("", false); + // auto geom = o2::ft0::Geometry::Instance(); + AlgPar pars; + bool glo = true; + + o2::detectors::DetID detFT0("FT0"); + + // FT0 detector + //set A side + std::string symNameA = "FT0A"; + pars = generateMisalignment(xA, yA, zA, psiA, thetaA, phiA); + params.emplace_back(symNameA.c_str(), -1, pars[0], pars[1], pars[2], pars[3], pars[4], pars[5], glo); + //set C side + std::string symNameC = "FT0C"; + pars = generateMisalignment(xC, yC, zC, psiC, thetaC, phiC); + params.emplace_back(symNameC.c_str(), -1, pars[0], pars[1], pars[2], pars[3], pars[4], pars[5], glo); + + if (!ccdbHost.empty()) { + std::string path = objectPath.empty() ? o2::base::NameConf::getAlignmentPath(detFT0) : objectPath; + LOGP(INFO, "Storing alignment object on {}/{}", ccdbHost, path); + o2::ccdb::CcdbApi api; + map metadata; // can be empty + api.init(ccdbHost.c_str()); // or http://localhost:8080 for a local installation + // store abitrary user object in strongly typed manner + api.storeAsTFileAny(¶ms, path, metadata, tmin, tmax); + } + + if (!fileName.empty()) { + LOGP(INFO, "Storing FT0 alignment in local file {}", fileName); + TFile algFile(fileName.c_str(), "recreate"); + algFile.WriteObjectAny(¶ms, "std::vector", "alignment"); + algFile.Close(); + } +} +AlgPar generateMisalignment(double x, double y, double z, double psi, double theta, double phi) +{ + AlgPar pars; + pars[0] = gRandom->Gaus(0, x); + pars[1] = gRandom->Gaus(0, y); + pars[2] = gRandom->Gaus(0, z); + pars[3] = gRandom->Gaus(0, psi); + pars[4] = gRandom->Gaus(0, theta); + pars[5] = gRandom->Gaus(0, phi); + return std::move(pars); +} diff --git a/Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h b/Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h index 25db92a355745..2545f7a8eb063 100644 --- a/Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h +++ b/Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h @@ -20,6 +20,7 @@ #include "DetectorsBase/Detector.h" // for Detector #include "FT0Base/Geometry.h" #include "DataFormatsFT0/HitType.h" +#include // for gGeoManager, TGeoManager (ptr only) class FairModule; @@ -105,11 +106,6 @@ class Detector : public o2::base::DetImpl Int_t ReadOptProperties(const std::string inputFilePath); void FillOtherOptProperties(); Bool_t RegisterPhotoE(float energy); - - // Geometry* GetGeometry(); - - /// Prints out the content of this class in ASCII format - /// \param ostream *os The output stream void Print(std::ostream* os) const; /// Reads in the content of this class in the format of Print @@ -117,11 +113,14 @@ class Detector : public o2::base::DetImpl void Read(std::istream* is); void DefineSim2LUTindex(); - /// Create the shape of cables for a specified cell. - /// \param shapeName The name of the shape. - /// \param cellID The number of the cell - /// \return The cable pattern shape. - // TGeoShape* CreateCableShape(const std::string& shapeName, int cellID) const; + /// Add alignable volumes + void addAlignableVolumes() const override; + // Return Chip Volume UID + /// \param id volume id + Int_t chipVolUID(Int_t id) const + { + return o2::base::GeometryManager::getSensID(o2::detectors::DetID::FT0, id); + } private: /// copy constructor (used in MT) diff --git a/Detectors/FIT/FT0/simulation/src/Detector.cxx b/Detectors/FIT/FT0/simulation/src/Detector.cxx index 7abc01a6e4682..edfafbe395057 100644 --- a/Detectors/FIT/FT0/simulation/src/Detector.cxx +++ b/Detectors/FIT/FT0/simulation/src/Detector.cxx @@ -68,7 +68,6 @@ void Detector::InitializeO2Detector() if (v == nullptr) { LOG(WARN) << "@@@@ Sensitive volume 0REG not found!!!!!!!!"; } else { - AddSensitiveVolume(v); } @@ -91,123 +90,60 @@ void Detector::ConstructGeometry() LOG(DEBUG) << "Creating FT0 geometry\n"; CreateMaterials(); - Float_t zdetA = Geometry::ZdetA; - Float_t zdetC = Geometry::ZdetC; - - Int_t idrotm[999]; - Double_t x, y, z; - - int nCellsA = Geometry::NCellsA; - int nCellsC = Geometry::NCellsC; + TGeoVolumeAssembly* stlinA = new TGeoVolumeAssembly("FT0A"); // A side mother + TGeoVolumeAssembly* stlinC = new TGeoVolumeAssembly("FT0C"); // C side mother Geometry geometry; - TVector3 centerMCP = geometry.centerMCP(2); - Matrix(idrotm[901], 90., 0., 90., 90., 180., 0.); - - // C side Concave Geometry - - Double_t crad = Geometry::ZdetC; // define concave c-side radius here - - Double_t dP = mInStart[0]; // side length of mcp divided by 2 - - // uniform angle between detector faces== - Double_t btta = 2 * TMath::ATan(dP / crad); - - // get noncompensated translation data - Double_t grdin[6] = {-3, -2, -1, 1, 2, 3}; - Double_t gridpoints[6]; - for (Int_t i = 0; i < 6; i++) { - gridpoints[i] = crad * TMath::Sin((1 - 1 / (2 * TMath::Abs(grdin[i]))) * grdin[i] * btta); - } - - Double_t xi[Geometry::NCellsC] = {gridpoints[1], gridpoints[2], gridpoints[3], gridpoints[4], gridpoints[0], - gridpoints[1], gridpoints[2], gridpoints[3], gridpoints[4], gridpoints[5], - gridpoints[0], gridpoints[1], gridpoints[4], gridpoints[5], gridpoints[0], - gridpoints[1], gridpoints[4], gridpoints[5], gridpoints[0], gridpoints[1], - gridpoints[2], gridpoints[3], gridpoints[4], gridpoints[5], gridpoints[1], - gridpoints[2], gridpoints[3], gridpoints[4]}; - Double_t yi[Geometry::NCellsC] = {gridpoints[5], gridpoints[5], gridpoints[5], gridpoints[5], gridpoints[4], - gridpoints[4], gridpoints[4], gridpoints[4], gridpoints[4], gridpoints[4], - gridpoints[3], gridpoints[3], gridpoints[3], gridpoints[3], gridpoints[2], - gridpoints[2], gridpoints[2], gridpoints[2], gridpoints[1], gridpoints[1], - gridpoints[1], gridpoints[1], gridpoints[1], gridpoints[1], gridpoints[0], - gridpoints[0], gridpoints[0], gridpoints[0]}; - Double_t zi[Geometry::NCellsC]; - for (Int_t i = 0; i < Geometry::NCellsC; i++) { - zi[i] = TMath::Sqrt(TMath::Power(crad, 2) - TMath::Power(xi[i], 2) - TMath::Power(yi[i], 2)); + Float_t zdetA = geometry.ZdetA; + Float_t zdetC = geometry.ZdetC; + int nCellsA = geometry.NCellsA; + int nCellsC = geometry.NCellsC; + + for (int ipos = 0; ipos < nCellsA; ipos++) { + mPosModuleAx[ipos] = geometry.centerMCP(ipos).X(); + mPosModuleAy[ipos] = geometry.centerMCP(ipos).Y(); } - // get rotation data - Double_t ac[Geometry::NCellsC], bc[Geometry::NCellsC], gc[Geometry::NCellsC]; - for (Int_t i = 0; i < Geometry::NCellsC; i++) { - ac[i] = TMath::ATan(yi[i] / xi[i]) - TMath::Pi() / 2 + 2 * TMath::Pi(); - if (xi[i] < 0) { - bc[i] = TMath::ACos(zi[i] / crad); - } else { - bc[i] = -1 * TMath::ACos(zi[i] / crad); - } - } - Double_t xc2[Geometry::NCellsC], yc2[Geometry::NCellsC], zc2[Geometry::NCellsC]; - - // compensation based on node position within individual detector geometries - // determine compensated radius - Double_t rcomp = crad + mStartC[2] / 2.0; // - for (Int_t i = 0; i < Geometry::NCellsC; i++) { - // Get compensated translation data - xc2[i] = rcomp * TMath::Cos(ac[i] + TMath::Pi() / 2) * TMath::Sin(-1 * bc[i]); - yc2[i] = rcomp * TMath::Sin(ac[i] + TMath::Pi() / 2) * TMath::Sin(-1 * bc[i]); - zc2[i] = rcomp * TMath::Cos(bc[i]); - - // Convert angles to degrees - ac[i] *= 180 / TMath::Pi(); - bc[i] *= 180 / TMath::Pi(); - gc[i] = -1 * ac[i]; - } - // A Side - TGeoVolumeAssembly* stlinA = new TGeoVolumeAssembly("0STL"); // A side mother - TGeoVolumeAssembly* stlinC = new TGeoVolumeAssembly("0STR"); // C side mother - // FIT interior - TVirtualMC::GetMC()->Gsvolu("0INS", "BOX", getMediumID(kAir), mInStart, 3); - TGeoVolume* ins = gGeoManager->GetVolume("0INS"); + TVirtualMC::GetMC()->Gsvolu("0MOD", "BOX", getMediumID(kAir), mInStart, 3); + TGeoVolume* ins = gGeoManager->GetVolume("0MOD"); // - TGeoTranslation* tr[Geometry::NCellsA + Geometry::NCellsC]; + TGeoTranslation* tr[nCellsA + nCellsC]; TString nameTr; - // A side Translations for (Int_t itr = 0; itr < Geometry::NCellsA; itr++) { nameTr = Form("0TR%i", itr + 1); - z = -mStartA[2] + mInStart[2]; + float z = -mStartA[2] + mInStart[2]; tr[itr] = new TGeoTranslation(nameTr.Data(), mPosModuleAx[itr], mPosModuleAy[itr], z); tr[itr]->RegisterYourself(); stlinA->AddNode(ins, itr, tr[itr]); + LOG(INFO) << " A geom " << itr << " " << mPosModuleAx[itr] << " " << mPosModuleAy[itr]; } SetCablesA(stlinA); + //Add FT0-A support Structure to the geometry + stlinA->AddNode(constructFrameGeometry(), 1, new TGeoTranslation(0, 0, -mStartA[2] + mInStart[2])); - TGeoRotation* rot[Geometry::NCellsC]; + // C Side + TGeoRotation* rot[nCellsC]; TString nameRot; - - TGeoCombiTrans* com[Geometry::NCellsC]; - TGeoCombiTrans* comCable[Geometry::NCellsC]; + TGeoCombiTrans* com[nCellsC]; + TGeoCombiTrans* comCable[nCellsC]; TString nameCom; - // C Side Transformations - for (Int_t itr = Geometry::NCellsA; itr < Geometry::NCellsA + Geometry::NCellsC; itr++) { + for (Int_t itr = Geometry::NCellsA; itr < Geometry::NCellsA + nCellsC; itr++) { nameTr = Form("0TR%i", itr + 1); nameRot = Form("0Rot%i", itr + 1); int ic = itr - Geometry::NCellsA; - // nameCom = Form("0Com%i",itr+1); - rot[ic] = new TGeoRotation(nameRot.Data(), ac[ic], bc[ic], gc[ic]); + float ac1 = geometry.tiltMCP(ic).X(); + float bc1 = geometry.tiltMCP(ic).Y(); + float gc1 = geometry.tiltMCP(ic).Z(); + rot[ic] = new TGeoRotation(nameRot.Data(), ac1, bc1, gc1); + LOG(INFO) << " rot geom " << ic << " " << ac1 << " " << bc1 << " " << gc1; rot[ic]->RegisterYourself(); - - // tr[itr] = new TGeoTranslation(nameTr.Data(), xc2[ic], yc2[ic], (zc2[ic] - 80.)); - // tr[itr]->RegisterYourself(); - com[ic] = new TGeoCombiTrans(xc2[ic], yc2[ic], (zc2[ic] - 80), rot[ic]); - // com[ic] = new TGeoCombiTrans(tr[itr], rot[ic]); - mPosModuleCx[ic] = xc2[ic]; - mPosModuleCy[ic] = yc2[ic]; - mPosModuleCz[ic] = zc2[ic] - 80; - + mPosModuleCx[ic] = geometry.centerMCP(ic + nCellsA).X(); + mPosModuleCy[ic] = geometry.centerMCP(ic + nCellsA).Y(); + mPosModuleCz[ic] = geometry.centerMCP(ic + nCellsA).Z() - 80; // !!! fix later + com[ic] = new TGeoCombiTrans(mPosModuleCx[ic], mPosModuleCy[ic], mPosModuleCz[ic], rot[ic]); TGeoHMatrix hm = *com[ic]; TGeoHMatrix* ph = new TGeoHMatrix(hm); stlinC->AddNode(ins, itr, ph); @@ -219,9 +155,6 @@ void Detector::ConstructGeometry() stlinC->AddNode(cables, itr, comCable[ic]); } - //Add FT0-A support Structure to the geometry - stlinA->AddNode(constructFrameGeometry(), 1, new TGeoTranslation(0, 0, -mStartA[2] + mInStart[2])); - TGeoVolume* alice = gGeoManager->GetVolume("barrel"); alice->AddNode(stlinA, 1, new TGeoTranslation(0, 30., zdetA)); TGeoRotation* rotC = new TGeoRotation("rotC", 90., 0., 90., 90., 180., 0.); @@ -346,9 +279,7 @@ void Detector::SetCablesA(TGeoVolume* stl) TGeoVolume* cableplane = gGeoManager->GetVolume("0CAA"); // float zcableplane = -mStartA[2] + 2 * mInStart[2] + pcableplane[2]; int na = 0; - double xcell[24], ycell[24]; - for (int imcp = 0; imcp < 24; imcp++) { xcell[na] = mPosModuleAx[imcp]; ycell[na] = mPosModuleAy[imcp]; @@ -413,6 +344,48 @@ TGeoVolume* Detector::SetCablesSize(int mod) return vol; } +void Detector::addAlignableVolumes() const +{ + // + // Creates entries for alignable volumes associating the symbolic volume + // name with the corresponding volume path. + // + // First version (mainly ported from AliRoot) + // + + LOG(INFO) << "Add FT0 alignable volumes"; + + if (!gGeoManager) { + LOG(FATAL) << "TGeoManager doesn't exist !"; + return; + } + + TString volPath = Form("/cave_1/barrel_1"); + //set A side + TString volPathA = volPath + Form("/FT0A_1"); + TString symNameA = "FT0A"; + LOG(INFO) << symNameA << " <-> " << volPathA; + if (!gGeoManager->SetAlignableEntry(symNameA.Data(), volPathA.Data())) { + LOG(FATAL) << "Unable to set alignable entry ! " << symNameA << " : " << volPathA; + } + //set C side + TString volPathC = volPath + Form("/FT0C_1"); + TString symNameC = "FT0C"; + LOG(INFO) << symNameC << " <-> " << volPathC; + if (!gGeoManager->SetAlignableEntry(symNameC.Data(), volPathC.Data())) { + LOG(FATAL) << "Unable to set alignable entry ! " << symNameA << " : " << volPathA; + } + TString volPathMod, symNameMod; + for (Int_t imod = 0; imod < Geometry::NCellsA + Geometry::NCellsC; imod++) { + TString volPath = (imod < Geometry::NCellsA) ? volPathA : volPathC; + volPathMod = volPath + Form("/0MOD_%d", imod); + symNameMod = Form("0MOD_%d", imod); + if (!gGeoManager->SetAlignableEntry(symNameMod.Data(), volPathMod.Data())) { + LOG(FATAL) << (Form("Alignable entry %s not created. Volume path %s not valid", symNameMod.Data(), volPathMod.Data())); + } + } +} + // Class wrapper for construction of FT0-A support structure // The frame is constructed by defining two aluminum boxes that are placed in an L-shape, // with material sequentially removed to re-create the CAD drawings, From 1d978f916fcfdb5dd464ecc2944a6764271da0a5 Mon Sep 17 00:00:00 2001 From: Jason Barrella Date: Thu, 15 Apr 2021 21:24:05 +0200 Subject: [PATCH 047/314] fix dy calculation in TRD TrackletTransformer --- .../include/TRDBase/TrackletTransformer.h | 3 +- .../TRD/base/src/TrackletTransformer.cxx | 54 ++++++------------- 2 files changed, 18 insertions(+), 39 deletions(-) diff --git a/Detectors/TRD/base/include/TRDBase/TrackletTransformer.h b/Detectors/TRD/base/include/TRDBase/TrackletTransformer.h index 0270cddc9851f..20ff88e5d7b3a 100644 --- a/Detectors/TRD/base/include/TRDBase/TrackletTransformer.h +++ b/Detectors/TRD/base/include/TRDBase/TrackletTransformer.h @@ -43,7 +43,7 @@ class TrackletTransformer float calculateZ(int padrow); - float calculateDy(int slope, double oldLorentzAngle, double lorentzAngle, double driftVRatio); + float calculateDy(int slope, double lorentzAngle, double driftVRatio); float calibrateX(double x, double t0Correction); @@ -63,7 +63,6 @@ class TrackletTransformer float mXtb0; float mt0Correction; - float mOldLorentzAngle; float mLorentzAngle; float mDriftVRatio; }; diff --git a/Detectors/TRD/base/src/TrackletTransformer.cxx b/Detectors/TRD/base/src/TrackletTransformer.cxx index 275593725dab2..26f2cf02c5685 100644 --- a/Detectors/TRD/base/src/TrackletTransformer.cxx +++ b/Detectors/TRD/base/src/TrackletTransformer.cxx @@ -25,18 +25,15 @@ TrackletTransformer::TrackletTransformer() // 3 cm mXCathode = mGeo->cdrHght(); - // 2.221 - // mXAnode = mGeo->anodePos(); // 3.35 mXAnode = mGeo->cdrHght() + mGeo->camHght() / 2; - // 2.5 + // 5mm below cathode plane to reduce error propogation from tracklet fit and driftV mXDrift = mGeo->cdrHght() - 0.5; mXtb0 = -100; // dummy values for testing. This will change in the future when values are pulled from CCDB mt0Correction = -0.279; - mOldLorentzAngle = 0.16; - mLorentzAngle = -0.14; + mLorentzAngle = 0.14; mDriftVRatio = 1.1; } @@ -78,50 +75,33 @@ float TrackletTransformer::calculateZ(int padrow) return rowPos - rowSize / 2. - middleRowPos; } -float TrackletTransformer::calculateDy(int slope, double oldLorentzAngle, double lorentzAngle, double driftVRatio) +float TrackletTransformer::calculateDy(int slope, double lorentzAngle, double driftVRatio) { double padWidth = mPadPlane->getWidthIPad(); // temporary dummy value in cm/microsecond float vDrift = 1.5464f; - float driftHeight = mGeo->cdrHght(); - int dYsigned = 0; + int slopeSigned = 0; if (slope & (1 << (NBITSTRKLSLOPE - 1))) { - dYsigned = -((~(slope - 1)) & ((1 << NBITSTRKLSLOPE) - 1)); + slopeSigned = -((~(slope - 1)) & ((1 << NBITSTRKLSLOPE) - 1)); } else { - dYsigned = slope & ((1 << NBITSTRKLSLOPE) - 1); + slopeSigned = slope & ((1 << NBITSTRKLSLOPE) - 1); } + // dy = slope * nTimeBins * padWidth * GRANULARITYTRKLSLOPE; // nTimeBins should be number of timebins in drift region. 1 timebin is 100 nanosecond - double rawDy = dYsigned * ((driftHeight / vDrift) * 10.) * padWidth * GRANULARITYTRKLSLOPE; - - // driftDistance = 3.35 - float driftDistance = mGeo->cdrHght() + mGeo->camHght(); - - float cmSlope = rawDy / driftDistance; - - double calibratedDy = rawDy - (TMath::Tan(lorentzAngle) * driftDistance); - calibratedDy += (TMath::Tan(oldLorentzAngle) * driftDistance * driftVRatio) + cmSlope * (driftDistance * (1 - driftVRatio)); - - // ALTERNATIVE METHOD - - // double x_anode_hit = driftDistance*driftVRatio/cmSlope; - // double y_anode_hit = driftDistance*driftVRatio; - - // double x_Lorentz_drift_hit = TMath::Tan(oldLorentzAngle)*driftDistance*driftVRatio - TMath::Tan(lorentzAngle)*driftDistance; - // double y_Lorentz_drift_hit = driftDistance*driftVRatio - driftDistance; - - // double Delta_x_Lorentz_drift_hit = x_anode_hit - x_Lorentz_drift_hit; - // double Delta_y_Lorentz_drift_hit = y_anode_hit - y_Lorentz_drift_hit; - // double impact_angle_rec = TMath::ATan2(Delta_y_Lorentz_drift_hit,Delta_x_Lorentz_drift_hit); + double rawDy = slopeSigned * ((mXCathode / vDrift) * 10.) * padWidth * GRANULARITYTRKLSLOPE; - // float calibrationShift = TMath::Tan(impact_angle_rec) * driftDistance; + // NOTE: check what drift height is used in calibration code to ensure consistency + // NOTE: check sign convention of Lorentz angle + // NOTE: confirm the direction in which vDrift is measured/determined. Is it in x or in direction of drift? + double lorentzCorrection = TMath::Tan(lorentzAngle) * mXAnode; - // LOG(info) << "ORIGINAL: " << calibratedDy; - // LOG(info) << "ALTERNATIVE: " << rawDy + calibrationShift; + // assuming angle in Bailhache, fig. 4.17 would be positive in our calibration code + double calibratedDy = rawDy - lorentzCorrection; - return rawDy; // OS: temporary until calibratedDy is checked. Currently it is too far off from rawDy + return rawDy; } float TrackletTransformer::calibrateX(double x, double t0Correction) @@ -146,7 +126,6 @@ CalibratedTracklet TrackletTransformer::transformTracklet(Tracklet64 tracklet) uint64_t padrow = tracklet.getPadRow(); uint64_t column = tracklet.getColumn(); uint64_t position = tracklet.getPosition(); - // 0-255 | units:pads/timebin | granularity=1/1000 (signed integer) uint64_t slope = tracklet.getSlope(); // calculate raw local chamber space point @@ -155,8 +134,9 @@ CalibratedTracklet TrackletTransformer::transformTracklet(Tracklet64 tracklet) float y = calculateY(hcid, column, position); float z = calculateZ(padrow); - float dy = calculateDy(slope, mOldLorentzAngle, mLorentzAngle, mDriftVRatio); + float dy = calculateDy(slope, mLorentzAngle, mDriftVRatio); float calibratedX = calibrateX(x, mt0Correction); + // NOTE: Correction to y position based on x calibration NOT YET implemented. Need t0. std::array sectorSpacePoint = transformL2T(hcid, std::array{calibratedX, y, z}); From 1ff1460e04d533d9a3abd4fe79bedce069a8b78d Mon Sep 17 00:00:00 2001 From: Roman Lietava Date: Tue, 29 Jun 2021 16:07:24 +0100 Subject: [PATCH 048/314] Ctpdev: RawToDigit (#6413) * config: 1) inputs name convention 2) detinput to det mas hardcoded in digitizer (temp) * structure of RawToDigit addet to workflow * RawToDigit files to start added: work in progress * raw to digit: compiles but not tested * clang format * Ruben's fixes * clang format * workflowIO lib created * redundnat DigitWriterSpec removed, the one with digi/deco option kept * no lost TF mechanism implementation * clang format * ReaderSpec renamed to DigitReaderSpec * ruben fixes: getRaw..() removed, output with empty payload added to deadbeef * ctp-reco-workflow io fixes * double clear removed * in recoworkflow getDDigitWriter raw is true * license fixed --- .../CTP/include/DataFormatsCTP/Digits.h | 8 + .../Detectors/CTP/src/Configuration.cxx | 2 +- DataFormats/Detectors/CTP/src/Digits.cxx | 12 ++ Detectors/CTP/CMakeLists.txt | 1 + Detectors/CTP/macro/CreateCTPConfig.C | 41 ++-- .../include/CTPSimulation/Digits2Raw.h | 8 +- Detectors/CTP/simulation/src/Digitizer.cxx | 4 +- Detectors/CTP/simulation/src/Digits2Raw.cxx | 10 +- Detectors/CTP/workflow/CMakeLists.txt | 13 +- .../CTPWorkflow/RawToDigitConverterSpec.h | 67 +++++++ .../include/CTPWorkflow/RecoWorkflow.h | 49 +++++ .../workflow/src/RawToDigitConverterSpec.cxx | 179 ++++++++++++++++++ Detectors/CTP/workflow/src/RecoWorkflow.cxx | 99 ++++++++++ .../CTP/workflow/src/ctp-reco-workflow.cxx | 71 +++++++ Detectors/CTP/workflowIO/CMakeLists.txt | 19 ++ .../include/CTPWorkflowIO/DigitReaderSpec.h | 28 +++ .../include/CTPWorkflowIO/DigitWriterSpec.h} | 4 +- .../CTP/workflowIO/src/DigitReaderSpec.cxx | 131 +++++++++++++ .../src/DigitWriterSpec.cxx} | 6 +- Steer/DigitizerWorkflow/CMakeLists.txt | 4 +- .../src/SimpleDigitizerWorkflow.cxx | 4 +- 21 files changed, 722 insertions(+), 38 deletions(-) create mode 100644 Detectors/CTP/workflow/include/CTPWorkflow/RawToDigitConverterSpec.h create mode 100644 Detectors/CTP/workflow/include/CTPWorkflow/RecoWorkflow.h create mode 100644 Detectors/CTP/workflow/src/RawToDigitConverterSpec.cxx create mode 100644 Detectors/CTP/workflow/src/RecoWorkflow.cxx create mode 100644 Detectors/CTP/workflow/src/ctp-reco-workflow.cxx create mode 100644 Detectors/CTP/workflowIO/CMakeLists.txt create mode 100644 Detectors/CTP/workflowIO/include/CTPWorkflowIO/DigitReaderSpec.h rename Detectors/CTP/{workflow/include/CTPWorkflow/CTPDigitWriterSpec.h => workflowIO/include/CTPWorkflowIO/DigitWriterSpec.h} (90%) create mode 100644 Detectors/CTP/workflowIO/src/DigitReaderSpec.cxx rename Detectors/CTP/{workflow/src/CTPDigitWriterSpec.cxx => workflowIO/src/DigitWriterSpec.cxx} (91%) diff --git a/DataFormats/Detectors/CTP/include/DataFormatsCTP/Digits.h b/DataFormats/Detectors/CTP/include/DataFormatsCTP/Digits.h index 5b5a707df15ef..54871262836ba 100644 --- a/DataFormats/Detectors/CTP/include/DataFormatsCTP/Digits.h +++ b/DataFormats/Detectors/CTP/include/DataFormatsCTP/Digits.h @@ -26,8 +26,14 @@ namespace o2 namespace ctp { /// CTP related constants +static constexpr uint32_t CRULinkIDIntRec = 0; +static constexpr uint32_t NIntRecPayload = 48 + 12; +static constexpr uint32_t CRULinkIDClassRec = 1; +static constexpr uint32_t NClassPayload = 64 + 12; static constexpr uint32_t NGBT = 80; static constexpr std::uint32_t NumOfHBInTF = 256; +typedef std::bitset gbtword80_t; +// static constexpr std::uint32_t CTP_NINPUTS = 46; /// Max number of CTP inputs for all levels static constexpr std::uint32_t CTP_NCLASSES = 64; /// Number of classes in hardware static constexpr std::uint32_t CTP_MAXTRIGINPPERDET = 5; /// Max number of LM/L0inputs per detector @@ -45,6 +51,8 @@ struct CTPDigit { std::bitset CTPClassMask; CTPDigit() = default; void printStream(std::ostream& stream) const; + void setInputMask(gbtword80_t mask); + void setClassMask(gbtword80_t mask); ClassDefNV(CTPDigit, 2); }; struct CTPInputDigit { diff --git a/DataFormats/Detectors/CTP/src/Configuration.cxx b/DataFormats/Detectors/CTP/src/Configuration.cxx index 539196c8705ad..a59eb28386ad3 100644 --- a/DataFormats/Detectors/CTP/src/Configuration.cxx +++ b/DataFormats/Detectors/CTP/src/Configuration.cxx @@ -164,7 +164,7 @@ int CTPConfiguration::processConfigurationLine(std::string& line, int& level) //CTPInput *inp = const_cast (isInputInConfig(item)); CTPInput* inp = isInputInConfig(item); if (inp == nullptr) { - LOG(FATAL) << "DESCRIPTOR:" << tokens[0] << ": input not in INPUTD:" << item; + LOG(FATAL) << "DESCRIPTOR: input not in INPUTS:" << item << " LINE:" << line; } else { desc.inputs.push_back(inp); } diff --git a/DataFormats/Detectors/CTP/src/Digits.cxx b/DataFormats/Detectors/CTP/src/Digits.cxx index a278934fa5f18..cd498dc8414af 100644 --- a/DataFormats/Detectors/CTP/src/Digits.cxx +++ b/DataFormats/Detectors/CTP/src/Digits.cxx @@ -22,3 +22,15 @@ void CTPDigit::printStream(std::ostream& stream) const stream << "CTP Digit: BC " << intRecord.bc << " orbit " << intRecord.orbit << std::endl; stream << "Input Mask: " << CTPInputMask << std::endl; } +void CTPDigit::setInputMask(gbtword80_t mask) +{ + for (int i = 0; i < CTP_NINPUTS; i++) { + CTPInputMask[i] = mask[i]; + } +} +void CTPDigit::setClassMask(gbtword80_t mask) +{ + for (int i = 0; i < CTP_NCLASSES; i++) { + CTPClassMask[i] = mask[i]; + } +} diff --git a/Detectors/CTP/CMakeLists.txt b/Detectors/CTP/CMakeLists.txt index 5894b42641a8f..6345c1c44c88f 100644 --- a/Detectors/CTP/CMakeLists.txt +++ b/Detectors/CTP/CMakeLists.txt @@ -11,4 +11,5 @@ add_subdirectory(simulation) add_subdirectory(workflow) +add_subdirectory(workflowIO) add_subdirectory(macro) diff --git a/Detectors/CTP/macro/CreateCTPConfig.C b/Detectors/CTP/macro/CreateCTPConfig.C index 1b7b372e11f75..5abe052ddbf0b 100644 --- a/Detectors/CTP/macro/CreateCTPConfig.C +++ b/Detectors/CTP/macro/CreateCTPConfig.C @@ -31,28 +31,37 @@ void CreateCTPConfig(long tmin = 0, long tmax = -1, std::string ccdbHost = "http std::string cfgstr = "PARTITION: TEST \n"; cfgstr += "VERSION:0 \n"; cfgstr += "INPUTS: \n"; - cfgstr += "V0A FV0 M 0x1 \n"; - cfgstr += "V0B FV0 M 0x10 \n"; - cfgstr += "T0A FT0 M 0x100 \n"; - cfgstr += "T0B FT0 M 0x1000 \n"; + cfgstr += "MFV0MB FV0 M 0x1 \n"; + cfgstr += "MFV0MBInner FV0 M 0x2 \n"; + cfgstr += "MFV0MBOuter FV0 M 0x4 \n"; + cfgstr += "MFV0HM FV0 M 0x8 \n"; + cfgstr += "MFT0A FT0 M 0x10 \n"; + cfgstr += "MFT0B FT0 M 0x20 \n"; + cfgstr += "MFT0Vertex FT0 M 0x40 \n"; + cfgstr += "MFT0Cent FT0 M 0x80 \n"; + cfgstr += "MFT0SemiCent FT0 M 0x100 \n"; cfgstr += "DESCRIPTORS: \n"; - cfgstr += "DV0A V0A \n"; - cfgstr += "DV0B V0B \n"; - cfgstr += "DV0AND V0A V0B \n"; - cfgstr += "DT0AND T0A T0B \n"; - cfgstr += "DT0A T0A \n"; - cfgstr += "DT0B T0B \n"; - cfgstr += "DINT4 V0A V0B T0A T0B \n"; + cfgstr += "DV0MB MFV0MB \n"; + cfgstr += "DV0MBInner MFV0MBInner \n"; + cfgstr += "DV0MBOuter MFV0MBOuter \n"; + cfgstr += "DT0AND MFT0A MFT0B \n"; + cfgstr += "DT0A MFT0A \n"; + cfgstr += "DT0B MFT0B \n"; + cfgstr += "DINTV0T0 MFV0MB MFT0Vertex \n"; + cfgstr += "DINT4 MFV0MB MFT0A MFT0B \n"; + cfgstr += "DV0HM MFV0HM \n"; + cfgstr += "DT0HM MFT0Cent \n"; + cfgstr += "DHM MFV0HM MFT0Cent \n"; cfgstr += "CLUSTERS: ALL\n"; cfgstr += "ALL FV0 FT0 TPC \n"; cfgstr += "CLASSES:\n"; - cfgstr += "CMB1 0 DV0AND ALL \n"; - cfgstr += "CV0A 1 DV0A ALL \n"; - cfgstr += "CV0B 2 DV0B ALL \n"; - cfgstr += "CMB2 3 DT0AND ALL \n"; + cfgstr += "CMBV0 0 DV0MB ALL \n"; + cfgstr += "CMBT0 1 DT0AND ALL \n"; + cfgstr += "CINT4 2 DINT4 ALL \n"; + cfgstr += "CINTV0T0 3 DINTV0T0 ALL \n"; cfgstr += "CT0A 4 DT0A ALL \n"; cfgstr += "CT0B 62 DT0B ALL \n"; - cfgstr += "CINT4 63 DINT4 ALL \n"; + cfgstr += "CINTHM 63 DHM ALL \n"; ctpcfg.loadConfiguration(cfgstr); ctpcfg.printStream(std::cout); diff --git a/Detectors/CTP/simulation/include/CTPSimulation/Digits2Raw.h b/Detectors/CTP/simulation/include/CTPSimulation/Digits2Raw.h index cd0417f11c79b..8e6bdadd63676 100644 --- a/Detectors/CTP/simulation/include/CTPSimulation/Digits2Raw.h +++ b/Detectors/CTP/simulation/include/CTPSimulation/Digits2Raw.h @@ -44,7 +44,8 @@ class Digits2Raw void processDigits(const std::string& fileDigitsName); void emptyHBFMethod(const header::RDHAny* rdh, std::vector& toAdd) const; std::vector digits2HBTPayload(const gsl::span> digits, uint32_t Npld) const; - bool makeGBTWord(const std::bitset& pld, std::bitset& gbtword, uint32_t& size_gbt, uint32_t Npld) const; + bool makeGBTWord(const gbtword80_t& pld, gbtword80_t& gbtword, uint32_t& size_gbt, uint32_t Npld, gbtword80_t& gbtsend) const; + //void makeGBTWordInverse(std::vector diglets, gbtword80_t& GBTWord, gbtword80_t& remnant, uint32_t& size_gbt, uint32_t Npld) const; int digit2GBTdigit(std::bitset& gbtdigitIR, std::bitset& gbtdigitTR, const CTPDigit& digit); std::vector> addEmptyBC(std::vector>& hbfIRZS); @@ -60,12 +61,7 @@ class Digits2Raw uint32_t mActiveLink = -1; // CTP specific const int mNLinks = 2; - const uint32_t CRULinkIDIntRec = 0; - const uint32_t NIntRecPayload = 48 + 12; bool mZeroSuppressedIntRec = false; - // - const uint32_t CRULinkIDClassRec = 1; - const uint32_t NClassPayload = 64 + 12; bool mZeroSuppressedClassRec = true; //constexpr uint32_t CTPCRULinkIDMisc = 2; }; diff --git a/Detectors/CTP/simulation/src/Digitizer.cxx b/Detectors/CTP/simulation/src/Digitizer.cxx index 393cd284d40d0..7f301d27e78cb 100644 --- a/Detectors/CTP/simulation/src/Digitizer.cxx +++ b/Detectors/CTP/simulation/src/Digitizer.cxx @@ -25,7 +25,9 @@ ClassImp(Digitizer); std::vector Digitizer::process(const gsl::span detinputs) { std::map> det2ctpinp = mCTPConfiguration->getDet2InputMap(); - std::map detInputName2Mask = {{"V0A", 1}, {"V0B", 2}, {"T0A", 1}, {"T0A", 2}}; // To be taken from det database + // To be taken from config database ? + std::map detInputName2Mask = + {{"MFV0MB", 1}, {"MFV0MBInner", 2}, {"MFV0MBOuter", 4}, {"MFV0HM", 8}, {"MFT0A", 1}, {"MFT0C", 2}, {"MFT0Vertex", 4}, {"MFT0Cent", 8}, {"MFT0SemiCent", 0x10}}; std::map> predigits; for (auto const& inp : detinputs) { predigits[inp.intRecord].push_back(&inp); diff --git a/Detectors/CTP/simulation/src/Digits2Raw.cxx b/Detectors/CTP/simulation/src/Digits2Raw.cxx index 19825949b9b2a..7d95ec87b9962 100644 --- a/Detectors/CTP/simulation/src/Digits2Raw.cxx +++ b/Detectors/CTP/simulation/src/Digits2Raw.cxx @@ -133,11 +133,12 @@ std::vector Digits2Raw::digits2HBTPayload(const gsl::span gbtword; // if not zero suppressed add (bcid,0) for (auto const& dig : digits) { - if (makeGBTWord(dig, gbtword, size_gbt, Npld) == true) { + std::bitset gbtsend; + if (makeGBTWord(dig, gbtword, size_gbt, Npld, gbtsend) == true) { for (uint32_t i = 0; i < NGBT; i += 8) { uint32_t w = 0; for (uint32_t j = 0; j < 8; j++) { - w += (1 << j) * gbtword[i + j]; + w += (1 << j) * gbtsend[i + j]; } char c = w; toAdd.push_back(c); @@ -152,7 +153,9 @@ std::vector Digits2Raw::digits2HBTPayload(const gsl::span& pld, std::bitset& gbtword, uint32_t& size_gbt, uint32_t Npld) const +// Adding payload of size& pld, std::bitset& gb } else { // sendData //printBitset(gbtword,"Sending"); + gbtsend = gbtword; gbtword = pld >> (NGBT - size_gbt); size_gbt = size_gbt + Npld - NGBT; valid = true; diff --git a/Detectors/CTP/workflow/CMakeLists.txt b/Detectors/CTP/workflow/CMakeLists.txt index eeca03da47c30..afbf17ce77f8d 100644 --- a/Detectors/CTP/workflow/CMakeLists.txt +++ b/Detectors/CTP/workflow/CMakeLists.txt @@ -10,7 +10,16 @@ # or submit itself to any jurisdiction. o2_add_library(CTPWorkflow - SOURCES src/CTPDigitWriterSpec.cxx + SOURCES src/RecoWorkflow.cxx + src/RawToDigitConverterSpec.cxx PUBLIC_LINK_LIBRARIES O2::Framework O2::DataFormatsCTP - O2::DPLUtils) \ No newline at end of file + O2::DPLUtils + O2::DetectorsRaw + O2::Algorithm + O2::CTPWorkflowIO) +o2_add_executable(reco-workflow + COMPONENT_NAME ctp + SOURCES src/ctp-reco-workflow.cxx + PUBLIC_LINK_LIBRARIES O2::Algorithm + O2::CTPWorkflow) diff --git a/Detectors/CTP/workflow/include/CTPWorkflow/RawToDigitConverterSpec.h b/Detectors/CTP/workflow/include/CTPWorkflow/RawToDigitConverterSpec.h new file mode 100644 index 0000000000000..22fdb0a979d3b --- /dev/null +++ b/Detectors/CTP/workflow/include/CTPWorkflow/RawToDigitConverterSpec.h @@ -0,0 +1,67 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include + +#include "Framework/DataProcessorSpec.h" +#include "Framework/Task.h" +#include "DataFormatsCTP/Digits.h" + +namespace o2 +{ + +namespace ctp +{ + +namespace reco_workflow +{ + +/// \class RawToDigitConverterSpec +/// \brief Coverter task for Raw data to CTP digits +/// \author Roman Lietava from CPV example +/// +class RawToDigitConverterSpec : public framework::Task +{ + public: + /// \brief Constructor + /// \param propagateMC If true the MCTruthContainer is propagated to the output + RawToDigitConverterSpec() = default; + + /// \brief Destructor + ~RawToDigitConverterSpec() override = default; + + /// \brief Initializing the RawToDigitConverterSpec + /// \param ctx Init context + void init(framework::InitContext& ctx) final; + + /// \brief Run conversion of raw data to cells + /// \param ctx Processing context + /// + /// The following branches are linked: + /// Input RawData: {"ROUT", "RAWDATA", 0, Lifetime::Timeframe} + /// Output HW errors: {"CTP", "RAWHWERRORS", 0, Lifetime::Timeframe} -later + void run(framework::ProcessingContext& ctx) final; + void makeGBTWordInverse(std::vector& diglets, gbtword80_t& GBTWord, gbtword80_t& remnant, uint32_t& size_gbt, uint32_t Npld) const; + + protected: + private: + std::vector mOutputDigits; +}; + +/// \brief Creating DataProcessorSpec for the CTP +/// +o2::framework::DataProcessorSpec getRawToDigitConverterSpec(bool askSTFDist); + +} // namespace reco_workflow + +} // namespace ctp + +} // namespace o2 diff --git a/Detectors/CTP/workflow/include/CTPWorkflow/RecoWorkflow.h b/Detectors/CTP/workflow/include/CTPWorkflow/RecoWorkflow.h new file mode 100644 index 0000000000000..9a4826e64102e --- /dev/null +++ b/Detectors/CTP/workflow/include/CTPWorkflow/RecoWorkflow.h @@ -0,0 +1,49 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#ifndef O2_CTP_RECOWORKFLOW_H +#define O2_CTP_RECOWORKFLOW_H + +#include "Framework/WorkflowSpec.h" +#include +#include + +namespace o2 +{ + +namespace ctp +{ + +namespace reco_workflow +{ + +/// define input and output types of the workflow +enum struct InputType { Digits, // read digits from file + Raw // read data in raw page format from file +}; +enum struct OutputType { Digits, + Raw +}; + +/// create the workflow for CTP reconstruction +framework::WorkflowSpec getWorkflow(bool disableRootInp, + bool disableRootOut, + bool propagateMC = true, + bool noLostTF = false, + std::string const& cfgInput = "raw", // + std::string const& cfgOutput = "digits" // +); +} // namespace reco_workflow + +} // namespace ctp + +} // namespace o2 +#endif diff --git a/Detectors/CTP/workflow/src/RawToDigitConverterSpec.cxx b/Detectors/CTP/workflow/src/RawToDigitConverterSpec.cxx new file mode 100644 index 0000000000000..a634011dbc27f --- /dev/null +++ b/Detectors/CTP/workflow/src/RawToDigitConverterSpec.cxx @@ -0,0 +1,179 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include +#include "FairLogger.h" +#include "CommonDataFormat/InteractionRecord.h" +#include "Framework/InputRecordWalker.h" +#include "Framework/WorkflowSpec.h" +#include "DetectorsRaw/RDHUtils.h" +#include "DPLUtils/DPLRawParser.h" +#include "CTPWorkflow/RawToDigitConverterSpec.h" + +using namespace o2::ctp::reco_workflow; + +void RawToDigitConverterSpec::init(framework::InitContext& ctx) +{ +} + +void RawToDigitConverterSpec::run(framework::ProcessingContext& ctx) +{ + mOutputDigits.clear(); + std::map digits; + const gbtword80_t bcidmask = 0xfff; + gbtword80_t pldmask; + using InputSpec = o2::framework::InputSpec; + using ConcreteDataTypeMatcher = o2::framework::ConcreteDataTypeMatcher; + using Lifetime = o2::framework::Lifetime; + //mOutputHWErrors.clear(); + std::vector filter{InputSpec{"filter", ConcreteDataTypeMatcher{"CTP", "RAWDATA"}, Lifetime::Timeframe}}; + o2::framework::DPLRawParser parser(ctx.inputs(), filter); + //setUpDummyLink + auto& inputs = ctx.inputs(); + // if we see requested data type input with 0xDEADBEEF subspec and 0 payload this means that the "delayed message" + // mechanism created it in absence of real data from upstream. Processor should send empty output to not block the workflow + { + std::vector dummy{InputSpec{"dummy", o2::framework::ConcreteDataMatcher{"CTP", "RAWDATA", 0xDEADBEEF}}}; + for (const auto& ref : o2::framework::InputRecordWalker(inputs, dummy)) { + const auto dh = o2::framework::DataRefUtils::getHeader(ref); + if (dh->payloadSize == 0) { + LOGP(WARNING, "Found input [{}/{}/{:#x}] TF#{} 1st_orbit:{} Payload {} : assuming no payload for all links in this TF", + dh->dataOrigin.str, dh->dataDescription.str, dh->subSpecification, dh->tfCounter, dh->firstTForbit, dh->payloadSize); + ctx.outputs().snapshot(o2::framework::Output{"CTP", "DIGITS", 0, o2::framework::Lifetime::Timeframe}, mOutputDigits); + return; + } + } + } + // + uint32_t payloadCTP; + for (auto it = parser.begin(); it != parser.end(); ++it) { + auto rdh = it.get_if(); + auto triggerOrbit = o2::raw::RDHUtils::getTriggerOrbit(rdh); + auto linkCRU = o2::raw::RDHUtils::getLinkID(rdh); // 0 = IR, 1 = TCR + if (linkCRU == o2::ctp::CRULinkIDIntRec) { + payloadCTP = o2::ctp::NIntRecPayload; + } else if (linkCRU == o2::ctp::CRULinkIDClassRec) { + payloadCTP = o2::ctp::NClassPayload; + } else { + LOG(ERROR) << "Unxpected CTP CRU link:" << linkCRU; + } + pldmask = 0; + for (uint32_t i = 0; i < payloadCTP; i++) { + pldmask[12 + i] = 1; + } + // TF in 128 bits words + gsl::span payload(it.data(), it.size()); + gbtword80_t gbtWord = 0; + gbtword80_t remnant = 0; + uint32_t size_gbt = 0; + int wordCount = 0; + std::vector diglets; + for (auto payloadWord : payload) { + if (wordCount == 15) { + wordCount = 0; + } else if (wordCount > 9) { + wordCount++; + } else if (wordCount == 9) { + wordCount++; + diglets.clear(); + makeGBTWordInverse(diglets, gbtWord, remnant, size_gbt, payloadCTP); + // save digit in buffer recs + for (auto diglet : diglets) { + gbtword80_t pld = (diglet & pldmask); + if (pld.count() == 0) { + continue; + } + pld <<= 12; + CTPDigit digit; + uint32_t bcid = (diglet & bcidmask).to_ulong(); + o2::InteractionRecord ir; + ir.orbit = triggerOrbit; + ir.bc = bcid; + digit.intRecord = ir; + if (linkCRU == o2::ctp::CRULinkIDIntRec) { + if (digits.count(ir) == 1) { + if (digits[ir].CTPInputMask.count() == 0) { + digits[ir].setInputMask(pld); + } else { + LOG(ERROR) << "Two CTP IRs for same timestamp."; + } + } else { + digit.setInputMask(pld); + digits[ir] = digit; + } + } else if (linkCRU == o2::ctp::CRULinkIDClassRec) { + if (digits.count(ir) == 1) { + if (digits[ir].CTPClassMask.count() == 0) { + digits[ir].setClassMask(pld); + } else { + LOG(ERROR) << "Two CTP Class masks for same timestamp"; + } + } else { + digit.setClassMask(pld); + digits[ir] = digit; + } + } else { + LOG(ERROR) << "Unxpected CTP CRU link:" << linkCRU; + } + } + gbtWord = 0; + } else { + gbtWord |= payloadWord >> (wordCount * 8); + wordCount++; + } + } + } + for (auto const digmap : digits) { + mOutputDigits.push_back(digmap.second); + } + + LOG(INFO) << "[CTPRawToDigitConverter - run] Writing " << mOutputDigits.size() << " digits ..."; + ctx.outputs().snapshot(o2::framework::Output{"CTP", "DIGITS", 0, o2::framework::Lifetime::Timeframe}, mOutputDigits); + //ctx.outputs().snapshot(o2::framework::Output{"CPV", "RAWHWERRORS", 0, o2::framework::Lifetime::Timeframe}, mOutputHWErrors); +} +// Inverse of Digits2Raw::makeGBTWord +void RawToDigitConverterSpec::makeGBTWordInverse(std::vector& diglets, gbtword80_t& GBTWord, gbtword80_t& remnant, uint32_t& size_gbt, uint32_t Npld) const +{ + gbtword80_t diglet = remnant; + uint32_t i = 0; + while (i < (NGBT - Npld)) { + std::bitset masksize = 0; + for (uint32_t j = 0; j < (Npld - size_gbt); j++) { + masksize[j] = 1; + } + diglet |= (GBTWord & masksize) << (size_gbt); + diglets.push_back(diglet); + diglet = 0; + i += Npld - size_gbt; + GBTWord = GBTWord >> (Npld - size_gbt); + size_gbt = 0; + } + size_gbt = NGBT - i; + remnant = GBTWord; +} +o2::framework::DataProcessorSpec o2::ctp::reco_workflow::getRawToDigitConverterSpec(bool askDISTSTF) +{ + std::vector inputs; + inputs.emplace_back("TF", o2::framework::ConcreteDataTypeMatcher{"CTP", "RAWDATA"}, o2::framework::Lifetime::Optional); + if (askDISTSTF) { + inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe); + } + + std::vector outputs; + outputs.emplace_back("CTP", "DIGITS", 0, o2::framework::Lifetime::Timeframe); + + return o2::framework::DataProcessorSpec{ + "CTP-RawStreamDecoder", + inputs, + outputs, + o2::framework::AlgorithmSpec{o2::framework::adaptFromTask()}, + o2::framework::Options{{"result-file", o2::framework::VariantType::String, "/tmp/hmpCTPDecodeResults", {"Base name of the decoding results files."}}}}; +} diff --git a/Detectors/CTP/workflow/src/RecoWorkflow.cxx b/Detectors/CTP/workflow/src/RecoWorkflow.cxx new file mode 100644 index 0000000000000..6b17c5c8b7ffb --- /dev/null +++ b/Detectors/CTP/workflow/src/RecoWorkflow.cxx @@ -0,0 +1,99 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include +#include +#include + +#include "FairLogger.h" + +#include "Framework/RootSerializationSupport.h" +#include "Algorithm/RangeTokenizer.h" +#include "DPLUtils/MakeRootTreeWriterSpec.h" +#include "DataFormatsCTP/Digits.h" +#include "SimulationDataFormat/MCCompLabel.h" +#include "CTPWorkflow/RecoWorkflow.h" +#include "CTPWorkflowIO/DigitReaderSpec.h" +#include "CTPWorkflowIO/DigitWriterSpec.h" +#include "CTPWorkflow/RawToDigitConverterSpec.h" +#include "Framework/DataSpecUtils.h" +#include "SimulationDataFormat/MCTruthContainer.h" + +using namespace o2::dataformats; + +namespace o2 +{ + +namespace ctp +{ + +namespace reco_workflow +{ + +const std::unordered_map InputMap{ + {"raw", InputType::Raw}, + {"digits", InputType::Digits}}; + +const std::unordered_map OutputMap{ + {"digits", OutputType::Digits}}; + +o2::framework::WorkflowSpec getWorkflow(bool disableRootInp, + bool disableRootOut, + bool propagateMC, + bool noLostTF, + std::string const& cfgInput, + std::string const& cfgOutput) +{ + InputType inputType; + + try { + inputType = InputMap.at(cfgInput); + } catch (std::out_of_range&) { + throw std::invalid_argument(std::string("invalid input type: ") + cfgInput); + } + std::vector outputTypes; + try { + outputTypes = RangeTokenizer::tokenize(cfgOutput, [](std::string const& token) { return OutputMap.at(token); }); + } catch (std::out_of_range&) { + throw std::invalid_argument(std::string("invalid output type: ") + cfgOutput); + } + auto isEnabled = [&outputTypes](OutputType type) { + return std::find(outputTypes.begin(), outputTypes.end(), type) != outputTypes.end(); + }; + + o2::framework::WorkflowSpec specs; + + // //Raw to .... + if (inputType == InputType::Raw) { + //no explicit raw reader + + if (isEnabled(OutputType::Digits)) { + specs.emplace_back(o2::ctp::reco_workflow::getRawToDigitConverterSpec(noLostTF)); + if (!disableRootOut) { + specs.emplace_back(o2::ctp::getDigitWriterSpec(true)); + } + } + } + + // Digits to .... + if (inputType == InputType::Digits) { + if (!disableRootInp) { + specs.emplace_back(o2::ctp::getDigitsReaderSpec(propagateMC)); + } + } + return std::move(specs); +} + +} // namespace reco_workflow + +} // namespace ctp + +} // namespace o2 diff --git a/Detectors/CTP/workflow/src/ctp-reco-workflow.cxx b/Detectors/CTP/workflow/src/ctp-reco-workflow.cxx new file mode 100644 index 0000000000000..684a677abda0d --- /dev/null +++ b/Detectors/CTP/workflow/src/ctp-reco-workflow.cxx @@ -0,0 +1,71 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// @file ctp-reco-workflow.cxx +/// @author RL from CPV example +/// @brief Basic DPL workflow for CTP reconstruction starting from digits +#include "Framework/WorkflowSpec.h" +#include "Framework/ConfigParamSpec.h" +#include "CTPWorkflow/RecoWorkflow.h" +#include "Algorithm/RangeTokenizer.h" +#include "CommonUtils/ConfigurableParam.h" +#include "DetectorsRaw/HBFUtilsInitializer.h" + +#include +#include +#include + +// add workflow options, note that customization needs to be declared before +// including Framework/runDataProcessing +void customize(std::vector& workflowOptions) +{ + std::vector options{ + {"input-type", o2::framework::VariantType::String, "raw", {"digits, raw"}}, + {"output-type", o2::framework::VariantType::String, "digits", {"digits, raw"}}, + {"disable-mc", o2::framework::VariantType::Bool, false, {"disable sending of MC information"}}, + {"disable-root-input", o2::framework::VariantType::Bool, false, {"disable root-files input reader"}}, + {"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writer"}}, + {"configKeyValues", o2::framework::VariantType::String, "", {"Semicolon separated key=value strings ..."}}, + {"ignore-dist-stf", o2::framework::VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}}; + o2::raw::HBFUtilsInitializer::addConfigOption(options); + std::swap(workflowOptions, options); +} + +#include "Framework/runDataProcessing.h" // the main driver + +/// The workflow executable for the stand alone CTP reconstruction workflow +/// The basic workflow for CTP reconstruction is defined in RecoWorkflow.cxx +/// and contains the following default processors +/// - digit reader +/// +/// The default workflow can be customized by specifying input and output types +/// e.g. digits, raw +/// +/// MC info is processed by default, disabled by using command line option `--disable-mc` +/// +/// This function hooks up the the workflow specifications into the DPL driver. +o2::framework::WorkflowSpec defineDataProcessing(o2::framework::ConfigContext const& cfgc) +{ + // + // Update the (declared) parameters if changed from the command line + o2::conf::ConfigurableParam::updateFromString(cfgc.options().get("configKeyValues")); + + auto wf = o2::ctp::reco_workflow::getWorkflow(cfgc.options().get("disable-root-input"), + cfgc.options().get("disable-root-output"), + !cfgc.options().get("disable-mc"), + !cfgc.options().get("ignore-dist-stf"), // + cfgc.options().get("input-type"), // + cfgc.options().get("output-type") // + ); + // configure dpl timer to inject correct firstTFOrbit: start from the 1st orbit of TF containing 1st sampled orbit + o2::raw::HBFUtilsInitializer hbfIni(cfgc, wf); + return std::move(wf); +} diff --git a/Detectors/CTP/workflowIO/CMakeLists.txt b/Detectors/CTP/workflowIO/CMakeLists.txt new file mode 100644 index 0000000000000..5823468f6d306 --- /dev/null +++ b/Detectors/CTP/workflowIO/CMakeLists.txt @@ -0,0 +1,19 @@ +# Copyright CERN and copyright holders of ALICE O2. This software is distributed +# under the terms of the GNU General Public License v3 (GPL Version 3), copied +# verbatim in the file "COPYING". +# +# See http://alice-o2.web.cern.ch/license for full licensing information. +# +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization or +# submit itself to any jurisdiction. + +o2_add_library(CTPWorkflowIO + SOURCES src/DigitReaderSpec.cxx + src/DigitWriterSpec.cxx + PUBLIC_LINK_LIBRARIES O2::Framework + O2::DataFormatsCTP + O2::DPLUtils + O2::DetectorsRaw + O2::Algorithm + O2::CTPWorkflowIO) diff --git a/Detectors/CTP/workflowIO/include/CTPWorkflowIO/DigitReaderSpec.h b/Detectors/CTP/workflowIO/include/CTPWorkflowIO/DigitReaderSpec.h new file mode 100644 index 0000000000000..c3a612e2fbfd7 --- /dev/null +++ b/Detectors/CTP/workflowIO/include/CTPWorkflowIO/DigitReaderSpec.h @@ -0,0 +1,28 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "Framework/DataProcessorSpec.h" +#include "Framework/OutputSpec.h" +#include +#include + +namespace o2 +{ + +namespace ctp +{ + +using OutputSpec = framework::OutputSpec; + +framework::DataProcessorSpec getDigitsReaderSpec(bool propagateMC = true); + +} // namespace ctp +} // end namespace o2 diff --git a/Detectors/CTP/workflow/include/CTPWorkflow/CTPDigitWriterSpec.h b/Detectors/CTP/workflowIO/include/CTPWorkflowIO/DigitWriterSpec.h similarity index 90% rename from Detectors/CTP/workflow/include/CTPWorkflow/CTPDigitWriterSpec.h rename to Detectors/CTP/workflowIO/include/CTPWorkflowIO/DigitWriterSpec.h index aa7941622f050..d03b6a95ff72a 100644 --- a/Detectors/CTP/workflow/include/CTPWorkflow/CTPDigitWriterSpec.h +++ b/Detectors/CTP/workflowIO/include/CTPWorkflowIO/DigitWriterSpec.h @@ -9,7 +9,7 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -/// \file CTPDigitWriterSpec.h +/// \file DigitWriterSpec.h /// \author Roman Lietava #ifndef O2_CTPDIGITWRITERSPEC_H @@ -25,7 +25,7 @@ namespace o2 { namespace ctp { -framework::DataProcessorSpec getCTPDigitWriterSpec(bool raw = true); +framework::DataProcessorSpec getDigitWriterSpec(bool raw = true); } } // namespace o2 diff --git a/Detectors/CTP/workflowIO/src/DigitReaderSpec.cxx b/Detectors/CTP/workflowIO/src/DigitReaderSpec.cxx new file mode 100644 index 0000000000000..e8ccf1006ae8b --- /dev/null +++ b/Detectors/CTP/workflowIO/src/DigitReaderSpec.cxx @@ -0,0 +1,131 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "CTPWorkflowIO/DigitReaderSpec.h" +#include "Framework/ConfigParamRegistry.h" +#include "Framework/ControlService.h" +#include "Headers/DataHeader.h" +#include "DPLUtils/RootTreeReader.h" +#include "DPLUtils/MakeRootTreeWriterSpec.h" +#include "Framework/DataSpecUtils.h" +#include "DetectorsCommonDataFormats/NameConf.h" +#include +#include + +using namespace o2::framework; + +namespace o2 +{ + +namespace ctp +{ + +struct ProcessAttributes { + std::shared_ptr reader; + std::string datatype; + bool terminateOnEod; + bool finished; +}; + +DataProcessorSpec getDigitsReaderSpec(bool propagateMC) +{ + if (propagateMC) { + LOG(WARNING) << "MC truth not implemented for CTP, continouing wothout MC"; + propagateMC = false; + } + auto initFunction = [propagateMC](InitContext& ic) { + // get the option from the init context + auto filename = o2::utils::Str::concat_string(o2::utils::Str::rectifyDirectory(ic.options().get("input-dir")), + ic.options().get("infile")); + auto treename = ic.options().get("treename"); + auto nofEvents = ic.options().get("nevents"); + auto publishingMode = nofEvents == -1 ? RootTreeReader::PublishingMode::Single : RootTreeReader::PublishingMode::Loop; + auto processAttributes = std::make_shared(); + { + processAttributes->terminateOnEod = ic.options().get("terminate-on-eod"); + processAttributes->finished = false; + processAttributes->datatype = "CTPDigit"; + constexpr auto persistency = Lifetime::Timeframe; + o2::header::DataHeader::SubSpecificationType subSpec = 0; + if (propagateMC) { + //processAttributes->reader = std::make_shared(treename.c_str(), // tree name + //filename.c_str(), // input file name + //nofEvents, // number of entries to publish + //publishingMode, + //Output{"CTP", "DIGITS", subSpec, persistency}, + //"CTPDigit", // name of data branch + //Output{"CTP", "DIGITSMCTR", subSpec, persistency},"CPVDigitMCTruth"); + } + processAttributes->reader = std::make_shared(treename.c_str(), // tree name + filename.c_str(), // input file name + nofEvents, // number of entries to publish + publishingMode, + Output{"CTP", "DIGITS", subSpec, persistency}, + "CTPDigit"); // name of data branch + } + + auto processFunction = [processAttributes, propagateMC](ProcessingContext& pc) { // false for propagateMC + if (processAttributes->finished) { + return; + } + + auto publish = [&processAttributes, &pc, propagateMC]() { // false for propgateMC + //o2::cpv::CPVBlockHeader cpvheader(true); + //if (processAttributes->reader->next()) { + //(*processAttributes->reader)(pc, cpvheader); + //} else { + //processAttributes->reader.reset(); + //return false; + //} + return true; + }; + + bool active(true); + if (!publish()) { + active = false; + // Send dummy header with no payload option + //o2::cpv::CPVBlockHeader dummyheader(false); + //pc.outputs().snapshot(OutputRef{"output", 0, {dummyheader}}, 0); + //pc.outputs().snapshot(OutputRef{"outputTR", 0, {dummyheader}}, 0); + //if (propagateMC) { + //pc.outputs().snapshot(OutputRef{"outputMC", 0, {dummyheader}}, 0); + //} + } + if ((processAttributes->finished = (active == false)) && processAttributes->terminateOnEod) { + pc.services().get().endOfStream(); + pc.services().get().readyToQuit(framework::QuitRequest::Me); + } + }; + return processFunction; + }; + + std::vector outputSpecs; + outputSpecs.emplace_back(OutputSpec{{"output"}, "CTP", "DIGITS", 0, Lifetime::Timeframe}); + if (propagateMC) { + outputSpecs.emplace_back(OutputSpec{{"outputMC"}, "CTP", "DIGITSMCTR", 0, Lifetime::Timeframe}); + } + + return DataProcessorSpec{ + "ctp-digit-reader", + Inputs{}, // no inputs + outputSpecs, + AlgorithmSpec(initFunction), + Options{ + {"infile", VariantType::String, "ctpdigits.root", {"Name of the input file"}}, + {"input-dir", VariantType::String, "none", {"Input directory"}}, + {"treename", VariantType::String, "o2sim", {"Name of input tree"}}, + {"nevents", VariantType::Int, -1, {"number of events to run, -1: inf loop"}}, + {"terminate-on-eod", VariantType::Bool, true, {"terminate on end-of-data"}}, + }}; +} +} // namespace ctp + +} // namespace o2 diff --git a/Detectors/CTP/workflow/src/CTPDigitWriterSpec.cxx b/Detectors/CTP/workflowIO/src/DigitWriterSpec.cxx similarity index 91% rename from Detectors/CTP/workflow/src/CTPDigitWriterSpec.cxx rename to Detectors/CTP/workflowIO/src/DigitWriterSpec.cxx index 7fa65c3cd2e76..51729f9ca85df 100644 --- a/Detectors/CTP/workflow/src/CTPDigitWriterSpec.cxx +++ b/Detectors/CTP/workflowIO/src/DigitWriterSpec.cxx @@ -9,10 +9,10 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -/// \file CTPDigitWriterSpec.cxx +/// \file DigitWriterSpec.cxx /// \author Roman Lietava -#include "CTPWorkflow/CTPDigitWriterSpec.h" +#include "CTPWorkflowIO/DigitWriterSpec.h" namespace o2 { @@ -21,7 +21,7 @@ namespace ctp template using BranchDefinition = framework::MakeRootTreeWriterSpec::BranchDefinition; -framework::DataProcessorSpec getCTPDigitWriterSpec(bool raw) +framework::DataProcessorSpec getDigitWriterSpec(bool raw) { using InputSpec = framework::InputSpec; using MakeRootTreeWriterSpec = framework::MakeRootTreeWriterSpec; diff --git a/Steer/DigitizerWorkflow/CMakeLists.txt b/Steer/DigitizerWorkflow/CMakeLists.txt index 5667719d2836a..a216b9726cc22 100644 --- a/Steer/DigitizerWorkflow/CMakeLists.txt +++ b/Steer/DigitizerWorkflow/CMakeLists.txt @@ -40,7 +40,7 @@ o2_add_executable(digitizer-workflow O2::FV0Simulation O2::FDDSimulation O2::CTPSimulation - O2::CTPWorkflow + O2::CTPWorkflowIO O2::FDDWorkflow O2::HMPIDSimulation O2::ITSMFTSimulation @@ -98,7 +98,7 @@ o2_add_executable(digitizer-workflow O2::FV0Simulation O2::FDDSimulation O2::CTPSimulation - O2::CTPWorkflow + O2::CTPWorkflowIO O2::FDDWorkflow O2::HMPIDSimulation O2::ITSMFTSimulation diff --git a/Steer/DigitizerWorkflow/src/SimpleDigitizerWorkflow.cxx b/Steer/DigitizerWorkflow/src/SimpleDigitizerWorkflow.cxx index 9016d80c34f7b..0681dc9ab16f9 100644 --- a/Steer/DigitizerWorkflow/src/SimpleDigitizerWorkflow.cxx +++ b/Steer/DigitizerWorkflow/src/SimpleDigitizerWorkflow.cxx @@ -52,7 +52,7 @@ // for CTP #include "CTPDigitizerSpec.h" -#include "CTPWorkflow/CTPDigitWriterSpec.h" +#include "CTPWorkflowIO/DigitWriterSpec.h" // for FV0 #include "FV0DigitizerSpec.h" @@ -627,7 +627,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) // connect the CTP digitization specs.emplace_back(o2::ctp::getCTPDigitizerSpec(fanoutsize++, detList)); // connect the CTP digit writer - specs.emplace_back(o2::ctp::getCTPDigitWriterSpec(false)); + specs.emplace_back(o2::ctp::getDigitWriterSpec(false)); } // GRP updater: must come after all detectors since requires their list specs.emplace_back(o2::parameters::getGRPUpdaterSpec(grpfile, detList)); From 3eb01802d28a3667adb1155b2825c4f9c8fd95d1 Mon Sep 17 00:00:00 2001 From: Fabrizio Date: Wed, 30 Jun 2021 11:26:57 +0200 Subject: [PATCH 049/314] Add message for hyperloop tests (#6545) --- Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx | 1 + 1 file changed, 1 insertion(+) diff --git a/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx b/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx index c6fc5932987a5..5c2b789eb532d 100644 --- a/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx +++ b/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx @@ -396,6 +396,7 @@ struct HfTrackIndexSkimsCreator { SelectedTracks const& tracks) { + LOGF(INFO, "Building candidates for collision ID: %d", collision.globalIndex()); //can be added to run over limited collisions per file - for tesing purposes /* if (nCollsMax > -1){ From 7cedfaf10f050f7c5397edfeb119d8337b30ea2b Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Wed, 30 Jun 2021 14:01:53 +0200 Subject: [PATCH 050/314] Update COOKBOOK.md --- Framework/Core/COOKBOOK.md | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/Framework/Core/COOKBOOK.md b/Framework/Core/COOKBOOK.md index 63b9088ee1f4c..2ae12e05a2963 100644 --- a/Framework/Core/COOKBOOK.md +++ b/Framework/Core/COOKBOOK.md @@ -225,8 +225,6 @@ the the Origin and Description of the `InputSpec` to be: If the timestamp is not specified, DPL will look it up in the `DataProcessingHeader`. -# Future features - ## Lifetime support While initially foreseen in the design, Lifetime for Inputs / Outputs has not @@ -241,10 +239,6 @@ to specify the following Lifetime types: of the Message Passing API to create * QA: an output which once send is also proposed as input to the subsequent computation, allowing for accumulating data (e.g. histograms). -* SubTimeframe: an input which gets processed only once which has a - granularity of less than a timeframe. Within one computation - multiple of these can be created. They get sent as soon as - they go out of scope. ## Wildcard support for InputSpec / OutputSpec @@ -465,3 +459,15 @@ some-workflow --monitoring-backend=no-op:// ``` notice that the GUI will not function properly if you do so. + +## Profiling + +The DPL GUI comes with support to run a profiler on a device for 30s. In order to do so you must click on the device you want to profile, which will show the device inspector for the selected device on the right. Then you can click on "Profile 30s" to start the profiler on the selected dataprocessor. + +By default results are either dumped to a `perf-$O2PROFILEDPID.data` (on linux) or displayed in Instruments (on macOS). In order to visualise the perf file you have to then convert it to a flamegraph via: + +``` +perf script -i perf.data > profile.linux-perf.txt +``` + +and then you can either upload it to https://www.speedscope.app or use chrome://tracing. From 848ec8bf3ee4ee945a7822f0a057e6ee089d2a02 Mon Sep 17 00:00:00 2001 From: sstiefel19 <55794986+sstiefel19@users.noreply.github.com> Date: Wed, 30 Jun 2021 16:58:11 +0200 Subject: [PATCH 051/314] PWGGA/gammaConversionsMC (#6547) --- Analysis/Tasks/PWGGA/CMakeLists.txt | 4 +- ...ConversionsMC.cxx => gammaConversions.cxx} | 150 ++++++++++++------ 2 files changed, 101 insertions(+), 53 deletions(-) rename Analysis/Tasks/PWGGA/{gammaConversionsMC.cxx => gammaConversions.cxx} (79%) diff --git a/Analysis/Tasks/PWGGA/CMakeLists.txt b/Analysis/Tasks/PWGGA/CMakeLists.txt index 9f42842030240..a545f050c4943 100644 --- a/Analysis/Tasks/PWGGA/CMakeLists.txt +++ b/Analysis/Tasks/PWGGA/CMakeLists.txt @@ -1,4 +1,4 @@ -o2_add_dpl_workflow(gammaconversionsmc - SOURCES gammaConversionsMC.cxx +o2_add_dpl_workflow(gammaconversions + SOURCES gammaConversions.cxx PUBLIC_LINK_LIBRARIES O2::Framework O2::DetectorsBase O2::AnalysisDataModel O2::AnalysisCore O2::DetectorsVertexing COMPONENT_NAME Analysis) diff --git a/Analysis/Tasks/PWGGA/gammaConversionsMC.cxx b/Analysis/Tasks/PWGGA/gammaConversions.cxx similarity index 79% rename from Analysis/Tasks/PWGGA/gammaConversionsMC.cxx rename to Analysis/Tasks/PWGGA/gammaConversions.cxx index b5e39454ce312..1ac47cb816cc3 100644 --- a/Analysis/Tasks/PWGGA/gammaConversionsMC.cxx +++ b/Analysis/Tasks/PWGGA/gammaConversions.cxx @@ -9,10 +9,11 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#include "Framework/runDataProcessing.h" #include "Framework/AnalysisTask.h" #include "Framework/AnalysisDataModel.h" +#include "AnalysisDataModel/EventSelection.h" + #include "AnalysisDataModel/StrangenessTables.h" #include "AnalysisDataModel/HFSecondaryVertex.h" // for BigTracks @@ -29,9 +30,20 @@ using namespace o2; using namespace o2::framework; using namespace o2::framework::expressions; -using tracksAndTPCInfo = soa::Join; +using collisionIt = aod::Collisions::iterator; +using collisionEvSelIt = soa::Join::iterator; -struct GammaConversionsMc { +using tracksAndTPCInfo = soa::Join; +using tracksAndTPCInfoMC = soa::Join; + +void customize(std::vector& workflowOptions) +{ + ConfigParamSpec optionDoMC{"doMC", VariantType::Bool, false, {"Use MC info"}}; + workflowOptions.push_back(optionDoMC); +} +#include "Framework/runDataProcessing.h" + +struct GammaConversions { Configurable fSinglePtCut{"fSinglePtCut", 0.04, "minimum daughter track pt"}; @@ -89,15 +101,15 @@ struct GammaConversionsMc { {"hArmenteros", "hArmenteros", {HistType::kTH2F, {{200, -1.f, 1.f}, {250, 0.f, 25.f}}}}, {"hPsiPtRec", "hPsiPtRec", {HistType::kTH2F, {{500, -2.f, 2.f}, {100, 0.f, 25.f}}}}, - {"hCosPAngle", "hCosPAngle", {HistType::kTH1F, {{1000, -1.f, 1.f}}}}, + {"hCosPAngle", "hCosPAngle", {HistType::kTH1F, {{1000, -1.f, 1.2f}}}}, // resolution histos - {"resolutions/hPtRes", "hPtRes_Rec-MC", {HistType::kTH1F, {{100, -0.5f, 0.5f}}}}, - {"resolutions/hEtaRes", "hEtaRes_Rec-MC", {HistType::kTH1F, {{100, -2.f, 2.f}}}}, - {"resolutions/hPhiRes", "hPhiRes_Rec-MC", {HistType::kTH1F, {{100, -M_PI, M_PI}}}}, + {"resolutions/hPtRes", "hPtRes_Rec-MC", {HistType::kTH1F, {{1000, -0.5f, 0.5f}}}}, + {"resolutions/hEtaRes", "hEtaRes_Rec-MC", {HistType::kTH1F, {{1000, -2.f, 2.f}}}}, + {"resolutions/hPhiRes", "hPhiRes_Rec-MC", {HistType::kTH1F, {{1000, -M_PI, M_PI}}}}, - {"resolutions/hConvPointRRes", "hConvPointRRes_Rec-MC", {HistType::kTH1F, {{100, -200.f, 200.f}}}}, - {"resolutions/hConvPointAbsoluteDistanceRes", "hConvPointAbsoluteDistanceRes", {HistType::kTH1F, {{100, -0.0f, 200.f}}}}, + {"resolutions/hConvPointRRes", "hConvPointRRes_Rec-MC", {HistType::kTH1F, {{1000, -200.f, 200.f}}}}, + {"resolutions/hConvPointAbsoluteDistanceRes", "hConvPointAbsoluteDistanceRes", {HistType::kTH1F, {{1000, -0.0f, 200.f}}}}, }, }; @@ -140,33 +152,88 @@ struct GammaConversionsMc { } } - void process(aod::Collision const& theCollision, - aod::V0Datas const& theV0s, - tracksAndTPCInfo const& theTracks, - aod::McParticles const& theMcParticles) + template + bool processPhoton(TCOLL const& theCollision, const TV0& theV0) { - for (auto& lV0 : theV0s) { + fillHistogramsBeforeCuts(theV0); - fillHistogramsBeforeCuts(lV0); + auto lTrackPos = theV0.template posTrack_as(); //positive daughter + auto lTrackNeg = theV0.template negTrack_as(); //negative daughter - auto lTrackPos = lV0.template posTrack_as(); //positive daughter - auto lTrackNeg = lV0.template negTrack_as(); //negative daughter + // apply track cuts + if (!(trackPassesCuts(lTrackPos) && trackPassesCuts(lTrackNeg))) { + return kFALSE; + } - // apply track cuts - if (!(trackPassesCuts(lTrackPos) && trackPassesCuts(lTrackNeg))) { - continue; + float lV0CosinePA = theV0.v0cosPA(theCollision.posX(), theCollision.posY(), theCollision.posZ()); + + // apply photon cuts + if (!passesPhotonCuts(theV0, lV0CosinePA)) { + return kFALSE; + } + + fillHistogramsAfterCuts(theV0, lTrackPos, lTrackNeg, lV0CosinePA); + + return kTRUE; + } + + template + void processTruePhoton(const TV0& theV0, const TMC& theMcParticles) + { + auto lTrackPos = theV0.template posTrack_as(); //positive daughter + auto lTrackNeg = theV0.template negTrack_as(); //negative daughter + + // todo: verify it is enough to check only mother0 being equal + if (lTrackPos.mcParticle().mother0() > -1 && + lTrackPos.mcParticle().mother0() == lTrackNeg.mcParticle().mother0()) { + auto lMother = theMcParticles.iteratorAt(lTrackPos.mcParticle().mother0()); + + if (lMother.pdgCode() == 22) { + + registry.fill(HIST("resolutions/hPtRes"), theV0.pt() - lMother.pt()); + registry.fill(HIST("resolutions/hEtaRes"), theV0.eta() - lMother.eta()); + registry.fill(HIST("resolutions/hPhiRes"), theV0.phi() - lMother.phi()); + + TVector3 lConvPointRec(theV0.x(), theV0.y(), theV0.z()); + TVector3 lPosTrackVtxMC(lTrackPos.mcParticle().vx(), lTrackPos.mcParticle().vy(), lTrackPos.mcParticle().vz()); + // take the origin of the positive mc track as conversion point (should be identical with negative, verified this on a few photons) + TVector3 lConvPointMC(lPosTrackVtxMC); + + registry.fill(HIST("resolutions/hConvPointRRes"), lConvPointRec.Perp() - lConvPointMC.Perp()); + registry.fill(HIST("resolutions/hConvPointAbsoluteDistanceRes"), TVector3(lConvPointRec - lConvPointMC).Mag()); } + } + } - float lV0CosinePA = RecoDecay::CPA(array{theCollision.posX(), theCollision.posY(), theCollision.posZ()}, array{lV0.x(), lV0.y(), lV0.z()}, array{lV0.px(), lV0.py(), lV0.pz()}); + void processData(collisionEvSelIt const& theCollision, + aod::V0Datas const& theV0s, + tracksAndTPCInfo const& theTracks) + { + if (!theCollision.alias()[kINT7] || !theCollision.sel7()) { + return; + } - // apply photon cuts - if (!passesPhotonCuts(lV0, lV0CosinePA)) { + for (auto& lV0 : theV0s) { + if (!processPhoton(theCollision, lV0)) { continue; } + } + } - fillHistogramsAfterCuts(lV0, lTrackPos, lTrackNeg, lV0CosinePA); + void processMC(collisionIt const& theCollision, + aod::V0Datas const& theV0s, + tracksAndTPCInfoMC const& theTracks, + aod::McParticles const& theMcParticles) + { + //~ if (!theCollision.sel7()) { + //~ return; + //~ } - processTruePhotons(lV0, lTrackPos, lTrackNeg, theMcParticles); + for (auto& lV0 : theV0s) { + if (!processPhoton(theCollision, lV0)) { + continue; + } + processTruePhoton(lV0, theMcParticles); } } @@ -270,31 +337,6 @@ struct GammaConversionsMc { registry.fill(HIST("hCosPAngle"), theV0CosinePA); } - template - void processTruePhotons(const TV0& theV0, const TTRACK& theTrackPos, const TTRACK& theTrackNeg, const TMC& theMcParticles) - { - // todo: verify it is enough to check only mother0 being equal - if (theTrackPos.mcParticle().mother0() > -1 && - theTrackPos.mcParticle().mother0() == theTrackNeg.mcParticle().mother0()) { - auto lMother = theMcParticles.iteratorAt(theTrackPos.mcParticle().mother0()); - - if (lMother.pdgCode() == 22) { - - registry.fill(HIST("resolutions/hPtRes"), theV0.pt() - lMother.pt()); - registry.fill(HIST("resolutions/hEtaRes"), theV0.eta() - lMother.eta()); - registry.fill(HIST("resolutions/hPhiRes"), theV0.phi() - lMother.phi()); - - TVector3 lConvPointRec(theV0.x(), theV0.y(), theV0.z()); - TVector3 lPosTrackVtxMC(theTrackPos.mcParticle().vx(), theTrackPos.mcParticle().vy(), theTrackPos.mcParticle().vz()); - // take the origin of the positive mc track as conversion point (should be identical with negative, verified this on a few photons) - TVector3 lConvPointMC(lPosTrackVtxMC); - - registry.fill(HIST("resolutions/hConvPointRRes"), lConvPointRec.Perp() - lConvPointMC.Perp()); - registry.fill(HIST("resolutions/hConvPointAbsoluteDistanceRes"), TVector3(lConvPointRec - lConvPointMC).Mag()); - } - } - } - Bool_t ArmenterosQtCut(Double_t theAlpha, Double_t theQt, Double_t thePt) { // in AliPhysics this is the cut for if fDo2DQt && fDoQtGammaSelection == 2 @@ -340,6 +382,12 @@ struct GammaConversionsMc { WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) { + if (!cfgc.options().get("doMC")) { + return WorkflowSpec{ + adaptAnalysisTask(cfgc, Processes{&GammaConversions::processData}), + }; + } return WorkflowSpec{ - adaptAnalysisTask(cfgc)}; + adaptAnalysisTask(cfgc, Processes{&GammaConversions::processMC}), + }; } From 086daf3ec85dbe0b7e08e0d453da0a20c698e77e Mon Sep 17 00:00:00 2001 From: Laurent Aphecetche Date: Thu, 1 Jul 2021 08:52:07 +0200 Subject: [PATCH 052/314] [O2-2419] No exe in libraries please (#6554) Co-authored-by: shahoian --- Detectors/TPC/workflow/CMakeLists.txt | 1 - Detectors/ZDC/raw/CMakeLists.txt | 35 ++++++++++------- Detectors/ZDC/workflow/CMakeLists.txt | 2 +- .../ZDC/workflow/src/reco-writer-workflow.cxx | 38 +++++++++++++++++++ 4 files changed, 60 insertions(+), 16 deletions(-) create mode 100644 Detectors/ZDC/workflow/src/reco-writer-workflow.cxx diff --git a/Detectors/TPC/workflow/CMakeLists.txt b/Detectors/TPC/workflow/CMakeLists.txt index 6b503bb5aa700..2fd6afb45b81f 100644 --- a/Detectors/TPC/workflow/CMakeLists.txt +++ b/Detectors/TPC/workflow/CMakeLists.txt @@ -20,7 +20,6 @@ o2_add_library(TPCWorkflow src/ZSSpec.cxx src/CalibProcessingHelper.cxx src/ClusterSharingMapSpec.cxx - src/FileReaderWorkflow.cxx src/CalDetMergerPublisherSpec.cxx src/KryptonClustererSpec.cxx src/IDCToVectorSpec.cxx diff --git a/Detectors/ZDC/raw/CMakeLists.txt b/Detectors/ZDC/raw/CMakeLists.txt index 1d4729262c2a3..b9f1ae7b4f25a 100644 --- a/Detectors/ZDC/raw/CMakeLists.txt +++ b/Detectors/ZDC/raw/CMakeLists.txt @@ -10,13 +10,19 @@ # or submit itself to any jurisdiction. o2_add_library(ZDCRaw - SOURCES src/DumpRaw.cxx - src/raw-parser.cxx - src/RawReaderZDC.cxx - PUBLIC_LINK_LIBRARIES O2::SimulationDataFormat O2::ZDCBase O2::ZDCSimulation - O2::DataFormatsZDC O2::CCDB O2::SimConfig O2::DPLUtils - O2::DetectorsRaw O2::Headers) - + SOURCES + src/DumpRaw.cxx + src/RawReaderZDC.cxx + PUBLIC_LINK_LIBRARIES + O2::CCDB + O2::DPLUtils + O2::DataFormatsZDC + O2::DetectorsRaw + O2::Headers + O2::SimConfig + O2::SimulationDataFormat + O2::ZDCBase + O2::ZDCSimulation) o2_target_root_dictionary(ZDCRaw HEADERS include/ZDCRaw/DumpRaw.h) @@ -24,10 +30,11 @@ o2_target_root_dictionary(ZDCRaw o2_add_executable(raw-parser COMPONENT_NAME zdc SOURCES src/raw-parser.cxx - PUBLIC_LINK_LIBRARIES O2::Framework - O2::DPLUtils - O2::ZDCSimulation - O2::ZDCRaw - O2::DetectorsRaw - O2::DetectorsCommonDataFormats - O2::CommonUtils) + PUBLIC_LINK_LIBRARIES + O2::CommonUtils + O2::DPLUtils + O2::DetectorsCommonDataFormats + O2::DetectorsRaw + O2::Framework + O2::ZDCRaw + O2::ZDCSimulation) diff --git a/Detectors/ZDC/workflow/CMakeLists.txt b/Detectors/ZDC/workflow/CMakeLists.txt index af496b4c4e825..c8df55817c2e1 100644 --- a/Detectors/ZDC/workflow/CMakeLists.txt +++ b/Detectors/ZDC/workflow/CMakeLists.txt @@ -49,5 +49,5 @@ o2_add_executable(digits-reco o2_add_executable(write-reco COMPONENT_NAME zdc - SOURCES src/ZDCRecoWriterDPLSpec.cxx + SOURCES src/reco-writer-workflow.cxx PUBLIC_LINK_LIBRARIES O2::ZDCWorkflow) diff --git a/Detectors/ZDC/workflow/src/reco-writer-workflow.cxx b/Detectors/ZDC/workflow/src/reco-writer-workflow.cxx new file mode 100644 index 0000000000000..6d38b149695fa --- /dev/null +++ b/Detectors/ZDC/workflow/src/reco-writer-workflow.cxx @@ -0,0 +1,38 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "ZDCWorkflow/ZDCRecoWriterDPLSpec.h" +#include "Framework/ConfigParamSpec.h" + +using namespace o2::framework; + +void customize(std::vector& workflowOptions) +{ + workflowOptions.push_back( + ConfigParamSpec{ + "disable-mc", + o2::framework::VariantType::Bool, + false, + {"disable MC propagation even if available"}}); +} + +#include "Framework/runDataProcessing.h" +#include "Framework/Logger.h" + +WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) +{ + auto useMC = !configcontext.options().get("disable-mc"); + if (useMC) { + LOG(WARNING) << "ZDC reconstruction does not support MC labels at the moment"; + } + WorkflowSpec specs{o2::zdc::getZDCRecoWriterDPLSpec()}; + return std::move(specs); +} From e32539158690f01464fd25be78d60ed290c6b758 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mario=20Kr=C3=BCger?= Date: Thu, 1 Jul 2021 10:37:55 +0200 Subject: [PATCH 053/314] DPL Analysis: add static for loop (#6442) --- Analysis/Tutorials/src/histogramRegistry.cxx | 31 +++++++-- Framework/Core/CMakeLists.txt | 1 + Framework/Core/include/Framework/StaticFor.h | 33 +++++++++ Framework/Core/test/test_StaticFor.cxx | 71 ++++++++++++++++++++ 4 files changed, 132 insertions(+), 4 deletions(-) create mode 100644 Framework/Core/include/Framework/StaticFor.h create mode 100644 Framework/Core/test/test_StaticFor.cxx diff --git a/Analysis/Tutorials/src/histogramRegistry.cxx b/Analysis/Tutorials/src/histogramRegistry.cxx index b35467ff80c3c..a6f1704b4599d 100644 --- a/Analysis/Tutorials/src/histogramRegistry.cxx +++ b/Analysis/Tutorials/src/histogramRegistry.cxx @@ -18,6 +18,8 @@ #include "Framework/HistogramRegistry.h" #include +#include "Framework/StaticFor.h" + using namespace o2; using namespace o2::framework; @@ -175,9 +177,17 @@ struct RealisticExample { // clone single histograms spectra.addClone("sigmas", "cascades"); spectra.addClone("neutral/pions", "strange/funny/particles"); + + // add some histograms for different trigger settings + spectra.add("INT7/pt", "pt", kTH1F, {ptAxis}); + spectra.add("INT7/eta", "eta", kTH1F, {etaAxis}); + spectra.add("INT7/phi", "phi", kTH1F, {phiAxis}); + spectra.addClone("INT7/", "V0HM/"); + spectra.addClone("INT7/", "EMC7/"); + spectra.addClone("INT7/", "EMC8/"); } - template + template void fillHistos(const T& track) { static constexpr std::string_view subDir[] = {"before_cuts/", "after_cuts/"}; @@ -203,14 +213,27 @@ struct RealisticExample { spectra.fill(HIST("sigmas"), track.pt(), track.eta(), 50., 0.); spectra.fill(HIST("lambdas"), track.pt(), track.eta(), 50., 0.); - // fill histograms before and after cuts - fillHistos(track); + // fill histograms before and after cuts with a helper function + fillHistos<0>(track); if (std::rand() > (RAND_MAX / 2)) { - fillHistos(track); + fillHistos<1>(track); } spectra.fill(HIST("cascades"), track.pt(), track.eta(), 50., 0.); spectra.fill(HIST("strange/funny/particles"), track.pt(), track.eta(), 50., 0.); + + // loop for filling multiple histograms with different naming patterns + static constexpr std::string_view triggers[] = {"INT7/", "V0HM/", "EMC7/", "EMC8/"}; + static_for<0, 3>([&](auto i) { + constexpr int index = i.value; + + if (std::rand() > (RAND_MAX / 2)) { + return; // dummy decision if trigger actually fired + } + spectra.fill(HIST(triggers[index]) + HIST("pt"), track.pt()); + spectra.fill(HIST(triggers[index]) + HIST("eta"), track.eta()); + spectra.fill(HIST(triggers[index]) + HIST("phi"), track.phi()); + }); } } }; diff --git a/Framework/Core/CMakeLists.txt b/Framework/Core/CMakeLists.txt index bf0cf5669549a..e8a0699089337 100644 --- a/Framework/Core/CMakeLists.txt +++ b/Framework/Core/CMakeLists.txt @@ -193,6 +193,7 @@ foreach(t RootConfigParamHelpers Services StringHelpers + StaticFor SuppressionGenerator TMessageSerializer TableBuilder diff --git a/Framework/Core/include/Framework/StaticFor.h b/Framework/Core/include/Framework/StaticFor.h new file mode 100644 index 0000000000000..34e1f5fb9704b --- /dev/null +++ b/Framework/Core/include/Framework/StaticFor.h @@ -0,0 +1,33 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#ifndef O2_FRAMEWORK_STATICFOR_H_ +#define O2_FRAMEWORK_STATICFOR_H_ + +namespace o2::framework +{ +namespace staticFor_details +{ +template +void applyFunction(F const& f, std::index_sequence) +{ + (f(std::integral_constant{}), ...); +} +} // namespace staticFor_details + +template , typename F> +static inline constexpr void static_for(F const& f) +{ + staticFor_details::applyFunction(f, IndexSequence{}); +} +} // namespace o2::framework + +#endif // O2_FRAMEWORK_STATICFOR_H_ diff --git a/Framework/Core/test/test_StaticFor.cxx b/Framework/Core/test/test_StaticFor.cxx new file mode 100644 index 0000000000000..78298d987e1b8 --- /dev/null +++ b/Framework/Core/test/test_StaticFor.cxx @@ -0,0 +1,71 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#define BOOST_TEST_MODULE Test Framework StaticFor +#define BOOST_TEST_MAIN +#define BOOST_TEST_DYN_LINK + +#include + +#include "Framework/StringHelpers.h" +#include "Framework/StaticFor.h" + +using namespace o2::framework; + +template +void dummyFunc() +{ + std::cout << "calling function with non-type template argument " << someNumber << std::endl; +} + +BOOST_AUTO_TEST_CASE(TestStaticFor) +{ + // check if it is actually static + static_for<0, 0>([&](auto i) { + static_assert(std::is_same_v>); + + static_assert(std::is_same_v); + BOOST_CHECK_EQUAL(i.value, 0); + BOOST_CHECK_EQUAL(i, 0); + + // the following checks will fail + //static_assert(std::is_same_v>); + //BOOST_CHECK_EQUAL(i.value, 1); + //BOOST_CHECK_EQUAL(i, 1); + }); + + // dont start at 0 + static_for<5, 5>([&](auto i) { + static_assert(std::is_same_v>); + }); + + // check if argument can be used as non-type template argument + static_for<0, 2>([&](auto i) { + dummyFunc(); + dummyFunc(); + constexpr auto index = i.value; + dummyFunc(); + }); + + // use static loop in combination with CONST_STR + static constexpr std::string_view staticNames[] = {"Bob", "Alice", "Eve"}; + static_for<0, 2>([&](auto i) { + constexpr int index = i.value; + + // compiler will complain if constexpr is not enforced for index access: + //CONST_STR(staticNames[index]); // works + //CONST_STR(staticNames[i.value]); // fails + + constexpr auto sayHello = CONST_STR("Hello ") + CONST_STR(staticNames[index]); + + std::cout << sayHello.str << std::endl; + }); +} From c6bd769de61401d2124968ecf262858e8c02a299 Mon Sep 17 00:00:00 2001 From: Laurent Aphecetche Date: Tue, 15 Jun 2021 14:49:37 +0200 Subject: [PATCH 054/314] [MRRTF-126] Add MCH convenience reco workflow To e.g. ease inclusion in full system test The TrackFinder and TrackAtVertex workflow get a new option `--grp-file` to read field data from GRP by default. For debugging/expert usage and regain previous behaviour, you have to point `--grp-file` to a non-existing file. Also introduce `o2-mch-tracks-file-dumper` to get a textual dump of (intermediate) track binary files. --- Detectors/MUON/MCH/Workflow/CMakeLists.txt | 64 +++++-- .../Workflow/src/ClusterTransformerSpec.cxx | 113 ++++++++++++ .../MCH/Workflow/src/ClusterTransformerSpec.h | 21 +++ .../MCH/Workflow/src/TrackAtVertexSpec.cxx | 47 +++-- .../MUON/MCH/Workflow/src/TrackAtVtxStruct.h | 27 +++ .../MUON/MCH/Workflow/src/TrackFinderSpec.cxx | 22 ++- .../src/clusters-transformer-workflow.cxx | 92 ++-------- .../MUON/MCH/Workflow/src/reco-workflow.cxx | 66 +++++++ .../MCH/Workflow/src/tracks-file-dumper.cxx | 161 ++++++++++++++++++ 9 files changed, 506 insertions(+), 107 deletions(-) create mode 100644 Detectors/MUON/MCH/Workflow/src/ClusterTransformerSpec.cxx create mode 100644 Detectors/MUON/MCH/Workflow/src/ClusterTransformerSpec.h create mode 100644 Detectors/MUON/MCH/Workflow/src/TrackAtVtxStruct.h create mode 100644 Detectors/MUON/MCH/Workflow/src/reco-workflow.cxx create mode 100644 Detectors/MUON/MCH/Workflow/src/tracks-file-dumper.cxx diff --git a/Detectors/MUON/MCH/Workflow/CMakeLists.txt b/Detectors/MUON/MCH/Workflow/CMakeLists.txt index 88b530d48039e..c0b3cf0811ece 100644 --- a/Detectors/MUON/MCH/Workflow/CMakeLists.txt +++ b/Detectors/MUON/MCH/Workflow/CMakeLists.txt @@ -9,14 +9,24 @@ # granted to it by virtue of its status as an Intergovernmental Organization # or submit itself to any jurisdiction. +# MCHWorkflow library is (at least) needed by Detectors/CTF/workflow o2_add_library(MCHWorkflow - SOURCES src/DataDecoderSpec.cxx src/PreClusterFinderSpec.cxx src/ClusterFinderOriginalSpec.cxx - src/EntropyDecoderSpec.cxx - TARGETVARNAME targetName - PUBLIC_LINK_LIBRARIES O2::Framework O2::DPLUtils O2::MCHRawDecoder Boost::program_options - O2::MCHRawImplHelpers RapidJSON::RapidJSON O2::MCHMappingInterface - O2::MCHPreClustering O2::MCHMappingImpl4 O2::MCHRawElecMap O2::MCHBase - O2::DataFormatsMCH O2::MCHClustering O2::MCHCTF O2::SimulationDataFormat) + SOURCES + src/EntropyDecoderSpec.cxx + src/DataDecoderSpec.cxx + src/PreClusterFinderSpec.cxx + src/ClusterFinderOriginalSpec.cxx + PUBLIC_LINK_LIBRARIES + O2::CommonUtils + O2::DPLUtils + O2::DataFormatsParameters + O2::DetectorsRaw + O2::MCHCTF + O2::MCHClustering + O2::MCHPreClustering + O2::MCHRawCommon + O2::MCHRawDecoder + ) o2_add_executable( cru-page-reader-workflow @@ -24,6 +34,7 @@ o2_add_executable( COMPONENT_NAME mch PUBLIC_LINK_LIBRARIES O2::Framework O2::DetectorsRaw O2::DPLUtils Boost::program_options) +# to be deprecated : use DevIO/digits-writer instead o2_add_executable( digits-sink-workflow SOURCES src/digits-sink-workflow.cxx @@ -101,7 +112,18 @@ o2_add_executable( clusters-to-tracks-workflow SOURCES src/TrackFinderSpec.cxx src/clusters-to-tracks-workflow.cxx COMPONENT_NAME mch - PUBLIC_LINK_LIBRARIES O2::Framework O2::DataFormatsMCH O2::MCHTracking) + PUBLIC_LINK_LIBRARIES O2::DataFormatsParameters O2::Framework O2::DataFormatsMCH O2::MCHTracking O2::DataFormatsParameters) + +o2_add_executable( + clusters-transformer-workflow + SOURCES src/clusters-transformer-workflow.cxx src/ClusterTransformerSpec.cxx + COMPONENT_NAME mch + PUBLIC_LINK_LIBRARIES + O2::DetectorsBase + O2::Framework + O2::MCHBase + O2::MCHGeometryTransformer + ) o2_add_executable( vertex-sampler-workflow @@ -133,14 +155,28 @@ o2_add_executable( COMPONENT_NAME mch PUBLIC_LINK_LIBRARIES O2::Framework O2::DataFormatsMCH O2::MCHTracking) -o2_add_executable( - clusters-transformer-workflow - SOURCES src/clusters-transformer-workflow.cxx - COMPONENT_NAME mch - PUBLIC_LINK_LIBRARIES O2::MCHWorkflow O2::MCHGeometryTransformer) - o2_add_executable( entropy-encoder-workflow SOURCES src/entropy-encoder-workflow.cxx COMPONENT_NAME mch PUBLIC_LINK_LIBRARIES O2::MCHWorkflow) + +o2_add_executable( + reco-workflow + SOURCES + src/ClusterTransformerSpec.cxx + src/TrackAtVertexSpec.cxx + src/TrackFinderSpec.cxx + src/VertexSamplerSpec.cxx + src/reco-workflow.cxx + COMPONENT_NAME mch + PUBLIC_LINK_LIBRARIES + O2::MCHGeometryTransformer + O2::MCHTracking + O2::MCHWorkflow + ) + +o2_add_executable(tracks-file-dumper + SOURCES src/tracks-file-dumper.cxx + COMPONENT_NAME mch + PUBLIC_LINK_LIBRARIES fmt::fmt Boost::program_options O2::MCHBase) diff --git a/Detectors/MUON/MCH/Workflow/src/ClusterTransformerSpec.cxx b/Detectors/MUON/MCH/Workflow/src/ClusterTransformerSpec.cxx new file mode 100644 index 0000000000000..219c3ba106b70 --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/src/ClusterTransformerSpec.cxx @@ -0,0 +1,113 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "ClusterTransformerSpec.h" + +#include "DetectorsBase/GeometryManager.h" +#include "DetectorsCommonDataFormats/NameConf.h" +#include "Framework/CallbackService.h" +#include "Framework/ConfigParamRegistry.h" +#include "Framework/ControlService.h" +#include "Framework/DataProcessorSpec.h" +#include "Framework/Lifetime.h" +#include "Framework/Logger.h" +#include "Framework/Output.h" +#include "Framework/Task.h" +#include "Framework/WorkflowSpec.h" +#include "MCHBase/ClusterBlock.h" +#include "MCHGeometryTransformer/Transformations.h" +#include "MathUtils/Cartesian.h" +#include +#include +#include +#include +#include + +using namespace std; +using namespace o2::framework; +namespace fs = std::filesystem; + +namespace o2::mch +{ + +// convert all clusters from local to global reference frames +void local2global(geo::TransformationCreator transformation, + gsl::span localClusters, + std::vector>& globalClusters) +{ + int i{0}; + globalClusters.insert(globalClusters.end(), localClusters.begin(), localClusters.end()); + for (auto& c : localClusters) { + auto deId = c.getDEId(); + o2::math_utils::Point3D local{c.x, c.y, c.z}; + auto t = transformation(deId); + auto global = t(local); + auto& gcluster = globalClusters[i]; + gcluster.x = global.x(); + gcluster.y = global.y(); + gcluster.z = global.z(); + i++; + } +} + +class ClusterTransformerTask +{ + public: + void init(InitContext& ic) + { + auto geoFile = ic.options().get("geometry"); + std::string ext = fs::path(geoFile).extension(); + std::transform(ext.begin(), ext.begin(), ext.end(), [](unsigned char c) { return std::tolower(c); }); + + if (ext == ".json") { + std::ifstream in(geoFile); + if (!in.is_open()) { + throw std::invalid_argument("cannot open geometry file" + geoFile); + } + transformation = o2::mch::geo::transformationFromJSON(in); + } else if (ext == ".root") { + o2::base::GeometryManager::loadGeometry(geoFile); + transformation = o2::mch::geo::transformationFromTGeoManager(*gGeoManager); + } else { + throw std::invalid_argument("Geometry can only be in JSON or Root format"); + } + } + + // read the clusters (assumed to be in local reference frame) and + // tranform them into master reference frame. + void run(ProcessingContext& pc) + { + // get the input clusters + auto localClusters = pc.inputs().get>("clusters"); + + // create the output message + auto& globalClusters = pc.outputs().make>(OutputRef{"globalclusters"}); + + local2global(transformation, localClusters, globalClusters); + } + + public: + o2::mch::geo::TransformationCreator transformation; +}; + +DataProcessorSpec getClusterTransformerSpec() +{ + std::string inputConfig = fmt::format("rofs:MCH/CLUSTERROFS;clusters:MCH/CLUSTERS"); + return DataProcessorSpec{ + "mch-clusters-transformer", + Inputs{o2::framework::select(inputConfig.c_str())}, + Outputs{OutputSpec{{"globalclusters"}, "MCH", "GLOBALCLUSTERS", 0, Lifetime::Timeframe}}, + AlgorithmSpec{adaptFromTask()}, + Options{ + {"geometry", VariantType::String, o2::base::NameConf::getGeomFileName(), {"input geometry file (JSON or Root format)"}}}}; +} + +} // namespace o2::mch diff --git a/Detectors/MUON/MCH/Workflow/src/ClusterTransformerSpec.h b/Detectors/MUON/MCH/Workflow/src/ClusterTransformerSpec.h new file mode 100644 index 0000000000000..fbfa37febd8ad --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/src/ClusterTransformerSpec.h @@ -0,0 +1,21 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#ifndef O2_MCH_WORKFLOW_CLUSTER_TRANSFORMER_SPEC_H +#define O2_MCH_WORKFLOW_CLUSTER_TRANSFORMER_SPEC_H +#include "Framework/DataProcessorSpec.h" + +namespace o2::mch +{ +o2::framework::DataProcessorSpec getClusterTransformerSpec(); +}; + +#endif diff --git a/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx index 4c3bc2f00a5e6..7e60ab5a2018c 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx @@ -21,11 +21,15 @@ #include #include +#include #include #include #include +#include "DataFormatsParameters/GRPObject.h" +#include "DetectorsCommonDataFormats/NameConf.h" + #include "Framework/ConfigParamRegistry.h" #include "Framework/ControlService.h" #include "Framework/DataProcessorSpec.h" @@ -33,6 +37,7 @@ #include "Framework/Output.h" #include "Framework/Task.h" +#include "DetectorsBase/Propagator.h" #include "DetectorsBase/GeometryManager.h" #include "MathUtils/Cartesian.h" #include "Field/MagneticField.h" @@ -41,6 +46,7 @@ #include "MCHBase/TrackBlock.h" #include "MCHTracking/TrackParam.h" #include "MCHTracking/TrackExtrap.h" +#include "TrackAtVtxStruct.h" namespace o2 { @@ -53,13 +59,16 @@ using namespace o2::framework; class TrackAtVertexTask { public: - //_________________________________________________________________________________________________ - void init(framework::InitContext& ic) + void initFromGRP(std::string grpFile) { - /// Prepare the track extrapolation tools - - LOG(INFO) << "initializing track extrapolation to vertex"; + const auto grp = o2::parameters::GRPObject::loadFrom(grpFile); + base::Propagator::initFieldFromGRP(grp); + TrackExtrap::setField(); + base::GeometryManager::loadGeometry(); + } + void initCustom(framework::InitContext& ic) + { if (!gGeoManager) { o2::base::GeometryManager::loadGeometry("O2geometry.root"); if (!gGeoManager) { @@ -76,6 +85,21 @@ class TrackAtVertexTask TGeoGlobalMagField::Instance()->Lock(); TrackExtrap::setField(); } + } + + //_________________________________________________________________________________________________ + void init(framework::InitContext& ic) + { + /// Prepare the track extrapolation tools + + LOG(INFO) << "initializing track extrapolation to vertex"; + + auto grpFile = ic.options().get("grp-file"); + if (std::filesystem::exists(grpFile)) { + initFromGRP(grpFile); + } else { + initCustom(ic); + } auto stop = [this]() { LOG(INFO) << "track propagation to vertex duration = " << mElapsedTime.count() << " s"; @@ -117,13 +141,6 @@ class TrackAtVertexTask } private: - struct TrackAtVtxStruct { - TrackParamStruct paramAtVertex{}; - double dca = 0.; - double rAbs = 0.; - int mchTrackIdx = 0; - }; - //_________________________________________________________________________________________________ int extrapTracksToVertex(gsl::span tracks, const math_utils::Point3D& vertex) { @@ -212,8 +229,10 @@ o2::framework::DataProcessorSpec getTrackAtVertexSpec() InputSpec{"clusters", "MCH", "TRACKCLUSTERS", 0, Lifetime::Timeframe}}, Outputs{OutputSpec{{"tracksatvertex"}, "MCH", "TRACKSATVERTEX", 0, Lifetime::Timeframe}}, AlgorithmSpec{adaptFromTask()}, - Options{{"l3Current", VariantType::Float, -30000.0f, {"L3 current"}}, - {"dipoleCurrent", VariantType::Float, -6000.0f, {"Dipole current"}}}}; + Options{ + {"grp-file", VariantType::String, o2::base::NameConf::getGRPFileName(), {"Name of the grp file"}}, + {"l3Current", VariantType::Float, -30000.0f, {"L3 current"}}, + {"dipoleCurrent", VariantType::Float, -6000.0f, {"Dipole current"}}}}; } } // namespace mch diff --git a/Detectors/MUON/MCH/Workflow/src/TrackAtVtxStruct.h b/Detectors/MUON/MCH/Workflow/src/TrackAtVtxStruct.h new file mode 100644 index 0000000000000..3ca6d8cbbde79 --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/src/TrackAtVtxStruct.h @@ -0,0 +1,27 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#ifndef O2_MCH_TRACK_AT_VTX_STRUCT_H +#define O2_MCH_TRACK_AT_VTX_STRUCT_H + +#include "MCHBase/TrackBlock.h" + +namespace o2::mch +{ +struct TrackAtVtxStruct { + TrackParamStruct paramAtVertex{}; + double dca = 0.; + double rAbs = 0.; + int mchTrackIdx = 0; +}; +} // namespace o2::mch + +#endif diff --git a/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx index bf70fc22b47d8..db63525421d72 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx @@ -21,9 +21,13 @@ #include #include #include +#include #include +#include "DataFormatsParameters/GRPObject.h" +#include "DetectorsCommonDataFormats/NameConf.h" + #include "Framework/CallbackService.h" #include "Framework/ConfigParamRegistry.h" #include "Framework/ControlService.h" @@ -60,8 +64,21 @@ class TrackFinderTask LOG(INFO) << "initializing track finder"; - auto l3Current = ic.options().get("l3Current"); - auto dipoleCurrent = ic.options().get("dipoleCurrent"); + const auto& options = ic.options(); + + float l3Current{-3000}; + float dipoleCurrent{-6000}; + + auto grpFile = ic.options().get("grp-file"); + if (std::filesystem::exists(grpFile)) { + const auto grp = o2::parameters::GRPObject::loadFrom(grpFile); + l3Current = grp->getL3Current(); + dipoleCurrent = grp->getDipoleCurrent(); + } else { + l3Current = ic.options().get("l3Current"); + dipoleCurrent = ic.options().get("dipoleCurrent"); + } + auto config = ic.options().get("config"); if (!config.empty()) { o2::conf::ConfigurableParam::updateFromFile(config, "MCHTracking", true); @@ -155,6 +172,7 @@ o2::framework::DataProcessorSpec getTrackFinderSpec() AlgorithmSpec{adaptFromTask()}, Options{{"l3Current", VariantType::Float, -30000.0f, {"L3 current"}}, {"dipoleCurrent", VariantType::Float, -6000.0f, {"Dipole current"}}, + {"grp-file", VariantType::String, o2::base::NameConf::getGRPFileName(), {"Name of the grp file"}}, {"config", VariantType::String, "", {"JSON or INI file with tracking parameters"}}, {"debug", VariantType::Int, 0, {"debug level"}}}}; } diff --git a/Detectors/MUON/MCH/Workflow/src/clusters-transformer-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/clusters-transformer-workflow.cxx index 876e946b28280..e71a21750578b 100644 --- a/Detectors/MUON/MCH/Workflow/src/clusters-transformer-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/clusters-transformer-workflow.cxx @@ -9,88 +9,26 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#include -#include -#include +#include "ClusterTransformerSpec.h" -#include "Framework/CallbackService.h" -#include "Framework/ConfigParamRegistry.h" -#include "Framework/ControlService.h" -#include "Framework/DataProcessorSpec.h" -#include "Framework/Lifetime.h" -#include "Framework/Output.h" -#include "Framework/Task.h" -#include "Framework/Logger.h" +#include "CommonUtils/ConfigurableParam.h" +#include "Framework/ConfigContext.h" +#include "Framework/ConfigParamSpec.h" +#include "Framework/Variant.h" +#include "Framework/WorkflowSpec.h" -#include "MCHBase/ClusterBlock.h" -#include "Framework/runDataProcessing.h" -#include "MCHGeometryTransformer/Transformations.h" -#include "MathUtils/Cartesian.h" - -using namespace std; -using namespace o2::framework; -using namespace o2::mch; - -// convert all clusters from local to global reference frames -void local2global(geo::TransformationCreator transformation, - gsl::span localClusters, - std::vector>& globalClusters) +// we need to add workflow options before including Framework/runDataProcessing +void customize(std::vector& workflowOptions) { - int i{0}; - globalClusters.insert(globalClusters.end(), localClusters.begin(), localClusters.end()); - for (auto& c : localClusters) { - auto deId = c.getDEId(); - o2::math_utils::Point3D local{c.x, c.y, c.z}; - auto t = transformation(deId); - auto global = t(local); - auto& gcluster = globalClusters[i]; - gcluster.x = global.x(); - gcluster.y = global.y(); - gcluster.z = global.z(); - i++; - } + workflowOptions.emplace_back("configKeyValues", + o2::framework::VariantType::String, "", + o2::framework::ConfigParamSpec::HelpString{"Semicolon separated key=value strings"}); } -class ClusterTransformerTask -{ - public: - void init(InitContext& ic) - { - auto geoFile = ic.options().get("geometry"); - std::ifstream in(geoFile); - if (!in.is_open()) { - throw std::invalid_argument("cannot open geometry file" + geoFile); - } - transformation = o2::mch::geo::transformationFromJSON(in); - } - - // read the clusters (assumed to be in local reference frame) and - // tranform them into master reference frame. - void run(ProcessingContext& pc) - { - // get the input clusters - auto localClusters = pc.inputs().get>("clusters"); - - // create the output message - auto& globalClusters = pc.outputs().make>(OutputRef{"globalclusters"}); - - local2global(transformation, localClusters, globalClusters); - } - - public: - o2::mch::geo::TransformationCreator transformation; -}; +#include "Framework/runDataProcessing.h" -WorkflowSpec defineDataProcessing(const ConfigContext& cc) +o2::framework::WorkflowSpec defineDataProcessing(const o2::framework::ConfigContext& configContext) { - std::string inputConfig = fmt::format("rofs:MCH/CLUSTERROFS;clusters:MCH/CLUSTERS"); - - return WorkflowSpec{ - DataProcessorSpec{ - "mch-clusters-transformer", - Inputs{o2::framework::select(inputConfig.c_str())}, - Outputs{OutputSpec{{"globalclusters"}, "MCH", "GLOBALCLUSTERS", 0, Lifetime::Timeframe}}, - AlgorithmSpec{adaptFromTask()}, - Options{ - {"geometry", VariantType::String, "geometry-o2.json", {"input geometry (json format)"}}}}}; + o2::conf::ConfigurableParam::updateFromString(configContext.options().get("configKeyValues")); + return o2::framework::WorkflowSpec{o2::mch::getClusterTransformerSpec()}; } diff --git a/Detectors/MUON/MCH/Workflow/src/reco-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/reco-workflow.cxx new file mode 100644 index 0000000000000..ba66e11206482 --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/src/reco-workflow.cxx @@ -0,0 +1,66 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "ClusterTransformerSpec.h" +#include "CommonUtils/ConfigurableParam.h" +#include "DetectorsRaw/HBFUtilsInitializer.h" +#include "Framework/ConfigContext.h" +#include "Framework/Logger.h" +#include "Framework/Variant.h" +#include "Framework/WorkflowSpec.h" +#include "MCHWorkflow/ClusterFinderOriginalSpec.h" +#include "MCHWorkflow/PreClusterFinderSpec.h" +#include "TrackAtVertexSpec.h" +#include "TrackAtVertexSpec.h" +#include "TrackFinderSpec.h" +#include "TrackFitterSpec.h" +#include "VertexSamplerSpec.h" + +using o2::framework::ConfigContext; +using o2::framework::ConfigParamSpec; +using o2::framework::VariantType; +using o2::framework::WorkflowSpec; + +void customize(std::vector& workflowOptions) +{ + std::vector options{ + {"configKeyValues", VariantType::String, "", {"Semicolon separated key=value strings"}}}; + + o2::raw::HBFUtilsInitializer::addConfigOption(options); + + std::swap(workflowOptions, options); +} + +#include "Framework/runDataProcessing.h" + +WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) +{ + WorkflowSpec specs; + + // auto disableRootOutput = configcontext.options().get("disable-root-output"); + + o2::conf::ConfigurableParam::updateFromString(configcontext.options().get("configKeyValues")); + + specs.emplace_back(o2::mch::getPreClusterFinderSpec()); + specs.emplace_back(o2::mch::getClusterFinderOriginalSpec()); + specs.emplace_back(o2::mch::getClusterTransformerSpec()); + specs.emplace_back(o2::mch::getTrackFinderSpec()); + specs.emplace_back(o2::mch::getVertexSamplerSpec()); + specs.emplace_back(o2::mch::getTrackAtVertexSpec()); + + // configure dpl timer to inject correct firstTFOrbit: start from the 1st orbit of TF containing 1st sampled orbit + o2::raw::HBFUtilsInitializer hbfIni(configcontext, specs); + + // write the configuration used for the reco workflow + o2::conf::ConfigurableParam::writeINI("o2mchrecoflow_configuration.ini"); + + return specs; +} diff --git a/Detectors/MUON/MCH/Workflow/src/tracks-file-dumper.cxx b/Detectors/MUON/MCH/Workflow/src/tracks-file-dumper.cxx new file mode 100644 index 0000000000000..be2fa55092983 --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/src/tracks-file-dumper.cxx @@ -0,0 +1,161 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "boost/program_options.hpp" +#include +#include +#include +#include "TrackAtVtxStruct.h" +#include "MCHBase/TrackBlock.h" +#include +#include "DataFormatsMCH/TrackMCH.h" +#include "MCHBase/ClusterBlock.h" + +namespace po = boost::program_options; + +using o2::mch::ClusterStruct; +using o2::mch::TrackAtVtxStruct; +using o2::mch::TrackMCH; + +template +bool readBinaryStruct(std::istream& in, int nitems, std::vector& items, const char* itemName) +{ + if (in.peek() == EOF) { + return false; + } + // get the items if any + if (nitems > 0) { + auto offset = items.size(); + items.resize(offset + nitems); + in.read(reinterpret_cast(&items[offset]), nitems * sizeof(T)); + if (in.fail()) { + throw std::length_error(fmt::format("invalid input : cannot read {} {}", nitems, itemName)); + } + } + return true; +} + +void dump(std::ostream& os, const o2::mch::TrackParamStruct& t) +{ + auto pt2 = t.px * t.px + t.py * t.py; + auto p2 = t.pz * t.pz + pt2; + auto pt = std::sqrt(pt2); + auto p = std::sqrt(p2); + os << fmt::format("({:s}) p {:7.2f} pt {:7.2f}", t.sign == -1 ? "-" : "+", p, pt); +} + +void dump(std::ostream& os, gsl::span tracksAtVertex) +{ + for (const auto& tv : tracksAtVertex) { + os << fmt::format("id {:4d} ", tv.mchTrackIdx); + dump(os, tv.paramAtVertex); + os << fmt::format(" dca {:7.2f} rabs {:7.2f}", tv.dca, tv.rAbs) + << "\n"; + } +} + +/** + * o2-mch-tracks-file-dumper is a small helper program to inspect + * track binary files (mch custom binary format for debug only) + */ + +int main(int argc, char* argv[]) +{ + std::string inputFile; + po::variables_map vm; + po::options_description options("options"); + + // clang-format off + // clang-format off + options.add_options() + ("help,h", "produce help message") + ("infile,i", po::value(&inputFile)->required(), "input file name") + ; + // clang-format on + + po::options_description cmdline; + cmdline.add(options); + + po::store(po::command_line_parser(argc, argv).options(cmdline).run(), vm); + + if (vm.count("help")) { + std::cout << options << "\n"; + return 2; + } + + try { + po::notify(vm); + } catch (boost::program_options::error& e) { + std::cout << "Error: " << e.what() << "\n"; + exit(1); + } + + std::ifstream in(inputFile.c_str()); + if (!in.is_open()) { + std::cerr << "cannot open input file " << inputFile << "\n"; + return 3; + } + + while (in.good()) { + int nofTracksAtVertex{-1}; + int nofTracks{-1}; + int nofAttachedClusters{-1}; + // read the number of tracks at vertex, MCH tracks and attached clusters + if (!in.read(reinterpret_cast(&nofTracksAtVertex), sizeof(int))) { + return -1; + } + if (!in.read(reinterpret_cast(&nofTracks), sizeof(int))) { + return -1; + } + if (!in.read(reinterpret_cast(&nofAttachedClusters), sizeof(int))) { + return -1; + } + std::cout << fmt::format("=== nof MCH tracks: {:2d} at vertex: {:2d} w/ {:4d} attached clusters\n", + nofTracks, nofTracksAtVertex, nofAttachedClusters); + std::vector tracksAtVertex; + std::vector tracks; + std::vector clusters; + // read the tracks, tracks at vertex and clusters (mind the reverse order of tracks + // compared to the numbers above) + if (!readBinaryStruct(in, nofTracksAtVertex, tracksAtVertex, "TracksAtVertex")) { + return -1; + } + if (!readBinaryStruct(in, nofTracks, tracks, "Tracks")) { + return -1; + } + if (!readBinaryStruct(in, nofAttachedClusters, clusters, "AttachedClusters")) { + return -1; + } + + dump(std::cout, tracksAtVertex); + } + return 0; +} + +// for (const auto& rof : rofs) { +// +// // get the MCH tracks, attached clusters and corresponding tracks at vertex (if any) +// auto eventClusters = getEventTracksAndClusters(rof, tracks, clusters, eventTracks); +// auto eventTracksAtVtx = getEventTracksAtVtx(tracksAtVtx, tracksAtVtxOffset); +// +// // write the number of tracks at vertex, MCH tracks and attached clusters +// int nEventTracksAtVtx = eventTracksAtVtx.size() / sizeof(TrackAtVtxStruct); +// mOutputFile.write(reinterpret_cast(&nEventTracksAtVtx), sizeof(int)); +// int nEventTracks = eventTracks.size(); +// mOutputFile.write(reinterpret_cast(&nEventTracks), sizeof(int)); +// int nEventClusters = eventClusters.size(); +// mOutputFile.write(reinterpret_cast(&nEventClusters), sizeof(int)); +// +// // write the tracks at vertex, MCH tracks and attached clusters +// mOutputFile.write(eventTracksAtVtx.data(), eventTracksAtVtx.size()); +// mOutputFile.write(reinterpret_cast(eventTracks.data()), eventTracks.size() * sizeof(TrackMCH)); +// mOutputFile.write(reinterpret_cast(eventClusters.data()), eventClusters.size_bytes()); +// } From c065514a3a3e37f0655e57b5f82d0585acc9517e Mon Sep 17 00:00:00 2001 From: Mario Sitta Date: Wed, 30 Jun 2021 11:58:48 +0200 Subject: [PATCH 055/314] Fix the global angular position of staves in OB layers --- Detectors/ITSMFT/ITS/simulation/src/Detector.cxx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Detectors/ITSMFT/ITS/simulation/src/Detector.cxx b/Detectors/ITSMFT/ITS/simulation/src/Detector.cxx index f8f19da7436ac..b37cc52726733 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/Detector.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/Detector.cxx @@ -101,10 +101,10 @@ static void configITS(Detector* its) {2.24, 2.34, 2.67, 9., 16.42, 12}, // for each inner layer: rMin,rMid,rMax,NChip/Stave, phi0, nStaves {3.01, 3.15, 3.46, 9., 12.18, 16}, {3.78, 3.93, 4.21, 9., 9.55, 20}, - {-1, 19.6, -1, 4., 0., 24}, // for others: -, rMid, -, NMod/HStave, phi0, nStaves // 24 was 49 - {-1, 24.55, -1, 4., 0., 30}, // 30 was 61 - {-1, 34.39, -1, 7., 0., 42}, // 42 was 88 - {-1, 39.34, -1, 7., 0., 48} // 48 was 100 + {-1, 19.6, -1, 4., 7.5, 24}, // for others: -, rMid, -, NMod/HStave, phi0, nStaves // 24 was 49 + {-1, 24.55, -1, 4., 6., 30}, // 30 was 61 + {-1, 34.39, -1, 7., 4.29, 42}, // 42 was 88 + {-1, 39.34, -1, 7., 3.75, 48} // 48 was 100 }; const int nChipsPerModule = 7; // For OB: how many chips in a row const double zChipGap = 0.01; // For OB: gap in Z between chips From d71d99e0441f19717bfa318c124891fc7c591b98 Mon Sep 17 00:00:00 2001 From: Artur Furs <9881239+afurs@users.noreply.github.com> Date: Thu, 1 Jul 2021 11:57:32 +0300 Subject: [PATCH 056/314] FIT update (#6546) * FT0:Constants added to base section * FIT LUTs: cout changed to LOG * FDD: TCM extended mode added FDD: TCM extended mode added(clang) * FIT RawEventData: print method update * FT0 and FDD: FITWorkflow fully apllied * FITRaw: digit2raw converter applied for FT0 and FDD * FT0 LUT: some fix in getChannel method * Fixes for CI/CD * Update Constants.h * Update digit2raw.cxx --- .../FDD/include/DataFormatsFDD/LookUpTable.h | 9 +- .../FT0/include/DataFormatsFT0/ChannelData.h | 2 +- .../FT0/include/DataFormatsFT0/LookUpTable.h | 16 +-- .../FT0/include/DataFormatsFT0/RawEventData.h | 9 +- .../FV0/include/DataFormatsFV0/LookUpTable.h | 13 +- .../Detectors/FIT/common/src/RawEventData.cxx | 2 + .../FIT/FDD/raw/include/FDDRaw/DataBlockFDD.h | 4 +- .../FDD/raw/include/FDDRaw/DigitBlockFDD.h | 2 + .../FDD/raw/include/FDDRaw/RawReaderFDDBase.h | 3 + .../FIT/FDD/raw/include/FDDRaw/RawWriterFDD.h | 2 +- .../FDD/reconstruction/src/test-raw2digit.cxx | 8 +- Detectors/FIT/FDD/simulation/CMakeLists.txt | 3 +- .../FIT/FDD/simulation/src/digit2raw.cxx | 35 ++--- Detectors/FIT/FDD/workflow/CMakeLists.txt | 29 ++--- .../FIT/FDD/workflow/src/fdd-flp-workflow.cxx | 63 ++++++--- Detectors/FIT/FT0/base/CMakeLists.txt | 3 +- .../FIT/FT0/base/include/FT0Base/Constants.h | 40 ++++++ .../FT0/reconstruction/src/test-raw2digit.cxx | 8 +- Detectors/FIT/FT0/simulation/CMakeLists.txt | 7 +- .../FIT/FT0/simulation/src/digit2raw.cxx | 122 ++++++++++++++++++ Detectors/FIT/FT0/workflow/CMakeLists.txt | 2 +- .../FIT/FT0/workflow/src/ft0-flp-workflow.cxx | 47 ++++--- .../FV0/reconstruction/src/test-raw2digit.cxx | 8 +- .../FIT/raw/include/FITRaw/DigitBlockBase.h | 10 ++ .../FIT/raw/include/FITRaw/DigitBlockFIT.h | 8 +- .../FIT/raw/include/FITRaw/RawWriterFIT.h | 6 +- .../include/FITWorkflow/FITDigitWriterSpec.h | 3 +- 27 files changed, 338 insertions(+), 126 deletions(-) create mode 100644 Detectors/FIT/FT0/base/include/FT0Base/Constants.h create mode 100644 Detectors/FIT/FT0/simulation/src/digit2raw.cxx diff --git a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/LookUpTable.h b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/LookUpTable.h index 156003f74198e..86249fecfaf73 100644 --- a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/LookUpTable.h +++ b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/LookUpTable.h @@ -87,16 +87,11 @@ class LookUpTable { LOG(INFO) << "o2::fdd::LookUpTable::printFullMap(): mTopoVector: [globalCh link modCh]"; for (size_t channel = 0; channel < mTopoVector.size(); ++channel) { - std::cout << " " << std::right << std::setw(2) << channel << " "; - std::cout << std::right << std::setw(2) << mTopoVector[channel].modLink << " "; - std::cout << std::right << std::setw(3) << mTopoVector[channel].modCh << std::endl; + LOG(INFO) << " " << channel << " " << mTopoVector[channel].modLink << " " << mTopoVector[channel].modCh; } LOG(INFO) << "o2::fdd::LookUpTable::printFullMap(): mInvTopo: [idx globalCh link modCh]"; for (size_t idx = 0; idx < mInvTopo.size(); ++idx) { - std::cout << " " << std::right << std::setw(3) << idx << " "; - std::cout << std::right << std::setw(3) << mInvTopo[idx] << " "; - std::cout << std::right << std::setw(2) << getLinkFromIdx(mInvTopo[idx]) << " "; - std::cout << std::right << std::setw(2) << getModChannelFromIdx(mInvTopo[idx]) << std::endl; + LOG(INFO) << " " << idx << " " << mInvTopo[idx] << " " << getLinkFromIdx(mInvTopo[idx]) << " " << getModChannelFromIdx(mInvTopo[idx]); } } diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/ChannelData.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/ChannelData.h index 8bc47f8335e3a..67d915f3c102d 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/ChannelData.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/ChannelData.h @@ -25,7 +25,7 @@ namespace ft0 struct ChannelData { static constexpr char sChannelNameDPL[] = "DIGITSCH"; static constexpr char sDigitName[] = "ChannelData"; - static constexpr char sDigitBranchName[] = "FT0DIGITSBCH"; + static constexpr char sDigitBranchName[] = "FT0DIGITSCH"; static constexpr uint8_t DUMMY_CHANNEL_ID = 0xff; static constexpr uint8_t DUMMY_CHAIN_QTC = 0xff; static constexpr int16_t DUMMY_CFD_TIME = -5000; diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/LookUpTable.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/LookUpTable.h index 6bc5646bf1325..f40a29bb73df0 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/LookUpTable.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/LookUpTable.h @@ -21,7 +21,7 @@ ////////////////////////////////////////////// #include "CCDB/BasicCCDBManager.h" - +#include "FT0Base/Constants.h" #include #include #include @@ -107,8 +107,8 @@ class LookUpTable { using CcdbManager = o2::ccdb::BasicCCDBManager; using CcdbApi = o2::ccdb::CcdbApi; - static constexpr int NUMBER_OF_MCPs = 12; - static constexpr int NUMBER_OF_PMs = 19; + static constexpr int NUMBER_OF_MCPs = o2::ft0::Constants::sNCHANNELS_PER_PM; + static constexpr int NUMBER_OF_PMs = o2::ft0::Constants::sNTOTAL_PM; static constexpr int TCM_channel = 228; public: @@ -137,14 +137,14 @@ class LookUpTable void printFullMap() const { for (size_t channel = 0; channel < mTopoVector.size(); ++channel) { - std::cout << channel << "\t : PM \t" << mTopoVector[channel].mPM - << " MCP \t" << mTopoVector[channel].mMCP << " EP \t " << mTopoVector[channel].mEP << std::endl; + LOG(INFO) << channel << "\t : PM \t" << mTopoVector[channel].mPM + << " MCP \t" << mTopoVector[channel].mMCP << " EP \t " << mTopoVector[channel].mEP; } } int getChannel(int link, int mcp, int ep) const { - if ((ep == 0 && (link > 7 && link < 11)) || + if ((ep == 0 && (link > 7 && link < 11 && link != 9)) || (ep == 1 && link == 8 && mcp > 8) || (ep == 1 && link == 9 && mcp > 8)) { LOG(INFO) << " channel is not conneted " @@ -226,7 +226,7 @@ class LookUpTable o2::ft0::Topo topo = chan.pm; lut_data[chan.channel] = topo; } - std::cout << "lut_data.size " << lut_data.size() << std::endl; + LOG(INFO) << "lut_data.size " << lut_data.size(); return o2::ft0::LookUpTable{lut_data}; } bool isTCM(int link, int ep) const { return getChannel(link, 1, ep) == TCM_channel; } @@ -329,7 +329,7 @@ class SingleLUT : public LookUpTable } //TCM { - auto pairInserted = mapResult.insert({makeGlobalTopo(Instance().getTopoTCM()), RDHtype{}}); + auto pairInserted = mapResult.insert({Instance().getTopoTCM(), RDHtype{}}); if (pairInserted.second) { auto& rdhObj = pairInserted.first->second; const auto& topoObj = pairInserted.first->first; diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/RawEventData.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/RawEventData.h index fb9f84f32c118..ec1bd11b451b8 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/RawEventData.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/RawEventData.h @@ -20,6 +20,7 @@ #include "TList.h" //temporary for QC-FT0 (ChannelTimeCalibrationCheck.cxx), should be moved #include "DataFormatsFIT/RawEventData.h" #include "FT0Base/Geometry.h" +#include "FT0Base/Constants.h" #include #include #include @@ -32,8 +33,6 @@ namespace o2 namespace ft0 { constexpr int Nchannels_FT0 = o2::ft0::Geometry::Nchannels; -constexpr int Nchannels_PM = 12; -constexpr int NPMs = 20; using EventHeader = o2::fit::EventHeader; using EventData = o2::fit::EventData; using TCMdata = o2::fit::TCMdata; @@ -96,9 +95,9 @@ class RawEventData } public: - EventHeader mEventHeader; //! - EventData mEventData[Nchannels_PM]; //! - TCMdata mTCMdata; //! + EventHeader mEventHeader; //! + EventData mEventData[o2::ft0::Constants::sNCHANNELS_PER_PM]; //! + TCMdata mTCMdata; //! bool mIsPadded = true; ///////////////////////////////////////////////// ClassDefNV(RawEventData, 2); diff --git a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/LookUpTable.h b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/LookUpTable.h index 34c0cbf7227ab..d660ad346cb21 100644 --- a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/LookUpTable.h +++ b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/LookUpTable.h @@ -85,18 +85,13 @@ class LookUpTable std::size_t getNchannels() const { return mTopoVector.size(); } //get number of global PM channels void printFullMap() const { - std::cout << "o2::fv0::LookUpTable::printFullMap(): mTopoVector: [globalCh link pmCh]" << std::endl; + LOG(INFO) << "o2::fv0::LookUpTable::printFullMap(): mTopoVector: [globalCh link pmCh]"; for (size_t channel = 0; channel < mTopoVector.size(); ++channel) { - std::cout << " " << std::right << std::setw(2) << channel << " "; - std::cout << std::right << std::setw(2) << mTopoVector[channel].pmLink << " "; - std::cout << std::right << std::setw(3) << mTopoVector[channel].pmCh << std::endl; + LOG(INFO) << channel << " " << mTopoVector[channel].pmLink << " " << mTopoVector[channel].pmCh; } - std::cout << "o2::fv0::LookUpTable::printFullMap(): mInvTopo: [idx globalCh link pmCh]" << std::endl; + LOG(INFO) << "o2::fv0::LookUpTable::printFullMap(): mInvTopo: [idx globalCh link pmCh]"; for (size_t idx = 0; idx < mInvTopo.size(); ++idx) { - std::cout << " " << std::right << std::setw(3) << idx << " "; - std::cout << std::right << std::setw(3) << mInvTopo[idx] << " "; - std::cout << std::right << std::setw(2) << getLinkFromIdx(mInvTopo[idx]) << " "; - std::cout << std::right << std::setw(2) << getPmChannelFromIdx(mInvTopo[idx]) << std::endl; + LOG(INFO) << idx << " " << mInvTopo[idx] << " " << getLinkFromIdx(mInvTopo[idx]) << " " << getPmChannelFromIdx(mInvTopo[idx]); } } diff --git a/DataFormats/Detectors/FIT/common/src/RawEventData.cxx b/DataFormats/Detectors/FIT/common/src/RawEventData.cxx index 89b91625ce36f..7d3c4615c084d 100644 --- a/DataFormats/Detectors/FIT/common/src/RawEventData.cxx +++ b/DataFormats/Detectors/FIT/common/src/RawEventData.cxx @@ -53,6 +53,8 @@ void TCMdata::print() const LOG(INFO) << "sCen: " << sCen; LOG(INFO) << "cen: " << cen; LOG(INFO) << "vertex: " << vertex; + LOG(INFO) << "laser: " << laser; + LOG(INFO) << "dataIsValid: " << dataIsValid; LOG(INFO) << "nChanA: " << nChanA; LOG(INFO) << "nChanC: " << nChanC; LOG(INFO) << "amplA: " << amplA; diff --git a/Detectors/FIT/FDD/raw/include/FDDRaw/DataBlockFDD.h b/Detectors/FIT/FDD/raw/include/FDDRaw/DataBlockFDD.h index 3e5659e62a5e2..a1499f3e2de25 100644 --- a/Detectors/FIT/FDD/raw/include/FDDRaw/DataBlockFDD.h +++ b/Detectors/FIT/FDD/raw/include/FDDRaw/DataBlockFDD.h @@ -29,10 +29,12 @@ using RawHeaderPM = o2::fdd::EventHeader; using RawDataPM = o2::fdd::EventData; using RawHeaderTCM = o2::fdd::EventHeader; using RawDataTCM = o2::fdd::TCMdata; +using RawHeaderTCMext = o2::fdd::EventHeader; +using RawDataTCMext = o2::fdd::TCMdataExtended; //Data block for FDD modules using DataBlockPM = o2::fit::DataBlockPM; using DataBlockTCM = o2::fit::DataBlockTCM; -//using DataBlockTCMext = o2::fit::DataBlockTCMext; +using DataBlockTCMext = o2::fit::DataBlockTCMext; } // namespace fdd } // namespace o2 #endif diff --git a/Detectors/FIT/FDD/raw/include/FDDRaw/DigitBlockFDD.h b/Detectors/FIT/FDD/raw/include/FDDRaw/DigitBlockFDD.h index bb15de0aaf618..ea86bfda3d406 100644 --- a/Detectors/FIT/FDD/raw/include/FDDRaw/DigitBlockFDD.h +++ b/Detectors/FIT/FDD/raw/include/FDDRaw/DigitBlockFDD.h @@ -27,6 +27,8 @@ namespace fdd { //Normal data taking mode using DigitBlockFDD = DigitBlockFIT; +//TCM extended data taking mode +using DigitBlockFDDext = DigitBlockFIText; } // namespace fdd } // namespace o2 #endif diff --git a/Detectors/FIT/FDD/raw/include/FDDRaw/RawReaderFDDBase.h b/Detectors/FIT/FDD/raw/include/FDDRaw/RawReaderFDDBase.h index e3e3865a04294..5b28e3e1209fa 100644 --- a/Detectors/FIT/FDD/raw/include/FDDRaw/RawReaderFDDBase.h +++ b/Detectors/FIT/FDD/raw/include/FDDRaw/RawReaderFDDBase.h @@ -27,7 +27,10 @@ namespace o2 { namespace fdd { +//Normal TCM mode using RawReaderFDDBaseNorm = o2::fit::RawReaderBaseFIT; +//Extended TCM mode +using RawReaderFDDBaseExt = o2::fit::RawReaderBaseFIT; } // namespace fdd } // namespace o2 diff --git a/Detectors/FIT/FDD/raw/include/FDDRaw/RawWriterFDD.h b/Detectors/FIT/FDD/raw/include/FDDRaw/RawWriterFDD.h index e534521468bf0..5cb267c40f63f 100644 --- a/Detectors/FIT/FDD/raw/include/FDDRaw/RawWriterFDD.h +++ b/Detectors/FIT/FDD/raw/include/FDDRaw/RawWriterFDD.h @@ -27,7 +27,7 @@ namespace fdd //Normal TCM mode using RawWriterFDD = o2::fit::RawWriterFIT; //Extended TCM mode -//using RawWriterFDDext = o2::fit::RawWriterFIT; +//using RawWriterFDDext = o2::fit::RawWriterFIT; } // namespace fdd } // namespace o2 diff --git a/Detectors/FIT/FDD/reconstruction/src/test-raw2digit.cxx b/Detectors/FIT/FDD/reconstruction/src/test-raw2digit.cxx index 938e80a204578..c2e9560bbc1fb 100644 --- a/Detectors/FIT/FDD/reconstruction/src/test-raw2digit.cxx +++ b/Detectors/FIT/FDD/reconstruction/src/test-raw2digit.cxx @@ -44,8 +44,8 @@ int main() std::vector* ptrVecDigits = &vecDigits; std::vector vecChannelData; std::vector* ptrVecChannelData = &vecChannelData; - treeInput->SetBranchAddress("FDDDigit", &ptrVecDigits); - treeInput->SetBranchAddress("FDDDigitCh", &ptrVecChannelData); + treeInput->SetBranchAddress(Digit::sDigitBranchName, &ptrVecDigits); + treeInput->SetBranchAddress(ChannelData::sDigitBranchName, &ptrVecChannelData); std::cout << "Tree nEntries:" << treeInput->GetEntries() << std::endl; for (int iEvent = 0; iEvent < treeInput->GetEntries(); iEvent++) { //Iterating TFs in tree treeInput->GetEntry(iEvent); @@ -73,8 +73,8 @@ int main() std::unique_ptr treeInput2((TTree*)flIn2.Get("o2sim")); std::cout << "Reconstruction completed!" << std::endl; - treeInput2->SetBranchAddress("FDDDigit", &ptrVecDigits); - treeInput2->SetBranchAddress("FDDDigitCh", &ptrVecChannelData); + treeInput2->SetBranchAddress(Digit::sDigitBranchName, &ptrVecDigits); + treeInput2->SetBranchAddress(ChannelData::sDigitBranchName, &ptrVecChannelData); std::cout << "Tree nEntries: " << treeInput2->GetEntries() << std::endl; for (int iEvent = 0; iEvent < treeInput2->GetEntries(); iEvent++) { //Iterating TFs in tree treeInput2->GetEntry(iEvent); diff --git a/Detectors/FIT/FDD/simulation/CMakeLists.txt b/Detectors/FIT/FDD/simulation/CMakeLists.txt index e81685ff43664..458da3ab5e109 100644 --- a/Detectors/FIT/FDD/simulation/CMakeLists.txt +++ b/Detectors/FIT/FDD/simulation/CMakeLists.txt @@ -32,4 +32,5 @@ o2_add_executable(digit2raw O2::DetectorsRaw O2::DetectorsCommonDataFormats O2::CommonUtils - Boost::program_options) \ No newline at end of file + Boost::program_options + O2::FDDRaw) \ No newline at end of file diff --git a/Detectors/FIT/FDD/simulation/src/digit2raw.cxx b/Detectors/FIT/FDD/simulation/src/digit2raw.cxx index 0018f209adf4b..eda4d158146da 100644 --- a/Detectors/FIT/FDD/simulation/src/digit2raw.cxx +++ b/Detectors/FIT/FDD/simulation/src/digit2raw.cxx @@ -9,36 +9,35 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -/// \file digi2raw.cxx +/// \file digit2raw.cxx /// \author ruben.shahoyan@cern.ch #include #include #include #include +#include "Framework/Logger.h" #include #include -#include "Framework/Logger.h" -#include "FairLogger.h" #include "CommonUtils/StringUtils.h" #include "CommonUtils/ConfigurableParam.h" #include "DetectorsCommonDataFormats/NameConf.h" #include "DetectorsRaw/HBFUtils.h" -#include "FDDSimulation/Digits2Raw.h" +#include "FDDRaw/RawWriterFDD.h" #include "DataFormatsParameters/GRPObject.h" -/// MC->raw conversion for FDD +/// MC->raw conversion for FT0 namespace bpo = boost::program_options; -void digi2raw(const std::string& inpName, const std::string& outDir, bool filePerLink, uint32_t rdhV = 6, bool noEmptyHBF = false, - int superPageSizeInB = 1024 * 1024); +void digit2raw(const std::string& inpName, const std::string& outDir, int verbosity, bool filePerLink, uint32_t rdhV = 4, bool noEmptyHBF = false, + int superPageSizeInB = 1024 * 1024); int main(int argc, char** argv) { bpo::variables_map vm; bpo::options_description opt_general("Usage:\n " + std::string(argv[0]) + - " (Convert FDD digits to CRU raw data)\n"); + "Convert FDD digits to CRU raw data\n"); bpo::options_description opt_hidden(""); bpo::options_description opt_all; bpo::positional_options_description opt_pos; @@ -46,6 +45,7 @@ int main(int argc, char** argv) try { auto add_option = opt_general.add_options(); add_option("help,h", "Print this help message"); + add_option("verbosity,v", bpo::value()->default_value(0), "verbosity level"); // add_option("input-file,i", bpo::value()->default_value(o2::base::NameConf::getDigitsFileName(o2::detectors::DetID::FDD)),"input FDD digits file"); // why not used? add_option("input-file,i", bpo::value()->default_value("fdddigits.root"), "input FDD digits file"); add_option("file-per-link,l", bpo::value()->default_value(false)->implicit_value(true), "create output file per CRU (default: per layer)"); @@ -80,23 +80,25 @@ int main(int argc, char** argv) o2::conf::ConfigurableParam::updateFromFile(confDig, "HBFUtils"); } o2::conf::ConfigurableParam::updateFromString(vm["configKeyValues"].as()); - digi2raw(vm["input-file"].as(), - vm["output-dir"].as(), - vm["file-per-link"].as(), - vm["rdh-version"].as(), - vm["no-empty-hbf"].as()); + digit2raw(vm["input-file"].as(), + vm["output-dir"].as(), + vm["verbosity"].as(), + vm["file-per-link"].as(), + vm["rdh-version"].as(), + vm["no-empty-hbf"].as()); o2::raw::HBFUtils::Instance().print(); return 0; } -void digi2raw(const std::string& inpName, const std::string& outDir, bool filePerLink, uint32_t rdhV, bool noEmptyHBF, int superPageSizeInB) +void digit2raw(const std::string& inpName, const std::string& outDir, int verbosity, bool filePerLink, uint32_t rdhV, bool noEmptyHBF, int superPageSizeInB) { TStopwatch swTot; swTot.Start(); - o2::fdd::Digits2Raw m2r; + o2::fdd::RawWriterFDD m2r; m2r.setFilePerLink(filePerLink); + m2r.setVerbosity(verbosity); auto& wr = m2r.getWriter(); std::string inputGRP = o2::base::NameConf::getGRPFileName(); const auto grp = o2::parameters::GRPObject::loadFrom(inputGRP); @@ -112,9 +114,8 @@ void digi2raw(const std::string& inpName, const std::string& outDir, bool filePe outDirName += '/'; } - m2r.readDigits(outDirName, inpName); + m2r.convertDigitsToRaw(outDirName, inpName); wr.writeConfFile(wr.getOrigin().str, "RAWDATA", o2::utils::Str::concat_string(outDirName, wr.getOrigin().str, "raw.cfg")); - //LOG(INFO)<& workflowOptions) { // option allowing to set parameters workflowOptions.push_back( - ConfigParamSpec{"use-process", + ConfigParamSpec{"tcm-extended-mode", o2::framework::VariantType::Bool, false, - {"enable processor for data taking/dumping"}}); - workflowOptions.push_back( - ConfigParamSpec{"dump-blocks-process", - o2::framework::VariantType::Bool, - false, - {"enable dumping of event blocks at processor side"}}); + {"in case of extended TCM mode (1 header + 1 TCMdata + 8 " + "TCMdataExtended)"}}); + workflowOptions.push_back( ConfigParamSpec{"dump-blocks-reader", o2::framework::VariantType::Bool, @@ -41,11 +43,15 @@ void customize(std::vector& workflowOptions) false, {"disable root-files output writers"}}); workflowOptions.push_back( - ConfigParamSpec{ - "configKeyValues", - o2::framework::VariantType::String, - "", - {"Semicolon separated key=value strings"}}); + ConfigParamSpec{"configKeyValues", + o2::framework::VariantType::String, + "", + {"Semicolon separated key=value strings"}}); + workflowOptions.push_back( + ConfigParamSpec{"ignore-dist-stf", + o2::framework::VariantType::Bool, + false, + {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}); } // ------------------------------------------------------------------ @@ -55,13 +61,30 @@ void customize(std::vector& workflowOptions) WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) { LOG(INFO) << "WorkflowSpec defineDataProcessing"; - o2::conf::ConfigurableParam::updateFromString(configcontext.options().get("configKeyValues")); - auto useProcessor = configcontext.options().get("use-process"); - auto dumpProcessor = configcontext.options().get("dump-blocks-process"); auto dumpReader = configcontext.options().get("dump-blocks-reader"); - auto disableRootOut = - configcontext.options().get("disable-root-output"); + auto isExtendedMode = configcontext.options().get("tcm-extended-mode"); + auto disableRootOut = configcontext.options().get("disable-root-output"); + auto askSTFDist = !configcontext.options().get("ignore-dist-stf"); LOG(INFO) << "WorkflowSpec FLPWorkflow"; - return std::move(o2::fdd::getFDDRawWorkflow( - useProcessor, dumpProcessor, dumpReader, disableRootOut)); + //Type aliases + //using RawReaderFDDtrgInput = o2::fit::RawReaderFIT; + using RawReaderFDD = o2::fit::RawReaderFIT; + //using RawReaderFDDtrgInputExt = o2::fit::RawReaderFIT; + using RawReaderFDDext = o2::fit::RawReaderFIT; + using MCLabelCont = o2::dataformats::MCTruthContainer; + o2::header::DataOrigin dataOrigin = o2::header::gDataOriginFDD; + // + WorkflowSpec specs; + if (isExtendedMode) { + specs.emplace_back(o2::fit::getFITDataReaderDPLSpec(RawReaderFDDext{dataOrigin, dumpReader}, askSTFDist)); + if (!disableRootOut) { + specs.emplace_back(o2::fit::FITDigitWriterSpecHelper::getFITDigitWriterSpec(false, false, dataOrigin)); + } + } else { + specs.emplace_back(o2::fit::getFITDataReaderDPLSpec(RawReaderFDD{dataOrigin, dumpReader}, askSTFDist)); + if (!disableRootOut) { + specs.emplace_back(o2::fit::FITDigitWriterSpecHelper::getFITDigitWriterSpec(false, false, dataOrigin)); + } + } + return std::move(specs); } diff --git a/Detectors/FIT/FT0/base/CMakeLists.txt b/Detectors/FIT/FT0/base/CMakeLists.txt index 03d79962df964..f33f66252884d 100644 --- a/Detectors/FIT/FT0/base/CMakeLists.txt +++ b/Detectors/FIT/FT0/base/CMakeLists.txt @@ -13,6 +13,7 @@ o2_add_library(FT0Base SOURCES src/Geometry.cxx PUBLIC_LINK_LIBRARIES ROOT::Physics FairRoot::Base O2::DetectorsBase O2::DetectorsCommonDataFormats O2::FrameworkLogger) -o2_target_root_dictionary(FT0Base HEADERS include/FT0Base/Geometry.h) +o2_target_root_dictionary(FT0Base HEADERS include/FT0Base/Geometry.h + include/FT0Base/Constants.h) o2_data_file(COPY files DESTINATION Detectors/FT0/) diff --git a/Detectors/FIT/FT0/base/include/FT0Base/Constants.h b/Detectors/FIT/FT0/base/include/FT0Base/Constants.h new file mode 100644 index 0000000000000..ab3fdd9454a96 --- /dev/null +++ b/Detectors/FIT/FT0/base/include/FT0Base/Constants.h @@ -0,0 +1,40 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file Constants.h +/// \brief General constants in FT0 +/// +/// \author Artur Furs, afurs@cern.ch + +#ifndef ALICEO2_FT0_CONSTANTS_ +#define ALICEO2_FT0_CONSTANTS_ + +namespace o2 +{ +namespace ft0 +{ + +struct Constants { + constexpr static std::size_t sNPM = 18; //Number of PMs + constexpr static std::size_t sNPM_LCS = 1; //Number of PM-LCSs + constexpr static std::size_t sNTCM = 1; //Number of TCMs + constexpr static std::size_t sNTOTAL_PM = sNPM + sNPM_LCS; //Total number of PMs(PM + PM_LCS) + constexpr static std::size_t sNTOTAL_FEE = sNPM + sNPM_LCS + sNTCM; //Total number of FEE modules + + constexpr static std::size_t sNCHANNELS_PER_PM = 12; //Number of local channels per PM + constexpr static std::size_t sNCHANNELS_PM = sNPM * sNCHANNELS_PER_PM; //Number of PM(not LCS) channels + constexpr static std::size_t sNCHANNELS_PM_LCS = sNPM_LCS * sNCHANNELS_PER_PM; //Number of PM_LCS channels + constexpr static std::size_t sNTOTAL_CHANNELS_PM = sNCHANNELS_PM + sNCHANNELS_PM_LCS; //Total number of PM(+LCS) channels +}; + +} // namespace ft0 +} // namespace o2 +#endif diff --git a/Detectors/FIT/FT0/reconstruction/src/test-raw2digit.cxx b/Detectors/FIT/FT0/reconstruction/src/test-raw2digit.cxx index 806703022f020..62132be3dd673 100644 --- a/Detectors/FIT/FT0/reconstruction/src/test-raw2digit.cxx +++ b/Detectors/FIT/FT0/reconstruction/src/test-raw2digit.cxx @@ -44,8 +44,8 @@ int main() std::vector* ptrVecDigits = &vecDigits; std::vector vecChannelData; std::vector* ptrVecChannelData = &vecChannelData; - treeInput->SetBranchAddress("FT0DIGITSBC", &ptrVecDigits); - treeInput->SetBranchAddress("FT0DIGITSCH", &ptrVecChannelData); + treeInput->SetBranchAddress(Digit::sDigitBranchName, &ptrVecDigits); + treeInput->SetBranchAddress(ChannelData::sDigitBranchName, &ptrVecChannelData); std::cout << "Tree nEntries:" << treeInput->GetEntries() << std::endl; for (int iEvent = 0; iEvent < treeInput->GetEntries(); iEvent++) { //Iterating TFs in tree treeInput->GetEntry(iEvent); @@ -73,8 +73,8 @@ int main() std::unique_ptr treeInput2((TTree*)flIn2.Get("o2sim")); std::cout << "Reconstruction completed!" << std::endl; - treeInput2->SetBranchAddress("FT0DIGITSBC", &ptrVecDigits); - treeInput2->SetBranchAddress("FT0DIGITSCH", &ptrVecChannelData); + treeInput2->SetBranchAddress(Digit::sDigitBranchName, &ptrVecDigits); + treeInput2->SetBranchAddress(ChannelData::sDigitBranchName, &ptrVecChannelData); std::cout << "Tree nEntries: " << treeInput2->GetEntries() << std::endl; for (int iEvent = 0; iEvent < treeInput2->GetEntries(); iEvent++) { //Iterating TFs in tree treeInput2->GetEntry(iEvent); diff --git a/Detectors/FIT/FT0/simulation/CMakeLists.txt b/Detectors/FIT/FT0/simulation/CMakeLists.txt index e139017dd8e05..3de4e26cb08ee 100644 --- a/Detectors/FIT/FT0/simulation/CMakeLists.txt +++ b/Detectors/FIT/FT0/simulation/CMakeLists.txt @@ -19,7 +19,7 @@ o2_add_library(FT0Simulation O2::DataFormatsFT0 O2::DetectorsRaw O2::CCDB - O2::DetectorsCalibration + O2::DetectorsCalibration O2::Headers) o2_target_root_dictionary(FT0Simulation HEADERS @@ -34,9 +34,10 @@ o2_target_root_dictionary(FT0Simulation HEADERS o2_add_executable(digi2raw COMPONENT_NAME ft0 - SOURCES src/digi2raw.cxx + SOURCES src/digit2raw.cxx PUBLIC_LINK_LIBRARIES O2::FT0Simulation O2::DetectorsRaw O2::DetectorsCommonDataFormats O2::CommonUtils - Boost::program_options) + Boost::program_options + O2::FT0Raw) diff --git a/Detectors/FIT/FT0/simulation/src/digit2raw.cxx b/Detectors/FIT/FT0/simulation/src/digit2raw.cxx new file mode 100644 index 0000000000000..5d61f46cf7f75 --- /dev/null +++ b/Detectors/FIT/FT0/simulation/src/digit2raw.cxx @@ -0,0 +1,122 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file digit2raw.cxx +/// \author ruben.shahoyan@cern.ch afurs@cern.ch + +#include +#include +#include +#include +#include "Framework/Logger.h" +#include +#include +#include "CommonUtils/StringUtils.h" +#include "CommonUtils/ConfigurableParam.h" +#include "DetectorsCommonDataFormats/NameConf.h" +#include "DetectorsRaw/HBFUtils.h" +#include "FT0Raw/RawWriterFT0.h" +#include "DataFormatsParameters/GRPObject.h" + +/// MC->raw conversion for FT0 + +namespace bpo = boost::program_options; + +void digit2raw(const std::string& inpName, const std::string& outDir, int verbosity, bool filePerLink, uint32_t rdhV = 4, bool noEmptyHBF = false, + int superPageSizeInB = 1024 * 1024); + +int main(int argc, char** argv) +{ + bpo::variables_map vm; + bpo::options_description opt_general("Usage:\n " + std::string(argv[0]) + + "Convert FT0 digits to CRU raw data\n"); + bpo::options_description opt_hidden(""); + bpo::options_description opt_all; + bpo::positional_options_description opt_pos; + + try { + auto add_option = opt_general.add_options(); + add_option("help,h", "Print this help message"); + add_option("verbosity,v", bpo::value()->default_value(0), "verbosity level"); + // add_option("input-file,i", bpo::value()->default_value(o2::base::NameConf::getDigitsFileName(o2::detectors::DetID::FT0)),"input FT0 digits file"); // why not used? + add_option("input-file,i", bpo::value()->default_value("ft0digits.root"), "input FT0 digits file"); + add_option("file-per-link,l", bpo::value()->default_value(false)->implicit_value(true), "create output file per CRU (default: per layer)"); + add_option("output-dir,o", bpo::value()->default_value("./"), "output directory for raw data"); + uint32_t defRDH = o2::raw::RDHUtils::getVersion(); + add_option("rdh-version,r", bpo::value()->default_value(defRDH), "RDH version to use"); + add_option("no-empty-hbf,e", bpo::value()->default_value(false)->implicit_value(true), "do not create empty HBF pages (except for HBF starting TF)"); + add_option("hbfutils-config,u", bpo::value()->default_value(std::string(o2::base::NameConf::DIGITIZATIONCONFIGFILE)), "config file for HBFUtils (or none)"); + add_option("configKeyValues", bpo::value()->default_value(""), "comma-separated configKeyValues"); + + opt_all.add(opt_general).add(opt_hidden); + bpo::store(bpo::command_line_parser(argc, argv).options(opt_all).positional(opt_pos).run(), vm); + + if (vm.count("help")) { + std::cout << opt_general << std::endl; + exit(0); + } + + bpo::notify(vm); + } catch (bpo::error& e) { + std::cerr << "ERROR: " << e.what() << std::endl + << std::endl; + std::cerr << opt_general << std::endl; + exit(1); + } catch (std::exception& e) { + std::cerr << e.what() << ", application will now exit" << std::endl; + exit(2); + } + + std::string confDig = vm["hbfutils-config"].as(); + if (!confDig.empty() && confDig != "none") { + o2::conf::ConfigurableParam::updateFromFile(confDig, "HBFUtils"); + } + o2::conf::ConfigurableParam::updateFromString(vm["configKeyValues"].as()); + digit2raw(vm["input-file"].as(), + vm["output-dir"].as(), + vm["verbosity"].as(), + vm["file-per-link"].as(), + vm["rdh-version"].as(), + vm["no-empty-hbf"].as()); + + o2::raw::HBFUtils::Instance().print(); + + return 0; +} + +void digit2raw(const std::string& inpName, const std::string& outDir, int verbosity, bool filePerLink, uint32_t rdhV, bool noEmptyHBF, int superPageSizeInB) +{ + TStopwatch swTot; + swTot.Start(); + o2::ft0::RawWriterFT0 m2r; + m2r.setFilePerLink(filePerLink); + m2r.setVerbosity(verbosity); + auto& wr = m2r.getWriter(); + std::string inputGRP = o2::base::NameConf::getGRPFileName(); + const auto grp = o2::parameters::GRPObject::loadFrom(inputGRP); + wr.setContinuousReadout(grp->isDetContinuousReadOut(o2::detectors::DetID::FT0)); // must be set explicitly + wr.setSuperPageSize(superPageSizeInB); + wr.useRDHVersion(rdhV); + wr.setDontFillEmptyHBF(noEmptyHBF); + + o2::raw::assertOutputDirectory(outDir); + + std::string outDirName(outDir); + if (outDirName.back() != '/') { + outDirName += '/'; + } + + m2r.convertDigitsToRaw(outDirName, inpName); + wr.writeConfFile(wr.getOrigin().str, "RAWDATA", o2::utils::Str::concat_string(outDirName, wr.getOrigin().str, "raw.cfg")); + // + swTot.Stop(); + swTot.Print(); +} diff --git a/Detectors/FIT/FT0/workflow/CMakeLists.txt b/Detectors/FIT/FT0/workflow/CMakeLists.txt index b775bc2e1febe..a33ffa1ede15a 100644 --- a/Detectors/FIT/FT0/workflow/CMakeLists.txt +++ b/Detectors/FIT/FT0/workflow/CMakeLists.txt @@ -48,7 +48,7 @@ o2_add_executable(digits-reader-workflow o2_add_executable(flp-dpl-workflow COMPONENT_NAME ft0 SOURCES src/ft0-flp-workflow.cxx - PUBLIC_LINK_LIBRARIES O2::FT0Workflow + PUBLIC_LINK_LIBRARIES O2::FT0Workflow O2::FT0Raw O2::FITWorkflow TARGETVARNAME ft0flpexe) if(NOT APPLE) diff --git a/Detectors/FIT/FT0/workflow/src/ft0-flp-workflow.cxx b/Detectors/FIT/FT0/workflow/src/ft0-flp-workflow.cxx index 17c4b46a2fb72..dfc852825e23c 100644 --- a/Detectors/FIT/FT0/workflow/src/ft0-flp-workflow.cxx +++ b/Detectors/FIT/FT0/workflow/src/ft0-flp-workflow.cxx @@ -10,7 +10,12 @@ // or submit itself to any jurisdiction. #include "CommonUtils/ConfigurableParam.h" -#include "FT0Workflow/FT0Workflow.h" +#include "FITWorkflow/FITDataReaderDPLSpec.h" +#include "FITWorkflow/FITDigitWriterSpec.h" +#include "FITWorkflow/RawReaderFIT.h" +#include "DataFormatsFT0/MCLabel.h" +#include "FT0Raw/RawReaderFT0Base.h" +#include "SimulationDataFormat/MCTruthContainer.h" using namespace o2::framework; @@ -27,16 +32,6 @@ void customize(std::vector& workflowOptions) {"in case of extended TCM mode (1 header + 1 TCMdata + 8 " "TCMdataExtended)"}}); - workflowOptions.push_back( - ConfigParamSpec{"use-process", - o2::framework::VariantType::Bool, - false, - {"enable processor for data taking/dumping"}}); - workflowOptions.push_back( - ConfigParamSpec{"dump-blocks-process", - o2::framework::VariantType::Bool, - false, - {"enable dumping of event blocks at processor side"}}); workflowOptions.push_back( ConfigParamSpec{"dump-blocks-reader", o2::framework::VariantType::Bool, @@ -52,7 +47,11 @@ void customize(std::vector& workflowOptions) o2::framework::VariantType::String, "", {"Semicolon separated key=value strings"}}); - workflowOptions.push_back(ConfigParamSpec{"ignore-dist-stf", VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}); + workflowOptions.push_back( + ConfigParamSpec{"ignore-dist-stf", + o2::framework::VariantType::Bool, + false, + {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}); } // ------------------------------------------------------------------ @@ -62,12 +61,30 @@ void customize(std::vector& workflowOptions) WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) { LOG(INFO) << "WorkflowSpec defineDataProcessing"; - auto useProcessor = configcontext.options().get("use-process"); - auto dumpProcessor = configcontext.options().get("dump-blocks-process"); auto dumpReader = configcontext.options().get("dump-blocks-reader"); auto isExtendedMode = configcontext.options().get("tcm-extended-mode"); auto disableRootOut = configcontext.options().get("disable-root-output"); auto askSTFDist = !configcontext.options().get("ignore-dist-stf"); LOG(INFO) << "WorkflowSpec FLPWorkflow"; - return std::move(o2::ft0::getFT0Workflow(isExtendedMode, useProcessor, dumpProcessor, dumpReader, disableRootOut, askSTFDist)); + //Type aliases + //using RawReaderFT0trgInput = o2::fit::RawReaderFIT; + using RawReaderFT0 = o2::fit::RawReaderFIT; + //using RawReaderFT0trgInputExt = o2::fit::RawReaderFIT; + using RawReaderFT0ext = o2::fit::RawReaderFIT; + using MCLabelCont = o2::dataformats::MCTruthContainer; + o2::header::DataOrigin dataOrigin = o2::header::gDataOriginFT0; + // + WorkflowSpec specs; + if (isExtendedMode) { + specs.emplace_back(o2::fit::getFITDataReaderDPLSpec(RawReaderFT0ext{dataOrigin, dumpReader}, askSTFDist)); + if (!disableRootOut) { + specs.emplace_back(o2::fit::FITDigitWriterSpecHelper::getFITDigitWriterSpec(false, false, dataOrigin)); + } + } else { + specs.emplace_back(o2::fit::getFITDataReaderDPLSpec(RawReaderFT0{dataOrigin, dumpReader}, askSTFDist)); + if (!disableRootOut) { + specs.emplace_back(o2::fit::FITDigitWriterSpecHelper::getFITDigitWriterSpec(false, false, dataOrigin)); + } + } + return std::move(specs); } diff --git a/Detectors/FIT/FV0/reconstruction/src/test-raw2digit.cxx b/Detectors/FIT/FV0/reconstruction/src/test-raw2digit.cxx index 17aa052991231..10a95b28b8651 100644 --- a/Detectors/FIT/FV0/reconstruction/src/test-raw2digit.cxx +++ b/Detectors/FIT/FV0/reconstruction/src/test-raw2digit.cxx @@ -47,8 +47,8 @@ int main() std::vector* ptrVecDigits = &vecDigits; std::vector vecChannelData; std::vector* ptrVecChannelData = &vecChannelData; - treeInput->SetBranchAddress("FV0DigitBC", &ptrVecDigits); - treeInput->SetBranchAddress("FV0DigitCh", &ptrVecChannelData); + treeInput->SetBranchAddress(Digit::sDigitBranchName, &ptrVecDigits); + treeInput->SetBranchAddress(ChannelData::sDigitBranchName, &ptrVecChannelData); std::cout << "Tree nEntries:" << treeInput->GetEntries() << std::endl; for (int iEvent = 0; iEvent < treeInput->GetEntries(); iEvent++) { //Iterating TFs in tree treeInput->GetEntry(iEvent); @@ -76,8 +76,8 @@ int main() std::unique_ptr treeInput2((TTree*)flIn2.Get("o2sim")); std::cout << "Reconstruction completed!" << std::endl; - treeInput2->SetBranchAddress("FV0DIGITSBC", &ptrVecDigits); - treeInput2->SetBranchAddress("FV0DIGITSCH", &ptrVecChannelData); + treeInput2->SetBranchAddress(Digit::sDigitBranchName, &ptrVecDigits); + treeInput2->SetBranchAddress(ChannelData::sDigitBranchName, &ptrVecChannelData); std::cout << "Tree nEntries: " << treeInput2->GetEntries() << std::endl; for (int iEvent = 0; iEvent < treeInput2->GetEntries(); iEvent++) { //Iterating TFs in tree treeInput2->GetEntry(iEvent); diff --git a/Detectors/FIT/raw/include/FITRaw/DigitBlockBase.h b/Detectors/FIT/raw/include/FITRaw/DigitBlockBase.h index c1eabb940f214..80daab3570576 100644 --- a/Detectors/FIT/raw/include/FITRaw/DigitBlockBase.h +++ b/Detectors/FIT/raw/include/FITRaw/DigitBlockBase.h @@ -54,6 +54,7 @@ struct IsSpecOfType> : std::true_type { template struct HasRef : std::false_type { }; +//For FT0 template struct HasRef().ref), typename o2::dataformats::RangeReference>::value>> : std::true_type { }; @@ -61,11 +62,16 @@ struct HasRef().ref), template struct HasRef().ref), typename o2::dataformats::RangeRefComp<6>>::value>> : std::true_type { }; +//For FDD +template +struct HasRef().ref), typename o2::dataformats::RangeRefComp<5>>::value>> : std::true_type { +}; //Check if RangeReference is an array field in main digit structure template struct HasArrayRef : std::false_type { }; +//For FT0 template struct HasArrayRef().ref), typename std::array, std::tuple_size().ref)>::value>>::value>> : std::true_type { }; @@ -73,6 +79,10 @@ struct HasArrayRef().r template struct HasArrayRef().ref), typename std::array, std::tuple_size().ref)>::value>>::value>> : std::true_type { }; +//For FDD +template +struct HasArrayRef().ref), typename std::array, std::tuple_size().ref)>::value>>::value>> : std::true_type { +}; //Get RangeReference number of dimentions. template diff --git a/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h b/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h index 60bf920836760..404142c5cf270 100644 --- a/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h +++ b/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h @@ -79,11 +79,11 @@ auto ConvertDigit2TCMData(const DigitType& digit, TCMDataType& tcmData) -> std:: { tcmData.orA = digit.mTriggers.getOrA(); tcmData.orC = digit.mTriggers.getOrC(); - tcmData.sCen = digit.mTriggers.getVertex(); + tcmData.sCen = digit.mTriggers.getSCen(); tcmData.cen = digit.mTriggers.getCen(); - tcmData.vertex = digit.mTriggers.getSCen(); - tcmData.laser = bool(digit.mTriggers.triggerSignals & (1 << 5)); - tcmData.dataIsValid = bool(digit.mTriggers.triggerSignals & (1 << 6)); + tcmData.vertex = digit.mTriggers.getVertex(); + tcmData.laser = bool(digit.mTriggers.triggersignals & (1 << 5)); + tcmData.dataIsValid = bool(digit.mTriggers.triggersignals & (1 << 6)); //tcmData.laser = digit.mTriggers.getLaserBit(); //Turned off for FDD tcmData.nChanA = digit.mTriggers.nChanA; tcmData.nChanC = digit.mTriggers.nChanC; diff --git a/Detectors/FIT/raw/include/FITRaw/RawWriterFIT.h b/Detectors/FIT/raw/include/FITRaw/RawWriterFIT.h index 75335f9fcbf9f..8059be3677d54 100644 --- a/Detectors/FIT/raw/include/FITRaw/RawWriterFIT.h +++ b/Detectors/FIT/raw/include/FITRaw/RawWriterFIT.h @@ -75,11 +75,9 @@ class RawWriterFIT }; //Registering links for (const auto& metadataPair : mMapTopo2FEEmetadata) { - auto& rdh = metadataPair.second; - auto outputFilename = makeFilename(rdh); + const auto& rdh = metadataPair.second; + const auto outputFilename = makeFilename(rdh); mWriter.registerLink(RDHUtils::getFEEID(rdh), RDHUtils::getCRUID(rdh), RDHUtils::getLinkID(rdh), RDHUtils::getEndPointID(rdh), outputFilename); - LOG(INFO) << "Registering link | " - << "LinkID: " << static_cast(RDHUtils::getLinkID(rdh)) << " | EndPointID: " << static_cast(RDHUtils::getEndPointID(rdh)) << " | Output filename: " << outputFilename; } //Processing digits into raw data TFile* inputFile = TFile::Open(filenameDigits.c_str()); diff --git a/Detectors/FIT/workflow/include/FITWorkflow/FITDigitWriterSpec.h b/Detectors/FIT/workflow/include/FITWorkflow/FITDigitWriterSpec.h index a03331b785892..9556a52c7efbb 100644 --- a/Detectors/FIT/workflow/include/FITWorkflow/FITDigitWriterSpec.h +++ b/Detectors/FIT/workflow/include/FITWorkflow/FITDigitWriterSpec.h @@ -60,7 +60,8 @@ struct FITDigitWriterSpecHelper { auto dplName = T::sChannelNameDPL; auto dplLabel = std::string{dplName}; std::for_each(dplLabel.begin(), dplLabel.end(), [](char& c) { c = ::tolower(c); }); - auto branchName = std::string{detName + dplName}; + //auto branchName = std::string{detName + dplName}; + auto branchName = std::string{T::sDigitBranchName}; auto optionStr = std::string{detNameLower + "-" + dplName + "-branch-name"}; //LOG(INFO)<<"Branch: "<>{InputSpec{dplLabel.c_str(), dataOrigin, T::sChannelNameDPL}, branchName.c_str(), optionStr.c_str(), std::forward(args)...}; From 6bcc62614c0b1f5c62faaa6dc3cb70cc7b4dfc67 Mon Sep 17 00:00:00 2001 From: rpezzi Date: Thu, 1 Jul 2021 10:58:44 +0200 Subject: [PATCH 057/314] [MFT] Fixes for forward track dataformat and track fitting (#6544) * Fix TrackFwd covariance extrapolation - Explicit naming os symmetric and regular matrices - Included optmized extrapolaton fuction: parameters extrapolated as helix, errors extrapolated using quadratic approximation. * More robust trackfwd seed determination + update 1st cluster * Fix addition of MCS effects on forward track covariances * MFT MCS effects with more granularity * Minor updates on MFT track fitter and geometry --- .../MFT/include/DataFormatsMFT/TrackMFT.h | 2 - .../Detectors/ITSMFT/MFT/src/TrackMFT.cxx | 2 - .../ReconstructionDataFormats/TrackFwd.h | 23 +- DataFormats/Reconstruction/src/TrackFwd.cxx | 163 ++++++----- Detectors/ITSMFT/MFT/base/src/Support.cxx | 4 +- .../include/MFTTracking/MFTTrackingParam.h | 7 +- .../include/MFTTracking/TrackFitter.h | 13 +- .../ITSMFT/MFT/tracking/src/TrackFitter.cxx | 258 +++++++++--------- 8 files changed, 248 insertions(+), 224 deletions(-) diff --git a/DataFormats/Detectors/ITSMFT/MFT/include/DataFormatsMFT/TrackMFT.h b/DataFormats/Detectors/ITSMFT/MFT/include/DataFormatsMFT/TrackMFT.h index 44ca978fafb2a..c132b08a391b3 100644 --- a/DataFormats/Detectors/ITSMFT/MFT/include/DataFormatsMFT/TrackMFT.h +++ b/DataFormats/Detectors/ITSMFT/MFT/include/DataFormatsMFT/TrackMFT.h @@ -33,8 +33,6 @@ namespace mft class TrackMFT : public o2::track::TrackParCovFwd { using ClusRefs = o2::dataformats::RangeRefComp<4>; - using SMatrix55 = ROOT::Math::SMatrix>; - using SMatrix5 = ROOT::Math::SVector; public: TrackMFT() = default; diff --git a/DataFormats/Detectors/ITSMFT/MFT/src/TrackMFT.cxx b/DataFormats/Detectors/ITSMFT/MFT/src/TrackMFT.cxx index 42fa3bb3af10d..2afec30405a92 100644 --- a/DataFormats/Detectors/ITSMFT/MFT/src/TrackMFT.cxx +++ b/DataFormats/Detectors/ITSMFT/MFT/src/TrackMFT.cxx @@ -24,8 +24,6 @@ namespace o2 namespace mft { -using SMatrix55 = ROOT::Math::SMatrix>; -using SMatrix5 = ROOT::Math::SVector; //__________________________________________________________________________ void TrackMFT::print() const diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackFwd.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackFwd.h index 4bdfd044ae33c..749a4a26f4301 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackFwd.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/TrackFwd.h @@ -27,7 +27,8 @@ namespace o2 namespace track { -using SMatrix55 = ROOT::Math::SMatrix>; +using SMatrix55Sym = ROOT::Math::SMatrix>; +using SMatrix55Std = ROOT::Math::SMatrix; using SMatrix5 = ROOT::Math::SVector; class TrackParFwd @@ -61,16 +62,9 @@ class TrackParFwd Double_t getInvQPt() const { return mParameters(4); } // return Inverse charged pt Double_t getPt() const { return TMath::Abs(1.f / mParameters(4)); } Double_t getInvPt() const { return TMath::Abs(mParameters(4)); } - Double_t getPx() const { return TMath::Cos(getPhi()) * getPt(); } // return px - Double_t getInvPx() const { return 1. / getPx(); } // return invpx - Double_t getPy() const { return TMath::Sin(getPhi()) * getPt(); } // return py - Double_t getInvPy() const { return 1. / getPx(); } // return invpy - Double_t getPz() const { return getTanl() * getPt(); } // return pz - Double_t getInvPz() const { return 1. / getPz(); } // return invpz - Double_t getP() const { return getPt() * TMath::Sqrt(1. + getTanl() * getTanl()); } // return total momentum Double_t getInverseMomentum() const { return 1.f / getP(); } @@ -126,11 +120,11 @@ class TrackParCovFwd : public TrackParFwd TrackParCovFwd() = default; ~TrackParCovFwd() = default; TrackParCovFwd& operator=(const TrackParCovFwd& tpf) = default; - TrackParCovFwd(const Double_t z, const SMatrix5 parameters, const SMatrix55 covariances, const Double_t chi2); + TrackParCovFwd(const Double_t z, const SMatrix5& parameters, const SMatrix55Sym& covariances, const Double_t chi2); - const SMatrix55& getCovariances() const { return mCovariances; } - void setCovariances(const SMatrix55& covariances) { mCovariances = covariances; } - void deleteCovariances() { mCovariances = SMatrix55(); } + const SMatrix55Sym& getCovariances() const { return mCovariances; } + void setCovariances(const SMatrix55Sym& covariances) { mCovariances = covariances; } + void deleteCovariances() { mCovariances = SMatrix55Sym(); } Double_t getSigma2X() const { return mCovariances(0, 0); } Double_t getSigma2Y() const { return mCovariances(1, 1); } @@ -142,9 +136,10 @@ class TrackParCovFwd : public TrackParFwd void propagateToZlinear(double zEnd); void propagateToZquadratic(double zEnd, double zField); void propagateToZhelix(double zEnd, double zField); + void propagateToZ(double zEnd, double zField); // Parameters: helix; errors: quadratic // Add Multiple Coulomb Scattering effects - void addMCSEffect(double dZ, double x2X0); + void addMCSEffect(double x2X0); // Kalman filter/fitting bool update(const std::array& p, const std::array& cov); @@ -156,7 +151,7 @@ class TrackParCovFwd : public TrackParFwd /// /// /// - SMatrix55 mCovariances{}; ///< \brief Covariance matrix of track parameters + SMatrix55Sym mCovariances{}; ///< \brief Covariance matrix of track parameters ClassDefNV(TrackParCovFwd, 1); }; diff --git a/DataFormats/Reconstruction/src/TrackFwd.cxx b/DataFormats/Reconstruction/src/TrackFwd.cxx index 2a6adaf3669cd..9d8db3038a232 100644 --- a/DataFormats/Reconstruction/src/TrackFwd.cxx +++ b/DataFormats/Reconstruction/src/TrackFwd.cxx @@ -19,7 +19,7 @@ namespace track using namespace std; //_________________________________________________________________________ -TrackParCovFwd::TrackParCovFwd(const Double_t z, const SMatrix5 parameters, const SMatrix55 covariances, const Double_t chi2) +TrackParCovFwd::TrackParCovFwd(const Double_t z, const SMatrix5& parameters, const SMatrix55Sym& covariances, const Double_t chi2) { setZ(z); setParameters(parameters); @@ -67,7 +67,7 @@ void TrackParCovFwd::propagateToZlinear(double zEnd) setZ(zEnd); // Calculate Jacobian - SMatrix55 jacob = ROOT::Math::SMatrixIdentity(); + SMatrix55Std jacob = ROOT::Math::SMatrixIdentity(); jacob(0, 2) = -n * sinphi0; jacob(0, 3) = -m * cosphi0; jacob(1, 2) = n * cosphi0; @@ -132,7 +132,7 @@ void TrackParCovFwd::propagateToZquadratic(double zEnd, double zField) mZ = zEnd; // Calculate Jacobian - SMatrix55 jacob = ROOT::Math::SMatrixIdentity(); + SMatrix55Std jacob = ROOT::Math::SMatrixIdentity(); jacob(0, 2) = -n * theta * 0.5 * Hz * cosphi0 - n * sinphi0; jacob(0, 3) = Hz * m * theta * sinphi0 - m * cosphi0; jacob(0, 4) = k * m * 0.5 * Hz * dZ * sinphi0; @@ -227,7 +227,7 @@ void TrackParCovFwd::propagateToZhelix(double zEnd, double zField) mZ = zEnd; // Calculate Jacobian - SMatrix55 jacob = ROOT::Math::SMatrixIdentity(); + SMatrix55Std jacob = ROOT::Math::SMatrixIdentity(); jacob(0, 2) = Hz * X - Hz * XC + YS; jacob(0, 3) = Hz * R * m - S * m; jacob(0, 4) = -Hz * N * R + Hz * T * Y - Hz * V * Y + N * S + U * X; @@ -241,6 +241,55 @@ void TrackParCovFwd::propagateToZhelix(double zEnd, double zField) setCovariances(ROOT::Math::Similarity(jacob, mCovariances)); } +//__________________________________________________________________________ +void TrackParCovFwd::propagateToZ(double zEnd, double zField) +{ + // Extrapolate track parameters and covariances matrix to "zEnd" + // Parameters: helix track model; Error propagation: Quadratic + + auto dZ = (zEnd - getZ()); + auto phi0 = getPhi(); + auto tanl0 = getTanl(); + auto invtanl0 = 1.0 / tanl0; + auto invqpt0 = getInvQPt(); + auto qpt0 = 1.0 / invqpt0; + auto [sinphi0, cosphi0] = o2::math_utils::sincosd(phi0); + auto k = TMath::Abs(o2::constants::math::B2C * zField); + auto invk = 1.0 / k; + auto theta = -invqpt0 * dZ * k * invtanl0; + auto [sintheta, costheta] = o2::math_utils::sincosd(theta); + auto Hz = std::copysign(1, zField); + auto Y = sinphi0 * qpt0 * invk; + auto X = cosphi0 * qpt0 * invk; + auto YC = Y * costheta; + auto YS = Y * sintheta; + auto XC = X * costheta; + auto XS = X * sintheta; + auto n = dZ * invtanl0; + auto m = n * invtanl0; + + // Extrapolate track parameters to "zEnd" + // Helix + mParameters(0) += Hz * (Y - YC) - XS; + mParameters(1) += Hz * (-X + XC) - YS; + mParameters(2) += Hz * theta; + mZ = zEnd; + + // Jacobian (quadratic) + SMatrix55Std jacob = ROOT::Math::SMatrixIdentity(); + jacob(0, 2) = -n * theta * 0.5 * Hz * cosphi0 - n * sinphi0; + jacob(0, 3) = Hz * m * theta * sinphi0 - m * cosphi0; + jacob(0, 4) = k * m * 0.5 * Hz * dZ * sinphi0; + jacob(1, 2) = -n * theta * 0.5 * Hz * sinphi0 + n * cosphi0; + jacob(1, 3) = -Hz * m * theta * cosphi0 - m * sinphi0; + jacob(1, 4) = -k * m * 0.5 * Hz * dZ * cosphi0; + jacob(2, 3) = -Hz * theta * invtanl0; + jacob(2, 4) = -Hz * k * n; + + // Extrapolate track parameter covariances to "zEnd" + setCovariances(ROOT::Math::Similarity(jacob, mCovariances)); +} + //__________________________________________________________________________ bool TrackParCovFwd::update(const std::array& p, const std::array& cov) { @@ -251,9 +300,8 @@ bool TrackParCovFwd::update(const std::array& p, const std::array; using SMatrix25 = ROOT::Math::SMatrix; using SMatrix52 = ROOT::Math::SMatrix; - using SMatrix55Std = ROOT::Math::SMatrix; - SMatrix55 I = ROOT::Math::SMatrixIdentity(); + SMatrix55Sym I = ROOT::Math::SMatrixIdentity(); SMatrix25 H_k; SMatrix22 V_k; SVector2 m_k(p[0], p[1]), r_k_kminus1; @@ -274,7 +322,37 @@ bool TrackParCovFwd::update(const std::array& p, const std::array& p, const std::array 0): MCS effects are evaluated with a linear propagation model. - /// * if (dZ <= 0): only angular MCS effects are evaluated as if dZ = 0. + /// Add multiple Coulomb scattering effects to the track covariances. + /// Only angular and pt MCS effects are evaluated. /// * x_over_X0 is the fraction of the radiation lenght (x/X0). /// * No energy loss correction. - /// * All scattering evaluated at the position of the first cluster. + + if (x_over_X0 == 0) { // Nothing to do + return; + } auto phi0 = getPhi(); auto tanl0 = getTanl(); @@ -322,64 +402,15 @@ void TrackParCovFwd::addMCSEffect(double dZ, double x_over_X0) sigmathetasq *= sigmathetasq * pathLengthOverX0; // Get covariance matrix - SMatrix55 newParamCov(getCovariances()); - - if (dZ > 0) { - auto A = tanl0 * tanl0 + 1; - auto B = dZ * cosphi0 * invtanl0; - auto C = dZ * sinphi0 * invtanl0; - auto D = A * B * invtanl0; - auto E = -A * C * invtanl0; - auto F = -C - D; - auto G = B + E; - auto H = -invqpt0 * tanl0; - - newParamCov(0, 0) += sigmathetasq * F * F; - - newParamCov(0, 1) += sigmathetasq * F * G; - - newParamCov(1, 1) += sigmathetasq * G * G; + SMatrix55Sym newParamCov(getCovariances()); - newParamCov(2, 0) += sigmathetasq * F; + auto A = tanl0 * tanl0 + 1; - newParamCov(2, 1) += sigmathetasq * G; + newParamCov(2, 2) += sigmathetasq * A; - newParamCov(2, 2) += sigmathetasq; + newParamCov(3, 3) += sigmathetasq * A * A; - newParamCov(3, 0) += sigmathetasq * A * F; - - newParamCov(3, 1) += sigmathetasq * A * G; - - newParamCov(3, 2) += sigmathetasq * A; - - newParamCov(3, 3) += sigmathetasq * A * A; - - newParamCov(4, 0) += sigmathetasq * F * H; - - newParamCov(4, 1) += sigmathetasq * G * H; - - newParamCov(4, 2) += sigmathetasq * H; - - newParamCov(4, 3) += sigmathetasq * A * H; - - newParamCov(4, 4) += sigmathetasq * tanl0 * tanl0 * invqpt0 * invqpt0; - } else { - - auto A = tanl0 * tanl0 + 1; - auto H = -invqpt0 * tanl0; - - newParamCov(2, 2) += sigmathetasq; - - newParamCov(3, 2) += sigmathetasq * A; - - newParamCov(3, 3) += sigmathetasq * A * A; - - newParamCov(4, 2) += sigmathetasq * H; - - newParamCov(4, 3) += sigmathetasq * A * H; - - newParamCov(4, 4) += sigmathetasq * tanl0 * tanl0 * invqpt0 * invqpt0; - } + newParamCov(4, 4) += sigmathetasq * tanl0 * tanl0 * invqpt0 * invqpt0; // Set new covariances setCovariances(newParamCov); diff --git a/Detectors/ITSMFT/MFT/base/src/Support.cxx b/Detectors/ITSMFT/MFT/base/src/Support.cxx index 462ed79464148..21f1ec2e0000e 100644 --- a/Detectors/ITSMFT/MFT/base/src/Support.cxx +++ b/Detectors/ITSMFT/MFT/base/src/Support.cxx @@ -232,8 +232,8 @@ void Support::initParameters() {2.9, 11.885, th, 0., 0., 0}, {2.9 / 2, .7, th, -12.15, 9.9, 0}, {2.9 / 2, .7, th, 12.15, 9.9, 0}, - {1.3875, 1.45, th, 16.1875, 7.9, 0}, - {1.3875, 1.45, th, -16.1875, 7.9, 0}}; + {1.3875, 1.4, th, 16.1875, 7.9, 0}, + {1.3875, 1.4, th, -16.1875, 7.9, 0}}; // ### halfDisks 01 mDiskBoxCuts[1] = mDiskBoxCuts[0]; diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/MFTTrackingParam.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/MFTTrackingParam.h index e0f18704dc12d..57ae5a8e7a5a3 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/MFTTrackingParam.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/MFTTrackingParam.h @@ -25,15 +25,16 @@ namespace mft enum MFTTrackModel { Helix, Quadratic, - Linear + Linear, + Optimized // Parameter propagation with helix model; covariance propagation with quadratic model }; // ** // ** Parameters for MFT tracking configuration // ** struct MFTTrackingParam : public o2::conf::ConfigurableParamHelper { - Int_t trackmodel = MFTTrackModel::Helix; - double MFTRadLength = 1.0; // MFT average material budget within acceptance. Should be 0.041 + Int_t trackmodel = MFTTrackModel::Optimized; + double MFTRadLength = 0.042; // MFT average material budget within acceptance bool verbose = false; /// tracking algorithm (LTF and CA) parameters diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackFitter.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackFitter.h index a952160c74d24..c586f67c1487c 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackFitter.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/TrackFitter.h @@ -33,7 +33,7 @@ namespace mft class TrackFitter { - using SMatrix55 = ROOT::Math::SMatrix>; + using SMatrix55Sym = ROOT::Math::SMatrix>; using SMatrix5 = ROOT::Math::SVector; public: @@ -46,7 +46,7 @@ class TrackFitter TrackFitter& operator=(TrackFitter&&) = delete; void setBz(float bZ) { mBZField = bZ; } - void setMFTRadLength(float x2X0) { mMFTRadLength = x2X0; } + void setMFTRadLength(float MFT_x2X0) { mMFTDiskThicknessInX0 = MFT_x2X0 / 5.0; } void setVerbosity(float v) { mVerbose = v; } void setTrackModel(float m) { mTrackModel = m; } @@ -57,17 +57,16 @@ class TrackFitter static constexpr double getMaxChi2() { return SMaxChi2; } private: + bool propagateToZ(TrackLTF& track, double z); + bool propagateToNextClusterWithMCS(TrackLTF& track, double z); bool computeCluster(TrackLTF& track, int cluster); bool mFieldON = true; Float_t mBZField; // kiloGauss. - Float_t mMFTRadLength = 0.1; - Int_t mTrackModel = MFTTrackModel::Helix; + Float_t mMFTDiskThicknessInX0 = 0.042 / 5; + Int_t mTrackModel = MFTTrackModel::Optimized; static constexpr double SMaxChi2 = 2.e10; ///< maximum chi2 above which the track can be considered as abnormal - /// default layer thickness in X0 for reconstruction //FIXME: set values for the MFT - static constexpr double SLayerThicknessInX0[10] = {0.065, 0.065, 0.075, 0.075, 0.035, - 0.035, 0.035, 0.035, 0.035, 0.035}; bool mVerbose = false; }; diff --git a/Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx b/Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx index 8efc53560e656..47773da5fe11d 100644 --- a/Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx +++ b/Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx @@ -40,7 +40,6 @@ namespace mft //_________________________________________________________________________________________________ bool TrackFitter::fit(TrackLTF& track, bool outward) { - /// Fit a track using its attached clusters /// Returns false in case of failure @@ -54,14 +53,13 @@ bool TrackFitter::fit(TrackLTF& track, bool outward) // recursively compute clusters, updating the track parameters if (!outward) { // Inward for vertexing - nClusters--; while (nClusters-- > 0) { if (!computeCluster(track, nClusters)) { return false; } } } else { // Outward for MCH matching - int ncl = 1; + int ncl = 0; while (ncl < nClusters) { if (!computeCluster(track, ncl)) { return false; @@ -70,7 +68,6 @@ bool TrackFitter::fit(TrackLTF& track, bool outward) } } if (mVerbose) { - // Print final covariances? std::cout << "Track covariances:"; track->getCovariances().Print(); std::cout << "Track Chi2 = " << track.getTrackChi2() << std::endl; std::cout << " ***************************** Done fitting *****************************\n"; } @@ -100,26 +97,32 @@ bool TrackFitter::initTrack(TrackLTF& track, bool outward) track.setInvQPt(invQPt0); /// Compute the initial track parameters to seed the Kalman filter - int first_cls, last_cls; if (outward) { // MCH matching - first_cls = 0; - last_cls = nPoints - 1; + first_cls = 1; + last_cls = 0; } else { // Vertexing first_cls = nPoints - 1; - last_cls = 0; + last_cls = nPoints - 2; } auto x0 = track.getXCoordinates()[first_cls]; auto y0 = track.getYCoordinates()[first_cls]; auto z0 = track.getZCoordinates()[first_cls]; - auto deltaX = track.getXCoordinates()[nPoints - 1] - track.getXCoordinates()[0]; - auto deltaY = track.getYCoordinates()[nPoints - 1] - track.getYCoordinates()[0]; - auto deltaZ = track.getZCoordinates()[nPoints - 1] - track.getZCoordinates()[0]; + //Compute tanl using first two clusters + auto deltaX = track.getXCoordinates()[1] - track.getXCoordinates()[0]; + auto deltaY = track.getYCoordinates()[1] - track.getYCoordinates()[0]; + auto deltaZ = track.getZCoordinates()[1] - track.getZCoordinates()[0]; auto deltaR = TMath::Sqrt(deltaX * deltaX + deltaY * deltaY); auto tanl0 = 0.5 * TMath::Sqrt2() * (deltaZ / deltaR) * TMath::Sqrt(TMath::Sqrt((invQPt0 * deltaR * k) * (invQPt0 * deltaR * k) + 1) + 1); + + // Compute phi at the last cluster using two last clusters + deltaX = track.getXCoordinates()[first_cls] - track.getXCoordinates()[last_cls]; + deltaY = track.getYCoordinates()[first_cls] - track.getYCoordinates()[last_cls]; + deltaZ = track.getZCoordinates()[first_cls] - track.getZCoordinates()[last_cls]; + deltaR = TMath::Sqrt(deltaX * deltaX + deltaY * deltaY); auto phi0 = TMath::ATan2(deltaY, deltaX) - 0.5 * Hz * invQPt0 * deltaZ * k / tanl0; auto sigmax0sq = track.getSigmasX2()[first_cls]; auto sigmay0sq = track.getSigmasY2()[first_cls]; @@ -136,69 +139,22 @@ bool TrackFitter::initTrack(TrackLTF& track, bool outward) if (mVerbose) { std::cout << " Init " << (track.isCA() ? "CA Track " : "LTF Track") << std::endl; - auto model = (mTrackModel == Helix) ? "Helix" : (mTrackModel == Quadratic) ? "Quadratic" : "Linear"; + auto model = (mTrackModel == Helix) ? "Helix" : (mTrackModel == Quadratic) ? "Quadratic" + : (mTrackModel == Optimized) ? "Optimized" + : "Linear"; std::cout << "Track Model: " << model << std::endl; - std::cout << " initTrack: X = " << x0 << " Y = " << y0 << " Z = " << z0 << " Tgl = " << tanl0 << " Phi = " << phi0 << " pz = " << track.getPz() << " qpt = " << 1.0 / track.getInvQPt() << std::endl; - std::cout << " Variances: sigma2_x0 = " << TMath::Sqrt(sigmax0sq) << " sigma2_y0 = " << TMath::Sqrt(sigmay0sq) << " sigma2_q/pt = " << TMath::Sqrt(sigmainvQPtsq) << std::endl; + std::cout << " initTrack: X = " << x0 << " Y = " << y0 << " Z = " << z0 << " Tgl = " << tanl0 << " Phi = " << phi0 << " pz = " << track.getPz() << " q/pt = " << track.getInvQPt() << std::endl; } - auto deltaR2 = deltaR * deltaR; - auto deltaR3 = deltaR2 * deltaR; - auto deltaR4 = deltaR2 * deltaR2; - auto k2 = k * k; - auto A = TMath::Sqrt(track.getInvQPt() * track.getInvQPt() * deltaR2 * k2 + 1); - auto A2 = A * A; - auto B = A + 1.0; - auto B2 = B * B; - auto B3 = B * B * B; - auto B12 = TMath::Sqrt(B); - auto B32 = B * B12; - auto B52 = B * B32; - auto C = invQPt0 * k; - auto C2 = C * C; - auto C3 = C * C2; - auto D = 1.0 / (A2 * B2 * B2 * deltaR4); - auto E = D * deltaZ / (B * deltaR); - auto F = deltaR * deltaX * C3 * Hz / (A * B32); - auto G = 0.5 * TMath::Sqrt2() * A * B32 * C * Hz * deltaR; - auto Gx = G * deltaX; - auto Gy = G * deltaY; - auto H = -0.25 * TMath::Sqrt2() * B12 * C3 * Hz * deltaR3; - auto Hx = H * deltaX; - auto Hy = H * deltaY; - auto I = A * B2; - auto Ix = I * deltaX; - auto Iy = I * deltaY; - auto J = 2 * B * deltaR3 * deltaR3 * k2; - auto K = 0.5 * A * B - 0.25 * C2 * deltaR2; - auto L0 = Gx + Hx + Iy; - auto M0 = -Gy - Hy + Ix; - auto N = -0.5 * B3 * C * Hz * deltaR3 * deltaR4 * k2; - auto O = 0.125 * C2 * deltaR4 * deltaR4 * k2; - auto P = -K * k * Hz * deltaR / A; - auto Q = deltaZ * deltaZ / (A2 * B * deltaR3 * deltaR3); - auto R = 0.25 * C * deltaZ * TMath::Sqrt2() * deltaR * k / (A * B12); - - SMatrix55 lastParamCov; - lastParamCov(0, 0) = sigmax0sq; // - lastParamCov(0, 1) = 0; // - lastParamCov(0, 2) = 0; // - lastParamCov(0, 3) = 0; // - lastParamCov(0, 4) = 0; // - - lastParamCov(1, 1) = sigmay0sq; // - lastParamCov(1, 2) = 0; // - lastParamCov(1, 3) = 0; // - lastParamCov(1, 4) = 0; // - - lastParamCov(2, 2) = D * (J * K * K * sigmainvQPtsq + L0 * L0 * sigmaDeltaXsq + M0 * M0 * sigmaDeltaYsq); // - lastParamCov(2, 3) = E * K * (TMath::Sqrt2() * B52 * (L0 * deltaX * sigmaDeltaXsq - deltaY * sigmaDeltaYsq * M0) + N * sigmainvQPtsq); // - lastParamCov(2, 4) = P * sigmainvQPtsq * TMath::Sqrt2() / B32; // - - lastParamCov(3, 3) = Q * (2 * K * K * (deltaX * deltaX * sigmaDeltaXsq + deltaY * deltaY * sigmaDeltaYsq) + O * sigmainvQPtsq); // - lastParamCov(3, 4) = R * sigmainvQPtsq; // - - lastParamCov(4, 4) = sigmainvQPtsq; // + SMatrix55Sym lastParamCov; + float qptsigma = TMath::Max(std::abs(track.getInvQPt()), .5); + float tanlsigma = TMath::Max(std::abs(track.getTanl()), .5); + + lastParamCov(0, 0) = 1; // + lastParamCov(1, 1) = 1; // + lastParamCov(2, 2) = TMath::Pi() * TMath::Pi() / 16; // + lastParamCov(3, 3) = 10 * tanlsigma * tanlsigma; // + lastParamCov(4, 4) = 10 * qptsigma * qptsigma; // track.setCovariances(lastParamCov); track.setTrackChi2(0.); @@ -207,88 +163,133 @@ bool TrackFitter::initTrack(TrackLTF& track, bool outward) } //_________________________________________________________________________________________________ -bool TrackFitter::computeCluster(TrackLTF& track, int cluster) +bool TrackFitter::propagateToZ(TrackLTF& track, double z) { - /// Propagate track to the z position of the new cluster - /// accounting for MCS dispersion in the current layer and the other(s) crossed - /// Recompute the parameters adding the cluster constraint with the Kalman filter - /// Returns false in case of failure + // Propagate track to the z position of the new cluster + switch (mTrackModel) { + case Linear: + track.propagateToZlinear(z); + break; + case Quadratic: + track.propagateToZquadratic(z, mBZField); + break; + case Helix: + track.propagateToZhelix(z, mBZField); + break; + case Optimized: + track.propagateToZ(z, mBZField); + break; + default: + std::cout << " Invalid track model.\n"; + return false; + break; + } + return true; +} - const auto& clx = track.getXCoordinates()[cluster]; - const auto& cly = track.getYCoordinates()[cluster]; - const auto& clz = track.getZCoordinates()[cluster]; - const auto& sigmaX2 = track.getSigmasX2()[cluster]; - const auto& sigmaY2 = track.getSigmasY2()[cluster]; +//_________________________________________________________________________________________________ +bool TrackFitter::propagateToNextClusterWithMCS(TrackLTF& track, double z) +{ - if (track.getZ() == clz) { - LOG(INFO) << "AddCluster ERROR: The new cluster must be upstream! Bug on TrackFinder. " << (track.isCA() ? " CATrack" : "LTFTrack"); - LOG(INFO) << "track.getZ() = " << track.getZ() << " ; newClusterZ = " << clz << " ==> Skipping point."; - return true; - } - if (mVerbose) { - std::cout << "computeCluster: X = " << clx << " Y = " << cly << " Z = " << clz << " nCluster = " << cluster << std::endl; - } + // Propagate track to the next cluster z position, adding angular MCS effects at the center of + // each disk crossed by the track - // add MCS effects for the new cluster using o2::mft::constants::LayerZPosition; int startingLayerID, newLayerID; + auto startingZ = track.getZ(); - auto dZ = clz - track.getZ(); //LayerID of each cluster from ZPosition // TODO: Use ChipMapping for (auto layer = 10; layer--;) { - if (track.getZ() < LayerZPosition[layer] + .3 & track.getZ() > LayerZPosition[layer] - .3) { + if (startingZ LayerZPosition[layer] - .3) { startingLayerID = layer; } } for (auto layer = 10; layer--;) { - if (clz LayerZPosition[layer] - .3) { + if (z LayerZPosition[layer] - .3) { newLayerID = layer; } } - // Number of disks crossed by this tracklet - int NDisksMS; - if (clz - track.getZ() > 0) { - NDisksMS = (startingLayerID % 2 == 0) ? (startingLayerID - newLayerID) / 2 : (startingLayerID - newLayerID + 1) / 2; - } else { - NDisksMS = (startingLayerID % 2 == 0) ? (newLayerID - startingLayerID + 1) / 2 : (newLayerID - startingLayerID) / 2; - } - auto MFTDiskThicknessInX0 = mMFTRadLength / 5.0; + int direction = (newLayerID - startingLayerID) / std::abs(newLayerID - startingLayerID); + auto currentLayer = startingLayerID; + if (mVerbose) { - std::cout << "startingLayerID = " << startingLayerID << " ; " - << "newLayerID = " << newLayerID << " ; "; - std::cout << "cl.getZ() = " << clz << " ; "; - std::cout << "startingParam.getZ() = " << track.getZ() << " ; "; - std::cout << "NDisksMS = " << NDisksMS << std::endl; + std::cout << " => Propagate to next cluster with MCS : startingLayerID = " << startingLayerID << " = > " + << " newLayerID = " << newLayerID << " (NLayers = " << std::abs(newLayerID - startingLayerID); + std::cout << ") ; track.getZ() = " << track.getZ() << " => "; + std::cout << "destination cluster z = " << z << " ; " << std::endl; } - if ((NDisksMS * MFTDiskThicknessInX0) != 0) { - track.addMCSEffect(-1, NDisksMS * MFTDiskThicknessInX0); + // Number of disks crossed by this track segment + while (currentLayer != newLayerID) { + auto nextlayer = currentLayer + direction; + auto nextZ = LayerZPosition[nextlayer]; + + int NDisksMS; + if (nextZ - track.getZ() > 0) { + NDisksMS = (currentLayer % 2 == 0) ? (currentLayer - nextlayer) / 2 : (currentLayer - nextlayer + 1) / 2; + } else { + NDisksMS = (currentLayer % 2 == 0) ? (nextlayer - currentLayer + 1) / 2 : (nextlayer - currentLayer) / 2; + } + + if (mVerbose) { + std::cout << "currentLayer = " << currentLayer << " ; " + << "nextlayer = " << nextlayer << " ; "; + std::cout << "track.getZ() = " << track.getZ() << " ; "; + std::cout << "nextZ = " << nextZ << " ; "; + std::cout << "NDisksMS = " << NDisksMS << std::endl; + } + + if ((NDisksMS * mMFTDiskThicknessInX0) != 0) { + track.addMCSEffect(NDisksMS * mMFTDiskThicknessInX0); + if (mVerbose) { + std::cout << "Track covariances after MCS effects: \n" + << track.getCovariances() << std::endl + << std::endl; + } + } + + if (mVerbose) { + std::cout << " BeforeExtrap: X = " << track.getX() << " Y = " << track.getY() << " Z = " << track.getZ() << " Tgl = " << track.getTanl() << " Phi = " << track.getPhi() << " pz = " << track.getPz() << " q/pt = " << track.getInvQPt() << std::endl; + } + + propagateToZ(track, nextZ); + + currentLayer = nextlayer; + } + if (z != track.getZ()) { + propagateToZ(track, z); } + return true; +} + +//_________________________________________________________________________________________________ +bool TrackFitter::computeCluster(TrackLTF& track, int cluster) +{ + /// Propagate track to the z position of the new cluster + /// accounting for MCS dispersion in the current layer and the other(s) crossed + /// Recompute the parameters adding the cluster constraint with the Kalman filter + /// Returns false in case of failure + + const auto& clx = track.getXCoordinates()[cluster]; + const auto& cly = track.getYCoordinates()[cluster]; + const auto& clz = track.getZCoordinates()[cluster]; + const auto& sigmaX2 = track.getSigmasX2()[cluster]; + const auto& sigmaY2 = track.getSigmasY2()[cluster]; if (mVerbose) { - std::cout << " BeforeExtrap: X = " << track.getX() << " Y = " << track.getY() << " Z = " << track.getZ() << " Tgl = " << track.getTanl() << " Phi = " << track.getPhi() << " pz = " << track.getPz() << " qpt = " << 1.0 / track.getInvQPt() << std::endl; + std::cout << "computeCluster: X = " << clx << " Y = " << cly << " Z = " << clz << " nCluster = " << cluster << std::endl; } - // Propagate track to the z position of the new cluster - switch (mTrackModel) { - case Linear: - track.propagateToZlinear(clz); - break; - case Quadratic: - track.propagateToZquadratic(clz, mBZField); - break; - case Helix: - track.propagateToZhelix(clz, mBZField); - break; - default: - std::cout << " Invalid track model.\n"; - return false; - break; + if (!propagateToNextClusterWithMCS(track, clz)) { + return false; } if (mVerbose) { - std::cout << " AfterExtrap: X = " << track.getX() << " Y = " << track.getY() << " Z = " << track.getZ() << " Tgl = " << track.getTanl() << " Phi = " << track.getPhi() << " pz = " << track.getPz() << " qpt = " << 1.0 / track.getInvQPt() << std::endl; + std::cout << " AfterExtrap: X = " << track.getX() << " Y = " << track.getY() << " Z = " << track.getZ() << " Tgl = " << track.getTanl() << " Phi = " << track.getPhi() << " pz = " << track.getPz() << " q/pt = " << track.getInvQPt() << std::endl; + std::cout << "Track covariances after extrap: \n" + << track.getCovariances() << std::endl + << std::endl; } // recompute parameters @@ -298,10 +299,11 @@ bool TrackFitter::computeCluster(TrackLTF& track, int cluster) if (track.update(pos, cov)) { if (mVerbose) { std::cout << " New Cluster: X = " << clx << " Y = " << cly << " Z = " << clz << std::endl; - std::cout << " AfterKalman: X = " << track.getX() << " Y = " << track.getY() << " Z = " << track.getZ() << " Tgl = " << track.getTanl() << " Phi = " << track.getPhi() << " pz = " << track.getPz() << " qpt = " << 1.0 / track.getInvQPt() << std::endl; + std::cout << " AfterKalman: X = " << track.getX() << " Y = " << track.getY() << " Z = " << track.getZ() << " Tgl = " << track.getTanl() << " Phi = " << track.getPhi() << " pz = " << track.getPz() << " q/pt = " << track.getInvQPt() << std::endl; std::cout << std::endl; - // Outputs track covariance matrix: - // param.getCovariances().Print(); + std::cout << "Track covariances after Kalman update: \n" + << track.getCovariances() << std::endl + << std::endl; } return true; } From 7589a7ce6a300b987e17d55296ab8e051aa4edec Mon Sep 17 00:00:00 2001 From: Michael Lettrich Date: Tue, 29 Jun 2021 14:08:39 +0200 Subject: [PATCH 058/314] [CTF] Fix out-of-bounds access in EncodedBlocks Add Padding to buffers to prevent out-of-bounds memory access in EncodedBlocks when writing incompressible symbols or data that is not handled by the entropy coder at all. Additional cleanups. --- .../EncodedBlocks.h | 193 +++++++++++------- 1 file changed, 118 insertions(+), 75 deletions(-) diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h index 102394aa7c5ee..c6fd9a11b5817 100644 --- a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h @@ -71,6 +71,23 @@ inline T* relocatePointer(const char* oldBase, char* newBase, const T* ptr) return (ptr != nullptr) ? reinterpret_cast(newBase + (reinterpret_cast(ptr) - oldBase)) : nullptr; } +template = sizeof(source_T)), bool> = true> +inline size_t calculateNDestTElements(size_t sourceElems) noexcept +{ + const size_t sizeOfSourceArray = sourceElems * sizeof(source_T); + return sizeOfSourceArray / sizeof(dest_T) + (sizeOfSourceArray % sizeof(dest_T) != 0); +}; + +template = sizeof(source_T)), bool> = true> +inline size_t calculatePaddedSize(size_t nElems) noexcept +{ + const size_t sizeOfSourceT = sizeof(source_T); + const size_t sizeOfDestT = sizeof(dest_T); + + // this is equivalent to (sizeOfSourceT / sizeOfDestT) * std::ceil(sizeOfSourceArray/ sizeOfDestT) + return (sizeOfDestT / sizeOfSourceT) * calculateNDestTElements(nElems); +}; + ///>>======================== Auxiliary classes =======================>> struct ANSHeader { @@ -373,8 +390,8 @@ class EncodedBlocks size_t getFreeSize() const { return mRegistry.getFreeSize(); } /// expand the storage to new size in bytes - template - static auto expand(VB& buffer, size_t newsizeBytes); + template + static auto expand(buffer_T& buffer, size_t newsizeBytes); /// copy itself to flat buffer created on the fly from the vector template @@ -394,15 +411,15 @@ class EncodedBlocks static void readFromTree(VD& vec, TTree& tree, const std::string& name, int ev = 0); /// encode vector src to bloc at provided slot - template - inline void encode(const VE& src, int slot, uint8_t probabilityBits, Metadata::OptStore opt, VB* buffer = nullptr, const void* encoderExt = nullptr) + template + inline void encode(const VE& src, int slot, uint8_t symbolTablePrecision, Metadata::OptStore opt, buffer_T* buffer = nullptr, const void* encoderExt = nullptr) { - encode(std::begin(src), std::end(src), slot, probabilityBits, opt, buffer, encoderExt); + encode(std::begin(src), std::end(src), slot, symbolTablePrecision, opt, buffer, encoderExt); } /// encode vector src to bloc at provided slot - template - void encode(const S_IT srcBegin, const S_IT srcEnd, int slot, uint8_t probabilityBits, Metadata::OptStore opt, VB* buffer = nullptr, const void* encoderExt = nullptr); + template + void encode(const input_IT srcBegin, const input_IT srcEnd, int slot, uint8_t symbolTablePrecision, Metadata::OptStore opt, buffer_T* buffer = nullptr, const void* encoderExt = nullptr); /// decode block at provided slot to destination vector (will be resized as needed) template @@ -582,8 +599,8 @@ size_t EncodedBlocks::estimateSizeFromMetadata() const ///_____________________________________________________________________________ /// expand the storage to new size in bytes template -template -auto EncodedBlocks::expand(VB& buffer, size_t newsizeBytes) +template +auto EncodedBlocks::expand(buffer_T& buffer, size_t newsizeBytes) { auto buftypesize = sizeof(typename std::remove_reference::type::value_type); @@ -756,20 +773,29 @@ void EncodedBlocks::decode(D_IT dest, // iterator to ///_____________________________________________________________________________ template -template -void EncodedBlocks::encode(const S_IT srcBegin, // iterator begin of source message - const S_IT srcEnd, // iterator end of source message - int slot, // slot in encoded data to fill - uint8_t probabilityBits, // encoding into - Metadata::OptStore opt, // option for data compression - VB* buffer, // optional buffer (vector) providing memory for encoded blocks - const void* encoderExt) // optional external encoder +template +void EncodedBlocks::encode(const input_IT srcBegin, // iterator begin of source message + const input_IT srcEnd, // iterator end of source message + int slot, // slot in encoded data to fill + uint8_t symbolTablePrecision, // encoding into + Metadata::OptStore opt, // option for data compression + buffer_T* buffer, // optional buffer (vector) providing memory for encoded blocks + const void* encoderExt) // optional external encoder { + + using storageBuffer_t = W; + using input_t = typename std::iterator_traits::value_type; + using ransEncoder_t = typename rans::LiteralEncoder64; + using ransState_t = typename ransEncoder_t::coder_t; + using ransStream_t = typename ransEncoder_t::stream_t; + + // assert at compile time that output types align so that padding is not necessary. + static_assert(std::is_same_v); + static_assert(std::is_same_v); + // fill a new block assert(slot == mRegistry.nFilledBlocks); mRegistry.nFilledBlocks++; - using STYP = typename std::iterator_traits::value_type; - using stream_t = typename o2::rans::Encoder64::stream_t; const size_t messageLength = std::distance(srcBegin, srcEnd); // cover three cases: @@ -779,25 +805,23 @@ void EncodedBlocks::encode(const S_IT srcBegin, // iterator begin o // case 1: empty source message if (messageLength == 0) { - mMetadata[slot] = Metadata{0, 0, sizeof(uint64_t), sizeof(stream_t), probabilityBits, Metadata::OptStore::NODATA, 0, 0, 0, 0, 0}; + mMetadata[slot] = Metadata{0, 0, sizeof(ransState_t), sizeof(ransStream_t), symbolTablePrecision, Metadata::OptStore::NODATA, 0, 0, 0, 0, 0}; return; } - static_assert(std::is_same()); - Metadata md; - auto* bl = &mBlocks[slot]; - auto* meta = &mMetadata[slot]; + auto* thisBlock = &mBlocks[slot]; + auto* thisMetadata = &mMetadata[slot]; // resize underlying buffer of block if necessary and update all pointers. - auto expandStorage = [&](int nElems) { - auto eeb = get(bl->registry->head); // extract pointer from the block, as "this" might be invalid - auto szNeed = eeb->estimateBlockSize(nElems); // size in bytes!!! - if (szNeed >= bl->registry->getFreeSize()) { - LOG(INFO) << "Slot " << slot << ": free size: " << bl->registry->getFreeSize() << ", need " << szNeed << " for " << nElems << " words"; + auto expandStorage = [&](int additionalElements) { + auto* const blockHead = get(thisBlock->registry->head); // extract pointer from the block, as "this" might be invalid + const size_t additionalSize = blockHead->estimateBlockSize(additionalElements); // size in bytes!!! + if (additionalSize >= thisBlock->registry->getFreeSize()) { + LOG(INFO) << "Slot " << slot << ": free size: " << thisBlock->registry->getFreeSize() << ", need " << additionalSize << " for " << additionalElements << " words"; if (buffer) { - eeb->expand(*buffer, size() + (szNeed - getFreeSize())); - meta = &(get(buffer->data())->mMetadata[slot]); - bl = &(get(buffer->data())->mBlocks[slot]); // in case of resizing this and any this.xxx becomes invalid + blockHead->expand(*buffer, size() + (additionalSize - getFreeSize())); + thisMetadata = &(get(buffer->data())->mMetadata[slot]); + thisBlock = &(get(buffer->data())->mBlocks[slot]); // in case of resizing this and any this.xxx becomes invalid } else { throw std::runtime_error("no room for encoded block in provided container"); } @@ -809,61 +833,80 @@ void EncodedBlocks::encode(const S_IT srcBegin, // iterator begin o // build symbol statistics constexpr size_t SizeEstMarginAbs = 10 * 1024; constexpr float SizeEstMarginRel = 1.05; - const o2::rans::LiteralEncoder64* encoder = reinterpret_cast*>(encoderExt); - std::unique_ptr> encoderLoc; - std::unique_ptr frequencies = nullptr; - int dictSize = 0; - if (!encoder) { // no external encoder provide, create one on spot - frequencies = std::make_unique(); - frequencies->addSamples(srcBegin, srcEnd); - encoderLoc = std::make_unique>(*frequencies, probabilityBits); - encoder = encoderLoc.get(); - dictSize = frequencies->size(); - } + + const auto [inplaceEncoder, frequencyTable] = [&]() { + if (encoderExt) { + return std::make_tuple(ransEncoder_t{}, rans::FrequencyTable{}); + } else { + rans::FrequencyTable frequencyTable{}; + frequencyTable.addSamples(srcBegin, srcEnd); + return std::make_tuple(ransEncoder_t{frequencyTable, symbolTablePrecision}, frequencyTable); + } + }(); + ransEncoder_t const* const encoder = encoderExt ? reinterpret_cast(encoderExt) : &inplaceEncoder; // estimate size of encode buffer - int dataSize = rans::calculateMaxBufferSize(messageLength, encoder->getAlphabetRangeBits(), sizeof(STYP)); // size in bytes + int dataSize = rans::calculateMaxBufferSize(messageLength, encoder->getAlphabetRangeBits(), sizeof(input_t)); // size in bytes // preliminary expansion of storage based on dict size + estimated size of encode buffer - dataSize = SizeEstMarginAbs + int(SizeEstMarginRel * (dataSize / sizeof(W))) + (sizeof(STYP) < sizeof(W)); // size in words of output stream - expandStorage(dictSize + dataSize); + dataSize = SizeEstMarginAbs + int(SizeEstMarginRel * (dataSize / sizeof(storageBuffer_t))) + (sizeof(input_t) < sizeof(storageBuffer_t)); // size in words of output stream + expandStorage(frequencyTable.size() + dataSize); //store dictionary first - if (dictSize) { - bl->storeDict(dictSize, frequencies->data()); + if (frequencyTable.size()) { + thisBlock->storeDict(frequencyTable.size(), frequencyTable.data()); } // vector of incompressible literal symbols - std::vector literals; + std::vector literals; // directly encode source message into block buffer. - auto blIn = bl->getCreateData(); - auto frSize = bl->registry->getFreeSize(); // note: "this" might be not valid after expandStorage call!!! - const auto encodedMessageEnd = encoder->process(srcBegin, srcEnd, blIn, literals); - rans::utils::checkBounds(encodedMessageEnd, blIn + frSize); - dataSize = encodedMessageEnd - bl->getData(); - bl->setNData(dataSize); - bl->realignBlock(); + storageBuffer_t* const blockBufferBegin = thisBlock->getCreateData(); + const size_t maxBufferSize = thisBlock->registry->getFreeSize(); // note: "this" might be not valid after expandStorage call!!! + const auto encodedMessageEnd = encoder->process(srcBegin, srcEnd, blockBufferBegin, literals); + rans::utils::checkBounds(encodedMessageEnd, blockBufferBegin + maxBufferSize); + dataSize = encodedMessageEnd - thisBlock->getData(); + thisBlock->setNData(dataSize); + thisBlock->realignBlock(); // update the size claimed by encode message directly inside the block - // store incompressible symbols if any - - int literalSize = 0; - if (literals.size()) { - literalSize = (literals.size() * sizeof(STYP)) / sizeof(stream_t) + (sizeof(STYP) < sizeof(stream_t)); - expandStorage(literalSize); - bl->storeLiterals(literalSize, reinterpret_cast(literals.data())); - } - *meta = Metadata{messageLength, literals.size(), sizeof(uint64_t), sizeof(stream_t), static_cast(encoder->getSymbolTablePrecision()), opt, - encoder->getMinSymbol(), encoder->getMaxSymbol(), dictSize, dataSize, literalSize}; + // store incompressible symbols if any + const size_t nLiteralSymbols = [&]() { + const size_t nSymbols = literals.size(); + if (!literals.empty()) { + // introduce padding in case literals don't align; + const size_t nSourceElemsPadded = calculatePaddedSize(literals.size()); + literals.resize(nSourceElemsPadded, {}); + + const size_t nLiteralStorageElems = calculateNDestTElements(nSymbols); + expandStorage(nLiteralStorageElems); + thisBlock->storeLiterals(nLiteralStorageElems, reinterpret_cast(literals.data())); + } + return nSymbols; + }(); + + *thisMetadata = Metadata{messageLength, + literals.size(), + sizeof(ransState_t), + sizeof(ransStream_t), + static_cast(encoder->getSymbolTablePrecision()), + opt, + encoder->getMinSymbol(), + encoder->getMaxSymbol(), + static_cast(frequencyTable.size()), + dataSize, + static_cast(nLiteralSymbols)}; } else { // store original data w/o EEncoding - const size_t szb = messageLength * sizeof(STYP); - const int dataSize = szb / sizeof(stream_t) + (sizeof(STYP) < sizeof(stream_t)); - // no dictionary needed - expandStorage(dataSize); - *meta = Metadata{messageLength, 0, sizeof(uint64_t), sizeof(stream_t), probabilityBits, opt, 0, 0, 0, dataSize, 0}; - //FIXME: no we don't need an intermediate vector. + //FIXME(milettri): we should be able to do without an intermediate vector; // provided iterator is not necessarily pointer, need to use intermediate vector!!! - std::vector vtmp(srcBegin, srcEnd); - bl->storeData(meta->nDataWords, reinterpret_cast(vtmp.data())); + + // introduce padding in case literals don't align; + const size_t nSourceElemsPadded = calculatePaddedSize(messageLength); + std::vector tmp(nSourceElemsPadded, {}); + std::copy(srcBegin, srcEnd, std::begin(tmp)); + + const size_t nBufferElems = calculateNDestTElements(messageLength); + expandStorage(nBufferElems); + thisBlock->storeData(thisMetadata->nDataWords, reinterpret_cast(tmp.data())); + + *thisMetadata = Metadata{messageLength, 0, sizeof(ransState_t), sizeof(storageBuffer_t), symbolTablePrecision, opt, 0, 0, 0, static_cast(nBufferElems), 0}; } - // resize block if necessary } /// create a special EncodedBlocks containing only dictionaries made from provided vector of frequency tables From 0f6a442b03c678a30547e862e1cb976fb4dad451 Mon Sep 17 00:00:00 2001 From: mfasel Date: Tue, 22 Jun 2021 17:18:20 +0200 Subject: [PATCH 059/314] [EMCAL-700] Fix handling of cell indices from module indices The function GetModuleIndexesFromCellIndexesInSModule is returning the position of the module instead of the position of the cell inside the module. Together with the module ID the information is redundant and useless, while what is actually needed is the position of the cell within the module. --- .../EMCAL/base/include/EMCALBase/Geometry.h | 37 ++++---- Detectors/EMCAL/base/src/Geometry.cxx | 90 ++++++++++--------- 2 files changed, 66 insertions(+), 61 deletions(-) diff --git a/Detectors/EMCAL/base/include/EMCALBase/Geometry.h b/Detectors/EMCAL/base/include/EMCALBase/Geometry.h index 6ab91178ab8f1..f4a428ed58999 100644 --- a/Detectors/EMCAL/base/include/EMCALBase/Geometry.h +++ b/Detectors/EMCAL/base/include/EMCALBase/Geometry.h @@ -392,12 +392,14 @@ class Geometry int SuperModuleNumberFromEtaPhi(Double_t eta, Double_t phi) const; /// \brief Get cell absolute ID number from location module (2 times 2 cells) of a super module - /// \param nSupMod super module number - /// \param nModule module number - /// \param nIphi index of cell in module in phi direction 0 or 1 - /// \param nIeta index of cell in module in eta direction 0 or 1 + /// \param supermoduleID super module number + /// \param moduleID module number + /// \param phiInModule index of cell in module in phi direction 0 or 1 + /// \param etaInModule index of cell in module in eta direction 0 or 1 /// \return cell absolute ID number - Int_t GetAbsCellId(Int_t nSupMod, Int_t nModule, Int_t nIphi, Int_t nIeta) const; + /// \throw InvalidSupermoduleTypeException + /// \throw InvalidCellIDException + int GetAbsCellId(int supermoduleID, int moduleID, int phiInModule, int etaInModule) const; /// \brief Check whether a cell number is valid /// \param absId input absolute cell ID number to check @@ -411,17 +413,18 @@ class Geometry std::tuple GetCellIndex(Int_t absId) const; /// \brief Get eta-phi indexes of module in SM - /// \param nSupMod super module number, input - /// \param nModule module number, input + /// \param supermoduleID super module number, input + /// \param moduleID module number, input /// \return tuple (index in phi direction of module, index in eta direction of module) - std::tuple GetModulePhiEtaIndexInSModule(Int_t nSupMod, Int_t nModule) const; + std::tuple GetModulePhiEtaIndexInSModule(int supermoduleID, int moduleID) const; /// \brief Get eta-phi indexes of cell in SM - /// \param nSupMod super module number - /// \param nModule module number - /// \param nIphi index in phi direction in module - /// \param nIeta index in phi direction in module - std::tuple GetCellPhiEtaIndexInSModule(Int_t nSupMod, Int_t nModule, Int_t nIphi, Int_t nIeta) const; + /// \param supermoduleID super module number + /// \param moduleID module number + /// \param phiInModule index in phi direction in module + /// \param etaInModule index in phi direction in module + /// \return Position (0 - phi, 1 - eta) of the cell inside teh supermodule + std::tuple GetCellPhiEtaIndexInSModule(int supermoduleID, int moduleID, int phiInModule, int etaInModule) const; /// \brief Adapt cell indices in supermodule to online indexing /// \param supermoduleID super module number of the channel/cell @@ -469,15 +472,15 @@ class Geometry } /// \brief Transition from cell indexes (iphi, ieta) to module indexes (iphim, ietam, nModule) - /// \param nSupMod super module number - /// \param iphi index of cell in phi direction inside super module - /// \param ieta index of cell in eta direction inside super module + /// \param supermoduleID super module number + /// \param phiInSupermodule index of cell in phi direction inside super module + /// \param etaInSupermodule index of cell in eta direction inside super module /// \return tuple: /// iphim: index of cell in module in phi direction: 0 or 1 /// ietam: index of cell in module in eta direction: 0 or 1 /// nModule: module number /// - std::tuple GetModuleIndexesFromCellIndexesInSModule(Int_t nSupMod, Int_t iphi, Int_t ieta) const; + std::tuple GetModuleIndexesFromCellIndexesInSModule(int supermoduleID, int phiInSupermodule, int etaInSupermodule) const; /// \brief Transition from super module number (nSupMod) and cell indexes (ieta,iphi) to cell absolute ID number. /// \param nSupMod super module number diff --git a/Detectors/EMCAL/base/src/Geometry.cxx b/Detectors/EMCAL/base/src/Geometry.cxx index bc1431f37dae3..8638df1a2d2cb 100644 --- a/Detectors/EMCAL/base/src/Geometry.cxx +++ b/Detectors/EMCAL/base/src/Geometry.cxx @@ -707,48 +707,51 @@ std::tuple Geometry::EtaPhiFromIndex(Int_t absId) const return std::make_tuple(vglob.Eta(), vglob.Phi()); } -Int_t Geometry::GetAbsCellId(Int_t nSupMod, Int_t nModule, Int_t nIphi, Int_t nIeta) const +int Geometry::GetAbsCellId(int supermoduleID, int moduleID, int phiInModule, int etaInModule) const { // 0 <= nSupMod < fNumberOfSuperModules // 0 <= nModule < fNPHI * fNZ ( fNPHI * fNZ/2 for fKey110DEG=1) // 0 <= nIphi < fNPHIdiv // 0 <= nIeta < fNETAdiv // 0 <= absid < fNCells - Int_t id = 0; // have to change from 0 to fNCells-1 - for (int i = 0; i < nSupMod; i++) { + int cellid = 0; // have to change from 0 to fNCells-1 + for (int i = 0; i < supermoduleID; i++) { if (GetSMType(i) == EMCAL_STANDARD) { - id += mNCellsInSupMod; + cellid += mNCellsInSupMod; } else if (GetSMType(i) == EMCAL_HALF) { - id += mNCellsInSupMod / 2; + cellid += mNCellsInSupMod / 2; } else if (GetSMType(i) == EMCAL_THIRD) { - id += mNCellsInSupMod / 3; + cellid += mNCellsInSupMod / 3; } else if (GetSMType(i) == DCAL_STANDARD) { - id += 2 * mNCellsInSupMod / 3; + cellid += 2 * mNCellsInSupMod / 3; } else if (GetSMType(i) == DCAL_EXT) { - id += mNCellsInSupMod / 3; + cellid += mNCellsInSupMod / 3; } else { throw InvalidSupermoduleTypeException(); } } - id += mNCellsInModule * nModule; - id += mNPHIdiv * nIphi; - id += nIeta; - if (!CheckAbsCellId(id)) { - id = -TMath::Abs(id); // if negative something wrong - } + cellid += mNCellsInModule * moduleID; + cellid += mNPHIdiv * phiInModule; + cellid += etaInModule; + if (!CheckAbsCellId(cellid)) + throw InvalidCellIDException(cellid); - return id; + return cellid; } -std::tuple Geometry::GetModuleIndexesFromCellIndexesInSModule(Int_t nSupMod, Int_t iphi, Int_t ieta) const +std::tuple Geometry::GetModuleIndexesFromCellIndexesInSModule(int supermoduleID, int phiInSupermodule, int etaInSupermodule) const { - Int_t nphi = GetNumberOfModuleInPhiDirection(nSupMod); - - Int_t ietam = ieta / mNETAdiv, - iphim = iphi / mNPHIdiv, - nModule = ietam * nphi + iphim; - return std::make_tuple(iphim, ietam, nModule); + int nModulesInSMPhi = GetNumberOfModuleInPhiDirection(supermoduleID); + + int moduleEta = etaInSupermodule / mNETAdiv, + modulePhi = phiInSupermodule / mNPHIdiv, + moduleID = moduleEta * nModulesInSMPhi + modulePhi; + int etaInModule = etaInSupermodule % mNETAdiv, + phiInModule = phiInSupermodule % mNPHIdiv; + phiInModule = phiInSupermodule % mNPHIdiv; + return std::make_tuple(modulePhi, moduleEta, moduleID); + //return std::make_tuple(phiInModule, etaInModule, moduleID); } Int_t Geometry::GetAbsCellIdFromCellIndexes(Int_t nSupMod, Int_t iphi, Int_t ieta) const @@ -770,7 +773,7 @@ Int_t Geometry::GetAbsCellIdFromCellIndexes(Int_t nSupMod, Int_t iphi, Int_t iet std::tuple Geometry::GlobalRowColFromIndex(int cellID) const { - if (cellID >= GetNCells()) { + if (!CheckAbsCellId(cellID)) { throw InvalidCellIDException(cellID); } auto [supermodule, module, phiInModule, etaInModule] = GetCellIndex(cellID); @@ -1001,37 +1004,36 @@ std::tuple Geometry::GetCellIndex(Int_t absId) const Int_t Geometry::GetSuperModuleNumber(Int_t absId) const { return std::get<0>(GetCellIndex(absId)); } -std::tuple Geometry::GetModulePhiEtaIndexInSModule(Int_t nSupMod, Int_t nModule) const +std::tuple Geometry::GetModulePhiEtaIndexInSModule(int supermoduleID, int moduleID) const { - Int_t nphi = -1; - if (GetSMType(nSupMod) == EMCAL_HALF) { - nphi = mNPhi / 2; // halfSM - } else if (GetSMType(nSupMod) == EMCAL_THIRD) { - nphi = mNPhi / 3; // 1/3 SM - } else if (GetSMType(nSupMod) == DCAL_EXT) { - nphi = mNPhi / 3; // 1/3 SM + int nModulesInPhi = -1; + if (GetSMType(supermoduleID) == EMCAL_HALF) { + nModulesInPhi = mNPhi / 2; // halfSM + } else if (GetSMType(supermoduleID) == EMCAL_THIRD) { + nModulesInPhi = mNPhi / 3; // 1/3 SM + } else if (GetSMType(supermoduleID) == DCAL_EXT) { + nModulesInPhi = mNPhi / 3; // 1/3 SM } else { - nphi = mNPhi; // full SM + nModulesInPhi = mNPhi; // full SM } - return std::make_tuple(int(nModule % nphi), int(nModule / nphi)); + return std::make_tuple(int(moduleID % nModulesInPhi), int(moduleID / nModulesInPhi)); } -std::tuple Geometry::GetCellPhiEtaIndexInSModule(Int_t nSupMod, Int_t nModule, Int_t nIphi, - Int_t nIeta) const +std::tuple Geometry::GetCellPhiEtaIndexInSModule(int supermoduleID, int moduleID, int phiInModule, + int etaInModule) const { - auto indices = GetModulePhiEtaIndexInSModule(nSupMod, nModule); - Int_t iphim = std::get<0>(indices), ietam = std::get<1>(indices); + auto [phiOfModule, etaOfModule] = GetModulePhiEtaIndexInSModule(supermoduleID, moduleID); - // ieta = ietam*fNETAdiv + (1-nIeta); // x(module) = -z(SM) - Int_t ieta = ietam * mNETAdiv + (mNETAdiv - 1 - nIeta); // x(module) = -z(SM) - Int_t iphi = iphim * mNPHIdiv + nIphi; // y(module) = y(SM) + // ieta = etaOfModule*fNETAdiv + (1-etaInModule); // x(module) = -z(SM) + int etaInSupermodule = etaOfModule * mNETAdiv + (mNETAdiv - 1 - etaInModule); // x(module) = -z(SM) + int phiInSupermodule = phiOfModule * mNPHIdiv + phiInModule; // y(module) = y(SM) - if (iphi < 0 || ieta < 0) { - LOG(DEBUG) << " nSupMod " << nSupMod << " nModule " << nModule << " nIphi " << nIphi << " nIeta " << nIeta - << " => ieta " << ieta << " iphi " << iphi; + if (phiInSupermodule < 0 || etaInSupermodule < 0) { + LOG(DEBUG) << " Supermodule " << supermoduleID << ", Module " << moduleID << " (phi " << phiInModule << ", eta " << etaInModule << ")" + << " => in Supermodule: eta " << etaInSupermodule << ", phi " << phiInSupermodule; } - return std::make_tuple(iphi, ieta); + return std::make_tuple(phiInSupermodule, etaInSupermodule); } std::tuple Geometry::ShiftOnlineToOfflineCellIndexes(Int_t supermoduleID, Int_t iphi, Int_t ieta) const From 12dfd484d238ef48ba0800a027eb8406c04b6fa8 Mon Sep 17 00:00:00 2001 From: mfasel Date: Mon, 28 Jun 2021 11:02:17 +0200 Subject: [PATCH 060/314] [EMCAL-700] Replace multiple-if by switch - Replace multiple if condition for GetSMType by switch condition - Add missing { in one if-condition requested by full CI --- Detectors/EMCAL/base/src/Geometry.cxx | 179 +++++++++++++++----------- 1 file changed, 105 insertions(+), 74 deletions(-) diff --git a/Detectors/EMCAL/base/src/Geometry.cxx b/Detectors/EMCAL/base/src/Geometry.cxx index 8638df1a2d2cb..f27366e349208 100644 --- a/Detectors/EMCAL/base/src/Geometry.cxx +++ b/Detectors/EMCAL/base/src/Geometry.cxx @@ -594,18 +594,26 @@ void Geometry::DefineEMC(std::string_view mcname, std::string_view mctitle) } else { // changed SM Type, redefine the [2*i+1] Boundaries tmpSMType = GetSMType(2 * i); - if (GetSMType(2 * i) == EMCAL_STANDARD) { - mPhiBoundariesOfSM[2 * i + 1] = mPhiBoundariesOfSM[2 * i] + kfSupermodulePhiWidth; - } else if (GetSMType(2 * i) == EMCAL_HALF) { - mPhiBoundariesOfSM[2 * i + 1] = mPhiBoundariesOfSM[2 * i] + 2. * TMath::ATan2((mParSM[1]) / 2, mIPDistance); - } else if (GetSMType(2 * i) == EMCAL_THIRD) { - mPhiBoundariesOfSM[2 * i + 1] = mPhiBoundariesOfSM[2 * i] + 2. * TMath::ATan2((mParSM[1]) / 3, mIPDistance); - } else if (GetSMType(2 * i) == DCAL_STANDARD) { // jump the gap - mPhiBoundariesOfSM[2 * i] = (mDCALPhiMin - mArm1PhiMin) * TMath::DegToRad() + mPhiBoundariesOfSM[0]; - mPhiBoundariesOfSM[2 * i + 1] = (mDCALPhiMin - mArm1PhiMin) * TMath::DegToRad() + mPhiBoundariesOfSM[1]; - } else if (GetSMType(2 * i) == DCAL_EXT) { - mPhiBoundariesOfSM[2 * i + 1] = mPhiBoundariesOfSM[2 * i] + 2. * TMath::ATan2((mParSM[1]) / 3, mIPDistance); - } + switch (GetSMType(2 * i)) { + case EMCAL_STANDARD: + mPhiBoundariesOfSM[2 * i + 1] = mPhiBoundariesOfSM[2 * i] + kfSupermodulePhiWidth; + break; + case EMCAL_HALF: + mPhiBoundariesOfSM[2 * i + 1] = mPhiBoundariesOfSM[2 * i] + 2. * TMath::ATan2((mParSM[1]) / 2, mIPDistance); + break; + case EMCAL_THIRD: + mPhiBoundariesOfSM[2 * i + 1] = mPhiBoundariesOfSM[2 * i] + 2. * TMath::ATan2((mParSM[1]) / 3, mIPDistance); + break; + case DCAL_STANDARD: + mPhiBoundariesOfSM[2 * i] = (mDCALPhiMin - mArm1PhiMin) * TMath::DegToRad() + mPhiBoundariesOfSM[0]; + mPhiBoundariesOfSM[2 * i + 1] = (mDCALPhiMin - mArm1PhiMin) * TMath::DegToRad() + mPhiBoundariesOfSM[1]; + break; + case DCAL_EXT: + mPhiBoundariesOfSM[2 * i + 1] = mPhiBoundariesOfSM[2 * i] + 2. * TMath::ATan2((mParSM[1]) / 3, mIPDistance); + break; + default: + break; + }; } mPhiCentersOfSM[i] = (mPhiBoundariesOfSM[2 * i] + mPhiBoundariesOfSM[2 * i + 1]) / 2.; mPhiCentersOfSMSec[i] = mPhiBoundariesOfSM[2 * i] + TMath::ATan2(mParSM[1], mIPDistance); @@ -614,7 +622,7 @@ void Geometry::DefineEMC(std::string_view mcname, std::string_view mctitle) // inner extend in eta (same as outer part) for DCal (0.189917), //calculated from the smallest gap (1# cell to the // 80-degree-edge), - Double_t innerExtandedPhi = + const double INNNER_EXTENDED_PHI = 1.102840997; // calculated from the smallest gap (1# cell to the 80-degree-edge), too complicatd to explain... mDCALInnerExtandedEta = -TMath::Log( TMath::Tan((TMath::Pi() / 2. - 8 * mTrd1Angle * TMath::DegToRad() + @@ -624,20 +632,27 @@ void Geometry::DefineEMC(std::string_view mcname, std::string_view mctitle) mEMCALPhiMax = mArm1PhiMin; mDCALPhiMax = mDCALPhiMin; // DCAl extention will not be included for (Int_t i = 0; i < mNumberOfSuperModules; i += 2) { - if (GetSMType(i) == EMCAL_STANDARD) { - mEMCALPhiMax += 20.; - } else if (GetSMType(i) == EMCAL_HALF) { - mEMCALPhiMax += mPhiSuperModule / 2. + innerExtandedPhi; - } else if (GetSMType(i) == EMCAL_THIRD) { - mEMCALPhiMax += mPhiSuperModule / 3. + 4.0 * innerExtandedPhi / 3.0; - } else if (GetSMType(i) == DCAL_STANDARD) { - mDCALPhiMax += 20.; - mDCALStandardPhiMax = mDCALPhiMax; - } else if (GetSMType(i) == DCAL_EXT) { - mDCALPhiMax += mPhiSuperModule / 3. + 4.0 * innerExtandedPhi / 3.0; - } else { - LOG(ERROR) << "Unkown SM Type!!\n"; - } + switch (GetSMType(i)) { + case EMCAL_STANDARD: + mEMCALPhiMax += 20.; + break; + case EMCAL_HALF: + mEMCALPhiMax += mPhiSuperModule / 2. + INNNER_EXTENDED_PHI; + break; + case EMCAL_THIRD: + mEMCALPhiMax += mPhiSuperModule / 3. + 4.0 * INNNER_EXTENDED_PHI / 3.0; + break; + case DCAL_STANDARD: + mDCALPhiMax += 20.; + mDCALStandardPhiMax = mDCALPhiMax; + break; + case DCAL_EXT: + mDCALPhiMax += mPhiSuperModule / 3. + 4.0 * INNNER_EXTENDED_PHI / 3.0; + break; + default: + LOG(ERROR) << "Unkown SM Type!!\n"; + break; + }; } // for compatible reason // if(fNumberOfSuperModules == 4) {fEMCALPhiMax = fArm1PhiMax ;} @@ -716,26 +731,33 @@ int Geometry::GetAbsCellId(int supermoduleID, int moduleID, int phiInModule, int // 0 <= absid < fNCells int cellid = 0; // have to change from 0 to fNCells-1 for (int i = 0; i < supermoduleID; i++) { - if (GetSMType(i) == EMCAL_STANDARD) { - cellid += mNCellsInSupMod; - } else if (GetSMType(i) == EMCAL_HALF) { - cellid += mNCellsInSupMod / 2; - } else if (GetSMType(i) == EMCAL_THIRD) { - cellid += mNCellsInSupMod / 3; - } else if (GetSMType(i) == DCAL_STANDARD) { - cellid += 2 * mNCellsInSupMod / 3; - } else if (GetSMType(i) == DCAL_EXT) { - cellid += mNCellsInSupMod / 3; - } else { - throw InvalidSupermoduleTypeException(); - } + switch (GetSMType(i)) { + case EMCAL_STANDARD: + cellid += mNCellsInSupMod; + break; + case EMCAL_HALF: + cellid += mNCellsInSupMod / 2; + break; + case EMCAL_THIRD: + cellid += mNCellsInSupMod / 3; + break; + case DCAL_STANDARD: + cellid += 2 * mNCellsInSupMod / 3; + break; + case DCAL_EXT: + cellid += mNCellsInSupMod / 3; + break; + default: + throw InvalidSupermoduleTypeException(); + }; } cellid += mNCellsInModule * moduleID; cellid += mNPHIdiv * phiInModule; cellid += etaInModule; - if (!CheckAbsCellId(cellid)) + if (!CheckAbsCellId(cellid)) { throw InvalidCellIDException(cellid); + } return cellid; } @@ -749,9 +771,8 @@ std::tuple Geometry::GetModuleIndexesFromCellIndexesInSModule(int moduleID = moduleEta * nModulesInSMPhi + modulePhi; int etaInModule = etaInSupermodule % mNETAdiv, phiInModule = phiInSupermodule % mNPHIdiv; - phiInModule = phiInSupermodule % mNPHIdiv; - return std::make_tuple(modulePhi, moduleEta, moduleID); - //return std::make_tuple(phiInModule, etaInModule, moduleID); + //return std::make_tuple(modulePhi, moduleEta, moduleID); + return std::make_tuple(phiInModule, etaInModule, moduleID); } Int_t Geometry::GetAbsCellIdFromCellIndexes(Int_t nSupMod, Int_t iphi, Int_t ieta) const @@ -903,13 +924,17 @@ Int_t Geometry::GetAbsCellIdFromEtaPhi(Double_t eta, Double_t phi) const phi = TVector2::Phi_0_2pi(phi); Double_t phiLoc = phi - mPhiCentersOfSMSec[nSupMod / 2]; Int_t nphi = mPhiCentersOfCells.size(); - if (GetSMType(nSupMod) == EMCAL_HALF) { - nphi /= 2; - } else if (GetSMType(nSupMod) == EMCAL_THIRD) { - nphi /= 3; - } else if (GetSMType(nSupMod) == DCAL_EXT) { - nphi /= 3; - } + switch (GetSMType(nSupMod)) { + case EMCAL_HALF: + nphi /= 2; + case EMCAL_THIRD: + case DCAL_EXT: + nphi /= 3; + break; + default: + // All other supermodules have full number of cells in phi + break; + }; Double_t dmin = TMath::Abs(mPhiCentersOfCells[0] - phiLoc), d = 0.; @@ -973,19 +998,23 @@ std::tuple Geometry::CalculateCellIndex(Int_t absId) const for (nSupMod = -1; test >= 0;) { nSupMod++; tmp = test; - if (GetSMType(nSupMod) == EMCAL_STANDARD) { - test -= mNCellsInSupMod; - } else if (GetSMType(nSupMod) == EMCAL_HALF) { - test -= mNCellsInSupMod / 2; - } else if (GetSMType(nSupMod) == EMCAL_THIRD) { - test -= mNCellsInSupMod / 3; - } else if (GetSMType(nSupMod) == DCAL_STANDARD) { - test -= 2 * mNCellsInSupMod / 3; - } else if (GetSMType(nSupMod) == DCAL_EXT) { - test -= mNCellsInSupMod / 3; - } else { - throw InvalidSupermoduleTypeException(); - } + switch (GetSMType(nSupMod)) { + case EMCAL_STANDARD: + test -= mNCellsInSupMod; + break; + case EMCAL_HALF: + test -= mNCellsInSupMod / 2; + break; + case DCAL_STANDARD: + test -= 2 * mNCellsInSupMod / 3; + break; + case EMCAL_THIRD: + case DCAL_EXT: + test -= mNCellsInSupMod / 3; + break; + default: + throw InvalidSupermoduleTypeException(); + }; } Int_t nModule = tmp / mNCellsInModule; @@ -1007,16 +1036,18 @@ Int_t Geometry::GetSuperModuleNumber(Int_t absId) const { return std::get<0>(Get std::tuple Geometry::GetModulePhiEtaIndexInSModule(int supermoduleID, int moduleID) const { int nModulesInPhi = -1; - if (GetSMType(supermoduleID) == EMCAL_HALF) { - nModulesInPhi = mNPhi / 2; // halfSM - } else if (GetSMType(supermoduleID) == EMCAL_THIRD) { - nModulesInPhi = mNPhi / 3; // 1/3 SM - } else if (GetSMType(supermoduleID) == DCAL_EXT) { - nModulesInPhi = mNPhi / 3; // 1/3 SM - } else { - nModulesInPhi = mNPhi; // full SM - } - + switch (GetSMType(supermoduleID)) { + case EMCAL_HALF: + nModulesInPhi = mNPhi / 2; // halfSM + break; + case EMCAL_THIRD: + case DCAL_EXT: + nModulesInPhi = mNPhi / 3; // 1/3 SM + break; + default: + nModulesInPhi = mNPhi; // full SM + break; + }; return std::make_tuple(int(moduleID % nModulesInPhi), int(moduleID / nModulesInPhi)); } From 82474f27f1b6aa96e637c6d33eb5e13c6f63ee18 Mon Sep 17 00:00:00 2001 From: mfasel Date: Wed, 30 Jun 2021 17:14:01 +0200 Subject: [PATCH 061/314] [EMCAL-630] Shift back online to offline indexing Row and column in raw data are in online indexing, both in simulted raw data and raw data from the detector. Mapping functions however are in offline indexing, so coordinates within the supermodule need to be shifted back. --- Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx b/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx index b5a6de2b421ef..8b738c8e77397 100644 --- a/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx +++ b/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx @@ -199,7 +199,8 @@ void RawToCellConverterSpec::run(framework::ProcessingContext& ctx) continue; }; - int CellID = mGeometry->GetAbsCellIdFromCellIndexes(iSM, iRow, iCol); + auto [phishift, etashift] = mGeometry->ShiftOnlineToOfflineCellIndexes(iSM, iRow, iCol); + int CellID = mGeometry->GetAbsCellIdFromCellIndexes(iSM, phishift, etashift); // define the conatiner for the fit results, and perform the raw fitting using the stadnard raw fitter CaloFitResults fitResults; From d52a35bea53b86368e3b10dd03123d9d5f728dc3 Mon Sep 17 00:00:00 2001 From: cortesep <57937610+cortesep@users.noreply.github.com> Date: Thu, 1 Jul 2021 11:07:24 +0200 Subject: [PATCH 062/314] ZDC digits 2 raw fix (#6515) * Fix Digits2Raw missing addData * Fix compilation error * Fix problem with linkid * Fix problem with linkid * Fix problem with linkid * dummy commit to trigger CI Co-authored-by: Ruben Shahoyan --- .../include/ZDCSimulation/Digits2Raw.h | 1 - Detectors/ZDC/simulation/src/Digits2Raw.cxx | 21 +++++++++++++++---- 2 files changed, 17 insertions(+), 5 deletions(-) diff --git a/Detectors/ZDC/simulation/include/ZDCSimulation/Digits2Raw.h b/Detectors/ZDC/simulation/include/ZDCSimulation/Digits2Raw.h index 5e5a387851bf4..6c9d341a58a05 100644 --- a/Detectors/ZDC/simulation/include/ZDCSimulation/Digits2Raw.h +++ b/Detectors/ZDC/simulation/include/ZDCSimulation/Digits2Raw.h @@ -93,7 +93,6 @@ class Digits2Raw uint32_t mLinkID = 0; uint16_t mCruID = 0; uint32_t mEndPointID = 0; - uint64_t mFeeID = 0; int mVerbosity = 0; diff --git a/Detectors/ZDC/simulation/src/Digits2Raw.cxx b/Detectors/ZDC/simulation/src/Digits2Raw.cxx index 4e1370f0a8a0c..4255db71e14f7 100644 --- a/Detectors/ZDC/simulation/src/Digits2Raw.cxx +++ b/Detectors/ZDC/simulation/src/Digits2Raw.cxx @@ -24,7 +24,6 @@ using namespace o2::zdc; -//ClassImp(Digits2Raw); //______________________________________________________________________________ void Digits2Raw::processDigits(const std::string& outDir, const std::string& fileDigitsName) { @@ -60,10 +59,11 @@ void Digits2Raw::processDigits(const std::string& outDir, const std::string& fil mLinkID = uint32_t(0); mCruID = uint16_t(0); mEndPointID = uint32_t(0); + // TODO: assign FeeID from configuration object for (int ilink = 0; ilink < NLinks; ilink++) { - mFeeID = uint64_t(ilink); + uint64_t FeeID = uint64_t(ilink); std::string outFileLink = mOutputPerLink ? o2::utils::Str::concat_string(outd, "zdc_link", std::to_string(ilink), ".raw") : o2::utils::Str::concat_string(outd, "zdc.raw"); - mWriter.registerLink(mFeeID, mCruID, mLinkID, mEndPointID, outFileLink); + mWriter.registerLink(FeeID, mCruID, mLinkID, mEndPointID, outFileLink); } std::unique_ptr digiFile(TFile::Open(fileDigitsName.c_str())); @@ -429,6 +429,7 @@ void Digits2Raw::convertDigits(int ibc) void Digits2Raw::writeDigits() { constexpr static int data_size = sizeof(uint32_t) * NWPerGBTW; + constexpr static gsl::span empty; // Local interaction record (true and empty bunches) o2::InteractionRecord ir(mZDC.data[0][0].f.bc, mZDC.data[0][0].f.orbit); for (uint32_t im = 0; im < o2::zdc::NModules; im++) { @@ -448,16 +449,28 @@ void Digits2Raw::writeDigits() bool tcond_triggered = A0 || A1 || (A2 && (T0 || TM)) || (A3 && T0); bool tcond_last = mZDC.data[im][0].f.bc == 3563; // Condition to write GBT data + bool addedChData[NChPerModule] = {false, false, false, false}; if (tcond_triggered || (mIsContinuous && tcond_continuous) || (mZDC.data[im][0].f.bc == 3563)) { for (uint32_t ic = 0; ic < o2::zdc::NChPerModule; ic++) { + uint64_t FeeID = 2 * im + ic / 2; if (mModuleConfig->modules[im].readChannel[ic]) { for (int32_t iw = 0; iw < o2::zdc::NWPerBc; iw++) { gsl::span payload{reinterpret_cast(&mZDC.data[im][ic].w[iw][0]), data_size}; - mWriter.addData(mFeeID, mCruID, mLinkID, mEndPointID, ir, payload); + mWriter.addData(FeeID, mCruID, mLinkID, mEndPointID, ir, payload); } + addedChData[ic] = true; } } } + // All links are registered, we add explicitly zero payload + if (addedChData[0] == false && addedChData[1] == false) { + uint64_t FeeID = 2 * im; + mWriter.addData(FeeID, mCruID, mLinkID, mEndPointID, ir, empty); + } + if (addedChData[2] == false && addedChData[3] == false) { + uint64_t FeeID = 2 * im + 1; + mWriter.addData(FeeID, mCruID, mLinkID, mEndPointID, ir, empty); + } if (mVerbosity > 1) { if (tcond_continuous) { printf("M%d Cont. T0=%d || T1=%d\n", im, T0, T1); From c3f7e44e2e1e306c4433f603e21f165c54e06e71 Mon Sep 17 00:00:00 2001 From: Laurent Aphecetche Date: Wed, 23 Jun 2021 23:00:21 +0200 Subject: [PATCH 063/314] [MRRTF-132] MCHRaw: implement missing TF handling Following https://github.com/AliceO2Group/AliceO2/pull/5786 --- .../include/MCHWorkflow/DataDecoderSpec.h | 3 +- .../MUON/MCH/Workflow/src/DataDecoderSpec.cxx | 52 ++++++++++++++++++- .../Workflow/src/raw-to-digits-workflow.cxx | 6 ++- 3 files changed, 57 insertions(+), 4 deletions(-) diff --git a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/DataDecoderSpec.h b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/DataDecoderSpec.h index 826ba9977e5c4..1cf550f13049a 100644 --- a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/DataDecoderSpec.h +++ b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/DataDecoderSpec.h @@ -28,7 +28,8 @@ namespace mch namespace raw { -o2::framework::DataProcessorSpec getDecodingSpec(std::string inputSpec = "TF:MCH/RAWDATA"); +o2::framework::DataProcessorSpec getDecodingSpec(std::string inputSpec = "TF:MCH/RAWDATA", + bool askDISTSTF = false); } // end namespace raw } // end namespace mch diff --git a/Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx b/Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx index a725c2c050998..6a8d630f64616 100644 --- a/Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx @@ -27,6 +27,7 @@ #include "Framework/ConfigParamRegistry.h" #include "Framework/ControlService.h" #include "Framework/DataProcessorSpec.h" +#include "Framework/InputRecordWalker.h" #include "Framework/Lifetime.h" #include "Framework/Output.h" #include "Framework/Task.h" @@ -157,9 +158,44 @@ class DataDecoderTask mDecoder->decodeBuffer(buffer); } + void sendEmptyOutput(framework::DataAllocator& output) + { + decltype(mDecoder->getOrbits()) orbits{}; + decltype(mDecoder->getDigits()) digits{}; + std::vector rofs; + output.snapshot(Output{header::gDataOriginMCH, "DIGITS", 0}, digits); + output.snapshot(Output{header::gDataOriginMCH, "DIGITROFS", 0}, rofs); + output.snapshot(Output{header::gDataOriginMCH, "ORBITS", 0}, orbits); + } + + bool isDroppedTF(framework::ProcessingContext& pc) + { + /// If we see requested data type input + /// with 0xDEADBEEF subspec and 0 payload this means that the + /// "delayed message" mechanism created it in absence of real data + /// from upstream, i.e. the TF was dropped. + constexpr auto origin = header::gDataOriginMCH; + o2::framework::InputSpec dummy{"dummy", + framework::ConcreteDataMatcher{origin, + header::gDataDescriptionRawData, + 0xDEADBEEF}}; + for (const auto& ref : o2::framework::InputRecordWalker(pc.inputs(), {dummy})) { + const auto dh = o2::framework::DataRefUtils::getHeader(ref); + if (dh->payloadSize == 0) { + return true; + } + } + return false; + } + //_________________________________________________________________________________________________ void run(framework::ProcessingContext& pc) { + if (isDroppedTF(pc)) { + sendEmptyOutput(pc.outputs()); + return; + } + static int32_t deltaMax = 0; auto createBuffer = [&](auto& vec, size_t& size) { @@ -249,12 +285,24 @@ class DataDecoderTask }; //_________________________________________________________________________________________________ -o2::framework::DataProcessorSpec getDecodingSpec(std::string inputSpec) +o2::framework::DataProcessorSpec getDecodingSpec(std::string inputSpec, + bool askSTFDist) { + auto inputs = o2::framework::select(inputSpec.c_str()); + for (auto& inp : inputs) { + // mark input as optional in order not to block the workflow + // if our raw data happen to be missing in some TFs + inp.lifetime = Lifetime::Optional; + } + if (askSTFDist) { + // request the input FLP/DISTSUBTIMEFRAME/0 that is _guaranteed_ + // to be present, even if none of our raw data is present. + inputs.emplace_back("stfDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe); + } o2::mch::raw::DataDecoderTask task(inputSpec); return DataProcessorSpec{ "DataDecoder", - o2::framework::select(inputSpec.c_str()), + inputs, Outputs{OutputSpec{header::gDataOriginMCH, "DIGITS", 0, Lifetime::Timeframe}, OutputSpec{header::gDataOriginMCH, "DIGITROFS", 0, Lifetime::Timeframe}, OutputSpec{header::gDataOriginMCH, "ORBITS", 0, Lifetime::Timeframe}}, diff --git a/Detectors/MUON/MCH/Workflow/src/raw-to-digits-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/raw-to-digits-workflow.cxx index 5eecda11052b4..f0c18cc17635b 100644 --- a/Detectors/MUON/MCH/Workflow/src/raw-to-digits-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/raw-to-digits-workflow.cxx @@ -42,6 +42,7 @@ void customize(std::vector& workflowOptions) std::swap(workflowOptions, options); workflowOptions.push_back(ConfigParamSpec{"dataspec", VariantType::String, "TF:MCH/RAWDATA", {"selection string for the input data"}}); + workflowOptions.push_back(o2::framework::ConfigParamSpec{"ignore-dist-stf", o2::framework::VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}); } #include "Framework/runDataProcessing.h" @@ -54,7 +55,10 @@ WorkflowSpec defineDataProcessing(const ConfigContext& configcontext) o2::conf::ConfigurableParam::updateFromString(configcontext.options().get("configKeyValues")); auto inputSpec = configcontext.options().get("dataspec"); - WorkflowSpec wf{o2::mch::raw::getDecodingSpec(inputSpec)}; + + auto askSTFDist = !configcontext.options().get("ignore-dist-stf"); + + WorkflowSpec wf{o2::mch::raw::getDecodingSpec(inputSpec, askSTFDist)}; // configure dpl timer to inject correct firstTFOrbit: start from the 1st orbit of TF containing 1st sampled orbit o2::raw::HBFUtilsInitializer hbfIni(configcontext, wf); From 1edb262bac3ce82a67026bf765dddd16c5e0c0a4 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Thu, 1 Jul 2021 16:57:26 +0200 Subject: [PATCH 064/314] DPL: use provided size for shared memory limiting (#6536) --- .../Core/include/Framework/ServiceSpec.h | 8 ++- Framework/Core/src/ArrowSupport.cxx | 58 ++++++++----------- Framework/Core/src/ArrowSupport.h | 2 - Framework/Core/src/CommonMessageBackends.cxx | 3 + Framework/Core/src/CommonServices.cxx | 15 +++++ Framework/Core/src/WorkflowHelpers.cxx | 4 +- Framework/Core/src/runDataProcessing.cxx | 12 ++++ 7 files changed, 61 insertions(+), 41 deletions(-) diff --git a/Framework/Core/include/Framework/ServiceSpec.h b/Framework/Core/include/Framework/ServiceSpec.h index b35c31ec53dee..29a916fd757e3 100644 --- a/Framework/Core/include/Framework/ServiceSpec.h +++ b/Framework/Core/include/Framework/ServiceSpec.h @@ -87,6 +87,9 @@ using ServiceMetricHandling = std::function; +/// Callback invoked when the driver enters the init phase. +using ServiceDriverInit = std::function; + /// A specification for a Service. /// A Service is a utility class which does not perform /// data processing itself, but it can be used by the data processor @@ -119,8 +122,7 @@ struct ServiceSpec { /// Callback executed after forking a given device in the driver, /// but before doing exec / starting the device. ServicePostForkChild postForkChild = nullptr; - /// Callback executed after forking a given device in the driver, - /// but before doing exec / starting the device. + /// Callback executed after forking a given device in the driver. ServicePostForkParent postForkParent = nullptr; /// Callback executed before and after we schedule a topology @@ -138,6 +140,8 @@ struct ServiceSpec { ServiceStartCallback start = nullptr; /// Callback invoked on exit ServiceExitCallback exit = nullptr; + /// Callback invoked on driver entering the INIT state + ServiceDriverInit driverInit = nullptr; /// Kind of service being specified. ServiceKind kind; diff --git a/Framework/Core/src/ArrowSupport.cxx b/Framework/Core/src/ArrowSupport.cxx index 72a248a46954e..0f5952daa92a9 100644 --- a/Framework/Core/src/ArrowSupport.cxx +++ b/Framework/Core/src/ArrowSupport.cxx @@ -47,7 +47,7 @@ enum struct RateLimitingState { }; struct RateLimitConfig { - int64_t maxMemory = 0; + int64_t maxMemory = 2000; }; static int64_t memLimit = 0; @@ -60,37 +60,6 @@ struct MetricIndices { size_t arrowMessagesDestroyed = 0; }; -/// Service for common handling of rate limiting -o2::framework::ServiceSpec ArrowSupport::rateLimitingSpec() -{ - return ServiceSpec{"aod-rate-limiting", - [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) { - return ServiceHandle{TypeIdHelpers::uniqueId(), new RateLimitConfig{}}; - }, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - [](ServiceRegistry& registry, boost::program_options::variables_map const& vm) { - if (!vm["aod-memory-rate-limit"].defaulted()) { - memLimit = std::stoll(vm["aod-memory-rate-limit"].as()); - // registry.registerService(ServiceRegistryHelpers::handleForService(new RateLimitConfig{memLimit})); - } - }, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; -} - std::vector createDefaultIndices(std::vector& allDevicesMetrics) { std::vector results; @@ -106,6 +75,11 @@ std::vector createDefaultIndices(std::vector& return results; } +uint64_t calculateAvailableSharedMemory(ServiceRegistry& registry) +{ + return registry.get().maxMemory; +} + o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() { using o2::monitoring::Metric; @@ -230,8 +204,9 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() now = uv_hrtime(); static RateLimitingState lastReportedState = RateLimitingState::UNKNOWN; static uint64_t lastReportTime = 0; - constexpr int64_t MAX_SHARED_MEMORY = 2000; + static int64_t MAX_SHARED_MEMORY = calculateAvailableSharedMemory(registry); constexpr int64_t QUANTUM_SHARED_MEMORY = 500; + static int64_t availableSharedMemory = MAX_SHARED_MEMORY; static int64_t offeredSharedMemory = 0; static int64_t lastDeviceOffered = 0; @@ -301,7 +276,22 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() }, nullptr, nullptr, - ServiceKind::Serial}; + [](ServiceRegistry& registry, boost::program_options::variables_map const& vm) { + auto config = new RateLimitConfig{}; + int readers = std::stoll(vm["readers"].as()); + long long int minReaderMemory = readers * 1000; + if (vm.count("aod-memory-rate-limit")) { + config->maxMemory = std::max(minReaderMemory, std::stoll(vm["aod-memory-rate-limit"].as()) / 1000000); + } + static bool once = false; + // Until we guarantee this is called only once... + if (!once) { + LOGP(INFO, "Rate limiting set up at {}MB distributed over {} readers", config->maxMemory, readers); + registry.registerService(ServiceRegistryHelpers::handleForService(config)); + once = true; + } + }, + ServiceKind::Global}; } } // namespace o2::framework diff --git a/Framework/Core/src/ArrowSupport.h b/Framework/Core/src/ArrowSupport.h index 310cb20b01780..3b260c0494a79 100644 --- a/Framework/Core/src/ArrowSupport.h +++ b/Framework/Core/src/ArrowSupport.h @@ -19,8 +19,6 @@ namespace o2::framework /// A few ServiceSpecs data sending backends struct ArrowSupport { - // Rate limiting service - static ServiceSpec rateLimitingSpec(); // Create spec for backend used to send Arrow messages static ServiceSpec arrowBackendSpec(); }; diff --git a/Framework/Core/src/CommonMessageBackends.cxx b/Framework/Core/src/CommonMessageBackends.cxx index bbd1ff854cdaa..68e13be06ea51 100644 --- a/Framework/Core/src/CommonMessageBackends.cxx +++ b/Framework/Core/src/CommonMessageBackends.cxx @@ -79,6 +79,7 @@ o2::framework::ServiceSpec CommonMessageBackends::fairMQBackendSpec() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } @@ -102,6 +103,7 @@ o2::framework::ServiceSpec CommonMessageBackends::stringBackendSpec() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } @@ -125,6 +127,7 @@ o2::framework::ServiceSpec CommonMessageBackends::rawBufferBackendSpec() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } diff --git a/Framework/Core/src/CommonServices.cxx b/Framework/Core/src/CommonServices.cxx index 14b0e6b1f2030..dc206872c442c 100644 --- a/Framework/Core/src/CommonServices.cxx +++ b/Framework/Core/src/CommonServices.cxx @@ -111,6 +111,7 @@ o2::framework::ServiceSpec CommonServices::monitoringSpec() Monitoring* monitoring = reinterpret_cast(service); delete monitoring; }, + nullptr, ServiceKind::Serial}; } @@ -156,6 +157,7 @@ o2::framework::ServiceSpec CommonServices::datatakingContextSpec() context.nOrbitsPerTF = services.get().device()->fConfig->GetProperty("Norbits_per_TF", 128); }, nullptr, + nullptr, ServiceKind::Serial}; } @@ -183,6 +185,7 @@ o2::framework::ServiceSpec CommonServices::infologgerContextSpec() infoLoggerContext.setField(InfoLoggerContext::FieldName::Run, run); }, nullptr, + nullptr, ServiceKind::Serial}; } @@ -282,6 +285,7 @@ o2::framework::ServiceSpec CommonServices::infologgerSpec() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } @@ -313,6 +317,7 @@ o2::framework::ServiceSpec CommonServices::configurationSpec() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Global}; } @@ -346,6 +351,7 @@ o2::framework::ServiceSpec CommonServices::driverClientSpec() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Global}; } @@ -373,6 +379,7 @@ o2::framework::ServiceSpec CommonServices::controlSpec() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } @@ -397,6 +404,7 @@ o2::framework::ServiceSpec CommonServices::rootFileSpec() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } @@ -425,6 +433,7 @@ o2::framework::ServiceSpec CommonServices::parallelSpec() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } @@ -449,6 +458,7 @@ o2::framework::ServiceSpec CommonServices::timesliceIndex() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } @@ -473,6 +483,7 @@ o2::framework::ServiceSpec CommonServices::callbacksSpec() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } @@ -504,6 +515,7 @@ o2::framework::ServiceSpec CommonServices::dataRelayer() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } @@ -540,6 +552,7 @@ o2::framework::ServiceSpec CommonServices::tracingSpec() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } @@ -579,6 +592,7 @@ o2::framework::ServiceSpec CommonServices::threadPool(int numWorkers) nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } @@ -689,6 +703,7 @@ o2::framework::ServiceSpec CommonServices::dataProcessingStats() nullptr, nullptr, nullptr, + nullptr, ServiceKind::Serial}; } diff --git a/Framework/Core/src/WorkflowHelpers.cxx b/Framework/Core/src/WorkflowHelpers.cxx index 083207c6bbb53..1025f51201f16 100644 --- a/Framework/Core/src/WorkflowHelpers.cxx +++ b/Framework/Core/src/WorkflowHelpers.cxx @@ -250,8 +250,6 @@ void WorkflowHelpers::injectServiceDevices(WorkflowSpec& workflow, ConfigContext if (ctx.options().get("aod-memory-rate-limit")) { aodLifetime = Lifetime::Signal; } - auto readerServices = CommonServices::defaultServices(); - readerServices.push_back(ArrowSupport::rateLimitingSpec()); DataProcessorSpec aodReader{ "internal-dpl-aod-reader", @@ -270,7 +268,7 @@ void WorkflowHelpers::injectServiceDevices(WorkflowSpec& workflow, ConfigContext ConfigParamSpec{"start-value-enumeration", VariantType::Int64, 0ll, {"initial value for the enumeration"}}, ConfigParamSpec{"end-value-enumeration", VariantType::Int64, -1ll, {"final value for the enumeration"}}, ConfigParamSpec{"step-value-enumeration", VariantType::Int64, 1ll, {"step between one value and the other"}}}, - readerServices}; + }; std::vector requestedAODs; std::vector providedAODs; diff --git a/Framework/Core/src/runDataProcessing.cxx b/Framework/Core/src/runDataProcessing.cxx index 155d4317dcd6e..5e736f26c1dd9 100644 --- a/Framework/Core/src/runDataProcessing.cxx +++ b/Framework/Core/src/runDataProcessing.cxx @@ -1286,6 +1286,7 @@ int runStateMachine(DataProcessorSpecs const& workflow, std::vector metricProcessingCallbacks; std::vector preScheduleCallbacks; std::vector postScheduleCallbacks; + std::vector driverInitCallbacks; serviceRegistry.registerService(ServiceRegistryHelpers::handleForService(devicesManager)); @@ -1413,6 +1414,9 @@ int runStateMachine(DataProcessorSpecs const& workflow, /// there and back into running. This is because the general case /// would be that we start an application and then we wait for /// resource offers from DDS or whatever resource manager we use. + for (auto& callback : driverInitCallbacks) { + callback(serviceRegistry, varmap); + } driverInfo.states.push_back(DriverState::RUNNING); // driverInfo.states.push_back(DriverState::REDEPLOY_GUI); LOG(INFO) << "O2 Data Processing Layer initialised. We brake for nobody."; @@ -1488,6 +1492,14 @@ int runStateMachine(DataProcessorSpecs const& workflow, } } } + driverInitCallbacks.clear(); + for (auto& device : runningWorkflow.devices) { + for (auto& service : device.services) { + if (service.driverInit) { + driverInitCallbacks.push_back(service.driverInit); + } + } + } // This should expand nodes so that we can build a consistent DAG. } catch (std::runtime_error& e) { From 11f5167748fd9b8e925989c86f7e01812c7ae812 Mon Sep 17 00:00:00 2001 From: manso Date: Wed, 30 Jun 2021 14:57:00 +0200 Subject: [PATCH 065/314] Cables to the MFT and FIT patch panel --- Detectors/ITSMFT/MFT/base/src/PatchPanel.cxx | 117 +++++++++++++++++-- 1 file changed, 105 insertions(+), 12 deletions(-) diff --git a/Detectors/ITSMFT/MFT/base/src/PatchPanel.cxx b/Detectors/ITSMFT/MFT/base/src/PatchPanel.cxx index 55fc827f348d3..5a3dfa887b1e4 100644 --- a/Detectors/ITSMFT/MFT/base/src/PatchPanel.cxx +++ b/Detectors/ITSMFT/MFT/base/src/PatchPanel.cxx @@ -444,8 +444,8 @@ TGeoVolumeAssembly* PatchPanel::createPatchPanel() ang_in_scut2, ang_fin_scut2); // new TGeoTubeSeg("S_ARM", radin_arm, radout_arm, high_arm / 2, angin_arm, - // angfin_arm); new TGeoTubeSeg("S_ARM_R", radin_armR, radout_armR, high_armR / - // 2, angin_armR, angfin_armR); + // angfin_arm); new TGeoTubeSeg("S_ARM_R", radin_armR, radout_armR, high_armR + // / 2, angin_armR, angfin_armR); new TGeoBBox("Abox", x_Abox / 2, y_Abox / 2, z_Abox / 2); @@ -818,7 +818,8 @@ TGeoVolumeAssembly* PatchPanel::createPatchPanel() auto* patchpanel_Volume = new TGeoVolume("patchpanel_Volume", patchpanel_Shape, kMedAlu); - //====== Contents of the patch panel (cables, pipes, cards) coded as plates ====== + //====== Contents of the patch panel (cables, pipes, cards) coded as plates + //====== Double_t radin_pl0 = 33; // inner radius Double_t radout_pl0 = 45; // outer radius Double_t high_pl0 = 0.15; // thickness @@ -863,22 +864,114 @@ TGeoVolumeAssembly* PatchPanel::createPatchPanel() Double_t angin_pl6 = 150; Double_t angfin_pl6 = 160; - auto* plate_0 = new TGeoTubeSeg("plate_0", radin_pl0, radout_pl0, high_pl0 / 2, 180. + angin_pl0, 180. + angfin_pl0); - auto* plate_1 = new TGeoTubeSeg("plate_1", radin_pl1, radout_pl1, high_pl1 / 2, 180. + angin_pl1, 180. + angfin_pl1); - auto* plate_2 = new TGeoTubeSeg("plate_2", radin_pl2, radout_pl2, high_pl2 / 2, 180. + angin_pl2, 180. + angfin_pl2); - auto* plate_3 = new TGeoTubeSeg("plate_3", radin_pl3, radout_pl3, high_pl3 / 2, 180. + angin_pl3, 180. + angfin_pl3); - auto* plate_4 = new TGeoTubeSeg("plate_4", radin_pl4, radout_pl4, high_pl4 / 2, 180. + angin_pl4, 180. + angfin_pl4); - auto* plate_5 = new TGeoTubeSeg("plate_5", radin_pl5, radout_pl5, high_pl5 / 2, 180. + angin_pl5, 180. + angfin_pl5); - auto* plate_6 = new TGeoTubeSeg("plate_6", radin_pl6, radout_pl6, high_pl6 / 2, 180. + angin_pl6, 180. + angfin_pl6); - - auto* plate_Shape = new TGeoCompositeShape("plate_Shape", "plate_0 + plate_1 + plate_2 + plate_3 + plate_4 + plate_5 + plate_6"); + auto* plate_0 = + new TGeoTubeSeg("plate_0", radin_pl0, radout_pl0, high_pl0 / 2, + 180. + angin_pl0, 180. + angfin_pl0); + auto* plate_1 = + new TGeoTubeSeg("plate_1", radin_pl1, radout_pl1, high_pl1 / 2, + 180. + angin_pl1, 180. + angfin_pl1); + auto* plate_2 = + new TGeoTubeSeg("plate_2", radin_pl2, radout_pl2, high_pl2 / 2, + 180. + angin_pl2, 180. + angfin_pl2); + auto* plate_3 = + new TGeoTubeSeg("plate_3", radin_pl3, radout_pl3, high_pl3 / 2, + 180. + angin_pl3, 180. + angfin_pl3); + auto* plate_4 = + new TGeoTubeSeg("plate_4", radin_pl4, radout_pl4, high_pl4 / 2, + 180. + angin_pl4, 180. + angfin_pl4); + auto* plate_5 = + new TGeoTubeSeg("plate_5", radin_pl5, radout_pl5, high_pl5 / 2, + 180. + angin_pl5, 180. + angfin_pl5); + auto* plate_6 = + new TGeoTubeSeg("plate_6", radin_pl6, radout_pl6, high_pl6 / 2, + 180. + angin_pl6, 180. + angfin_pl6); + auto* plate_Shape = new TGeoCompositeShape( + "plate_Shape", + "plate_0 + plate_1 + plate_2 + plate_3 + plate_4 + plate_5 + plate_6"); auto* plate_Volume = new TGeoVolume("plate_Volume", plate_Shape, kMedCu); auto* tr_pl = new TGeoTranslation("tr_pl", 0, 0, -2.4); tr_pl->RegisterYourself(); + plate_Volume->SetLineColor(kGray + 2); auto* tr_fin = new TGeoTranslation("tr_fin", 0, 0, -0.2); tr_fin->RegisterYourself(); + //====== Connection to the C-Side, along the hadronic absorber + + Double_t xcable = 12.0; // width + Double_t ycable = 0.28; // thickness + Double_t zcable = 20.0; + TGeoVolume* v_cable0 = gGeoManager->MakeBox("v_cable0", kMedCu, xcable / 2, + ycable / 2, zcable / 2); + auto* r_cable0 = new TGeoRotation("rotation_cable0", 24., 8., 0.); + r_cable0->RegisterYourself(); + Double_t Xcable = 18.5; + Double_t Ycable = -42.5; + Double_t Zcable = -(zcable / 2. + 4.); + auto* p_cable0 = new TGeoCombiTrans(Xcable, Ycable, Zcable, r_cable0); + p_cable0->RegisterYourself(); + PatchPanelVolume->AddNode(v_cable0, 1, p_cable0); + + TGeoVolume* v_cable1 = gGeoManager->MakeBox("v_cable1", kMedCu, xcable / 2, + ycable / 2, zcable / 2); + auto* r_cable1 = new TGeoRotation("rotation_cable1", -24., 8., 0.); + r_cable1->RegisterYourself(); + Xcable = -18.5; + auto* p_cable1 = new TGeoCombiTrans(Xcable, Ycable, Zcable, r_cable1); + p_cable1->RegisterYourself(); + PatchPanelVolume->AddNode(v_cable1, 1, p_cable1); + + zcable = 170.; + TGeoVolume* v_cable2 = gGeoManager->MakeBox("v_cable2", kMedCu, xcable / 2, + ycable / 2, zcable / 2); + auto* r_cable2 = new TGeoRotation("rotation_cable2", 24., -5., 0.); + r_cable2->RegisterYourself(); + Xcable = 21.; + Ycable = -48.; + Zcable = -108.8; + auto* p_cable2 = new TGeoCombiTrans(Xcable, Ycable, Zcable, r_cable2); + p_cable2->RegisterYourself(); + PatchPanelVolume->AddNode(v_cable2, 1, p_cable2); + + TGeoVolume* v_cable3 = gGeoManager->MakeBox("v_cable3", kMedCu, xcable / 2, + ycable / 2, zcable / 2); + auto* r_cable3 = new TGeoRotation("rotation_cable3", -24., -5., 0.); + r_cable3->RegisterYourself(); + Xcable = -21.; + auto* p_cable3 = new TGeoCombiTrans(Xcable, Ycable, Zcable, r_cable3); + p_cable3->RegisterYourself(); + PatchPanelVolume->AddNode(v_cable3, 1, p_cable3); + + zcable = 170.; + TGeoVolume* v_cable4 = gGeoManager->MakeBox("v_cable4", kMedCu, xcable / 2, + ycable / 2, zcable / 2); + auto* r_cable4 = new TGeoRotation("rotation_cable4", 24., -10., 0.); + r_cable4->RegisterYourself(); + Xcable = 30.5; + Ycable = -68.5; + Zcable = -278.; + auto* p_cable4 = new TGeoCombiTrans(Xcable, Ycable, Zcable, r_cable4); + p_cable4->RegisterYourself(); + PatchPanelVolume->AddNode(v_cable4, 1, p_cable4); + + TGeoVolume* v_cable5 = gGeoManager->MakeBox("v_cable5", kMedCu, xcable / 2, + ycable / 2, zcable / 2); + auto* r_cable5 = new TGeoRotation("rotation_cable5", -24., -10., 0.); + r_cable5->RegisterYourself(); + Xcable = -30.5; + auto* p_cable5 = new TGeoCombiTrans(Xcable, Ycable, Zcable, r_cable5); + p_cable5->RegisterYourself(); + PatchPanelVolume->AddNode(v_cable5, 1, p_cable5); + + v_cable0->SetLineColor(kGray + 2); + v_cable1->SetLineColor(kGray + 2); + v_cable2->SetLineColor(kGray + 2); + v_cable3->SetLineColor(kGray + 2); + v_cable4->SetLineColor(kGray + 2); + v_cable5->SetLineColor(kGray + 2); + + //=========================================================== + patchpanel_Volume->SetLineColor(kGreen - 9); PatchPanelVolume->AddNode(patchpanel_Volume, 1, tr_fin); PatchPanelVolume->AddNode(plate_Volume, 2, tr_pl); From 41c5131212bac1f425d9382621bb8c99e9dc2eed Mon Sep 17 00:00:00 2001 From: Artur Furs <9881239+afurs@users.noreply.github.com> Date: Fri, 2 Jul 2021 10:18:27 +0300 Subject: [PATCH 066/314] FITRaw: hotfix for #6562 (#6566) --- Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h b/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h index 404142c5cf270..5805c30eb99a3 100644 --- a/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h +++ b/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h @@ -87,13 +87,14 @@ auto ConvertDigit2TCMData(const DigitType& digit, TCMDataType& tcmData) -> std:: //tcmData.laser = digit.mTriggers.getLaserBit(); //Turned off for FDD tcmData.nChanA = digit.mTriggers.nChanA; tcmData.nChanC = digit.mTriggers.nChanC; - if (digit.mTriggers.amplA > 131071) { - tcmData.amplA = 131071; //2^17 + const int64_t thresholdSignedInt17bit = 65535; //pow(2,17)/2-1 + if (digit.mTriggers.amplA > thresholdSignedInt17bit) { + tcmData.amplA = thresholdSignedInt17bit; } else { tcmData.amplA = digit.mTriggers.amplA; } - if (digit.mTriggers.amplC > 131071) { - tcmData.amplC = 131071; //2^17 + if (digit.mTriggers.amplC > thresholdSignedInt17bit) { + tcmData.amplC = thresholdSignedInt17bit; } else { tcmData.amplC = digit.mTriggers.amplC; } From c02e74caae0dfdf06e2e6f19e8f4bab8b19224de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Jacazio?= Date: Fri, 2 Jul 2021 09:57:15 +0200 Subject: [PATCH 067/314] Add first task of the LUT maker from fullsim (#6498) - Add single particle QA task - Add 2D efficiency to efficiency QA task - Add possibility to select charge depending on PDG code - Add Y for MC particles --- Analysis/ALICE3/CMakeLists.txt | 10 + Analysis/ALICE3/src/alice3-lutmaker.cxx | 176 ++++++++++++++++++ .../ALICE3/src/alice3-qa-singleparticle.cxx | 135 ++++++++++++++ Analysis/Tasks/PWGPP/qaEfficiency.cxx | 61 +++++- .../include/Framework/AnalysisDataModel.h | 6 + 5 files changed, 378 insertions(+), 10 deletions(-) create mode 100644 Analysis/ALICE3/src/alice3-lutmaker.cxx create mode 100644 Analysis/ALICE3/src/alice3-qa-singleparticle.cxx diff --git a/Analysis/ALICE3/CMakeLists.txt b/Analysis/ALICE3/CMakeLists.txt index 41a841e9e7a80..ea55031b224c9 100644 --- a/Analysis/ALICE3/CMakeLists.txt +++ b/Analysis/ALICE3/CMakeLists.txt @@ -26,6 +26,16 @@ o2_add_dpl_workflow(alice3-qa-multiplicity PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisDataModel O2::AnalysisCore COMPONENT_NAME Analysis) +o2_add_dpl_workflow(alice3-qa-singleparticle + SOURCES src/alice3-qa-singleparticle.cxx + PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisDataModel O2::AnalysisCore + COMPONENT_NAME Analysis) + +o2_add_dpl_workflow(alice3-lutmaker + SOURCES src/alice3-lutmaker.cxx + PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisDataModel O2::AnalysisCore + COMPONENT_NAME Analysis) + o2_add_dpl_workflow(alice3-pid-rich-qa SOURCES src/pidRICHqa.cxx PUBLIC_LINK_LIBRARIES O2::AnalysisDataModel O2::AnalysisCore O2::ALICE3Analysis diff --git a/Analysis/ALICE3/src/alice3-lutmaker.cxx b/Analysis/ALICE3/src/alice3-lutmaker.cxx new file mode 100644 index 0000000000000..b17c731e915e3 --- /dev/null +++ b/Analysis/ALICE3/src/alice3-lutmaker.cxx @@ -0,0 +1,176 @@ +// Copyright CERN and copyright holders of ALICE O2. This software is +// distributed under the terms of the GNU General Public License v3 (GPL +// Version 3), copied verbatim in the file "COPYING". +// +// See http://alice-o2.web.cern.ch/license for full licensing information. +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \author Nicolo' Jacazio , CERN +/// \brief Task to extract LUTs for the fast simulation from full simulation +/// \since 27/04/2021 + +// O2 includes +#include "Framework/AnalysisTask.h" +#include "AnalysisCore/MC.h" +#include "ReconstructionDataFormats/Track.h" + +using namespace o2; +using namespace framework; +using namespace framework::expressions; + +void customize(std::vector& workflowOptions) +{ + std::vector options{ + {"lut-el", VariantType::Int, 1, {"LUT input for the Electron PDG code"}}, + {"lut-mu", VariantType::Int, 1, {"LUT input for the Muon PDG code"}}, + {"lut-pi", VariantType::Int, 1, {"LUT input for the Pion PDG code"}}, + {"lut-ka", VariantType::Int, 1, {"LUT input for the Kaon PDG code"}}, + {"lut-pr", VariantType::Int, 1, {"LUT input for the Proton PDG code"}}, + {"lut-tr", VariantType::Int, 0, {"LUT input for the Triton PDG code"}}, + {"lut-de", VariantType::Int, 0, {"LUT input for the Deuteron PDG code"}}, + {"lut-he", VariantType::Int, 0, {"LUT input for the Helium3 PDG code"}}}; + std::swap(workflowOptions, options); +} + +#include "Framework/runDataProcessing.h" + +template +struct Alice3LutMaker { + static constexpr int nSpecies = 8; + static constexpr int PDGs[nSpecies] = {kElectron, kMuonMinus, kPiPlus, kKPlus, kProton, 1000010020, 1000010030, 1000020030}; + static_assert(particle < nSpecies && "Maximum of particles reached"); + static constexpr int pdg = PDGs[particle]; + Configurable selPrim{"sel-prim", false, "If true selects primaries, if not select all particles"}; + Configurable etaBins{"eta-bins", 80, "Number of eta bins"}; + Configurable etaMin{"eta-min", -4.f, "Lower limit in eta"}; + Configurable etaMax{"eta-max", 4.f, "Upper limit in eta"}; + Configurable ptBins{"pt-bins", 200, "Number of pT bins"}; + Configurable ptMin{"pt-min", -2.f, "Lower limit in pT"}; + Configurable ptMax{"pt-max", 2.f, "Upper limit in pT"}; + Configurable logPt{"log-pt", 0, "Flag to use a logarithmic pT axis, in this case the pT limits are the expontents"}; + HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::AnalysisObject}; + + void init(InitContext&) + { + const TString commonTitle = Form(" PDG %i", pdg); + AxisSpec axisPt{ptBins, ptMin, ptMax, "#it{p}_{T} GeV/#it{c}"}; + if (logPt) { + const double min = axisPt.binEdges[0]; + const double width = (axisPt.binEdges[1] - axisPt.binEdges[0]) / axisPt.nBins.value(); + axisPt.binEdges.clear(); + axisPt.binEdges.resize(0); + for (int i = 0; i < axisPt.nBins.value() + 1; i++) { + axisPt.binEdges.push_back(std::pow(10., min + i * width)); + } + axisPt.nBins = std::nullopt; + } + const AxisSpec axisEta{etaBins, etaMin, etaMax, "#it{#eta}"}; + + histos.add("multiplicity", "Track multiplicity;Tracks per event;Events", kTH1F, {{100, 0, 2000}}); + histos.add("pt", "pt" + commonTitle, kTH1F, {axisPt}); + histos.add("eta", "eta" + commonTitle, kTH1F, {axisEta}); + histos.add("CovMat_cYY", "cYY" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_cZY", "cZY" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_cZZ", "cZZ" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_cSnpY", "cSnpY" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_cSnpZ", "cSnpZ" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_cSnpSnp", "cSnpSnp" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_cTglY", "cTglY" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_cTglZ", "cTglZ" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_cTglSnp", "cTglSnp" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_cTglTgl", "cTglTgl" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_c1PtY", "c1PtY" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_c1PtZ", "c1PtZ" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_c1PtSnp", "c1PtSnp" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_c1PtTgl", "c1PtTgl" + commonTitle, kTProfile2D, {axisPt, axisEta}); + histos.add("CovMat_c1Pt21Pt2", "c1Pt21Pt2" + commonTitle, kTProfile2D, {axisPt, axisEta}); + + histos.add("Efficiency", "Efficiency" + commonTitle, kTProfile2D, {axisPt, axisEta}); + } + + void process(const soa::Join& tracks, + const aod::McParticles& mcParticles) + { + std::vector recoTracks(tracks.size()); + int ntrks = 0; + + for (const auto& track : tracks) { + const auto mcParticle = track.mcParticle(); + if (mcParticle.pdgCode() != pdg) { + continue; + } + if (selPrim.value && !MC::isPhysicalPrimary(mcParticles, mcParticle)) { // Requiring is physical primary + continue; + } + + recoTracks[ntrks++] = mcParticle.globalIndex(); + + histos.fill(HIST("pt"), mcParticle.pt()); + histos.fill(HIST("eta"), mcParticle.eta()); + histos.fill(HIST("CovMat_cYY"), mcParticle.pt(), mcParticle.eta(), track.cYY()); + histos.fill(HIST("CovMat_cZY"), mcParticle.pt(), mcParticle.eta(), track.cZY()); + histos.fill(HIST("CovMat_cZZ"), mcParticle.pt(), mcParticle.eta(), track.cZZ()); + histos.fill(HIST("CovMat_cSnpY"), mcParticle.pt(), mcParticle.eta(), track.cSnpY()); + histos.fill(HIST("CovMat_cSnpZ"), mcParticle.pt(), mcParticle.eta(), track.cSnpZ()); + histos.fill(HIST("CovMat_cSnpSnp"), mcParticle.pt(), mcParticle.eta(), track.cSnpSnp()); + histos.fill(HIST("CovMat_cTglY"), mcParticle.pt(), mcParticle.eta(), track.cTglY()); + histos.fill(HIST("CovMat_cTglZ"), mcParticle.pt(), mcParticle.eta(), track.cTglZ()); + histos.fill(HIST("CovMat_cTglSnp"), mcParticle.pt(), mcParticle.eta(), track.cTglSnp()); + histos.fill(HIST("CovMat_cTglTgl"), mcParticle.pt(), mcParticle.eta(), track.cTglTgl()); + histos.fill(HIST("CovMat_c1PtY"), mcParticle.pt(), mcParticle.eta(), track.c1PtY()); + histos.fill(HIST("CovMat_c1PtZ"), mcParticle.pt(), mcParticle.eta(), track.c1PtZ()); + histos.fill(HIST("CovMat_c1PtSnp"), mcParticle.pt(), mcParticle.eta(), track.c1PtSnp()); + histos.fill(HIST("CovMat_c1PtTgl"), mcParticle.pt(), mcParticle.eta(), track.c1PtTgl()); + histos.fill(HIST("CovMat_c1Pt21Pt2"), mcParticle.pt(), mcParticle.eta(), track.c1Pt21Pt2()); + } + histos.fill(HIST("multiplicity"), ntrks); + + for (const auto& mcParticle : mcParticles) { + if (mcParticle.pdgCode() != pdg) { + continue; + } + if (!MC::isPhysicalPrimary(mcParticles, mcParticle)) { // Requiring is physical primary + continue; + } + + if (std::find(recoTracks.begin(), recoTracks.end(), mcParticle.globalIndex()) != recoTracks.end()) { + histos.fill(HIST("Efficiency"), mcParticle.pt(), mcParticle.eta(), 1.); + } else { + histos.fill(HIST("Efficiency"), mcParticle.pt(), mcParticle.eta(), 0.); + } + } + } +}; + +WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) +{ + WorkflowSpec w; + if (cfgc.options().get("lut-el")) { + w.push_back(adaptAnalysisTask>(cfgc, TaskName{"alice3-lutmaker-electron"})); + } + if (cfgc.options().get("lut-mu")) { + w.push_back(adaptAnalysisTask>(cfgc, TaskName{"alice3-lutmaker-muon"})); + } + if (cfgc.options().get("lut-pi")) { + w.push_back(adaptAnalysisTask>(cfgc, TaskName{"alice3-lutmaker-pion"})); + } + if (cfgc.options().get("lut-ka")) { + w.push_back(adaptAnalysisTask>(cfgc, TaskName{"alice3-lutmaker-kaon"})); + } + if (cfgc.options().get("lut-pr")) { + w.push_back(adaptAnalysisTask>(cfgc, TaskName{"alice3-lutmaker-proton"})); + } + if (cfgc.options().get("lut-de")) { + w.push_back(adaptAnalysisTask>(cfgc, TaskName{"alice3-lutmaker-deuteron"})); + } + if (cfgc.options().get("lut-tr")) { + w.push_back(adaptAnalysisTask>(cfgc, TaskName{"alice3-lutmaker-triton"})); + } + if (cfgc.options().get("lut-he")) { + w.push_back(adaptAnalysisTask>(cfgc, TaskName{"alice3-lutmaker-helium3"})); + } + return w; +} diff --git a/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx b/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx new file mode 100644 index 0000000000000..81a085d1347a6 --- /dev/null +++ b/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx @@ -0,0 +1,135 @@ +// Copyright CERN and copyright holders of ALICE O2. This software is +// distributed under the terms of the GNU General Public License v3 (GPL +// Version 3), copied verbatim in the file "COPYING". +// +// See http://alice-o2.web.cern.ch/license for full licensing information. +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. +/// \author Nicolo' Jacazio , CERN + +// O2 includes +#include "Framework/AnalysisTask.h" +#include "Framework/runDataProcessing.h" +#include "AnalysisCore/MC.h" +#include "Framework/HistogramRegistry.h" + +using namespace o2; +using namespace o2::framework; +using namespace o2::framework::expressions; + +struct Alice3SingleParticle { + Configurable PDG{"PDG", 2212, "PDG code of the particle of interest"}; + Configurable IsStable{"IsStable", 0, "Flag to check stable particles"}; + HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::AnalysisObject}; + Configurable ptBins{"pt-bins", 500, "Number of pT bins"}; + Configurable ptMin{"pt-min", 0.f, "Lower limit in pT"}; + Configurable ptMax{"pt-max", 5.f, "Upper limit in pT"}; + Configurable etaBins{"eta-bins", 500, "Number of eta bins"}; + Configurable etaMin{"eta-min", -3.f, "Lower limit in eta"}; + Configurable etaMax{"eta-max", 3.f, "Upper limit in eta"}; + Configurable yMin{"y-min", -3.f, "Lower limit in y"}; + Configurable yMax{"y-max", 3.f, "Upper limit in y"}; + Configurable prodBins{"prod-bins", 100, "Number of production vertex bins"}; + Configurable prodMin{"prod-min", -1.f, "Lower limit in production vertex"}; + Configurable prodMax{"prod-max", 1.f, "Upper limit in production vertex"}; + Configurable charge{"charge", 1.f, "Particle charge to scale the reconstructed momentum"}; + Configurable doPrint{"doPrint", false, "Flag to print debug messages"}; + + void init(InitContext&) + { + const TString tit = Form("%i", PDG.value); + AxisSpec axisPt{ptBins, ptMin, ptMax}; + AxisSpec axisEta{etaBins, etaMin, etaMax}; + AxisSpec axisProd{prodBins, prodMin, prodMax}; + + histos.add("particlePt", "Particle Pt " + tit + ";#it{p}_{T} (GeV/#it{c})", kTH1D, {axisPt}); + histos.add("prodVx", "Particle Prod. Vertex X " + tit + ";Prod. Vertex X (cm)", kTH1D, {axisProd}); + histos.add("prodVy", "Particle Prod. Vertex Y " + tit + ";Prod. Vertex Y (cm)", kTH1D, {axisProd}); + histos.add("prodVz", "Particle Prod. Vertex Z " + tit + ";Prod. Vertex Z (cm)", kTH1D, {axisProd}); + histos.add("prodRadius", "Particle Prod. Vertex Radius " + tit + ";Prod. Vertex Radius (cm)", kTH1D, {axisProd}); + histos.add("prodVxVsPt", "Particle Prod. Vertex X " + tit + ";#it{p}_{T} (GeV/#it{c});Prod. Vertex X (cm)", kTH2D, {axisPt, axisProd}); + histos.add("prodVyVsPt", "Particle Prod. Vertex Y " + tit + ";#it{p}_{T} (GeV/#it{c});Prod. Vertex Y (cm)", kTH2D, {axisPt, axisProd}); + histos.add("prodVzVsPt", "Particle Prod. Vertex Z " + tit + ";#it{p}_{T} (GeV/#it{c});Prod. Vertex Z (cm)", kTH2D, {axisPt, axisProd}); + histos.add("prodRadiusVsPt", "Particle Prod. Vertex Radius " + tit + ";#it{p}_{T} (GeV/#it{c});Prod. Vertex Radius (cm)", kTH2D, {axisPt, axisProd}); + histos.add("prodRadius3DVsPt", "Particle Prod. Vertex Radius XYZ " + tit + ";#it{p}_{T} (GeV/#it{c});Prod. Vertex Radius XYZ (cm)", kTH2D, {axisPt, axisProd}); + histos.add("trackPt", "Track Pt " + tit + ";#it{p}_{T} (GeV/#it{c})", kTH1D, {axisPt}); + histos.add("particleEta", "Particle Eta " + tit + ";#it{#eta}", kTH1D, {axisEta}); + histos.add("trackEta", "Track Eta " + tit + ";#it{#eta}", kTH1D, {axisEta}); + histos.add("particleY", "Particle Y " + tit + ";#it{y}", kTH1D, {axisEta}); + histos.add("primaries", "Source for primaries " + tit + ";PDG Code", kTH1D, {{100, 0.f, 100.f}}); + histos.add("secondaries", "Source for secondaries " + tit + ";PDG Code", kTH1D, {{100, 0.f, 100.f}}); + } + + void process(const soa::Join& tracks, + const aod::McParticles& mcParticles) + { + + std::vector ParticlesOfInterest; + for (const auto& mcParticle : mcParticles) { + if (mcParticle.pdgCode() != PDG) { + continue; + } + if (mcParticle.y() < yMin || mcParticle.y() > yMax) { + continue; + } + histos.fill(HIST("particlePt"), mcParticle.pt()); + histos.fill(HIST("particleEta"), mcParticle.eta()); + histos.fill(HIST("particleY"), mcParticle.y()); + histos.fill(HIST("prodVx"), mcParticle.vx()); + histos.fill(HIST("prodVy"), mcParticle.vy()); + histos.fill(HIST("prodVz"), mcParticle.vz()); + histos.fill(HIST("prodRadius"), std::sqrt(mcParticle.vx() * mcParticle.vx() + mcParticle.vy() * mcParticle.vy())); + histos.fill(HIST("prodVxVsPt"), mcParticle.pt(), mcParticle.vx()); + histos.fill(HIST("prodVyVsPt"), mcParticle.pt(), mcParticle.vy()); + histos.fill(HIST("prodVzVsPt"), mcParticle.pt(), mcParticle.vz()); + histos.fill(HIST("prodRadiusVsPt"), mcParticle.pt(), std::sqrt(mcParticle.vx() * mcParticle.vx() + mcParticle.vy() * mcParticle.vy())); + histos.fill(HIST("prodRadius3DVsPt"), mcParticle.pt(), std::sqrt(mcParticle.vx() * mcParticle.vx() + mcParticle.vy() * mcParticle.vy() + mcParticle.vz() * mcParticle.vz())); + ParticlesOfInterest.push_back(mcParticle.globalIndex()); + } + + for (const auto& track : tracks) { + const auto mcParticle = track.mcParticle(); + if (!IsStable) { + if (mcParticle.mother0() < 0) { + continue; + } + auto mother = mcParticles.iteratorAt(mcParticle.mother0()); + const auto ParticleIsInteresting = std::find(ParticlesOfInterest.begin(), ParticlesOfInterest.end(), mother.globalIndex()) != ParticlesOfInterest.end(); + if (!ParticleIsInteresting) { + continue; + } + if (doPrint) { + LOG(INFO) << "Track " << track.globalIndex() << " comes from a " << mother.pdgCode() << " and is a " << mcParticle.pdgCode(); + } + } else { + if (mcParticle.pdgCode() != PDG) { + continue; + } + histos.fill(HIST("trackPt"), track.pt() * charge); + histos.fill(HIST("trackEta"), track.eta()); + if (mcParticle.mother0() < 0) { + if (doPrint) { + LOG(INFO) << "Track " << track.globalIndex() << " is a " << mcParticle.pdgCode(); + } + continue; + } + auto mother = mcParticles.iteratorAt(mcParticle.mother0()); + if (MC::isPhysicalPrimary(mcParticles, mcParticle)) { + histos.get(HIST("primaries"))->Fill(Form("%i", mother.pdgCode()), 1.f); + } else { + histos.get(HIST("secondaries"))->Fill(Form("%i", mother.pdgCode()), 1.f); + } + if (doPrint) { + LOG(INFO) << "Track " << track.globalIndex() << " is a " << mcParticle.pdgCode() << " and comes from a " << mother.pdgCode() << " and is " << (MC::isPhysicalPrimary(mcParticles, mcParticle) ? "" : "not") << " a primary"; + } + } + } + } +}; + +WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) +{ + return WorkflowSpec{adaptAnalysisTask(cfgc)}; +} diff --git a/Analysis/Tasks/PWGPP/qaEfficiency.cxx b/Analysis/Tasks/PWGPP/qaEfficiency.cxx index 4d55dd0ca67fa..dedad9adc4545 100644 --- a/Analysis/Tasks/PWGPP/qaEfficiency.cxx +++ b/Analysis/Tasks/PWGPP/qaEfficiency.cxx @@ -17,7 +17,7 @@ #include "Framework/AnalysisTask.h" #include "Framework/HistogramRegistry.h" #include "ReconstructionDataFormats/DCA.h" -#include "AnalysisCore/trackUtilities.h" +#include "ReconstructionDataFormats/Track.h" #include "AnalysisCore/MC.h" #include "AnalysisDataModel/TrackSelectionTables.h" @@ -73,8 +73,11 @@ struct QaTrackingEfficiency { Configurable phiMax{"phi-max", 6.284f, "Upper limit in phi"}; Configurable ptMin{"pt-min", 0.f, "Lower limit in pT"}; Configurable ptMax{"pt-max", 5.f, "Upper limit in pT"}; + Configurable selPrim{"sel-prim", 1, "1 select primaries, 0 select all particles"}; + Configurable pdgSign{"pdgSign", 0, "Sign to give to the PDG. If 0 both signs are accepted."}; + Configurable noFakes{"noFakes", false, "Flag to reject tracks that have fake hits"}; // Event selection - Configurable nMinNumberOfContributors{"nMinNumberOfContributors", 2, "Minimum required number of contributors to the vertex"}; + Configurable nMinNumberOfContributors{"nMinNumberOfContributors", 2, "Minimum required number of contributors to the primary vertex"}; Configurable vertexZMin{"vertex-z-min", -10.f, "Minimum position of the generated vertez in Z (cm)"}; Configurable vertexZMax{"vertex-z-max", 10.f, "Maximum position of the generated vertez in Z (cm)"}; // Histogram configuration @@ -82,7 +85,6 @@ struct QaTrackingEfficiency { Configurable logPt{"log-pt", 0, "Flag to use a logarithmic pT axis"}; Configurable etaBins{"eta-bins", 500, "Number of eta bins"}; Configurable phiBins{"phi-bins", 500, "Number of phi bins"}; - Configurable selPrim{"sel-prim", 1, "1 select primaries, 0 select all particles"}; // Task configuration Configurable makeEff{"make-eff", 0, "Flag to produce the efficiency with TEfficiency"}; @@ -91,6 +93,10 @@ struct QaTrackingEfficiency { void init(InitContext&) { + if (pdgSign != 0 && pdgSign != 1 && pdgSign != -1) { + LOG(FATAL) << "Provide pdgSign as 0, 1, -1. Provided: " << pdgSign.value; + return; + } const TString tagPt = Form("%s #it{#eta} [%.2f,%.2f] #it{#varphi} [%.2f,%.2f] Prim %i", o2::track::pid_constants::sNames[particle], etaMin.value, etaMax.value, @@ -138,9 +144,21 @@ struct QaTrackingEfficiency { list->Add(new TEfficiency(effname, efftitle, axis->GetNbins(), axis->GetXmin(), axis->GetXmax())); } }; + auto makeEfficiency2D = [&](TString effname, TString efftitle, auto templateHistoX, auto templateHistoY) { + TAxis* axisX = histos.get(templateHistoX)->GetXaxis(); + TAxis* axisY = histos.get(templateHistoY)->GetXaxis(); + if (axisX->IsVariableBinSize() || axisY->IsVariableBinSize()) { + list->Add(new TEfficiency(effname, efftitle, axisX->GetNbins(), axisX->GetXbins()->GetArray(), axisY->GetNbins(), axisY->GetXbins()->GetArray())); + } else { + list->Add(new TEfficiency(effname, efftitle, axisX->GetNbins(), axisX->GetXmin(), axisX->GetXmax(), axisY->GetNbins(), axisY->GetXmin(), axisY->GetXmax())); + } + }; makeEfficiency("efficiencyVsPt", "Efficiency " + tagPt + ";" + xPt + ";Efficiency", HIST("pt/num")); + makeEfficiency("efficiencyVsP", "Efficiency " + tagPt + ";#it{p} (GeV/#it{c});Efficiency", HIST("pt/num")); makeEfficiency("efficiencyVsEta", "Efficiency " + tagEta + ";" + xEta + ";Efficiency", HIST("eta/num")); makeEfficiency("efficiencyVsPhi", "Efficiency " + tagPhi + ";" + xPhi + ";Efficiency", HIST("phi/num")); + + makeEfficiency2D("efficiencyVsPtVsEta", Form("Efficiency %s #it{#varphi} [%.2f,%.2f] Prim %i;%s;%s;Efficiency", o2::track::pid_constants::sNames[particle], phiMin.value, phiMax.value, selPrim.value, xPt.Data(), xEta.Data()), HIST("pt/num"), HIST("eta/num")); } } @@ -179,12 +197,33 @@ struct QaTrackingEfficiency { if ((selPrim == 1) && (!MC::isPhysicalPrimary(mcParticles, mcParticle))) { // Requiring is physical primary continue; } - if (abs(mcParticle.pdgCode()) == particlePDG) { // Checking PDG code - histos.fill(HIST("pt/num"), mcParticle.pt()); - histos.fill(HIST("eta/num"), mcParticle.eta()); - histos.fill(HIST("phi/num"), mcParticle.phi()); - recoTracks[ntrks++] = mcParticle.globalIndex(); + + if (noFakes) { // Selecting tracks with no fake hits + bool hasFake = false; + for (int i = 0; i < 10; i++) { // From ITS to TPC + if (track.mcMask() & 1 << i) { + hasFake = true; + break; + } + } + if (hasFake) { + continue; + } + } + // Selecting PDG code + if (pdgSign == 0 && abs(mcParticle.pdgCode()) != particlePDG) { + continue; + } else if (pdgSign == 1 && mcParticle.pdgCode() != particlePDG) { + continue; + } else if (pdgSign == -1 && mcParticle.pdgCode() != -particlePDG) { + continue; + } else { + continue; } + histos.fill(HIST("pt/num"), mcParticle.pt()); + histos.fill(HIST("eta/num"), mcParticle.eta()); + histos.fill(HIST("phi/num"), mcParticle.phi()); + recoTracks[ntrks++] = mcParticle.globalIndex(); } for (const auto& mcParticle : mcParticles) { @@ -205,8 +244,10 @@ struct QaTrackingEfficiency { if (makeEff) { const auto particleReconstructed = std::find(recoTracks.begin(), recoTracks.end(), mcParticle.globalIndex()) != recoTracks.end(); static_cast(list->At(0))->Fill(particleReconstructed, mcParticle.pt()); - static_cast(list->At(1))->Fill(particleReconstructed, mcParticle.eta()); - static_cast(list->At(2))->Fill(particleReconstructed, mcParticle.phi()); + static_cast(list->At(1))->Fill(particleReconstructed, mcParticle.p()); + static_cast(list->At(2))->Fill(particleReconstructed, mcParticle.eta()); + static_cast(list->At(3))->Fill(particleReconstructed, mcParticle.phi()); + static_cast(list->At(4))->Fill(particleReconstructed, mcParticle.pt(), mcParticle.eta()); } histos.fill(HIST("pt/den"), mcParticle.pt()); histos.fill(HIST("eta/den"), mcParticle.eta()); diff --git a/Framework/Core/include/Framework/AnalysisDataModel.h b/Framework/Core/include/Framework/AnalysisDataModel.h index fb9f2c7f4c7d9..8f77174c14fad 100644 --- a/Framework/Core/include/Framework/AnalysisDataModel.h +++ b/Framework/Core/include/Framework/AnalysisDataModel.h @@ -791,6 +791,10 @@ DECLARE_SOA_DYNAMIC_COLUMN(Eta, eta, //! Pseudorapidity [](float px, float py, float pz) -> float { return 0.5f * std::log((std::sqrt(px * px + py * py + pz * pz) + pz) / (std::sqrt(px * px + py * py + pz * pz) - pz)); }); DECLARE_SOA_DYNAMIC_COLUMN(Pt, pt, //! Transverse momentum in GeV/c [](float px, float py) -> float { return std::sqrt(px * px + py * py); }); +DECLARE_SOA_DYNAMIC_COLUMN(P, p, //! Total momentum in GeV/c + [](float px, float py, float pz) -> float { return std::sqrt(px * px + py * py + pz * pz); }); +DECLARE_SOA_DYNAMIC_COLUMN(Y, y, //! Particle rapidity + [](float pz, float energy) -> float { return 0.5f * std::log((energy + pz) / (energy - pz)); }); DECLARE_SOA_DYNAMIC_COLUMN(ProducedByGenerator, producedByGenerator, //! Particle produced by the generator or by the transport code [](uint8_t flags) -> bool { return (flags & 0x1) == 0x0; }); } // namespace mcparticle @@ -805,6 +809,8 @@ DECLARE_SOA_TABLE(McParticles, "AOD", "MCPARTICLE", //! MC particle table mcparticle::Phi, mcparticle::Eta, mcparticle::Pt, + mcparticle::P, + mcparticle::Y, mcparticle::ProducedByGenerator); using McParticle = McParticles::iterator; From 223a52e343fb5d15442aa4a0946a6d2c6276bf38 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Fri, 2 Jul 2021 10:13:40 +0200 Subject: [PATCH 068/314] DPL: dump metrics at interval if enabled (#6526) --- Framework/Core/include/Framework/DriverInfo.h | 4 +- Framework/Core/src/runDataProcessing.cxx | 94 ++++++++++++------- 2 files changed, 63 insertions(+), 35 deletions(-) diff --git a/Framework/Core/include/Framework/DriverInfo.h b/Framework/Core/include/Framework/DriverInfo.h index 530f5d2d4b17d..8cec4b70ff46c 100644 --- a/Framework/Core/include/Framework/DriverInfo.h +++ b/Framework/Core/include/Framework/DriverInfo.h @@ -143,7 +143,9 @@ struct DriverInfo { /// The unique id used for ipc communications std::string uniqueWorkflowId = ""; /// Metrics gathering interval - unsigned short resourcesMonitoringInterval; + unsigned short resourcesMonitoringInterval = 0; + /// Metrics gathering dump to disk interval + unsigned short resourcesMonitoringDumpInterval = 0; /// Port used by the websocket control. 0 means not initialised. unsigned short port = 0; /// Last port used for tracy diff --git a/Framework/Core/src/runDataProcessing.cxx b/Framework/Core/src/runDataProcessing.cxx index 5e736f26c1dd9..1942e88437299 100644 --- a/Framework/Core/src/runDataProcessing.cxx +++ b/Framework/Core/src/runDataProcessing.cxx @@ -1195,6 +1195,20 @@ void single_step_callback(uv_timer_s* ctx) killChildren(*infos, SIGUSR1); } +void dumpMetricsCallback(uv_timer_t* handle) +{ + DriverServerContext* context = (DriverServerContext*)handle->data; + + auto performanceMetrics = o2::monitoring::ProcessMonitor::getAvailableMetricsNames(); + performanceMetrics.push_back("arrow-bytes-delta"); + performanceMetrics.push_back("aod-bytes-read-uncompressed"); + performanceMetrics.push_back("aod-bytes-read-compressed"); + performanceMetrics.push_back("aod-file-read-info"); + performanceMetrics.push_back("table-bytes-.*"); + ResourcesMonitoringHelper::dumpMetricsToJSON(*(context->metrics), + context->driver->metrics, *(context->specs), performanceMetrics); +} + // This is the handler for the parent inner loop. int runStateMachine(DataProcessorSpecs const& workflow, WorkflowInfo const& workflowInfo, @@ -1353,6 +1367,9 @@ int runStateMachine(DataProcessorSpecs const& workflow, bool guiDeployedOnce = false; bool once = false; + uv_timer_t metricDumpTimer; + metricDumpTimer.data = &serverContext; + while (true) { // If control forced some transition on us, we push it to the queue. if (driverControl.forcedTransitions.empty() == false) { @@ -1582,6 +1599,7 @@ int runStateMachine(DataProcessorSpecs const& workflow, "--fairmq-ipc-prefix", "--readers", "--resources-monitoring", + "--resources-monitoring-dump-interval", "--time-limit", }; @@ -1654,6 +1672,15 @@ int runStateMachine(DataProcessorSpecs const& workflow, callback(serviceRegistry, varmap); } assert(infos.empty() == false); + + // In case resource monitoring is requested, we dump metrics to disk + // every 3 minutes. + if (driverInfo.resourcesMonitoringDumpInterval && ResourcesMonitoringHelper::isResourcesMonitoringEnabled(driverInfo.resourcesMonitoringInterval)) { + uv_timer_init(loop, &metricDumpTimer); + uv_timer_start(&metricDumpTimer, dumpMetricsCallback, + driverInfo.resourcesMonitoringDumpInterval * 1000, + driverInfo.resourcesMonitoringDumpInterval * 1000); + } LOG(INFO) << "Redeployment of configuration done."; } break; case DriverState::RUNNING: @@ -1769,14 +1796,11 @@ int runStateMachine(DataProcessorSpecs const& workflow, } break; case DriverState::EXIT: { if (ResourcesMonitoringHelper::isResourcesMonitoringEnabled(driverInfo.resourcesMonitoringInterval)) { + if (driverInfo.resourcesMonitoringDumpInterval) { + uv_timer_stop(&metricDumpTimer); + } LOG(INFO) << "Dumping performance metrics to performanceMetrics.json file"; - auto performanceMetrics = o2::monitoring::ProcessMonitor::getAvailableMetricsNames(); - performanceMetrics.push_back("arrow-bytes-delta"); - performanceMetrics.push_back("aod-bytes-read-uncompressed"); - performanceMetrics.push_back("aod-bytes-read-compressed"); - performanceMetrics.push_back("aod-file-read-info"); - performanceMetrics.push_back("table-bytes-.*"); - ResourcesMonitoringHelper::dumpMetricsToJSON(metricsInfos, driverInfo.metrics, runningWorkflow.devices, performanceMetrics); + dumpMetricsCallback(&metricDumpTimer); } // This is a clean exit. Before we do so, if required, // we dump the configuration of all the devices so that @@ -2171,33 +2195,34 @@ int doMain(int argc, char** argv, o2::framework::WorkflowSpec const& workflow, enum LogParsingHelpers::LogLevel minFailureLevel; bpo::options_description executorOptions("Executor options"); const char* helpDescription = "print help: short, full, executor, or processor name"; - executorOptions.add_options() // - ("help,h", bpo::value()->implicit_value("short"), helpDescription) // // - ("quiet,q", bpo::value()->zero_tokens()->default_value(false), "quiet operation") // // - ("stop,s", bpo::value()->zero_tokens()->default_value(false), "stop before device start") // // - ("single-step", bpo::value()->zero_tokens()->default_value(false), "start in single step mode") // // - ("batch,b", bpo::value()->zero_tokens()->default_value(isatty(fileno(stdout)) == 0), "batch processing mode") // // - ("no-batch", bpo::value()->zero_tokens()->default_value(false), "force gui processing mode") // // - ("no-cleanup", bpo::value()->zero_tokens()->default_value(false), "do not cleanup the shm segment") // // - ("hostname", bpo::value()->default_value("localhost"), "hostname to deploy") // // - ("resources", bpo::value()->default_value(""), "resources allocated for the workflow") // // - ("start-port,p", bpo::value()->default_value(22000), "start port to allocate") // // - ("port-range,pr", bpo::value()->default_value(1000), "ports in range") // // - ("completion-policy,c", bpo::value(&policy)->default_value(TerminationPolicy::QUIT), // // - "what to do when processing is finished: quit, wait") // // - ("error-policy", bpo::value(&errorPolicy)->default_value(TerminationPolicy::QUIT), // // - "what to do when a device has an error: quit, wait") // // - ("min-failure-level", bpo::value(&minFailureLevel)->default_value(LogParsingHelpers::LogLevel::Fatal), // // - "minimum message level which will be considered as fatal and exit with 1") // // - ("graphviz,g", bpo::value()->zero_tokens()->default_value(false), "produce graph output") // // - ("timeout,t", bpo::value()->default_value(0), "forced exit timeout (in seconds)") // // - ("dds,D", bpo::value()->zero_tokens()->default_value(false), "create DDS configuration") // // - ("dump-workflow,dump", bpo::value()->zero_tokens()->default_value(false), "dump workflow as JSON") // // - ("dump-workflow-file", bpo::value()->default_value("-"), "file to which do the dump") // // - ("run", bpo::value()->zero_tokens()->default_value(false), "run workflow merged so far") // // - ("no-IPC", bpo::value()->zero_tokens()->default_value(false), "disable IPC topology optimization") // // - ("o2-control,o2", bpo::value()->default_value(""), "dump O2 Control workflow configuration under the specified name") // - ("resources-monitoring", bpo::value()->default_value(0), "enable cpu/memory monitoring for provided interval in seconds"); // + executorOptions.add_options() // + ("help,h", bpo::value()->implicit_value("short"), helpDescription) // // + ("quiet,q", bpo::value()->zero_tokens()->default_value(false), "quiet operation") // // + ("stop,s", bpo::value()->zero_tokens()->default_value(false), "stop before device start") // // + ("single-step", bpo::value()->zero_tokens()->default_value(false), "start in single step mode") // // + ("batch,b", bpo::value()->zero_tokens()->default_value(isatty(fileno(stdout)) == 0), "batch processing mode") // // + ("no-batch", bpo::value()->zero_tokens()->default_value(false), "force gui processing mode") // // + ("no-cleanup", bpo::value()->zero_tokens()->default_value(false), "do not cleanup the shm segment") // // + ("hostname", bpo::value()->default_value("localhost"), "hostname to deploy") // // + ("resources", bpo::value()->default_value(""), "resources allocated for the workflow") // // + ("start-port,p", bpo::value()->default_value(22000), "start port to allocate") // // + ("port-range,pr", bpo::value()->default_value(1000), "ports in range") // // + ("completion-policy,c", bpo::value(&policy)->default_value(TerminationPolicy::QUIT), // // + "what to do when processing is finished: quit, wait") // // + ("error-policy", bpo::value(&errorPolicy)->default_value(TerminationPolicy::QUIT), // // + "what to do when a device has an error: quit, wait") // // + ("min-failure-level", bpo::value(&minFailureLevel)->default_value(LogParsingHelpers::LogLevel::Fatal), // // + "minimum message level which will be considered as fatal and exit with 1") // // + ("graphviz,g", bpo::value()->zero_tokens()->default_value(false), "produce graph output") // // + ("timeout,t", bpo::value()->default_value(0), "forced exit timeout (in seconds)") // // + ("dds,D", bpo::value()->zero_tokens()->default_value(false), "create DDS configuration") // // + ("dump-workflow,dump", bpo::value()->zero_tokens()->default_value(false), "dump workflow as JSON") // // + ("dump-workflow-file", bpo::value()->default_value("-"), "file to which do the dump") // // + ("run", bpo::value()->zero_tokens()->default_value(false), "run workflow merged so far") // // + ("no-IPC", bpo::value()->zero_tokens()->default_value(false), "disable IPC topology optimization") // // + ("o2-control,o2", bpo::value()->default_value(""), "dump O2 Control workflow configuration under the specified name") // + ("resources-monitoring", bpo::value()->default_value(0), "enable cpu/memory monitoring for provided interval in seconds") // + ("resources-monitoring-dump-interval", bpo::value()->default_value(0), "dump monitoring information to disk every provided seconds"); // // some of the options must be forwarded by default to the device executorOptions.add(DeviceSpecHelpers::getForwardedDeviceOptions()); @@ -2415,6 +2440,7 @@ int doMain(int argc, char** argv, o2::framework::WorkflowSpec const& workflow, driverInfo.deployHostname = varmap["hostname"].as(); driverInfo.resources = varmap["resources"].as(); driverInfo.resourcesMonitoringInterval = varmap["resources-monitoring"].as(); + driverInfo.resourcesMonitoringDumpInterval = varmap["resources-monitoring-dump-interval"].as(); // FIXME: should use the whole dataProcessorInfos, actually... driverInfo.processorInfo = dataProcessorInfos; From 8b6178d64db3ea249d0ead73023a42ddc94052f7 Mon Sep 17 00:00:00 2001 From: shahoian Date: Fri, 2 Jul 2021 00:54:19 +0200 Subject: [PATCH 069/314] Make decoding errors treatment more robust --- .../include/ITSMFTReconstruction/DecodingStat.h | 2 +- .../include/ITSMFTReconstruction/RUDecodeData.h | 15 +++++++++------ 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/DecodingStat.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/DecodingStat.h index f6d72c8d13ba4..5d3a90ab5b0de 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/DecodingStat.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/DecodingStat.h @@ -55,7 +55,7 @@ struct ChipStat { "Data truncated after LongData", // TruncatedLondData "LongData pattern has highest bit set", // WrongDataLongPattern "Region is not followed by Short or Long data", // NoDataFound - "Unknow word" // UnknownWord + "Unknown word" // UnknownWord }; uint16_t id = -1; diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RUDecodeData.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RUDecodeData.h index edcdc75dc8e59..7ef35f8c30e3c 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RUDecodeData.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/RUDecodeData.h @@ -81,16 +81,19 @@ int RUDecodeData::decodeROF(const Mapping& mp) auto chIdGetter = [this, &mp, cabHW](int cid) { return mp.getGlobalChipID(cid, cabHW, *this->ruInfo); }; - while (AlpideCoder::decodeChip(*chipData, cableData[icab], chIdGetter) || chipData->isErrorSet()) { // we register only chips with hits or errors flags set + int ret = 0; + while ((ret = AlpideCoder::decodeChip(*chipData, cableData[icab], chIdGetter)) || chipData->isErrorSet()) { // we register only chips with hits or errors flags set setROFInfo(chipData, cableLinkPtr[icab]); - ntot += chipData->getData().size(); #ifdef ALPIDE_DECODING_STAT fillChipStatistics(icab, chipData); #endif - if (++nChipsFired < chipsData.size()) { // fetch next free chip - chipData = &chipsData[nChipsFired]; - } else { - break; // last chip decoded + if (ret >= 0 && !chipData->isErrorSet()) { // make sure there was no error + ntot += chipData->getData().size(); + if (++nChipsFired < chipsData.size()) { // fetch next free chip + chipData = &chipsData[nChipsFired]; + } else { + break; // last chip decoded + } } } } From 1bd90382249e1187060f52cc761c997025a9ceff Mon Sep 17 00:00:00 2001 From: shahoian Date: Fri, 2 Jul 2021 15:24:27 +0200 Subject: [PATCH 070/314] Fix obsolete copyright headers --- Analysis/ALICE3/src/alice3-lutmaker.cxx | 9 +++++---- Analysis/ALICE3/src/alice3-qa-singleparticle.cxx | 10 ++++++---- .../Standalone/tools/switchToAliRootLicense.sh | 4 ++-- 3 files changed, 13 insertions(+), 10 deletions(-) diff --git a/Analysis/ALICE3/src/alice3-lutmaker.cxx b/Analysis/ALICE3/src/alice3-lutmaker.cxx index b17c731e915e3..cadd00498a706 100644 --- a/Analysis/ALICE3/src/alice3-lutmaker.cxx +++ b/Analysis/ALICE3/src/alice3-lutmaker.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx b/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx index 81a085d1347a6..8f795ce1a0813 100644 --- a/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx +++ b/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx @@ -1,12 +1,14 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. + /// \author Nicolo' Jacazio , CERN // O2 includes diff --git a/GPU/GPUTracking/Standalone/tools/switchToAliRootLicense.sh b/GPU/GPUTracking/Standalone/tools/switchToAliRootLicense.sh index ed3273e7e7698..94545950805a0 100755 --- a/GPU/GPUTracking/Standalone/tools/switchToAliRootLicense.sh +++ b/GPU/GPUTracking/Standalone/tools/switchToAliRootLicense.sh @@ -5,10 +5,10 @@ if [ $(ls | grep GPU | wc -l) != "1" ]; then exit 1 fi -git grep -l "^// Copyright CERN and copyright holders of ALICE O2. This software is" | \ +git grep -l "^// Copyright 2019-2020 CERN and copyright holders of ALICE O2." | \ grep "^GPU/Common/\|^GPU/GPUTracking/\|^GPU/TPCFastTransformation|^GPU/TPCSpaceChargeBase\|^cmake" | \ xargs -r -n 1 \ - sed -i -e '/Copyright CERN and copyright holders of ALICE O2. This software is/,/or submit itself to any jurisdiction/c\ + sed -i -e '/Copyright 2019-2020 CERN and copyright holders of ALICE O2./,/or submit itself to any jurisdiction/c\ //**************************************************************************\ //* This file is property of and copyright by the ALICE Project *\ //* ALICE Experiment at CERN, All rights reserved. *\ From 344589649a91b7e8f559aec25a3ea24cfa0b94df Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Sat, 3 Jul 2021 00:24:53 +0200 Subject: [PATCH 071/314] DPL: expire resource offers (#6549) --- .../include/Framework/ComputingQuotaOffer.h | 3 +- Framework/Core/src/ArrowSupport.cxx | 50 +++++++-- .../Core/src/ComputingQuotaEvaluator.cxx | 101 ++++++++++++++++-- Framework/Core/src/DataProcessingDevice.cxx | 2 + Framework/Core/src/WSDriverClient.cxx | 2 +- 5 files changed, 139 insertions(+), 19 deletions(-) diff --git a/Framework/Core/include/Framework/ComputingQuotaOffer.h b/Framework/Core/include/Framework/ComputingQuotaOffer.h index 9f42e751a33a5..8610d24ea718f 100644 --- a/Framework/Core/include/Framework/ComputingQuotaOffer.h +++ b/Framework/Core/include/Framework/ComputingQuotaOffer.h @@ -51,7 +51,8 @@ struct ComputingQuotaOffer { int user = -1; /// The score for the given offer OfferScore score = OfferScore::Unneeded; - /// Whether or not the offer is valid + /// Whether or not the offer is valid, invalid offers can + /// be reused whe we get some more quota from the system. bool valid = false; }; diff --git a/Framework/Core/src/ArrowSupport.cxx b/Framework/Core/src/ArrowSupport.cxx index 0f5952daa92a9..848ab75b0e44c 100644 --- a/Framework/Core/src/ArrowSupport.cxx +++ b/Framework/Core/src/ArrowSupport.cxx @@ -58,6 +58,7 @@ struct MetricIndices { size_t arrowBytesDestroyed = 0; size_t arrowMessagesCreated = 0; size_t arrowMessagesDestroyed = 0; + size_t arrowBytesExpired = 0; }; std::vector createDefaultIndices(std::vector& allDevicesMetrics) @@ -70,6 +71,7 @@ std::vector createDefaultIndices(std::vector& indices.arrowBytesDestroyed = DeviceMetricsHelper::bookNumericMetric(info, "arrow-bytes-destroyed"); indices.arrowMessagesCreated = DeviceMetricsHelper::bookNumericMetric(info, "arrow-messages-created"); indices.arrowMessagesDestroyed = DeviceMetricsHelper::bookNumericMetric(info, "arrow-messages-destroyed"); + indices.arrowBytesExpired = DeviceMetricsHelper::bookNumericMetric(info, "arrow-bytes-expired"); results.push_back(indices); } return results; @@ -110,6 +112,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() int64_t totalBytesCreated = 0; int64_t readerBytesCreated = 0; int64_t totalBytesDestroyed = 0; + int64_t totalBytesExpired = 0; int64_t totalMessagesCreated = 0; int64_t totalMessagesDestroyed = 0; static RateLimitingState currentState = RateLimitingState::UNKNOWN; @@ -120,6 +123,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() static auto availableSharedMemoryMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "available-shared-memory"); static auto offeredSharedMemoryMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "offered-shared-memory"); static auto totalBytesDestroyedMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "total-arrow-bytes-destroyed"); + static auto totalBytesExpiredMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "total-arrow-bytes-expired"); static auto totalMessagesCreatedMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "total-arrow-messages-created"); static auto totalMessagesDestroyedMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "total-arrow-messages-destroyed"); static auto totalBytesDeltaMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "arrow-bytes-delta"); @@ -171,6 +175,17 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() firstTimestamp = std::min(lastTimestamp, firstTimestamp); } } + { + size_t index = indices.arrowBytesExpired; + if (index < deviceMetrics.metrics.size()) { + hasMetrics = true; + changed |= deviceMetrics.changed.at(index); + MetricInfo info = deviceMetrics.metrics.at(index); + auto& data = deviceMetrics.uint64Metrics.at(info.storeIdx); + totalBytesExpired += (int64_t)data.at((info.pos - 1) % data.size()); + firstTimestamp = std::min(lastTimestamp, firstTimestamp); + } + } { size_t index = indices.arrowMessagesCreated; if (index < deviceMetrics.metrics.size()) { @@ -191,10 +206,11 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() if (changed) { totalBytesCreatedMetric(driverMetrics, totalBytesCreated, timestamp); totalBytesDestroyedMetric(driverMetrics, totalBytesDestroyed, timestamp); + totalBytesExpiredMetric(driverMetrics, totalBytesExpired, timestamp); readerBytesCreatedMetric(driverMetrics, readerBytesCreated, timestamp); totalMessagesCreatedMetric(driverMetrics, totalMessagesCreated, timestamp); totalMessagesDestroyedMetric(driverMetrics, totalMessagesDestroyed, timestamp); - totalBytesDeltaMetric(driverMetrics, totalBytesCreated - totalBytesDestroyed, timestamp); + totalBytesDeltaMetric(driverMetrics, totalBytesCreated - totalBytesExpired - totalBytesDestroyed, timestamp); } bool done = false; static int stateTransitions = 0; @@ -205,7 +221,8 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() static RateLimitingState lastReportedState = RateLimitingState::UNKNOWN; static uint64_t lastReportTime = 0; static int64_t MAX_SHARED_MEMORY = calculateAvailableSharedMemory(registry); - constexpr int64_t QUANTUM_SHARED_MEMORY = 500; + constexpr int64_t MAX_QUANTUM_SHARED_MEMORY = 300; + constexpr int64_t MIN_QUANTUM_SHARED_MEMORY = 100; static int64_t availableSharedMemory = MAX_SHARED_MEMORY; static int64_t offeredSharedMemory = 0; @@ -213,18 +230,33 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() /// We loop over the devices, starting from where we stopped last time /// offering 1 GB of shared memory to each reader. int64_t lastCandidate = -1; + static int enoughSharedMemoryCount = availableSharedMemory - MIN_QUANTUM_SHARED_MEMORY > 0 ? 1 : 0; + static int lowSharedMemoryCount = availableSharedMemory - MIN_QUANTUM_SHARED_MEMORY > 0 ? 0 : 1; + int64_t possibleOffer = MIN_QUANTUM_SHARED_MEMORY; for (size_t di = 0; di < specs.size(); di++) { - if (availableSharedMemory < QUANTUM_SHARED_MEMORY) { + if (availableSharedMemory < possibleOffer) { + if (lowSharedMemoryCount == 0) { + LOGP(ERROR, "We do not have enough shared memory ({}MB) to offer {}MB", availableSharedMemory, possibleOffer); + } + lowSharedMemoryCount++; + enoughSharedMemoryCount = 0; break; + } else { + if (enoughSharedMemoryCount == 0) { + LOGP(INFO, "We are back in a state where we enough shared memory: {}MB", availableSharedMemory); + } + enoughSharedMemoryCount++; + lowSharedMemoryCount = 0; } size_t candidate = (lastDeviceOffered + di) % specs.size(); if (specs[candidate].name != "internal-dpl-aod-reader") { continue; } - LOGP(info, "Offering {}MB to {}", QUANTUM_SHARED_MEMORY, specs[candidate].id); - manager.queueMessage(specs[candidate].id.c_str(), fmt::format("/shm-offer {}", QUANTUM_SHARED_MEMORY).data()); - availableSharedMemory -= QUANTUM_SHARED_MEMORY; - offeredSharedMemory += QUANTUM_SHARED_MEMORY; + possibleOffer = std::min(MAX_QUANTUM_SHARED_MEMORY, availableSharedMemory); + LOGP(info, "Offering {}MB to {}", possibleOffer, availableSharedMemory, specs[candidate].id); + manager.queueMessage(specs[candidate].id.c_str(), fmt::format("/shm-offer {}", possibleOffer).data()); + availableSharedMemory -= possibleOffer; + offeredSharedMemory += possibleOffer; lastCandidate = candidate; } // We had at least a valid candidate, so @@ -234,7 +266,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() } int unusedOfferedMemory = (offeredSharedMemory - readerBytesCreated / 1000000); - availableSharedMemory = MAX_SHARED_MEMORY + ((totalBytesDestroyed - totalBytesCreated) / 1000000) - unusedOfferedMemory; + availableSharedMemory = MAX_SHARED_MEMORY + ((totalBytesDestroyed + totalBytesExpired - totalBytesCreated) / 1000000) - unusedOfferedMemory; availableSharedMemoryMetric(driverMetrics, availableSharedMemory, timestamp); unusedOfferedMemoryMetric(driverMetrics, unusedOfferedMemory, timestamp); @@ -279,7 +311,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() [](ServiceRegistry& registry, boost::program_options::variables_map const& vm) { auto config = new RateLimitConfig{}; int readers = std::stoll(vm["readers"].as()); - long long int minReaderMemory = readers * 1000; + long long int minReaderMemory = readers * 500; if (vm.count("aod-memory-rate-limit")) { config->maxMemory = std::max(minReaderMemory, std::stoll(vm["aod-memory-rate-limit"].as()) / 1000000); } diff --git a/Framework/Core/src/ComputingQuotaEvaluator.cxx b/Framework/Core/src/ComputingQuotaEvaluator.cxx index c875cbf45ebac..32b38612bde5b 100644 --- a/Framework/Core/src/ComputingQuotaEvaluator.cxx +++ b/Framework/Core/src/ComputingQuotaEvaluator.cxx @@ -44,6 +44,14 @@ ComputingQuotaEvaluator::ComputingQuotaEvaluator(ServiceRegistry& registry) 0}; } +struct QuotaEvaluatorStats { + std::vector invalidOffers; + std::vector otherUser; + std::vector unexpiring; + std::vector selectedOffers; + std::vector expired; +}; + bool ComputingQuotaEvaluator::selectOffer(int task, ComputingQuotaRequest const& selector) { auto selectOffer = [&loop = mLoop, &offers = this->mOffers, &infos = this->mInfos, task](int ref) { @@ -57,6 +65,45 @@ bool ComputingQuotaEvaluator::selectOffer(int task, ComputingQuotaRequest const& }; ComputingQuotaOffer accumulated; + static QuotaEvaluatorStats stats; + + stats.invalidOffers.clear(); + stats.otherUser.clear(); + stats.unexpiring.clear(); + stats.selectedOffers.clear(); + stats.expired.clear(); + + auto summarizeWhatHappended = [](bool enough, std::vector const& result, ComputingQuotaOffer const& totalOffer, QuotaEvaluatorStats& stats) -> bool { + if (result.size() == 1 && result[0] == 0) { + // LOG(INFO) << "No particular resource was requested, so we schedule task anyways"; + return enough; + } + if (enough) { + LOGP(INFO, "{} offers were selected for a total of: cpu {}, memory {}, shared memory {}", result.size(), totalOffer.cpu, totalOffer.memory, totalOffer.sharedMemory); + LOGP(INFO, " The following offers were selected for computation: {} ", fmt::join(result, ",")); + } else { + LOG(INFO) << "No offer was selected"; + if (result.size()) { + LOGP(INFO, " The following offers were selected for computation but not enough: {} ", fmt::join(result, ",")); + } + } + if (stats.invalidOffers.size()) { + LOGP(INFO, " The following offers were invalid: {}", fmt::join(stats.invalidOffers, ", ")); + } + if (stats.otherUser.size()) { + LOGP(INFO, " The following offers were owned by other users: {}", fmt::join(stats.otherUser, ", ")); + } + if (stats.expired.size()) { + LOGP(INFO, " The following offers are expired: {}", fmt::join(stats.expired, ", ")); + } + if (stats.unexpiring.size() > 1) { + LOGP(INFO, " The following offers will never expire: {}", fmt::join(stats.unexpiring, ", ")); + } + + return enough; + }; + + bool enough = false; for (int i = 0; i != mOffers.size(); ++i) { auto& offer = mOffers[i]; @@ -67,14 +114,22 @@ bool ComputingQuotaEvaluator::selectOffer(int task, ComputingQuotaRequest const& // - Offers which belong to another task // - Expired offers if (offer.valid == false) { + stats.invalidOffers.push_back(i); continue; } if (offer.user != -1 && offer.user != task) { + stats.otherUser.push_back(i); continue; } - if (offer.runtime > 0 && offer.runtime + info.received < uv_now(mLoop)) { + if (offer.runtime < 0) { + stats.unexpiring.push_back(i); + } else if (offer.runtime + info.received < uv_now(mLoop)) { + LOGP(INFO, "Offer {} expired since {} milliseconds and holds {}MB", i, uv_now(mLoop) - offer.runtime - info.received, offer.sharedMemory / 1000000); mExpiredOffers.push_back(ComputingQuotaOfferRef{i}); + stats.expired.push_back(i); continue; + } else { + LOGP(INFO, "Offer {} still valid for {} milliseconds, providing {}MB", i, offer.runtime + info.received - uv_now(mLoop), offer.sharedMemory / 1000000); } /// We then check if the offer is suitable assert(offer.sharedMemory >= 0); @@ -85,18 +140,24 @@ bool ComputingQuotaEvaluator::selectOffer(int task, ComputingQuotaRequest const& offer.score = selector(offer, tmp); switch (offer.score) { case OfferScore::Unneeded: + continue; case OfferScore::Unsuitable: continue; case OfferScore::More: selectOffer(i); - break; + accumulated = tmp; + stats.selectedOffers.push_back(i); + continue; case OfferScore::Enough: selectOffer(i); - return true; + accumulated = tmp; + stats.selectedOffers.push_back(i); + enough = true; + break; }; } // If we get here it means we never got enough offers, so we return false. - return false; + return summarizeWhatHappended(enough, stats.selectedOffers, accumulated, stats); } void ComputingQuotaEvaluator::consume(int id, ComputingQuotaConsumer& consumer) @@ -149,6 +210,16 @@ void ComputingQuotaEvaluator::updateOffers(std::vector& pen void ComputingQuotaEvaluator::handleExpired() { + static int nothingToDoCount = mExpiredOffers.size(); + if (mExpiredOffers.size()) { + LOGP(INFO, "Handling {} expired offers", mExpiredOffers.size()); + nothingToDoCount = 0; + } else { + if (nothingToDoCount == 0) { + nothingToDoCount++; + LOGP(INFO, "No expired offers"); + } + } using o2::monitoring::Metric; using o2::monitoring::Monitoring; using o2::monitoring::tags::Key; @@ -156,15 +227,29 @@ void ComputingQuotaEvaluator::handleExpired() auto& monitoring = mRegistry.get(); /// Whenever an offer is expired, we give back the resources /// to the driver. + static uint64_t expiredOffers = 0; + static uint64_t expiredBytes = 0; + for (auto& ref : mExpiredOffers) { auto& offer = mOffers[ref.index]; + if (offer.sharedMemory < 0) { + LOGP(INFO, "Offer {} does not have any more memory. Marking it as invalid.", ref.index); + offer.valid = false; + offer.score = OfferScore::Unneeded; + continue; + } // FIXME: offers should go through the driver client, not the monitoring // api. auto& monitoring = mRegistry.get(); - monitoring.send(o2::monitoring::Metric{(uint64_t)offer.sharedMemory, "arrow-bytes-destroyed"}.addTag(Key::Subsystem, monitoring::tags::Value::DPL)); - // LOGP(INFO, "Offer expired {} {}", offer.sharedMemory, offer.cpu); - // driverClient.tell("expired shmem {}", offer.sharedMemory); - // driverClient.tell("expired cpu {}", offer.cpu); + monitoring.send(o2::monitoring::Metric{expiredOffers++, "resource-offer-expired"}.addTag(Key::Subsystem, monitoring::tags::Value::DPL)); + expiredBytes += offer.sharedMemory; + monitoring.send(o2::monitoring::Metric{(uint64_t)expiredBytes, "arrow-bytes-expired"}.addTag(Key::Subsystem, monitoring::tags::Value::DPL)); + LOGP(INFO, "Offer {} expired. Giving back {}MB and {} cores", ref.index, offer.sharedMemory / 1000000, offer.cpu); + //driverClient.tell("expired shmem {}", offer.sharedMemory); + //driverClient.tell("expired cpu {}", offer.cpu); + offer.sharedMemory = -1; + offer.valid = false; + offer.score = OfferScore::Unneeded; } mExpiredOffers.clear(); } diff --git a/Framework/Core/src/DataProcessingDevice.cxx b/Framework/Core/src/DataProcessingDevice.cxx index d9939ab246c9b..b070fe7dde62a 100644 --- a/Framework/Core/src/DataProcessingDevice.cxx +++ b/Framework/Core/src/DataProcessingDevice.cxx @@ -151,6 +151,7 @@ void run_completion(uv_work_t* handle, int status) context.deviceContext->quotaEvaluator->consume(task->id.index, consumer); } context.deviceContext->state->offerConsumers.clear(); + context.deviceContext->quotaEvaluator->handleExpired(); context.deviceContext->quotaEvaluator->dispose(task->id.index); task->running = false; ZoneScopedN("run_completion"); @@ -575,6 +576,7 @@ bool DataProcessingDevice::ConditionalRun() run_completion(&handle, 0); #endif } else { + mDataProcessorContexes.at(0).deviceContext->quotaEvaluator->handleExpired(); mWasActive = false; } } else { diff --git a/Framework/Core/src/WSDriverClient.cxx b/Framework/Core/src/WSDriverClient.cxx index 1b48cc40ceed3..1d2dd7b6e39c1 100644 --- a/Framework/Core/src/WSDriverClient.cxx +++ b/Framework/Core/src/WSDriverClient.cxx @@ -104,7 +104,7 @@ void on_connect(uv_connect_t* connection, int status) offer.cpu = 0; offer.memory = 0; offer.sharedMemory = offerSize * 1000000; - offer.runtime = -1; + offer.runtime = 60000; offer.user = -1; offer.valid = true; From e895b3be450917214570d1937bb416e28783ce65 Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Fri, 2 Jul 2021 15:11:26 +0200 Subject: [PATCH 072/314] Fix division by zero in MFT TrackFitter This is avoiding potential division-by-zero exceptions (seen on MacOS) by replacing the division with a signum operation. --- Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx b/Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx index 47773da5fe11d..1c911a0245118 100644 --- a/Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx +++ b/Detectors/ITSMFT/MFT/tracking/src/TrackFitter.cxx @@ -210,7 +210,11 @@ bool TrackFitter::propagateToNextClusterWithMCS(TrackLTF& track, double z) } } - int direction = (newLayerID - startingLayerID) / std::abs(newLayerID - startingLayerID); + //https://stackoverflow.com/questions/1903954/is-there-a-standard-sign-function-signum-sgn-in-c-c + auto signum = [](auto a) { + return (0 < a) - (a < 0); + }; + int direction = signum(newLayerID - startingLayerID); // takes values +1, 0, -1 auto currentLayer = startingLayerID; if (mVerbose) { From eafba547a1d3ee378b0a074e3031414c88832ec6 Mon Sep 17 00:00:00 2001 From: Anton Alkin Date: Sun, 4 Jul 2021 10:22:47 +0200 Subject: [PATCH 073/314] [O2-2424] DPL Analysis: Rework slicing algorithm for merged AODs (#6557) * Rework slicing algorithm for merged AODs solving O2-2424 --- .../Core/include/Framework/AnalysisTask.h | 35 +-------- Framework/Core/include/Framework/Kernels.h | 77 ++++++++++--------- Framework/Core/test/test_GroupSlicer.cxx | 2 +- Framework/Core/test/test_Kernels.cxx | 2 +- 4 files changed, 46 insertions(+), 70 deletions(-) diff --git a/Framework/Core/include/Framework/AnalysisTask.h b/Framework/Core/include/Framework/AnalysisTask.h index d9621347cdaba..e9b4d9d17ec7d 100644 --- a/Framework/Core/include/Framework/AnalysisTask.h +++ b/Framework/Core/include/Framework/AnalysisTask.h @@ -262,23 +262,6 @@ struct AnalysisDataProcessorBuilder { } } - template - auto changeShifts() - { - constexpr auto index = framework::has_type_at_v(associated_pack_t{}); - if (unassignedGroups[index] > 0) { - uint64_t pos; - if constexpr (soa::is_soa_filtered_t>::value) { - pos = (*groupSelection)[position]; - } else { - pos = position; - } - if ((idValues[index])[pos] < 0) { - ++shifts[index]; - } - } - } - GroupSlicerIterator(G& gt, std::tuple& at) : mAt{&at}, mGroupingElement{gt.begin()}, @@ -299,14 +282,12 @@ struct AnalysisDataProcessorBuilder { x.asArrowTable(), static_cast(gt.tableSize()), &groups[index], - &idValues[index], &offsets[index]); if (result.ok() == false) { throw runtime_error("Cannot split collection"); } - unassignedGroups[index] = std::count_if(idValues[index].begin(), idValues[index].end(), [](auto&& x) { return x < 0; }); - if ((groups[index].size() - unassignedGroups[index]) > gt.tableSize()) { - throw runtime_error_f("Splitting collection resulted in a larger group number (%d, %d of them unassigned) than there is rows in the grouping table (%d).", groups[index].size(), unassignedGroups[index], gt.tableSize()); + if (groups[index].size() > gt.tableSize()) { + throw runtime_error_f("Splitting collection resulted in a larger group number (%d) than there is rows in the grouping table (%d).", groups[index].size(), gt.tableSize()); }; } }; @@ -331,8 +312,6 @@ struct AnalysisDataProcessorBuilder { (extractor(x), ...); }, at); - - (changeShifts(), ...); } template @@ -410,12 +389,6 @@ struct AnalysisDataProcessorBuilder { } else { pos = position; } - if (unassignedGroups[index] > 0) { - if ((idValues[index])[pos + shifts[index]] < 0) { - ++shifts[index]; - } - pos += shifts[index]; - } if constexpr (soa::is_soa_filtered_t>::value) { auto groupedElementsTable = arrow::util::get>(((groups[index])[pos]).value); @@ -446,14 +419,10 @@ struct AnalysisDataProcessorBuilder { typename grouping_t::iterator mGroupingElement; uint64_t position = 0; soa::SelectionVector const* groupSelection = nullptr; - std::array, sizeof...(A)> groups; - std::array, sizeof...(A)> idValues; std::array, sizeof...(A)> offsets; std::array selections; std::array starts; - std::array unassignedGroups{0}; - std::array shifts{0}; }; GroupSlicerIterator& begin() diff --git a/Framework/Core/include/Framework/Kernels.h b/Framework/Core/include/Framework/Kernels.h index 475fcb641d2e6..2a3b989241724 100644 --- a/Framework/Core/include/Framework/Kernels.h +++ b/Framework/Core/include/Framework/Kernels.h @@ -30,12 +30,14 @@ namespace o2::framework /// @a offset the offset in the original table at which the corresponding /// slice was split. template -auto sliceByColumn(char const* key, - std::shared_ptr const& input, - T fullSize, - std::vector* slices, - std::vector* vals = nullptr, - std::vector* offsets = nullptr) +auto sliceByColumn( + char const* key, + std::shared_ptr const& input, + T fullSize, + std::vector* slices, + std::vector* offsets = nullptr, + std::vector* unassignedSlices = nullptr, + std::vector* unassignedOffsets = nullptr) { arrow::Datum value_counts; auto options = arrow::compute::CountOptions::Defaults(); @@ -47,53 +49,58 @@ auto sliceByColumn(char const* key, auto counts = static_cast>(pair.field(1)->data()); // create slices and offsets - auto offset = 0; + uint64_t offset = 0; + uint64_t unassignedOffset = 0; auto count = 0; - auto size = values.length(); - if (vals != nullptr) { - for (auto i = 0; i < size; ++i) { - vals->push_back(values.Value(i)); - } - } - auto makeSlice = [&](T count) { - slices->emplace_back(arrow::Datum{input->Slice(offset, count)}); + auto makeSlice = [&](uint64_t offset_, T count_) { + slices->emplace_back(arrow::Datum{input->Slice(offset_, count_)}); if (offsets) { - offsets->emplace_back(offset); + offsets->emplace_back(offset_); } }; - auto current = 0; - auto v = values.Value(0); - while (v - current >= 1) { - makeSlice(0); - ++current; - } + auto makeUnassignedSlice = [&](uint64_t offset_, T count_) { + if (unassignedSlices) { + unassignedSlices->emplace_back(arrow::Datum{input->Slice(offset_, count_)}); + } + if (unassignedOffsets) { + unassignedOffsets->emplace_back(offset_); + } + }; - for (auto r = 0; r < size - 1; ++r) { - count = counts.Value(r); - makeSlice(count); - offset += count; - auto nextValue = values.Value(r + 1); - auto value = values.Value(r); - while (nextValue - value > 1) { - makeSlice(0); - ++value; + auto v = 0; + auto vprev = v; + auto nzeros = 0; + + for (auto i = 0; i < size; ++i) { + count = counts.Value(i); + if (v >= 0) { + vprev = v; + } + v = values.Value(i); + if (v < 0) { + makeUnassignedSlice(offset, count); + offset += count; + continue; } + nzeros = v - vprev - ((i == 0) ? 0 : 1); + for (auto z = 0; z < nzeros; ++z) { + makeSlice(offset, 0); + } + makeSlice(offset, count); + offset += count; } - makeSlice(counts.Value(size - 1)); - offset += counts.Value(size - 1); if (values.Value(size - 1) < fullSize - 1) { for (auto v = values.Value(size - 1) + 1; v < fullSize; ++v) { - makeSlice(0); + makeSlice(offset, 0); } } return arrow::Status::OK(); } - } // namespace o2::framework #endif // O2_FRAMEWORK_KERNELS_H_ diff --git a/Framework/Core/test/test_GroupSlicer.cxx b/Framework/Core/test/test_GroupSlicer.cxx index 12855c752b529..f3b753c7eb0ec 100644 --- a/Framework/Core/test/test_GroupSlicer.cxx +++ b/Framework/Core/test/test_GroupSlicer.cxx @@ -367,7 +367,7 @@ BOOST_AUTO_TEST_CASE(ArrowDirectSlicing) std::vector slices; std::vector offsts; - auto status = sliceByColumn("fID", b_e.asArrowTable(), 20, &slices, nullptr, &offsts); + auto status = sliceByColumn("fID", b_e.asArrowTable(), 20, &slices, &offsts); for (auto i = 0u; i < 5; ++i) { auto tbl = arrow::util::get>(slices[i].value); auto ca = tbl->GetColumnByName("fArr"); diff --git a/Framework/Core/test/test_Kernels.cxx b/Framework/Core/test/test_Kernels.cxx index 68cee1136534c..75bef63c6ad8e 100644 --- a/Framework/Core/test/test_Kernels.cxx +++ b/Framework/Core/test/test_Kernels.cxx @@ -70,7 +70,7 @@ BOOST_AUTO_TEST_CASE(TestSlicingFramework) std::vector offsets; std::vector slices; - auto status = sliceByColumn("x", table, 12, &slices, nullptr, &offsets); + auto status = sliceByColumn("x", table, 12, &slices, &offsets); BOOST_REQUIRE(status.ok()); BOOST_REQUIRE_EQUAL(slices.size(), 12); std::array sizes{0, 4, 1, 0, 1, 2, 0, 0, 0, 0, 0, 0}; From aa4631be0a4a2fcd7d25459200997cd5da53e305 Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Fri, 2 Jul 2021 15:38:03 +0200 Subject: [PATCH 074/314] AOD conversion: Correct indexing of MCparticle to MCCollision MCparticles referred to the original eventIDs from the Geant transport, whereas they should refer to the MCcollision AOD table entry. Thanks to Nazar for discussions. --- .../AODProducerWorkflowSpec.h | 2 +- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 187 +++++++++--------- 2 files changed, 97 insertions(+), 92 deletions(-) diff --git a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h index 86ab7464c365f..6e38c9593727f 100644 --- a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h +++ b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h @@ -242,7 +242,7 @@ class AODProducerWorkflowDPL : public Task gsl::span& mcTruthITS, std::vector& isStoredITS, gsl::span& mcTruthMFT, std::vector& isStoredMFT, gsl::span& mcTruthTPC, std::vector& isStoredTPC, - TripletsMap_t& toStore); + TripletsMap_t& toStore, std::vector> const& mccolidtoeventsource); }; /// create a processor spec diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index b7765e82cc7b4..2151a2b4f4209 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -199,7 +199,7 @@ void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& gsl::span& mcTruthITS, std::vector& isStoredITS, gsl::span& mcTruthMFT, std::vector& isStoredMFT, gsl::span& mcTruthTPC, std::vector& isStoredTPC, - TripletsMap_t& toStore) + TripletsMap_t& toStore, std::vector> const& mccolid_to_eventandsource) { // mark reconstructed MC particles to store them into the table for (int i = 0; i < mcTruthITS.size(); i++) { @@ -233,105 +233,105 @@ void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& toStore[Triplet_t(source, event, particle)] = 1; } int tableIndex = 1; - for (int source = 0; source < mcReader.getNSources(); source++) { - for (int event = 0; event < mcReader.getNEvents(source); event++) { - std::vector const& mcParticles = mcReader.getTracks(source, event); - // mark tracks to be stored per event - // loop over stack of MC particles from end to beginning: daughters are stored after mothers - if (mRecoOnly) { - for (int particle = mcParticles.size() - 1; particle >= 0; particle--) { - int mother0 = mcParticles[particle].getMotherTrackId(); - if (mother0 == -1) { - toStore[Triplet_t(source, event, particle)] = 1; - } - if (toStore.find(Triplet_t(source, event, particle)) == toStore.end()) { - continue; - } - if (mother0 != -1) { - toStore[Triplet_t(source, event, mother0)] = 1; - } - int mother1 = mcParticles[particle].getSecondMotherTrackId(); - if (mother1 != -1) { - toStore[Triplet_t(source, particle, mother1)] = 1; - } - int daughter0 = mcParticles[particle].getFirstDaughterTrackId(); - if (daughter0 != -1) { - toStore[Triplet_t(source, event, daughter0)] = 1; - } - int daughterL = mcParticles[particle].getLastDaughterTrackId(); - if (daughterL != -1) { - toStore[Triplet_t(source, event, daughterL)] = 1; - } - } - // enumerate reconstructed mc particles and their relatives to get mother/daughter relations - for (int particle = 0; particle < mcParticles.size(); particle++) { - auto mapItem = toStore.find(Triplet_t(source, event, particle)); - if (mapItem != toStore.end()) { - mapItem->second = tableIndex - 1; - tableIndex++; - } - } - } - // if all mc particles are stored, all mc particles will be enumerated - if (!mRecoOnly) { - for (int particle = 0; particle < mcParticles.size(); particle++) { - toStore[Triplet_t(source, event, particle)] = tableIndex - 1; - tableIndex++; + for (int mccolid = 0; mccolid < mccolid_to_eventandsource.size(); ++mccolid) { + auto event = mccolid_to_eventandsource[mccolid].first; + auto source = mccolid_to_eventandsource[mccolid].second; + std::vector const& mcParticles = mcReader.getTracks(source, event); + // mark tracks to be stored per event + // loop over stack of MC particles from end to beginning: daughters are stored after mothers + if (mRecoOnly) { + for (int particle = mcParticles.size() - 1; particle >= 0; particle--) { + int mother0 = mcParticles[particle].getMotherTrackId(); + if (mother0 == -1) { + toStore[Triplet_t(source, event, particle)] = 1; } - } - // fill survived mc tracks into the table - for (int particle = 0; particle < mcParticles.size(); particle++) { if (toStore.find(Triplet_t(source, event, particle)) == toStore.end()) { continue; } - int statusCode = 0; - uint8_t flags = 0; - float weight = 0.f; - int mcMother0 = mcParticles[particle].getMotherTrackId(); - auto item = toStore.find(Triplet_t(source, event, mcMother0)); - int mother0 = -1; - if (item != toStore.end()) { - mother0 = item->second; + if (mother0 != -1) { + toStore[Triplet_t(source, event, mother0)] = 1; } - int mcMother1 = mcParticles[particle].getSecondMotherTrackId(); - int mother1 = -1; - item = toStore.find(Triplet_t(source, event, mcMother1)); - if (item != toStore.end()) { - mother1 = item->second; + int mother1 = mcParticles[particle].getSecondMotherTrackId(); + if (mother1 != -1) { + toStore[Triplet_t(source, particle, mother1)] = 1; } - int mcDaughter0 = mcParticles[particle].getFirstDaughterTrackId(); - int daughter0 = -1; - item = toStore.find(Triplet_t(source, event, mcDaughter0)); - if (item != toStore.end()) { - daughter0 = item->second; + int daughter0 = mcParticles[particle].getFirstDaughterTrackId(); + if (daughter0 != -1) { + toStore[Triplet_t(source, event, daughter0)] = 1; } - int mcDaughterL = mcParticles[particle].getLastDaughterTrackId(); - int daughterL = -1; - item = toStore.find(Triplet_t(source, event, mcDaughterL)); - if (item != toStore.end()) { - daughterL = item->second; + int daughterL = mcParticles[particle].getLastDaughterTrackId(); + if (daughterL != -1) { + toStore[Triplet_t(source, event, daughterL)] = 1; + } + } + // enumerate reconstructed mc particles and their relatives to get mother/daughter relations + for (int particle = 0; particle < mcParticles.size(); particle++) { + auto mapItem = toStore.find(Triplet_t(source, event, particle)); + if (mapItem != toStore.end()) { + mapItem->second = tableIndex - 1; + tableIndex++; } - mcParticlesCursor(0, - event, - mcParticles[particle].GetPdgCode(), - statusCode, - flags, - mother0, - mother1, - daughter0, - daughterL, - truncateFloatFraction(weight, mMcParticleW), - truncateFloatFraction((float)mcParticles[particle].Px(), mMcParticleMom), - truncateFloatFraction((float)mcParticles[particle].Py(), mMcParticleMom), - truncateFloatFraction((float)mcParticles[particle].Pz(), mMcParticleMom), - truncateFloatFraction((float)mcParticles[particle].GetEnergy(), mMcParticleMom), - truncateFloatFraction((float)mcParticles[particle].Vx(), mMcParticlePos), - truncateFloatFraction((float)mcParticles[particle].Vy(), mMcParticlePos), - truncateFloatFraction((float)mcParticles[particle].Vz(), mMcParticlePos), - truncateFloatFraction((float)mcParticles[particle].T(), mMcParticlePos)); } - mcReader.releaseTracksForSourceAndEvent(source, event); } + // if all mc particles are stored, all mc particles will be enumerated + if (!mRecoOnly) { + for (int particle = 0; particle < mcParticles.size(); particle++) { + toStore[Triplet_t(source, event, particle)] = tableIndex - 1; + tableIndex++; + } + } + // fill survived mc tracks into the table + for (int particle = 0; particle < mcParticles.size(); particle++) { + if (toStore.find(Triplet_t(source, event, particle)) == toStore.end()) { + continue; + } + int statusCode = 0; + uint8_t flags = 0; + float weight = 0.f; + int mcMother0 = mcParticles[particle].getMotherTrackId(); + auto item = toStore.find(Triplet_t(source, event, mcMother0)); + int mother0 = -1; + if (item != toStore.end()) { + mother0 = item->second; + } + int mcMother1 = mcParticles[particle].getSecondMotherTrackId(); + int mother1 = -1; + item = toStore.find(Triplet_t(source, event, mcMother1)); + if (item != toStore.end()) { + mother1 = item->second; + } + int mcDaughter0 = mcParticles[particle].getFirstDaughterTrackId(); + int daughter0 = -1; + item = toStore.find(Triplet_t(source, event, mcDaughter0)); + if (item != toStore.end()) { + daughter0 = item->second; + } + int mcDaughterL = mcParticles[particle].getLastDaughterTrackId(); + int daughterL = -1; + item = toStore.find(Triplet_t(source, event, mcDaughterL)); + if (item != toStore.end()) { + daughterL = item->second; + } + mcParticlesCursor(0, + mccolid, + mcParticles[particle].GetPdgCode(), + statusCode, + flags, + mother0, + mother1, + daughter0, + daughterL, + truncateFloatFraction(weight, mMcParticleW), + truncateFloatFraction((float)mcParticles[particle].Px(), mMcParticleMom), + truncateFloatFraction((float)mcParticles[particle].Py(), mMcParticleMom), + truncateFloatFraction((float)mcParticles[particle].Pz(), mMcParticleMom), + truncateFloatFraction((float)mcParticles[particle].GetEnergy(), mMcParticleMom), + truncateFloatFraction((float)mcParticles[particle].Vx(), mMcParticlePos), + truncateFloatFraction((float)mcParticles[particle].Vy(), mMcParticlePos), + truncateFloatFraction((float)mcParticles[particle].Vz(), mMcParticlePos), + truncateFloatFraction((float)mcParticles[particle].T(), mMcParticlePos)); + } + mcReader.releaseTracksForSourceAndEvent(source, event); } } @@ -557,9 +557,13 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) dummyTime); // TODO: figure out collision weight + // keep track event/source id for each mc-collision + std::vector> mccolid_to_eventandsource; + float mcColWeight = 1.; // filling mcCollision table int index = 0; + int mccolindex = 0; for (auto& rec : mcRecords) { auto time = rec.getTimeNS(); uint64_t globalBC = rec.toLong(); @@ -587,6 +591,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) truncateFloatFraction(time, mCollisionPosition), truncateFloatFraction(mcColWeight, mCollisionPosition), header.GetB()); + mccolid_to_eventandsource.emplace_back(std::pair(eventID, sourceID)); } index++; } @@ -890,7 +895,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) tracksITSMCTruth, isStoredITS, tracksMFTMCTruth, isStoredMFT, tracksTPCMCTruth, isStoredTPC, - toStore); + toStore, mccolid_to_eventandsource); isStoredITS.clear(); isStoredMFT.clear(); From fab878fa8f968dbf6ce955f7dc4a190b60bfeffa Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Wed, 30 Jun 2021 14:28:13 +0200 Subject: [PATCH 075/314] DPL: export environment variables when dumping DDS config. --- Framework/Core/src/DDSConfigHelpers.cxx | 7 +++++++ Framework/Core/test/test_FrameworkDataFlowToDDS.cxx | 8 ++++---- 2 files changed, 11 insertions(+), 4 deletions(-) diff --git a/Framework/Core/src/DDSConfigHelpers.cxx b/Framework/Core/src/DDSConfigHelpers.cxx index e016c125455ef..2b78d9e0205cc 100644 --- a/Framework/Core/src/DDSConfigHelpers.cxx +++ b/Framework/Core/src/DDSConfigHelpers.cxx @@ -50,6 +50,13 @@ void dumpDeviceSpec2DDS(std::ostream& out, out << " " << R"()"; out << replaceFirstOccurrence(commandInfo.command, "--dds", "--dump") << " | "; + for (size_t ei = 0; ei < execution.environ.size(); ++ei) { + out << fmt::format(execution.environ[ei], + fmt::arg("timeslice0", spec.inputTimesliceId), + fmt::arg("timeslice1", spec.inputTimesliceId + 1), + fmt::arg("timeslice4", spec.inputTimesliceId + 4)) + << " "; + } std::string accumulatedChannelPrefix; char* s = strdup(execution.args[0]); out << basename(s) << " "; diff --git a/Framework/Core/test/test_FrameworkDataFlowToDDS.cxx b/Framework/Core/test/test_FrameworkDataFlowToDDS.cxx index dff84f61493c7..080935a247c95 100644 --- a/Framework/Core/test/test_FrameworkDataFlowToDDS.cxx +++ b/Framework/Core/test/test_FrameworkDataFlowToDDS.cxx @@ -115,16 +115,16 @@ BOOST_AUTO_TEST_CASE(TestDDS) dumpDeviceSpec2DDS(ss, devices, executions, command); auto expected = R"EXPECTED( - foo | foo --id A --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --channel-config "name=from_A_to_B,type=push,method=bind,address=ipc://@localhostworkflow-id_22000,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_A_to_C,type=push,method=bind,address=ipc://@localhostworkflow-id_22001,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds + foo | LD_PRELOAD=libSegFault.so SEGFAULT_SIGNALS="all" foo --id A --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --channel-config "name=from_A_to_B,type=push,method=bind,address=ipc://@localhostworkflow-id_22000,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_A_to_C,type=push,method=bind,address=ipc://@localhostworkflow-id_22001,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds - foo | foo --id B --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --channel-config "name=from_B_to_D,type=push,method=bind,address=ipc://@localhostworkflow-id_22002,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_A_to_B,type=pull,method=connect,address=ipc://@localhostworkflow-id_22000,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds + foo | LD_PRELOAD=libSegFault.so SEGFAULT_SIGNALS="all" foo --id B --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --channel-config "name=from_B_to_D,type=push,method=bind,address=ipc://@localhostworkflow-id_22002,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_A_to_B,type=pull,method=connect,address=ipc://@localhostworkflow-id_22000,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds - foo | foo --id C --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --channel-config "name=from_C_to_D,type=push,method=bind,address=ipc://@localhostworkflow-id_22003,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_A_to_C,type=pull,method=connect,address=ipc://@localhostworkflow-id_22001,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds + foo | LD_PRELOAD=libSegFault.so SEGFAULT_SIGNALS="all" foo --id C --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --channel-config "name=from_C_to_D,type=push,method=bind,address=ipc://@localhostworkflow-id_22003,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_A_to_C,type=pull,method=connect,address=ipc://@localhostworkflow-id_22001,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds - foo | foo --id D --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --a-param 1 --b-param "" --c-param "foo;bar" --channel-config "name=from_B_to_D,type=pull,method=connect,address=ipc://@localhostworkflow-id_22002,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_C_to_D,type=pull,method=connect,address=ipc://@localhostworkflow-id_22003,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds + foo | LD_PRELOAD=libSegFault.so SEGFAULT_SIGNALS="all" foo --id D --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --a-param 1 --b-param "" --c-param "foo;bar" --channel-config "name=from_B_to_D,type=pull,method=connect,address=ipc://@localhostworkflow-id_22002,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_C_to_D,type=pull,method=connect,address=ipc://@localhostworkflow-id_22003,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds From 09705420f923c1666660ad5f579f02d2b0425cd6 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Sun, 4 Jul 2021 22:17:52 +0200 Subject: [PATCH 076/314] DPL: protect recursive preloading of libSegFault.so --- Framework/Core/src/DeviceSpecHelpers.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Framework/Core/src/DeviceSpecHelpers.cxx b/Framework/Core/src/DeviceSpecHelpers.cxx index bc55d08cec09a..f42814ba2607e 100644 --- a/Framework/Core/src/DeviceSpecHelpers.cxx +++ b/Framework/Core/src/DeviceSpecHelpers.cxx @@ -1084,7 +1084,7 @@ void DeviceSpecHelpers::prepareArguments(bool defaultQuiet, bool defaultStopped, /// Add libSegFault to the stack if provided. if (varmap.count("stacktrace-on-signal") && varmap["stacktrace-on-signal"].as() != "none") { char const* preload = getenv("LD_PRELOAD"); - if (preload == nullptr) { + if (preload == nullptr || strcmp(preload, "libSegFault.so") == 0) { tmpEnv.push_back("LD_PRELOAD=libSegFault.so"); } else { tmpEnv.push_back(fmt::format("LD_PRELOAD=\"{}:libSegFault.so\"", preload)); From 131b16d5012fee8b86886eca539b0833a045f730 Mon Sep 17 00:00:00 2001 From: Matthias Richter Date: Fri, 2 Jul 2021 11:54:57 +0200 Subject: [PATCH 077/314] Do not consider type {DPL/EOS} as unknown in the raw proxy DPL output proxy automatically add message of type {DPL/EOS} to forward end-of-stream on all output channels. If another DPL workflow connects via raw proxy, it handles the channel info headers and can ignore the actual message. Also adding an option to test_ExternalFairMQDeviceWorkflow which allows to drop the subscriber part of the test and instead connect the raw proxy. --- Framework/Core/src/ExternalFairMQDeviceProxy.cxx | 2 +- Framework/Core/test/test_ExternalFairMQDeviceWorkflow.cxx | 8 ++++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/Framework/Core/src/ExternalFairMQDeviceProxy.cxx b/Framework/Core/src/ExternalFairMQDeviceProxy.cxx index 10775316eb52f..be34bde5aa2c1 100644 --- a/Framework/Core/src/ExternalFairMQDeviceProxy.cxx +++ b/Framework/Core/src/ExternalFairMQDeviceProxy.cxx @@ -277,7 +277,7 @@ InjectorFunction dplModelAdaptor(std::vector const& filterSpecs, boo break; } } - if (indexDone == false) { + if (indexDone == false && !DataSpecUtils::match(query, "DPL", "EOS", 0)) { unmatchedDescriptions.emplace_back(DataSpecUtils::describe(query)); } } diff --git a/Framework/Core/test/test_ExternalFairMQDeviceWorkflow.cxx b/Framework/Core/test/test_ExternalFairMQDeviceWorkflow.cxx index 5623ea5cb65a9..a88f59ddb3498 100644 --- a/Framework/Core/test/test_ExternalFairMQDeviceWorkflow.cxx +++ b/Framework/Core/test/test_ExternalFairMQDeviceWorkflow.cxx @@ -32,6 +32,9 @@ void customize(std::vector& workflowOptions) workflowOptions.push_back( ConfigParamSpec{ "number-of-events,n", VariantType::Int, 10, {"number of events to process"}}); + workflowOptions.push_back( + ConfigParamSpec{ + "output-proxy-only", VariantType::Bool, false, {"create only the workflow up to output proxy"}}); } #include "Framework/runDataProcessing.h" @@ -201,5 +204,10 @@ std::vector defineDataProcessing(ConfigContext const& config) channelConfig.c_str(), converter)); + if (config.options().get("output-proxy-only")) { + // remove the input proxy and checker from the workflow + workflow.pop_back(); + workflow.pop_back(); + } return workflow; } From 9307b2cdd15168f52654ae41031a618709ce5e09 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Mon, 5 Jul 2021 10:09:22 +0200 Subject: [PATCH 078/314] DPL Analysis: demote message to info --- Framework/Core/src/ArrowSupport.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Framework/Core/src/ArrowSupport.cxx b/Framework/Core/src/ArrowSupport.cxx index 848ab75b0e44c..b41a4d0bf0448 100644 --- a/Framework/Core/src/ArrowSupport.cxx +++ b/Framework/Core/src/ArrowSupport.cxx @@ -236,7 +236,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() for (size_t di = 0; di < specs.size(); di++) { if (availableSharedMemory < possibleOffer) { if (lowSharedMemoryCount == 0) { - LOGP(ERROR, "We do not have enough shared memory ({}MB) to offer {}MB", availableSharedMemory, possibleOffer); + LOGP(INFO, "We do not have enough shared memory ({}MB) to offer {}MB", availableSharedMemory, possibleOffer); } lowSharedMemoryCount++; enoughSharedMemoryCount = 0; From 9ff61f0c0de9e930e66620a22789e2f2a07e2398 Mon Sep 17 00:00:00 2001 From: shahoian Date: Mon, 5 Jul 2021 10:54:19 +0200 Subject: [PATCH 079/314] Allow passing detector mask in dummy alignment upload macro --- macro/UploadDummyAlignment.C | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/macro/UploadDummyAlignment.C b/macro/UploadDummyAlignment.C index 491372ca5494a..d7b29c2a4ee44 100644 --- a/macro/UploadDummyAlignment.C +++ b/macro/UploadDummyAlignment.C @@ -12,9 +12,9 @@ using DetID = o2::detectors::DetID; // upload dummy alignment objects to CCDB -void UploadDummyAlignment(const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080", long tmin = 0, long tmax = -1) +void UploadDummyAlignment(const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080", long tmin = 0, long tmax = -1, DetID::mask_t msk = DetID::FullMask) { - DetID::mask_t dets = DetID::FullMask & (~DetID::getMask(DetID::CTP)); + DetID::mask_t dets = msk & DetID::FullMask & (~DetID::getMask(DetID::CTP)); LOG(INFO) << "Mask = " << dets; o2::ccdb::CcdbApi api; api.init(ccdbHost.c_str()); // or http://localhost:8080 for a local installation From 2b105c0838fd1631b1c0ffe36efafbab8b257fd9 Mon Sep 17 00:00:00 2001 From: shahoian Date: Sat, 3 Jul 2021 00:00:56 +0200 Subject: [PATCH 080/314] fix in RDH update for CRU det. in trig. mode --- Detectors/Raw/src/RawFileWriter.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Detectors/Raw/src/RawFileWriter.cxx b/Detectors/Raw/src/RawFileWriter.cxx index 528ff51c44ddc..0d84d6a02a72e 100644 --- a/Detectors/Raw/src/RawFileWriter.cxx +++ b/Detectors/Raw/src/RawFileWriter.cxx @@ -629,10 +629,10 @@ void RawFileWriter::LinkData::fillEmptyHBHs(const IR& ir, bool dataAdded) for (const auto& irdummy : irw) { if (writer->mDontFillEmptyHBF && writer->mHBFUtils.getTFandHBinTF(irdummy).second != 0 && - (!dataAdded || irdummy < ir)) { + (!dataAdded || irdummy.orbit < ir.orbit)) { // even if requested, we skip empty HBF filling only if // 1) we are not at the new TF start - // 2) method was called from addData and the current IR is the one for which it was called (then it is not empty HB/trigger!) + // 2) method was called from addData and the current IR orbit is the one for which it was called (then it is not empty HB/trigger!) continue; } if (writer->mVerbosity > 2) { From 70742b01e74d69bd976a24e505100858c75c846e Mon Sep 17 00:00:00 2001 From: Mario Sitta Date: Mon, 5 Jul 2021 10:18:42 +0200 Subject: [PATCH 081/314] Fixing typo on MB support shelf name --- Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx b/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx index 64fe310fbeb5f..affe3eefaef9b 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/V3Services.cxx @@ -1803,7 +1803,7 @@ void V3Services::mbEndWheelSideC(const Int_t iLay, TGeoVolume* mother, const TGe ringUpperVol->SetFillColor(kBlue); ringUpperVol->SetLineColor(kBlue); - TGeoVolume* shelfVol = new TGeoVolume(Form("OBEndWheelAShelf%d", nLay), shelfSh, medCarbon); + TGeoVolume* shelfVol = new TGeoVolume(Form("OBEndWheelCShelf%d", nLay), shelfSh, medCarbon); shelfVol->SetFillColor(kBlue); shelfVol->SetLineColor(kBlue); From cdb38362cf390c415713e52d8b337877b6eaea27 Mon Sep 17 00:00:00 2001 From: Thomas Klemenz Date: Tue, 23 Feb 2021 13:56:29 +0100 Subject: [PATCH 082/314] TPC CDBInterface: pick specific file from CCDB with timestamp and meta data filter + newZSCalib helper function for TPC QC --- CCDB/include/CCDB/BasicCCDBManager.h | 10 ++++++ .../TPC/base/include/TPCBase/CDBInterface.h | 36 +++++++++++++++---- Detectors/TPC/base/src/CDBInterface.cxx | 12 +++---- Detectors/TPC/qc/include/TPCQC/Helpers.h | 8 +++++ Detectors/TPC/qc/src/Helpers.cxx | 25 +++++++++++++ Detectors/TPC/qc/src/TPCQCLinkDef.h | 1 + 6 files changed, 80 insertions(+), 12 deletions(-) diff --git a/CCDB/include/CCDB/BasicCCDBManager.h b/CCDB/include/CCDB/BasicCCDBManager.h index 28d74191d013f..f870100bd7320 100644 --- a/CCDB/include/CCDB/BasicCCDBManager.h +++ b/CCDB/include/CCDB/BasicCCDBManager.h @@ -74,6 +74,15 @@ class CCDBManagerInstance template T* getForTimeStamp(std::string const& path, long timestamp); + /// retrieve an object of type T from CCDB as stored under path, timestamp and metaData + template + T* getSpecific(std::string const& path, long timestamp = -1, std::map metaData = std::map()) + { + // TODO: add some error info/handling when failing + mMetaData = metaData; + return getForTimeStamp(path, timestamp); + } + /// retrieve an object of type T from CCDB as stored under path; will use the timestamp member template T* get(std::string const& path) @@ -167,6 +176,7 @@ T* CCDBManagerInstance::getForTimeStamp(std::string const& path, long timestamp) ptr = reinterpret_cast(cached.objPtr.get()); } mHeaders.clear(); + mMetaData.clear(); return ptr; } diff --git a/Detectors/TPC/base/include/TPCBase/CDBInterface.h b/Detectors/TPC/base/include/TPCBase/CDBInterface.h index f72b781ac5f3b..aaa972894ea53 100644 --- a/Detectors/TPC/base/include/TPCBase/CDBInterface.h +++ b/Detectors/TPC/base/include/TPCBase/CDBInterface.h @@ -122,12 +122,6 @@ class CDBInterface /// \return gain map object const CalPad& getGainMap(); - /// Return any CalPad object - /// - /// The function returns the CalPad object stored at the given path in the CCDB - /// \return CalPad object - const CalPad& getCalPad(const std::string_view path); - /// Return the Detector parameters /// /// The function checks if the object is already loaded and returns it @@ -156,6 +150,17 @@ class CDBInterface /// \return GEM parameters const ParameterGEM& getParameterGEM(); + /// Return a CalPad object form the CCDB + /// Deprecated + const CalPad& getCalPad(const std::string_view path); + + /// Return any templated object + /// + /// The function returns the object stored at the given path, timestamp and metaData in the CCDB + /// \return object + template + T& getSpecificObjectFromCDB(const std::string_view path, long timestamp = -1, const std::map& metaData = std::map()); + /// Set noise and pedestal object from file /// /// This assumes that the objects are stored under the name @@ -238,6 +243,25 @@ inline T& CDBInterface::getObjectFromCDB(std::string_view path) return *object; } +/// Get a CalPad object stored in templated formats from the CCDB. +/// @tparam T +/// @param path +/// @param timestamp +/// @param metaData +/// @return The object from the CCDB, ownership is transferred to the caller. +/// @todo Consider removing in favour of calling directly the manager::get method. +template +inline T& CDBInterface::getSpecificObjectFromCDB(std::string_view path, long timestamp, const std::map& metaData) +{ + static auto& cdb = o2::ccdb::BasicCCDBManager::instance(); + auto* object = cdb.getSpecific(path.data(), timestamp, metaData); + return *object; +} + +template CalPad& CDBInterface::getSpecificObjectFromCDB(const std::string_view path, long timestamp, const std::map& metaData); +template std::vector& CDBInterface::getSpecificObjectFromCDB(const std::string_view path, long timestamp, const std::map& metaData); +template std::unordered_map& CDBInterface::getSpecificObjectFromCDB(const std::string_view path, long timestamp, const std::map& metaData); + /// \class CDBStorage /// Simple interface to store TPC CCDB types. Also provide interface functions to upload data from /// a file. diff --git a/Detectors/TPC/base/src/CDBInterface.cxx b/Detectors/TPC/base/src/CDBInterface.cxx index c7c691cfc729d..0405e8a909afc 100644 --- a/Detectors/TPC/base/src/CDBInterface.cxx +++ b/Detectors/TPC/base/src/CDBInterface.cxx @@ -116,12 +116,6 @@ const CalPad& CDBInterface::getGainMap() return *mGainMap; } -//______________________________________________________________________________ -const CalPad& CDBInterface::getCalPad(const std::string_view path) -{ - return getObjectFromCDB(path.data()); -} - //______________________________________________________________________________ const ParameterDetector& CDBInterface::getParameterDetector() { @@ -166,6 +160,12 @@ const ParameterGEM& CDBInterface::getParameterGEM() return getObjectFromCDB(CDBTypeMap.at(CDBType::ParGEM)); } +//______________________________________________________________________________ +const CalPad& CDBInterface::getCalPad(const std::string_view path) +{ + return getSpecificObjectFromCDB(path); +} + //______________________________________________________________________________ void CDBInterface::loadNoiseAndPedestalFromFile() { diff --git a/Detectors/TPC/qc/include/TPCQC/Helpers.h b/Detectors/TPC/qc/include/TPCQC/Helpers.h index 571b3c850c682..509911b816ec4 100644 --- a/Detectors/TPC/qc/include/TPCQC/Helpers.h +++ b/Detectors/TPC/qc/include/TPCQC/Helpers.h @@ -18,6 +18,7 @@ #define AliceO2_TPC_HELPERS_H #include +#include "TPCBase/CalDet.h" class TH1F; class TH2F; @@ -49,6 +50,13 @@ void setStyleHistogram2D(TH2& histo); /// Set nice style for vector of 2D histograms void setStyleHistogram2D(std::vector& histos); +/// Check if at least one pad in refPedestal and pedestal differs by 3*refNoise to see if new ZS calibration data should be uploaded to the FECs. +/// @param refPedestal +/// @param refNoise +/// @param pedestal +/// @return true if refPedestal - pedestal > 3*refNoise on at least one pad +bool newZSCalib(const o2::tpc::CalDet& refPedestal, const o2::tpc::CalDet& refNoise, const o2::tpc::CalDet& pedestal); + } // namespace helpers } // namespace qc } // namespace tpc diff --git a/Detectors/TPC/qc/src/Helpers.cxx b/Detectors/TPC/qc/src/Helpers.cxx index 50f77f60100e7..df2c68e4a54e5 100644 --- a/Detectors/TPC/qc/src/Helpers.cxx +++ b/Detectors/TPC/qc/src/Helpers.cxx @@ -17,6 +17,8 @@ //o2 includes #include "TPCQC/Helpers.h" +#include "TPCBase/Mapper.h" +#include "TPCBase/ROC.h" using namespace o2::tpc::qc; @@ -70,3 +72,26 @@ void helpers::setStyleHistogram2D(std::vector& histos) helpers::setStyleHistogram2D(hist); } } + +//______________________________________________________________________________ +bool helpers::newZSCalib(const o2::tpc::CalDet& refPedestal, const o2::tpc::CalDet& refNoise, const o2::tpc::CalDet& pedestal) +{ + static const o2::tpc::Mapper& mapper = o2::tpc::Mapper::instance(); + + o2::tpc::CalDet diffCalDet = refPedestal - pedestal; + + for (o2::tpc::ROC roc; !roc.looped(); ++roc) { + const int nrows = mapper.getNumberOfRowsROC(roc); + for (int irow = 0; irow < nrows; ++irow) { + const int npads = mapper.getNumberOfPadsInRowROC(roc, irow); + for (int ipad = 0; ipad < npads; ++ipad) { + const auto val = diffCalDet.getValue(roc, irow, ipad); + if (std::abs(val) > 3 * refNoise.getValue(roc, irow, ipad)) { + return true; + } + } + } + } + + return false; +} \ No newline at end of file diff --git a/Detectors/TPC/qc/src/TPCQCLinkDef.h b/Detectors/TPC/qc/src/TPCQCLinkDef.h index c4ca8ff5222e5..09854e9305b20 100644 --- a/Detectors/TPC/qc/src/TPCQCLinkDef.h +++ b/Detectors/TPC/qc/src/TPCQCLinkDef.h @@ -24,5 +24,6 @@ #pragma link C++ function o2::tpc::qc::helpers::makeLogBinning+; #pragma link C++ function o2::tpc::qc::helpers::setStyleHistogram1D+; #pragma link C++ function o2::tpc::qc::helpers::setStyleHistogram2D+; +#pragma link C++ function o2::tpc::qc::helpers::newZSCalib+; #endif From 35d4013e62145f5f59e3a5cc51e74ac3f7397a61 Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Mon, 5 Jul 2021 13:22:12 +0200 Subject: [PATCH 083/314] Enable GRP semaphore by default / automatic removal --- .../DigitizerWorkflow/src/GRPUpdaterSpec.cxx | 26 +++++++++++-------- 1 file changed, 15 insertions(+), 11 deletions(-) diff --git a/Steer/DigitizerWorkflow/src/GRPUpdaterSpec.cxx b/Steer/DigitizerWorkflow/src/GRPUpdaterSpec.cxx index b61d46fc08c53..283592b5c870d 100644 --- a/Steer/DigitizerWorkflow/src/GRPUpdaterSpec.cxx +++ b/Steer/DigitizerWorkflow/src/GRPUpdaterSpec.cxx @@ -61,25 +61,29 @@ class GRPDPLUpdatedTask // (the user enables this via O2_USEGRP_SEMA environment) bool use_sema = false; boost::interprocess::named_semaphore* sem = nullptr; - if (auto semaname = getenv("O2_USEGRP_SEMA")) { - try { - const auto semname = std::filesystem::current_path().string() + mGRPFileName; - std::hash hasher; - const auto semhashedstring = "alice_grp_" + std::to_string(hasher(semname)); - sem = new boost::interprocess::named_semaphore(boost::interprocess::open_or_create_t{}, semhashedstring.c_str(), 1); - } catch (std::exception e) { - LOG(WARN) << "Exception occurred during GRP semaphore setup; Continuing without"; - sem = nullptr; - } + std::string semhashedstring; + try { + const auto semname = std::filesystem::current_path().string() + mGRPFileName; + std::hash hasher; + semhashedstring = "alice_grp_" + std::to_string(hasher(semname)).substr(0, 16); + sem = new boost::interprocess::named_semaphore(boost::interprocess::open_or_create_t{}, semhashedstring.c_str(), 1); + } catch (std::exception e) { + LOG(WARN) << "Could not setup GRP semaphore; Continuing without"; + sem = nullptr; } try { if (sem) { sem->wait(); // wait until we can enter (no one else there) } - auto postSem = [sem] { + auto postSem = [sem, &semhashedstring] { if (sem) { sem->post(); + if (sem->try_wait()) { + // if nobody else is waiting remove the semaphore resource + sem->post(); + boost::interprocess::named_semaphore::remove(semhashedstring.c_str()); + } delete sem; } }; From 4e57361fec6f6124d508a56ff7fa37d63e619c86 Mon Sep 17 00:00:00 2001 From: Anton Alkin Date: Mon, 5 Jul 2021 17:21:21 +0200 Subject: [PATCH 084/314] fix filtered grouping for merged AODs --- Framework/Core/include/Framework/AnalysisTask.h | 6 ++++-- Framework/Core/include/Framework/Kernels.h | 7 +++++-- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/Framework/Core/include/Framework/AnalysisTask.h b/Framework/Core/include/Framework/AnalysisTask.h index e9b4d9d17ec7d..8c74ac4fb2bc8 100644 --- a/Framework/Core/include/Framework/AnalysisTask.h +++ b/Framework/Core/include/Framework/AnalysisTask.h @@ -282,7 +282,8 @@ struct AnalysisDataProcessorBuilder { x.asArrowTable(), static_cast(gt.tableSize()), &groups[index], - &offsets[index]); + &offsets[index], + &sizes[index]); if (result.ok() == false) { throw runtime_error("Cannot split collection"); } @@ -394,7 +395,7 @@ struct AnalysisDataProcessorBuilder { // for each grouping element we need to slice the selection vector auto start_iterator = std::lower_bound(starts[index], selections[index]->end(), (offsets[index])[pos]); - auto stop_iterator = std::lower_bound(start_iterator, selections[index]->end(), (offsets[index])[pos + 1]); + auto stop_iterator = std::lower_bound(start_iterator, selections[index]->end(), (offsets[index])[pos] + (sizes[index])[pos]); starts[index] = stop_iterator; soa::SelectionVector slicedSelection{start_iterator, stop_iterator}; std::transform(slicedSelection.begin(), slicedSelection.end(), slicedSelection.begin(), @@ -421,6 +422,7 @@ struct AnalysisDataProcessorBuilder { soa::SelectionVector const* groupSelection = nullptr; std::array, sizeof...(A)> groups; std::array, sizeof...(A)> offsets; + std::array, sizeof...(A)> sizes; std::array selections; std::array starts; }; diff --git a/Framework/Core/include/Framework/Kernels.h b/Framework/Core/include/Framework/Kernels.h index 2a3b989241724..32c316a13d501 100644 --- a/Framework/Core/include/Framework/Kernels.h +++ b/Framework/Core/include/Framework/Kernels.h @@ -36,6 +36,7 @@ auto sliceByColumn( T fullSize, std::vector* slices, std::vector* offsets = nullptr, + std::vector* sizes = nullptr, std::vector* unassignedSlices = nullptr, std::vector* unassignedOffsets = nullptr) { @@ -50,7 +51,6 @@ auto sliceByColumn( // create slices and offsets uint64_t offset = 0; - uint64_t unassignedOffset = 0; auto count = 0; auto size = values.length(); @@ -59,6 +59,9 @@ auto sliceByColumn( if (offsets) { offsets->emplace_back(offset_); } + if (sizes) { + sizes->emplace_back(count_); + } }; auto makeUnassignedSlice = [&](uint64_t offset_, T count_) { @@ -85,7 +88,7 @@ auto sliceByColumn( offset += count; continue; } - nzeros = v - vprev - ((i == 0) ? 0 : 1); + nzeros = v - vprev - ((i == 0 || slices->empty() == true) ? 0 : 1); for (auto z = 0; z < nzeros; ++z) { makeSlice(offset, 0); } From 2c37d2731970faab98158557e5be7ae22827ce60 Mon Sep 17 00:00:00 2001 From: Sean Date: Tue, 6 Jul 2021 10:38:30 +0200 Subject: [PATCH 085/314] TRD fix for empty frames (#6511) * trd reading empty frames * safter sending of blank frames * ensure empty frame is indeed empty * flexible data description * move TRD eventrecord class to reconstruction dir * remove classdef for EventRecord, and local variables for emptry frames data --- DataFormats/Detectors/TRD/CMakeLists.txt | 1 - Detectors/TRD/reconstruction/CMakeLists.txt | 1 + .../include/TRDReconstruction/CruRawReader.h | 4 +- .../TRDReconstruction/DataReaderTask.h | 9 +- .../include/TRDReconstruction}/EventRecord.h | 13 +- .../TRD/reconstruction/src/CruRawReader.cxx | 51 ++++--- .../TRD/reconstruction/src/DataReader.cxx | 29 ++-- .../TRD/reconstruction/src/DataReaderTask.cxx | 128 ++++++++++-------- .../TRD/reconstruction}/src/EventRecord.cxx | 60 +++++++- 9 files changed, 181 insertions(+), 115 deletions(-) rename {DataFormats/Detectors/TRD/include/DataFormatsTRD => Detectors/TRD/reconstruction/include/TRDReconstruction}/EventRecord.h (90%) rename {DataFormats/Detectors/TRD => Detectors/TRD/reconstruction}/src/EventRecord.cxx (73%) diff --git a/DataFormats/Detectors/TRD/CMakeLists.txt b/DataFormats/Detectors/TRD/CMakeLists.txt index 8a29c4e73e0a7..15151e9542839 100644 --- a/DataFormats/Detectors/TRD/CMakeLists.txt +++ b/DataFormats/Detectors/TRD/CMakeLists.txt @@ -18,7 +18,6 @@ o2_add_library(DataFormatsTRD src/CompressedDigit.cxx src/CTF.cxx src/Digit.cxx - src/EventRecord.cxx PUBLIC_LINK_LIBRARIES O2::CommonDataFormat O2::SimulationDataFormat) o2_target_root_dictionary(DataFormatsTRD diff --git a/Detectors/TRD/reconstruction/CMakeLists.txt b/Detectors/TRD/reconstruction/CMakeLists.txt index 9d6c550590c37..e93ec61dfccde 100644 --- a/Detectors/TRD/reconstruction/CMakeLists.txt +++ b/Detectors/TRD/reconstruction/CMakeLists.txt @@ -19,6 +19,7 @@ o2_add_library(TRDReconstruction src/CompressedRawReader.cxx src/DataReaderTask.cxx src/CruCompressorTask.cxx + src/EventRecord.cxx PUBLIC_LINK_LIBRARIES O2::TRDBase O2::DataFormatsTRD O2::DataFormatsTPC diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h index 73e0b3b574413..672ce436ae583 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h @@ -33,7 +33,7 @@ #include "DataFormatsTRD/Constants.h" #include "TRDBase/Digit.h" #include "CommonDataFormat/InteractionRecord.h" -#include "DataFormatsTRD/EventRecord.h" +#include "TRDReconstruction/EventRecord.h" namespace o2::trd { @@ -92,6 +92,8 @@ class CruRawReader std::vector& getDigits(InteractionRecord& ir) { return mEventRecords.getDigits(ir); }; // std::vector getIR() { return mEventTriggers; } void getParsedObjects(std::vector& tracklets, std::vector& cdigits, std::vector& triggers); + void getParsedObjectsandClear(std::vector& tracklets, std::vector& digits, std::vector& triggers); + void buildDPLOutputs(o2::framework::ProcessingContext& outputs); int getDigitsFound() { return mTotalDigitsFound; } int getTrackletsFound() { return mTotalTrackletsFound; } int sumTrackletsFound() { return mEventRecords.sumTracklets(); } diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h index 27fd10b9eb685..e2fd3c2d9e75c 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h @@ -38,7 +38,7 @@ class DataReaderTask : public Task DataReaderTask(bool compresseddata, bool byteswap, bool verbose, bool headerverbose, bool dataverbose) : mCompressedData(compresseddata), mByteSwap(byteswap), mVerbose(verbose), mHeaderVerbose(headerverbose), mDataVerbose(dataverbose) {} ~DataReaderTask() override = default; void init(InitContext& ic) final; - void sendData(ProcessingContext& pc); + void sendData(ProcessingContext& pc, bool blankframe = false); void run(ProcessingContext& pc) final; private: @@ -47,16 +47,15 @@ class DataReaderTask : public Task // in both cases we pull the data from the vectors build message and pass on. // they will internally produce a vector of digits and a vector tracklets and associated indexing. // TODO templatise this and 2 versions of datareadertask, instantiated with the relevant parser. - std::vector mTracklets; - std::vector mDigits; - std::vector mTriggers; - // std::vector mStats; bool mVerbose{false}; // verbos output general debuggign and info output. bool mDataVerbose{false}; // verbose output of data unpacking bool mHeaderVerbose{false}; // verbose output of headers bool mCompressedData{false}; // are we dealing with the compressed data from the flp (send via option) bool mByteSwap{true}; // whether we are to byteswap the incoming data, mc is not byteswapped, raw data is (too be changed in cru at some point) + // o2::header::DataDescription mDataDesc; // Data description of the incoming data + std::string mDataDesc; + o2::header::DataDescription mUserDataDescription = o2::header::gDataDescriptionInvalid; // alternative user-provided description to pick }; } // namespace o2::trd diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/EventRecord.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/EventRecord.h similarity index 90% rename from DataFormats/Detectors/TRD/include/DataFormatsTRD/EventRecord.h rename to Detectors/TRD/reconstruction/include/TRDReconstruction/EventRecord.h index d31049fb307af..fcfe5b70e40e4 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/EventRecord.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/EventRecord.h @@ -19,6 +19,11 @@ #include "FairLogger.h" #include "DataFormatsTRD/Tracklet64.h" +namespace o2::framework +{ +class ProcessingContext; +} + namespace o2::trd { class Digit; @@ -74,8 +79,6 @@ class EventRecord BCData mBCData; /// orbit and Bunch crossing data of the physics trigger std::vector mDigits{}; /// digit data, for this event std::vector mTracklets{}; /// tracklet data, for this event - - ClassDefNV(EventRecord, 1); }; class EventStorage @@ -92,7 +95,10 @@ class EventStorage void addTracklet(InteractionRecord& ir, Tracklet64& tracklet); void addTracklets(InteractionRecord& ir, std::vector& tracklets); void addTracklets(InteractionRecord& ir, std::vector::iterator& start, std::vector::iterator& end); - void unpackDataForSending(std::vector& triggers, std::vector& tracklets, std::vector& digits); + void unpackData(std::vector& triggers, std::vector& tracklets, std::vector& digits); + void sendData(o2::framework::ProcessingContext& pc); + //this could replace by keeing a running total on addition TODO + void sumTrackletsDigitsTriggers(uint64_t& tracklets, uint64_t& digits, uint64_t& triggers); int sumTracklets(); int sumDigits(); std::vector& getTracklets(InteractionRecord& ir); @@ -104,7 +110,6 @@ class EventStorage //these 2 are hacks to be able to send bak a blank vector if interaction record is not found. std::vector mDummyTracklets; std::vector mDummyDigits; - ClassDefNV(EventStorage, 1); }; std::ostream& operator<<(std::ostream& stream, const EventRecord& trg); diff --git a/Detectors/TRD/reconstruction/src/CruRawReader.cxx b/Detectors/TRD/reconstruction/src/CruRawReader.cxx index ffa7dbf1dd8d5..a3db93731e15f 100644 --- a/Detectors/TRD/reconstruction/src/CruRawReader.cxx +++ b/Detectors/TRD/reconstruction/src/CruRawReader.cxx @@ -23,6 +23,14 @@ #include "TRDReconstruction/TrackletsParser.h" #include "DataFormatsTRD/Constants.h" +#include "Framework/ControlService.h" +#include "Framework/ConfigParamRegistry.h" +#include "Framework/RawDeviceService.h" +#include "Framework/DeviceSpec.h" +#include "Framework/DataSpecUtils.h" +#include "Framework/Output.h" +#include "Framework/InputRecordWalker.h" + #include #include #include @@ -414,32 +422,21 @@ void CruRawReader::getParsedObjects(std::vector& tracklets, std::vec { int digitcountsum = 0; int trackletcountsum = 0; - mEventRecords.unpackDataForSending(triggers, tracklets, digits); - /*for(auto eventrecord: mEventRecords)//loop over triggers incase they have already been done. - { - int digitcount=0; - int trackletcount=0; - int start,end; - LOG(info) << __func__ << " " << tracklets.size() << " " - << cdigits.size()<< " trackletv size:"<< mEventRecords.getTracklets(ir.getBCData()); - for(auto trackletv: mEventStores.getTracklets(ir.getBCData())){ - //loop through the vector of ranges - start=trackletv.getFirstEntry(); - end= start+trackletv.getEntries(); - LOG(info) << "insert tracklets from " << start<< " " << end; - tracklets.insert(tracklets.end(),mEventTracklets.begin()+start, mEventTracklets.begin()+end); - trackletcount+=trackletv.getEntries(); - } - for(auto digitv: mEventStores.getDigits(ir.getBCData())){ - start=digitv.getFirstEntry(); - end= start+digitv.getEntries(); - LOG(info) << "insert digits from " << start<< " " << end; - cdigits.insert(cdigits.end(),mEventCompressedDigits.begin()+start , mEventCompressedDigits.begin()+end); - digitcount+=digitv.getEntries(); - } - triggers.emplace_back(ir.getBCData(),digitcountsum,digitcount,trackletcountsum,trackletcount); - digitcountsum+=digitcount; - trackletcountsum+=trackletcount; - }*/ + mEventRecords.unpackData(triggers, tracklets, digits); +} + +void CruRawReader::getParsedObjectsandClear(std::vector& tracklets, std::vector& digits, std::vector& triggers) +{ + getParsedObjects(tracklets, digits, triggers); + clearall(); } + +//write the output data directly to the given DataAllocator from the datareader task. +void CruRawReader::buildDPLOutputs(o2::framework::ProcessingContext& pc) +{ + mEventRecords.sendData(pc); + // pc.outputs().snapshot(Output{o2::header::gDataOriginTRD,"STATS",0,Lifetime::Timerframe},mStats); + clearall(); // having now written the messages clear for next. +} + } // namespace o2::trd diff --git a/Detectors/TRD/reconstruction/src/DataReader.cxx b/Detectors/TRD/reconstruction/src/DataReader.cxx index a83d61554018a..14cfa6a637976 100644 --- a/Detectors/TRD/reconstruction/src/DataReader.cxx +++ b/Detectors/TRD/reconstruction/src/DataReader.cxx @@ -29,12 +29,12 @@ void customize(std::vector& workflowOptions) { std::vector options{ - {"trd-datareader-inputspec", VariantType::String, "RAWDATA", {"TRD raw data spec"}}, {"trd-datareader-output-desc", VariantType::String, "TRDTLT", {"Output specs description string"}}, {"trd-datareader-verbose", VariantType::Bool, false, {"Enable verbose epn data reading"}}, {"trd-datareader-headerverbose", VariantType::Bool, false, {"Enable verbose header info"}}, {"trd-datareader-dataverbose", VariantType::Bool, false, {"Enable verbose data info"}}, {"trd-datareader-compresseddata", VariantType::Bool, false, {"The incoming data is compressed or not"}}, + {"ignore-dist-stf", VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}, {"trd-datareader-enablebyteswapdata", VariantType::Bool, false, {"byteswap the incoming data, raw data needs it and simulation does not."}}}; o2::raw::HBFUtilsInitializer::addConfigOption(options); @@ -55,44 +55,39 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) // o2::conf::ConfigurableParam::updateFromString(cfgc.options().get("configKeyValues")); // o2::conf::ConfigurableParam::writeINI("o2trdrawreader-workflow_configuration.ini"); - auto inputspec = cfgc.options().get("trd-datareader-inputspec"); //auto outputspec = cfgc.options().get("trd-datareader-outputspec"); auto verbose = cfgc.options().get("trd-datareader-verbose"); auto byteswap = cfgc.options().get("trd-datareader-enablebyteswapdata"); auto compresseddata = cfgc.options().get("trd-datareader-compresseddata"); auto headerverbose = cfgc.options().get("trd-datareader-headerverbose"); auto dataverbose = cfgc.options().get("trd-datareader-dataverbose"); - + auto askSTFDist = !cfgc.options().get("ignore-dist-stf"); std::vector outputs; outputs.emplace_back("TRD", "TRACKLETS", 0, Lifetime::Timeframe); outputs.emplace_back("TRD", "DIGITS", 0, Lifetime::Timeframe); outputs.emplace_back("TRD", "TRKTRGRD", 0, Lifetime::Timeframe); //outputs.emplace_back("TRD", "FLPSTAT", 0, Lifetime::Timeframe); - LOG(info) << "input spec is:" << inputspec; LOG(info) << "enablebyteswap :" << byteswap; AlgorithmSpec algoSpec; algoSpec = AlgorithmSpec{adaptFromTask(compresseddata, byteswap, verbose, headerverbose, dataverbose)}; WorkflowSpec workflow; - /* - * This is originally replicated from TOF - We define at run time the number of devices to be attached - to the workflow and the input matching string of the device. - This is is done with a configuration string like the following - one, where the input matching for each device is provide in - comma-separated strings. For instance - */ - - // std::stringstream ssconfig(inputspec); std::string iconfig; std::string inputDescription; int idevice = 0; - // LOG(info) << "expected incoming data definition : " << inputspec; - // this is probably never going to be used but would to nice to know hence here. + auto orig = o2::header::gDataOriginTRD; + auto inputs = o2::framework::select(std::string("x:TRD/RAWDATA").c_str()); + for (auto& inp : inputs) { + // take care of case where our data is not in the time frame + inp.lifetime = Lifetime::Optional; + } + if (askSTFDist) { + inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe); + } workflow.emplace_back(DataProcessorSpec{ std::string("trd-datareader"), // left as a string cast incase we append stuff to the string - select(std::string("x:TRD/" + inputspec).c_str()), + inputs, //select(std::string("x:TRD/" + inputspec).c_str()), outputs, algoSpec, Options{}}); diff --git a/Detectors/TRD/reconstruction/src/DataReaderTask.cxx b/Detectors/TRD/reconstruction/src/DataReaderTask.cxx index 9641bee9715c3..4ae1b256fe2e2 100644 --- a/Detectors/TRD/reconstruction/src/DataReaderTask.cxx +++ b/Detectors/TRD/reconstruction/src/DataReaderTask.cxx @@ -15,12 +15,16 @@ #include "TRDReconstruction/DataReaderTask.h" #include "TRDReconstruction/CruRawReader.h" + #include "Framework/ControlService.h" #include "Framework/ConfigParamRegistry.h" #include "Framework/RawDeviceService.h" #include "Framework/DeviceSpec.h" #include "Framework/DataSpecUtils.h" +#include "Framework/InputRecordWalker.h" + #include "DataFormatsTRD/Constants.h" + #include //using namespace o2::framework; @@ -37,18 +41,25 @@ void DataReaderTask::init(InitContext& ic) }; ic.services().get().set(CallbackService::Id::Stop, finishFunction); + mDataDesc = "RAWDATA"; } -void DataReaderTask::sendData(ProcessingContext& pc) +void DataReaderTask::sendData(ProcessingContext& pc, bool blankframe) { // mReader.getParsedObjects(mTracklets,mDigits,mTriggers); - mReader.getParsedObjects(mTracklets, mDigits, mTriggers); - - LOG(info) << "Sending data onwards with " << mDigits.size() << " Digits and " << mTracklets.size() << " Tracklets and " << mTriggers.size() << " Triggers"; - pc.outputs().snapshot(Output{o2::header::gDataOriginTRD, "DIGITS", 0, Lifetime::Timeframe}, mDigits); - pc.outputs().snapshot(Output{o2::header::gDataOriginTRD, "TRACKLETS", 0, Lifetime::Timeframe}, mTracklets); - pc.outputs().snapshot(Output{o2::header::gDataOriginTRD, "TRKTRGRD", 0, Lifetime::Timeframe}, mTriggers); - // pc.outputs().snapshot(Output{o2::header::gDataOriginTRD,"STATS",0,Lifetime::Timerframe},mStats); + if (!blankframe) { + mReader.buildDPLOutputs(pc); //getParsedObjectsandClear(mTracklets, mDigits, mTriggers); + } else { + //ensure the objects we are sending back are indeed blank. + //TODO maybe put this in buildDPLOutputs so sending all done in 1 place, not now though. + std::vector tracklets; + std::vector digits; + std::vector triggers; + LOG(info) << "Sending data onwards with " << digits.size() << " Digits and " << tracklets.size() << " Tracklets and " << triggers.size() << " Triggers and blankframe:" << blankframe; + pc.outputs().snapshot(Output{o2::header::gDataOriginTRD, "DIGITS", 0, Lifetime::Timeframe}, digits); + pc.outputs().snapshot(Output{o2::header::gDataOriginTRD, "TRACKLETS", 0, Lifetime::Timeframe}, tracklets); + pc.outputs().snapshot(Output{o2::header::gDataOriginTRD, "TRKTRGRD", 0, Lifetime::Timeframe}, triggers); + } } void DataReaderTask::run(ProcessingContext& pc) @@ -61,73 +72,82 @@ void DataReaderTask::run(ProcessingContext& pc) auto device = pc.services().get().device(); auto outputRoutes = pc.services().get().spec().outputs; auto fairMQChannel = outputRoutes.at(0).channel; - int inputcount = 0; + std::vector dummy{InputSpec{"dummy", ConcreteDataMatcher{o2::header::gDataOriginTRD, o2::header::gDataDescriptionRawData, 0xDEADBEEF}}}; + // if we see requested data type input with 0xDEADBEEF subspec and 0 payload this mecans that the "delayed message" + // mechanism created it in absence of real data from upstream. Processor should send empty output to not block the workflow + + for (const auto& ref : InputRecordWalker(pc.inputs(), dummy)) { + const auto dh = o2::framework::DataRefUtils::getHeader(ref); + if (dh->payloadSize == 0) { //}|| dh->payloadSize==16) { + LOGP(WARNING, "Found blank input input [{}/{}/{:#x}] TF#{} 1st_orbit:{} Payload {} : ", + dh->dataOrigin.str, dh->dataDescription.str, dh->subSpecification, dh->tfCounter, dh->firstTForbit, dh->payloadSize); + sendData(pc, true); //send the empty tf data. + return; + } + LOG(info) << " matched DEADBEEF"; + } + //TODO combine the previous and subsequent loops. /* loop over inputs routes */ for (auto iit = pc.inputs().begin(), iend = pc.inputs().end(); iit != iend; ++iit) { if (!iit.isValid()) { continue; } /* loop over input parts */ + int inputpartscount = 0; for (auto const& ref : iit) { - + if (mVerbose) { + const auto dh = DataRefUtils::getHeader(ref); + LOGP(info, "Found input [{}/{}/{:#x}] TF#{} 1st_orbit:{} Payload {} : ", + dh->dataOrigin.str, dh->dataDescription.str, dh->subSpecification, dh->tfCounter, dh->firstTForbit, dh->payloadSize); + } const auto* headerIn = DataRefUtils::getHeader(ref); auto payloadIn = ref.payload; auto payloadInSize = headerIn->payloadSize; - if (!mCompressedData) { //we have raw data coming in from flp - if (mVerbose) { - LOG(info) << " parsing non compressed data in the data reader task"; - } - - int a = 1; - int d = 1; - // while(d==1){ - // a=sin(rand()); - // } - - mReader.setDataBuffer(payloadIn); - mReader.setDataBufferSize(payloadInSize); - mReader.configure(mByteSwap, mVerbose, mHeaderVerbose, mDataVerbose); - if (mVerbose) { - LOG(info) << "%%% about to run " << loopcounter << " %%%"; - } - mReader.run(); - if (mVerbose) { - LOG(info) << "%%% finished running " << loopcounter << " %%%"; - } - loopcounter++; - // mTracklets.insert(std::end(mTracklets), std::begin(mReader.getTracklets()), std::end(mReader.getTracklets())); - // mCompressedDigits.insert(std::end(mCompressedDigits), std::begin(mReader.getCompressedDigits()), std::end(mReader.getCompressedDigits())); - //mReader.clearall(); - if (mVerbose) { - LOG(info) << "from parsing received: " << mTracklets.size() << " tracklets and " << mDigits.size() << " compressed digits"; - LOG(info) << "relevant vectors to read : " << mReader.sumTrackletsFound() << " tracklets and " << mReader.sumDigitsFound() << " compressed digits"; + if (std::string(headerIn->dataDescription.str) != std::string("DISTSUBTIMEFRAMEFLP")) { + if (!mCompressedData) { //we have raw data coming in from flp + if (mVerbose) { + LOG(info) << " parsing non compressed data in the data reader task with a payload of " << payloadInSize << " payload size"; + } + mReader.setDataBuffer(payloadIn); + mReader.setDataBufferSize(payloadInSize); + mReader.configure(mByteSwap, mVerbose, mHeaderVerbose, mDataVerbose); + if (mVerbose) { + LOG(info) << "%%% about to run " << loopcounter << " %%%"; + } + mReader.run(); + if (mVerbose) { + LOG(info) << "%%% finished running " << loopcounter << " %%%"; + } + loopcounter++; + // mTracklets.insert(std::end(mTracklets), std::begin(mReader.getTracklets()), std::end(mReader.getTracklets())); + // mCompressedDigits.insert(std::end(mCompressedDigits), std::begin(mReader.getCompressedDigits()), std::end(mReader.getCompressedDigits())); + //mReader.clearall(); + if (mVerbose) { + LOG(info) << "relevant vectors to read : " << mReader.sumTrackletsFound() << " tracklets and " << mReader.sumDigitsFound() << " compressed digits"; + } + // mTriggers = mReader.getIR(); + //get the payload of trigger and digits out. + } else { // we have compressed data coming in from flp. + mCompressedReader.setDataBuffer(payloadIn); + mCompressedReader.setDataBufferSize(payloadInSize); + mCompressedReader.configure(mByteSwap, mVerbose, mHeaderVerbose, mDataVerbose); + mCompressedReader.run(); + //get the payload of trigger and digits out. } - // mTriggers = mReader.getIR(); - //get the payload of trigger and digits out. - } else { // we have compressed data coming in from flp. - mCompressedReader.setDataBuffer(payloadIn); - mCompressedReader.setDataBufferSize(payloadInSize); - mCompressedReader.configure(mByteSwap, mVerbose, mHeaderVerbose, mDataVerbose); - mCompressedReader.run(); - mTracklets = mCompressedReader.getTracklets(); - mDigits = mCompressedReader.getDigits(); - mTriggers = mCompressedReader.getIR(); - //get the payload of trigger and digits out. + /* output */ + sendData(pc, false); //TODO do we ever have to not post the data. i.e. can we get here mid event? I dont think so. + } else { + sendData(pc, true); } - /* output */ - //sendData(pc); //TODO do we ever have to not post the data. i.e. can we get here mid event? I dont think so. } - sendData(pc); //TODO do we ever have to not post the data. i.e. can we get here mid event? I dont think so. } auto dataReadTime = std::chrono::high_resolution_clock::now() - dataReadStart; LOG(info) << "Processing time for Data reading " << std::chrono::duration_cast(dataReadTime).count() << "ms"; if (!mCompressedData) { LOG(info) << "Digits found : " << mReader.getDigitsFound(); - LOG(info) << "Digits returned : " << mDigits.size(); LOG(info) << "Tracklets found : " << mReader.getTrackletsFound(); - LOG(info) << "Tracklets returned : " << mTracklets.size(); } } diff --git a/DataFormats/Detectors/TRD/src/EventRecord.cxx b/Detectors/TRD/reconstruction/src/EventRecord.cxx similarity index 73% rename from DataFormats/Detectors/TRD/src/EventRecord.cxx rename to Detectors/TRD/reconstruction/src/EventRecord.cxx index 7b0e04530830f..199d48e1ff124 100644 --- a/DataFormats/Detectors/TRD/src/EventRecord.cxx +++ b/Detectors/TRD/reconstruction/src/EventRecord.cxx @@ -19,8 +19,20 @@ #include "DataFormatsTRD/TriggerRecord.h" #include "DataFormatsTRD/Tracklet64.h" #include "DataFormatsTRD/Digit.h" -#include "DataFormatsTRD/EventRecord.h" +#include "TRDReconstruction/EventRecord.h" #include "DataFormatsTRD/Constants.h" + +#include "Framework/Output.h" +#include "Framework/ProcessingContext.h" +#include "Framework/ControlService.h" +#include "Framework/ConfigParamRegistry.h" +#include "Framework/RawDeviceService.h" +#include "Framework/DeviceSpec.h" +#include "Framework/DataSpecUtils.h" +#include "Framework/InputRecordWalker.h" + +#include "DataFormatsTRD/Constants.h" + #include #include #include @@ -109,7 +121,6 @@ void EventStorage::addTracklets(InteractionRecord& ir, std::vector& if (ir == mEventRecords[count].getBCData()) { //TODO replace this with a hash/map not a vector mEventRecords[count].addTracklets(tracklets); //mTracklets.insert(mTracklets.back(),start,end); - // LOG(info) << "adding " << tracklets.size() << " tracklets and tracklet sum: " << sumTracklets() << " IR count : "<< mEventRecords.size();; added = true; } } @@ -117,7 +128,6 @@ void EventStorage::addTracklets(InteractionRecord& ir, std::vector& // unseen ir so add it mEventRecords.push_back(ir); mEventRecords.back().addTracklets(tracklets); - // hLOG(info) << "unknown ir adding " << tracklets.size() << " tracklets and sum of : "<< sumTracklets() << " IR count : "<< mEventRecords.size(); } } void EventStorage::addTracklets(InteractionRecord& ir, std::vector::iterator& start, std::vector::iterator& end) @@ -127,7 +137,6 @@ void EventStorage::addTracklets(InteractionRecord& ir, std::vector:: if (ir == mEventRecords[count].getBCData()) { //TODO replace this with a hash/map not a vector mEventRecords[count].addTracklets(start, end); //mTracklets.insert(mTracklets.back(),start,end); - // LOG(info) << "x iknown ir adding " << std::distance(start,end)<< " tracklets"; added = true; } } @@ -138,18 +147,45 @@ void EventStorage::addTracklets(InteractionRecord& ir, std::vector:: // LOG(info) << "x unknown ir adding " << std::distance(start,end)<< " tracklets"; } } -void EventStorage::unpackDataForSending(std::vector& triggers, std::vector& tracklets, std::vector& digits) +void EventStorage::unpackData(std::vector& triggers, std::vector& tracklets, std::vector& digits) { int digitcount = 0; int trackletcount = 0; - for (auto event : mEventRecords) { + for (auto& event : mEventRecords) { + tracklets.insert(std::end(tracklets), std::begin(event.getTracklets()), std::end(event.getTracklets())); + digits.insert(std::end(digits), std::begin(event.getDigits()), std::end(event.getDigits())); + triggers.emplace_back(event.getBCData(), digitcount, event.getDigits().size(), trackletcount, event.getTracklets().size()); + digitcount += event.getDigits().size(); + trackletcount += event.getTracklets().size(); + } +} + +void EventStorage::sendData(o2::framework::ProcessingContext& pc) +{ + //at this point we know the total number of tracklets and digits and triggers. + uint64_t trackletcount = 0; + uint64_t digitcount = 0; + uint64_t triggercount = 0; + sumTrackletsDigitsTriggers(trackletcount, digitcount, triggercount); + std::vector tracklets; + tracklets.reserve(trackletcount); + std::vector digits; + digits.reserve(digitcount); + std::vector triggers; + triggers.reserve(triggercount); + for (auto& event : mEventRecords) { tracklets.insert(std::end(tracklets), std::begin(event.getTracklets()), std::end(event.getTracklets())); digits.insert(std::end(digits), std::begin(event.getDigits()), std::end(event.getDigits())); triggers.emplace_back(event.getBCData(), digitcount, event.getDigits().size(), trackletcount, event.getTracklets().size()); digitcount += event.getDigits().size(); trackletcount += event.getTracklets().size(); } + LOG(info) << "Sending data onwards with " << digits.size() << " Digits and " << tracklets.size() << " Tracklets and " << triggers.size() << " Triggers"; + pc.outputs().snapshot(o2::framework::Output{o2::header::gDataOriginTRD, "DIGITS", 0, o2::framework::Lifetime::Timeframe}, digits); + pc.outputs().snapshot(o2::framework::Output{o2::header::gDataOriginTRD, "TRACKLETS", 0, o2::framework::Lifetime::Timeframe}, tracklets); + pc.outputs().snapshot(o2::framework::Output{o2::header::gDataOriginTRD, "TRKTRGRD", 0, o2::framework::Lifetime::Timeframe}, triggers); } + int EventStorage::sumTracklets() { int sum = 0; @@ -166,6 +202,18 @@ int EventStorage::sumDigits() } return sum; } +void EventStorage::sumTrackletsDigitsTriggers(uint64_t& tracklets, uint64_t& digits, uint64_t& triggers) +{ + int digitsum = 0; + int trackletsum = 0; + int triggersum = 0; + for (auto event : mEventRecords) { + digitsum += event.getDigits().size(); + trackletsum += event.getTracklets().size(); + triggersum++; + } +} + std::vector& EventStorage::getTracklets(InteractionRecord& ir) { bool found = false; From 0e5fb9c82df91cb7b9bb1624143c91dbd4cc31e6 Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Tue, 6 Jul 2021 10:41:59 +0200 Subject: [PATCH 086/314] A simple github action to check pragma once rule (#6592) * Create pragmaonce.yml * Update pragmaonce.yml --- .github/workflows/pragmaonce.yml | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) create mode 100644 .github/workflows/pragmaonce.yml diff --git a/.github/workflows/pragmaonce.yml b/.github/workflows/pragmaonce.yml new file mode 100644 index 0000000000000..9a6221379853e --- /dev/null +++ b/.github/workflows/pragmaonce.yml @@ -0,0 +1,18 @@ +name: pragma-once checker + +on: [pull_request_target] + +jobs: + build: + runs-on: ubuntu-20.04 + + steps: + - uses: actions/checkout@v2 + with: + ref: ${{ github.event.pull_request.head.sha }} + persist-credentials: false + + - name: Run pragma check + id: pragma_check + run: | + git grep -l '#pragma once' -- '*.h' && exit 1 From ae21d9f42c0c2469d6e5595af955f6ba1dd4c15c Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Tue, 6 Jul 2021 10:31:06 +0200 Subject: [PATCH 087/314] Remove remaining pragma once --- Analysis/DataModel/include/AnalysisDataModel/EMCALClusters.h | 5 ++++- Analysis/DataModel/include/AnalysisDataModel/Jet.h | 5 ++++- version/O2Version.h | 5 ++++- version/O2Version.h.in | 4 +++- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/Analysis/DataModel/include/AnalysisDataModel/EMCALClusters.h b/Analysis/DataModel/include/AnalysisDataModel/EMCALClusters.h index 71062b9005c5d..ade3736a514e6 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/EMCALClusters.h +++ b/Analysis/DataModel/include/AnalysisDataModel/EMCALClusters.h @@ -13,7 +13,8 @@ // // Author: Raymond Ehlers -#pragma once +#ifndef O2_ANALYSIS_DATAMODEL_EMCALCLUSTERS +#define O2_ANALYSIS_DATAMODEL_EMCALCLUSTERS #include "Framework/AnalysisDataModel.h" @@ -36,3 +37,5 @@ DECLARE_SOA_TABLE(EMCALClusters, "AOD", "EMCALCLUSTERS", //! using EMCALCluster = EMCALClusters::iterator; } // namespace o2::aod + +#endif diff --git a/Analysis/DataModel/include/AnalysisDataModel/Jet.h b/Analysis/DataModel/include/AnalysisDataModel/Jet.h index a4cad9962cce0..7b9152149eb52 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/Jet.h +++ b/Analysis/DataModel/include/AnalysisDataModel/Jet.h @@ -13,7 +13,8 @@ // // Author: Jochen Klein, Nima Zardoshti -#pragma once +#ifndef O2_ANALYSIS_DATAMODEL_JET_H +#define O2_ANALYSIS_DATAMODEL_JET_H #include "Framework/AnalysisDataModel.h" #include @@ -100,3 +101,5 @@ DECLARE_SOA_TABLE(JetConstituentsSub, "AOD", "CONSTITUENTSSUB", //! using JetConstituentSub = JetConstituentsSub::iterator; } // namespace o2::aod + +#endif diff --git a/version/O2Version.h b/version/O2Version.h index 8c7c155ba0a18..1ffcfefdde52b 100644 --- a/version/O2Version.h +++ b/version/O2Version.h @@ -9,7 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#pragma once +#ifndef O2_VERSION_H +#define O2_VERSION_H #include @@ -24,3 +25,5 @@ std::string gitRevision(); /// get information about build platform (for example OS and alidist release when used) std::string getBuildInfo(); } // namespace o2 + +#endif diff --git a/version/O2Version.h.in b/version/O2Version.h.in index 74e9a96eebc05..bb963b7772aa4 100644 --- a/version/O2Version.h.in +++ b/version/O2Version.h.in @@ -12,8 +12,10 @@ // This file provides information about how O2 was built // and potentially other version information. -#pragma once +#ifndef O2_VERSION_GENERATED_H +#define O2_VERSION_GENERATED_H #define O2_GIT_REVISION "@O2_GIT_REVISION@" #define ALIDIST_GIT_REVISION "@ALIDIST_GIT_REVISION@" +#endif From 0a66dc3c6e739597aafb6daa98f5cbdba282cc13 Mon Sep 17 00:00:00 2001 From: Maximiliano Puccio Date: Fri, 25 Jun 2021 16:41:43 +0200 Subject: [PATCH 088/314] Move to proper logger + protect file reads --- .../centralEventFilterProcessor.cxx | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/Analysis/EventFiltering/centralEventFilterProcessor.cxx b/Analysis/EventFiltering/centralEventFilterProcessor.cxx index e6a51af87c506..c6e28cbf46453 100644 --- a/Analysis/EventFiltering/centralEventFilterProcessor.cxx +++ b/Analysis/EventFiltering/centralEventFilterProcessor.cxx @@ -15,6 +15,7 @@ #include "Framework/ControlService.h" #include "Framework/ConfigParamRegistry.h" +#include #include "Framework/TableConsumer.h" #include @@ -33,12 +34,16 @@ namespace { Document readJsonFile(std::string& config) { + Document d; FILE* fp = fopen(config.data(), "rb"); + if (fp == NULL) { + LOG(ERROR) << "Missing configuration json file: " << config; + return d; + } char readBuffer[65536]; FileReadStream is(fp, readBuffer, sizeof(readBuffer)); - Document d; d.ParseStream(is); fclose(fp); return d; @@ -62,7 +67,7 @@ void CentralEventFilterProcessor::init(framework::InitContext& ic) // } // } // } - std::cout << "Start init" << std::endl; + LOG(INFO) << "Start init"; Document d = readJsonFile(mConfigFile); int nCols{0}; for (auto& workflow : d["workflows"].GetArray()) { @@ -82,7 +87,7 @@ void CentralEventFilterProcessor::init(framework::InitContext& ic) break; } } - std::cout << "Middle init" << std::endl; + LOG(INFO) << "Middle init" << std::endl; mScalers = new TH1D("mScalers", ";;Number of events", nCols + 1, -0.5, 0.5 + nCols); mScalers->GetXaxis()->SetBinLabel(1, "Total number of events"); @@ -112,7 +117,7 @@ void CentralEventFilterProcessor::run(ProcessingContext& pc) int64_t nRows{tablePtr->num_rows()}; nEvents = nEvents < 0 ? nRows : nEvents; if (nEvents != nRows) { - std::cerr << "Inconsistent number of rows across trigger tables, fatal" << std::endl; ///TODO: move it to real fatal + LOG(FATAL) << "Inconsistent number of rows across trigger tables, fatal" << std::endl; ///TODO: move it to real fatal } auto schema{tablePtr->schema()}; @@ -167,7 +172,7 @@ DataProcessorSpec getCentralEventFilterProcessorSpec(std::string& config) for (unsigned int iFilter{0}; iFilter < AvailableFilters.size(); ++iFilter) { if (std::string_view(workflow["subwagon_name"].GetString()) == std::string_view(AvailableFilters[iFilter])) { inputs.emplace_back(std::string(AvailableFilters[iFilter]), "AOD", FilterDescriptions[iFilter], 0, Lifetime::Timeframe); - std::cout << "Adding input " << std::string_view(AvailableFilters[iFilter]) << std::endl; + LOG(INFO) << "Adding input " << std::string_view(AvailableFilters[iFilter]) << std::endl; break; } } From 5664043ed4e60a8e17eabcd2469e609a44fbe44b Mon Sep 17 00:00:00 2001 From: Maximiliano Puccio Date: Tue, 29 Jun 2021 15:42:02 +0200 Subject: [PATCH 089/314] Fix json parsing and clang-tidy error Co-authored-by: Stefano Trogolo --- Analysis/EventFiltering/centralEventFilterProcessor.cxx | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/Analysis/EventFiltering/centralEventFilterProcessor.cxx b/Analysis/EventFiltering/centralEventFilterProcessor.cxx index c6e28cbf46453..86fcc4e6e5f0d 100644 --- a/Analysis/EventFiltering/centralEventFilterProcessor.cxx +++ b/Analysis/EventFiltering/centralEventFilterProcessor.cxx @@ -36,7 +36,7 @@ Document readJsonFile(std::string& config) { Document d; FILE* fp = fopen(config.data(), "rb"); - if (fp == NULL) { + if (!fp) { LOG(ERROR) << "Missing configuration json file: " << config; return d; } @@ -75,12 +75,13 @@ void CentralEventFilterProcessor::init(framework::InitContext& ic) auto& config = workflow["configuration"]; for (auto& filter : AvailableFilters) { auto& filterConfig = config[filter]; - if (config.IsObject()) { + if (filterConfig.IsObject()) { std::unordered_map tableMap; for (auto& node : filterConfig.GetObject()) { tableMap[node.name.GetString()] = node.value.GetDouble(); nCols++; } + LOG(INFO) << "Enabling downscaling map for filter: " << filter; mDownscaling[filter] = tableMap; } } @@ -191,5 +192,3 @@ DataProcessorSpec getCentralEventFilterProcessorSpec(std::string& config) } } // namespace o2::aod::filtering - -/// o2-analysis-cefp --config /Users/stefano.trogolo/alice/run3/O2/Analysis/EventFiltering/sample.json | o2-analysis-nuclei-filter --aod-file @listOfFiles.txt | o2-analysis-trackselection | o2-analysis-trackextension | o2-analysis-pid-tpc | o2-analysis-pid-tof | o2-analysis-event-selection | o2-analysis \ No newline at end of file From 5eb8a0f2c9e8ffad89d5dfbb11ea63c69c3395c2 Mon Sep 17 00:00:00 2001 From: aimeric-landou <46970521+aimeric-landou@users.noreply.github.com> Date: Tue, 6 Jul 2021 19:34:39 +0100 Subject: [PATCH 090/314] lambdakzeroanalysis: add configurable for Dca histograms binning (#6556) --- Analysis/Tasks/PWGLF/lambdakzeroanalysis.cxx | 20 ++++++++++++++++---- 1 file changed, 16 insertions(+), 4 deletions(-) diff --git a/Analysis/Tasks/PWGLF/lambdakzeroanalysis.cxx b/Analysis/Tasks/PWGLF/lambdakzeroanalysis.cxx index d32e089cdce68..d5d4d337dcfa2 100644 --- a/Analysis/Tasks/PWGLF/lambdakzeroanalysis.cxx +++ b/Analysis/Tasks/PWGLF/lambdakzeroanalysis.cxx @@ -86,19 +86,31 @@ struct lambdakzeroQA { }; struct lambdakzeroanalysis { + HistogramRegistry registry{ "registry", { {"h3dMassK0Short", "h3dMassK0Short", {HistType::kTH3F, {{20, 0.0f, 100.0f}, {200, 0.0f, 10.0f}, {200, 0.450f, 0.550f}}}}, {"h3dMassLambda", "h3dMassLambda", {HistType::kTH3F, {{20, 0.0f, 100.0f}, {200, 0.0f, 10.0f}, {200, 1.015f, 1.215f}}}}, {"h3dMassAntiLambda", "h3dMassAntiLambda", {HistType::kTH3F, {{20, 0.0f, 100.0f}, {200, 0.0f, 10.0f}, {200, 1.015f, 1.215f}}}}, - - {"h3dMassK0ShortDca", "h3dMassK0ShortDca", {HistType::kTH3F, {{200, 0.0f, 1.0f}, {200, 0.0f, 10.0f}, {200, 0.450f, 0.550f}}}}, - {"h3dMassLambdaDca", "h3dMassLambdaDca", {HistType::kTH3F, {{200, 0.0f, 1.0f}, {200, 0.0f, 10.0f}, {200, 1.015f, 1.215f}}}}, - {"h3dMassAntiLambdaDca", "h3dMassAntiLambdaDca", {HistType::kTH3F, {{200, 0.0f, 1.0f}, {200, 0.0f, 10.0f}, {200, 1.015f, 1.215f}}}}, }, }; + ConfigurableAxis dcaBinning{"dca-binning", {200, 0.0f, 1.0f}, ""}; + ConfigurableAxis ptBinning{"pt-binning", {200, 0.0f, 10.0f}, ""}; + + void init(InitContext const&) + { + AxisSpec dcaAxis = {dcaBinning, "DCA (cm)"}; + AxisSpec ptAxis = {ptBinning, "#it{p}_{T} (GeV/c)"}; + AxisSpec massAxisK0Short = {200, 0.450f, 0.550f, "Inv. Mass (GeV)"}; + AxisSpec massAxisLambda = {200, 1.015f, 1.215f, "Inv. Mass (GeV)"}; + + registry.add("h3dMassK0ShortDca", "h3dMassK0ShortDca", {HistType::kTH3F, {dcaAxis, ptAxis, massAxisK0Short}}); + registry.add("h3dMassLambdaDca", "h3dMassLambdaDca", {HistType::kTH3F, {dcaAxis, ptAxis, massAxisLambda}}); + registry.add("h3dMassAntiLambdaDca", "h3dMassAntiLambdaDca", {HistType::kTH3F, {dcaAxis, ptAxis, massAxisLambda}}); + } + //Selection criteria Configurable v0cospa{"v0cospa", 0.995, "V0 CosPA"}; //double -> N.B. dcos(x)/dx = 0 at x=0) Configurable dcav0dau{"dcav0dau", 1.0, "DCA V0 Daughters"}; From 75abb7bced267531775ba6fc4e10d8c25088cc9f Mon Sep 17 00:00:00 2001 From: Victor Gonzalez Date: Tue, 6 Jul 2021 21:15:25 +0200 Subject: [PATCH 091/314] First step towards the simulation challenge (#6530) * First step towards the simulation challenge For the time being is being a separate task The final goal is a single one Implemented - data collection directly in differential form - huge decrease in memory layout * Introduction of the data collecting engine structure The whole data collecting functionality is encapsulated into an structure which can be replicated as needed * Just a single task for the different cent/mult ranges The idea is to have a multitask scenario for running systematic tests in 'parallel' exclusively --- Analysis/Tasks/PWGCF/CMakeLists.txt | 5 + .../Tasks/PWGCF/dptdptcorrelations-simchl.cxx | 928 ++++++++++++++++++ 2 files changed, 933 insertions(+) create mode 100644 Analysis/Tasks/PWGCF/dptdptcorrelations-simchl.cxx diff --git a/Analysis/Tasks/PWGCF/CMakeLists.txt b/Analysis/Tasks/PWGCF/CMakeLists.txt index 2edc3ff407a0d..28ab35144fd01 100644 --- a/Analysis/Tasks/PWGCF/CMakeLists.txt +++ b/Analysis/Tasks/PWGCF/CMakeLists.txt @@ -24,6 +24,11 @@ o2_add_dpl_workflow(dptdptcorrelations PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisCore O2::AnalysisDataModel O2::PWGCFCore COMPONENT_NAME Analysis) +o2_add_dpl_workflow(dptdptcorrelations-simchl + SOURCES dptdptcorrelations-simchl.cxx + PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisCore O2::AnalysisDataModel O2::PWGCFCore + COMPONENT_NAME Analysis) + o2_add_dpl_workflow(correlations SOURCES correlations.cxx PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisCore diff --git a/Analysis/Tasks/PWGCF/dptdptcorrelations-simchl.cxx b/Analysis/Tasks/PWGCF/dptdptcorrelations-simchl.cxx new file mode 100644 index 0000000000000..c79cffd43c5bc --- /dev/null +++ b/Analysis/Tasks/PWGCF/dptdptcorrelations-simchl.cxx @@ -0,0 +1,928 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "Framework/AnalysisTask.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/ASoAHelpers.h" +#include "AnalysisDataModel/EventSelection.h" +#include "AnalysisDataModel/Centrality.h" +#include "AnalysisCore/TrackSelection.h" +#include "AnalysisConfigurableCuts.h" +#include "AnalysisDataModel/TrackSelectionTables.h" +#include +#include +#include +#include +#include +#include +#include +#include +#include + +#include + +using namespace o2; +using namespace o2::framework; +using namespace o2::soa; +using namespace o2::framework::expressions; + +#include "Framework/runDataProcessing.h" + +namespace o2 +{ +namespace aod +{ +/* we have to change from int to bool when bool columns work properly */ +namespace dptdptcorrelations +{ +DECLARE_SOA_COLUMN(EventAccepted, eventaccepted, uint8_t); +DECLARE_SOA_COLUMN(EventCentMult, centmult, float); +DECLARE_SOA_COLUMN(TrackacceptedAsOne, trackacceptedasone, uint8_t); +DECLARE_SOA_COLUMN(TrackacceptedAsTwo, trackacceptedastwo, uint8_t); +} // namespace dptdptcorrelations +DECLARE_SOA_TABLE(AcceptedEvents, "AOD", "ACCEPTEDEVENTS", dptdptcorrelations::EventAccepted, dptdptcorrelations::EventCentMult); +DECLARE_SOA_TABLE(ScannedTracks, "AOD", "SCANNEDTRACKS", dptdptcorrelations::TrackacceptedAsOne, dptdptcorrelations::TrackacceptedAsTwo); + +using CollisionEvSelCent = soa::Join::iterator; +using TrackData = soa::Join::iterator; +using FilteredTracks = soa::Filtered>; +using FilteredTrackData = Partition::filtered_iterator; +} // namespace aod +} // namespace o2 + +namespace dptdptcorrelations +{ +/* all this is made configurable */ +int ptbins = 18; +float ptlow = 0.2, ptup = 2.0; +int etabins = 16; +float etalow = -0.8, etaup = 0.8; +int zvtxbins = 40; +float zvtxlow = -10.0, zvtxup = 10.0; +int phibins = 72; +float philow = 0.0; +float phiup = M_PI * 2; +float phibinshift = 0.5; +float etabinwidth = (etaup - etalow) / float(etabins); +float phibinwidth = (phiup - philow) / float(phibins); +int deltaetabins = etabins * 2 - 1; +float deltaetalow = etalow - etaup, deltaetaup = etaup - etalow; +float deltaetabinwidth = (deltaetaup - deltaetalow) / float(deltaetabins); +int deltaphibins = phibins; +float deltaphibinwidth = M_PI * 2 / deltaphibins; +float deltaphilow = 0.0 - deltaphibinwidth / 2.0; +float deltaphiup = M_PI * 2 - deltaphibinwidth / 2.0; + +int tracktype = 1; +int trackonecharge = 1; +int tracktwocharge = -1; +bool processpairs = false; +std::string fTaskConfigurationString = "PendingToConfigure"; + +/// \enum SystemType +/// \brief The type of the system under analysis +enum SystemType { + kNoSystem = 0, ///< no system defined + kpp, ///< **p-p** system + kpPb, ///< **p-Pb** system + kPbp, ///< **Pb-p** system + kPbPb, ///< **Pb-Pb** system + kXeXe, ///< **Xe-Xe** system + knSystems ///< number of handled systems +}; + +/// \enum CentMultEstimatorType +/// \brief The detector used to estimate centrality/multiplicity +enum CentMultEstimatorType { + kV0M = 0, ///< V0M centrality/multiplicity estimator + kV0A, ///< V0A centrality/multiplicity estimator + kV0C, ///< V0C centrality/multiplicity estimator + kCL0, ///< CL0 centrality/multiplicity estimator + kCL1, ///< CL1 centrality/multiplicity estimator + knCentMultEstimators ///< number of centrality/mutiplicity estimator +}; + +namespace filteranalyistask +{ +//============================================================================================ +// The DptDptCorrelationsFilterAnalysisTask output objects +//============================================================================================ +SystemType fSystem = kNoSystem; +CentMultEstimatorType fCentMultEstimator = kV0M; +TH1F* fhCentMultB = nullptr; +TH1F* fhCentMultA = nullptr; +TH1F* fhVertexZB = nullptr; +TH1F* fhVertexZA = nullptr; +TH1F* fhPtB = nullptr; +TH1F* fhPtA = nullptr; +TH1F* fhPtPosB = nullptr; +TH1F* fhPtPosA = nullptr; +TH1F* fhPtNegB = nullptr; +TH1F* fhPtNegA = nullptr; + +TH1F* fhEtaB = nullptr; +TH1F* fhEtaA = nullptr; + +TH1F* fhPhiB = nullptr; +TH1F* fhPhiA = nullptr; + +TH2F* fhEtaVsPhiB = nullptr; +TH2F* fhEtaVsPhiA = nullptr; + +TH2F* fhPtVsEtaB = nullptr; +TH2F* fhPtVsEtaA = nullptr; +} // namespace filteranalyistask + +namespace correlationstask +{ + +/// \enum TrackPairs +/// \brief The track combinations hadled by the class +enum TrackPairs { + kOO = 0, ///< one-one pairs + kOT, ///< one-two pairs + kTO, ///< two-one pairs + kTT, ///< two-two pairs + nTrackPairs ///< the number of track pairs +}; +} // namespace correlationstask + +SystemType getSystemType() +{ + /* we have to figure out how extract the system type */ + return kPbPb; +} + +template +bool IsEvtSelected(CollisionObject const& collision, float& centormult) +{ + using namespace filteranalyistask; + + if (collision.alias()[kINT7]) { + if (collision.sel7()) { + /* TODO: vertex quality checks */ + if (zvtxlow < collision.posZ() and collision.posZ() < zvtxup) { + switch (fCentMultEstimator) { + case kV0M: + if (collision.centV0M() < 100 and 0 < collision.centV0M()) { + centormult = collision.centV0M(); + return true; + } + break; + default: + break; + } + return false; + } + return false; + } + } + return false; +} + +template +bool matchTrackType(TrackObject const& track) +{ + switch (tracktype) { + case 1: + if (track.isGlobalTrack() != 0 || track.isGlobalTrackSDD() != 0) { + return true; + } else { + return false; + } + break; + default: + return false; + } +} + +template +inline void AcceptTrack(TrackObject const& track, bool& asone, bool& astwo) +{ + + asone = false; + astwo = false; + + /* TODO: incorporate a mask in the scanned tracks table for the rejecting track reason */ + if (matchTrackType(track)) { + if (ptlow < track.pt() and track.pt() < ptup and etalow < track.eta() and track.eta() < etaup) { + if (((track.sign() > 0) and (trackonecharge > 0)) or ((track.sign() < 0) and (trackonecharge < 0))) { + asone = true; + } + if (((track.sign() > 0) and (tracktwocharge > 0)) or ((track.sign() < 0) and (tracktwocharge < 0))) { + astwo = true; + } + } + } +} + +} /* end namespace dptdptcorrelations */ + +// Task for correlations analysis +// FIXME: this should really inherit from AnalysisTask but +// we need GCC 7.4+ for that + +using namespace dptdptcorrelations; + +struct DptDptCorrelationsFilterAnalysisTask { + + Configurable cfgTrackType{"trktype", 1, "Type of selected tracks: 0 = no selection, 1 = global tracks FB96"}; + Configurable cfgProcessPairs{"processpairs", true, "Process pairs: false = no, just singles, true = yes, process pairs"}; + Configurable cfgCentMultEstimator{"centmultestimator", "V0M", "Centrality/multiplicity estimator detector: default V0M"}; + + Configurable cfgBinning{"binning", + {28, -7.0, 7.0, 18, 0.2, 2.0, 16, -0.8, 0.8, 72, 0.5}, + "triplets - nbins, min, max - for z_vtx, pT, eta and phi, binning plus bin fraction of phi origin shift"}; + + OutputObj fOutput{"DptDptCorrelationsGlobalInfo", OutputObjHandlingPolicy::AnalysisObject}; + + Produces acceptedevents; + Produces scannedtracks; + + void init(InitContext const&) + { + using namespace filteranalyistask; + + /* update with the configurable values */ + /* the binning */ + ptbins = cfgBinning->mPTbins; + ptlow = cfgBinning->mPTmin; + ptup = cfgBinning->mPTmax; + etabins = cfgBinning->mEtabins; + etalow = cfgBinning->mEtamin; + etaup = cfgBinning->mEtamax; + zvtxbins = cfgBinning->mZVtxbins; + zvtxlow = cfgBinning->mZVtxmin; + zvtxup = cfgBinning->mZVtxmax; + /* the track types and combinations */ + tracktype = cfgTrackType.value; + /* the centrality/multiplicity estimation */ + if (cfgCentMultEstimator->compare("V0M") == 0) { + fCentMultEstimator = kV0M; + } else { + LOGF(FATAL, "Centrality/Multiplicity estimator %s not supported yet", cfgCentMultEstimator->c_str()); + } + + /* if the system type is not known at this time, we have to put the initalization somewhere else */ + fSystem = getSystemType(); + + /* create the output list which will own the task histograms */ + TList* fOutputList = new TList(); + fOutputList->SetOwner(true); + fOutput.setObject(fOutputList); + + /* incorporate configuration parameters to the output */ + fOutputList->Add(new TParameter("TrackType", cfgTrackType, 'f')); + fOutputList->Add(new TParameter("TrackOneCharge", trackonecharge, 'f')); + fOutputList->Add(new TParameter("TrackTwoCharge", tracktwocharge, 'f')); + + /* create the histograms */ + if (fSystem > kPbp) { + fhCentMultB = new TH1F("CentralityB", "Centrality before cut; centrality (%)", 100, 0, 100); + fhCentMultA = new TH1F("CentralityA", "Centrality; centrality (%)", 100, 0, 100); + } else { + /* for pp, pPb and Pbp systems use multiplicity instead */ + fhCentMultB = new TH1F("MultiplicityB", "Multiplicity before cut; multiplicity (%)", 100, 0, 100); + fhCentMultA = new TH1F("MultiplicityA", "Multiplicity; multiplicity (%)", 100, 0, 100); + } + + fhVertexZB = new TH1F("VertexZB", "Vertex Z; z_{vtx}", 60, -15, 15); + fhVertexZA = new TH1F("VertexZA", "Vertex Z; z_{vtx}", zvtxbins, zvtxlow, zvtxup); + + fhPtB = new TH1F("fHistPtB", "p_{T} distribution for reconstructed before;p_{T} (GeV/c);dN/dP_{T} (c/GeV)", 100, 0.0, 15.0); + fhPtA = new TH1F("fHistPtA", "p_{T} distribution for reconstructed;p_{T} (GeV/c);dN/dP_{T} (c/GeV)", ptbins, ptlow, ptup); + fhPtPosB = new TH1F("fHistPtPosB", "P_{T} distribution for reconstructed (#{+}) before;P_{T} (GeV/c);dN/dP_{T} (c/GeV)", 100, 0.0, 15.0); + fhPtPosA = new TH1F("fHistPtPosA", "P_{T} distribution for reconstructed (#{+});P_{T} (GeV/c);dN/dP_{T} (c/GeV)", ptbins, ptlow, ptup); + fhPtNegB = new TH1F("fHistPtNegB", "P_{T} distribution for reconstructed (#{-}) before;P_{T} (GeV/c);dN/dP_{T} (c/GeV)", 100, 0.0, 15.0); + fhPtNegA = new TH1F("fHistPtNegA", "P_{T} distribution for reconstructed (#{-});P_{T} (GeV/c);dN/dP_{T} (c/GeV)", ptbins, ptlow, ptup); + fhEtaB = new TH1F("fHistEtaB", "#eta distribution for reconstructed before;#eta;counts", 40, -2.0, 2.0); + fhEtaA = new TH1F("fHistEtaA", "#eta distribution for reconstructed;#eta;counts", etabins, etalow, etaup); + fhPhiB = new TH1F("fHistPhiB", "#phi distribution for reconstructed before;#phi;counts", 360, 0.0, 2 * M_PI); + fhPhiA = new TH1F("fHistPhiA", "#phi distribution for reconstructed;#phi;counts", 360, 0.0, 2 * M_PI); + fhEtaVsPhiB = new TH2F(TString::Format("CSTaskEtaVsPhiB_%s", fTaskConfigurationString.c_str()), "#eta vs #phi before;#phi;#eta", 360, 0.0, 2 * M_PI, 100, -2.0, 2.0); + fhEtaVsPhiA = new TH2F(TString::Format("CSTaskEtaVsPhiA_%s", fTaskConfigurationString.c_str()), "#eta vs #phi;#phi;#eta", 360, 0.0, 2 * M_PI, etabins, etalow, etaup); + fhPtVsEtaB = new TH2F(TString::Format("fhPtVsEtaB_%s", fTaskConfigurationString.c_str()), "p_{T} vs #eta before;#eta;p_{T} (GeV/c)", etabins, etalow, etaup, 100, 0.0, 15.0); + fhPtVsEtaA = new TH2F(TString::Format("fhPtVsEtaA_%s", fTaskConfigurationString.c_str()), "p_{T} vs #eta;#eta;p_{T} (GeV/c)", etabins, etalow, etaup, ptbins, ptlow, ptup); + + /* add the hstograms to the output list */ + fOutputList->Add(fhCentMultB); + fOutputList->Add(fhCentMultA); + fOutputList->Add(fhVertexZB); + fOutputList->Add(fhVertexZA); + fOutputList->Add(fhPtB); + fOutputList->Add(fhPtA); + fOutputList->Add(fhPtPosB); + fOutputList->Add(fhPtPosA); + fOutputList->Add(fhPtNegB); + fOutputList->Add(fhPtNegA); + fOutputList->Add(fhEtaB); + fOutputList->Add(fhEtaA); + fOutputList->Add(fhPhiB); + fOutputList->Add(fhPhiA); + fOutputList->Add(fhEtaVsPhiB); + fOutputList->Add(fhEtaVsPhiA); + fOutputList->Add(fhPtVsEtaB); + fOutputList->Add(fhPtVsEtaA); + } + + void process(aod::CollisionEvSelCent const& collision, soa::Join const& ftracks) + { + using namespace filteranalyistask; + + // LOGF(INFO,"New collision with %d filtered tracks", ftracks.size()); + fhCentMultB->Fill(collision.centV0M()); + fhVertexZB->Fill(collision.posZ()); + bool acceptedevent = false; + float centormult = -100.0; + if (IsEvtSelected(collision, centormult)) { + acceptedevent = true; + fhCentMultA->Fill(collision.centV0M()); + fhVertexZA->Fill(collision.posZ()); + // LOGF(INFO,"New accepted collision with %d filtered tracks", ftracks.size()); + + for (auto& track : ftracks) { + /* before track selection */ + fhPtB->Fill(track.pt()); + fhEtaB->Fill(track.eta()); + fhPhiB->Fill(track.phi()); + fhEtaVsPhiB->Fill(track.phi(), track.eta()); + fhPtVsEtaB->Fill(track.eta(), track.pt()); + if (track.sign() > 0) { + fhPtPosB->Fill(track.pt()); + } else { + fhPtNegB->Fill(track.pt()); + } + + /* track selection */ + /* tricky because the boolean columns issue */ + bool asone, astwo; + AcceptTrack(track, asone, astwo); + if (asone or astwo) { + /* the track has been accepted */ + fhPtA->Fill(track.pt()); + fhEtaA->Fill(track.eta()); + fhPhiA->Fill(track.phi()); + fhEtaVsPhiA->Fill(track.phi(), track.eta()); + fhPtVsEtaA->Fill(track.eta(), track.pt()); + if (track.sign() > 0) { + fhPtPosA->Fill(track.pt()); + } else { + fhPtNegA->Fill(track.pt()); + } + } + scannedtracks((uint8_t)asone, (uint8_t)astwo); + } + } else { + for (auto& track : ftracks) { + scannedtracks((uint8_t) false, (uint8_t) false); + } + } + acceptedevents((uint8_t)acceptedevent, centormult); + } +}; + +// Task for building correlations +struct DptDptCorrelationsTask { + + /* the data collecting engine */ + struct DataCollectingEngine { + //============================================================================================ + // The DptDptCorrelationsAnalysisTask output objects + //============================================================================================ + /* histograms */ + TH1F* fhN1_vsPt[2]; //!) ({p_T}_2 - <{p_T}_2>) \f$ distribution vs \f$\Delta\eta,\;\Delta\phi\f$ 1-1,1-2,2-1,2-2, combinations + /* versus centrality/multiplicity profiles */ + TProfile* fhN1_vsC[2]; //!) ({p_T}_2 - <{p_T}_2>) \f$ distribution vs event centrality 1-1,1-2,2-1,2-2, combinations + TProfile* fhN2nw_vsC[4]; //!) ({p_T}_2 - <{p_T}_2>) \f$ distribution vs \f$\Delta\eta,\;\Delta\phi\f$ distribution vs event centrality 1-1,1-2,2-1,2-2, combinations + + const char* tname[2] = {"1", "2"}; ///< the external track names, one and two, for histogram creation + const char* trackPairsNames[4] = {"OO", "OT", "TO", "TT"}; + + /// \brief Returns the potentially phi origin shifted phi + /// \param phi the track azimuthal angle + /// \return the track phi origin shifted azimuthal angle + float GetShiftedPhi(float phi) + { + if (not(phi < phiup)) { + return phi - M_PI * 2; + } else { + return phi; + } + } + + /// \brief Returns the zero based bin index of the eta phi passed track + /// \param t the intended track + /// \return the zero based bin index + /// + /// According to the bining structure, to the track eta will correspond + /// a zero based bin index and similarlly for the track phi + /// The returned index is the composition of both considering eta as + /// the first index component + /// WARNING: for performance reasons no checks are done about the consistency + /// of track's eta and phin with the corresponding ranges so, it is suppossed + /// the track has been accepted and it is within that ranges + /// IF THAT IS NOT THE CASE THE ROUTINE WILL PRODUCE NONSENSE RESULTS + template + int GetEtaPhiIndex(TrackObject const& t) + { + int etaix = int((t.eta() - etalow) / etabinwidth); + /* consider a potential phi origin shift */ + float phi = GetShiftedPhi(t.phi()); + int phiix = int((phi - philow) / phibinwidth); + return etaix * phibins + phiix; + } + + /// \brief Returns the TH2 global index for the differential histograms + /// \param t1 the intended track one + /// \param t2 the intended track two + /// \return the globl TH2 bin for delta eta delta phi + /// + /// WARNING: for performance reasons no checks are done about the consistency + /// of tracks' eta and phi within the corresponding ranges so, it is suppossed + /// the tracks have been accepted and they are within that ranges + /// IF THAT IS NOT THE CASE THE ROUTINE WILL PRODUCE NONSENSE RESULTS + template + int GetDEtaDPhiGlobalIndex(TrackObject const& t1, TrackObject const& t2) + { + using namespace correlationstask; + + /* rule: ix are always zero based while bins are always one based */ + int etaix_1 = int((t1.eta() - etalow) / etabinwidth); + /* consider a potential phi origin shift */ + float phi = GetShiftedPhi(t1.phi()); + int phiix_1 = int((phi - philow) / phibinwidth); + int etaix_2 = int((t2.eta() - etalow) / etabinwidth); + /* consider a potential phi origin shift */ + phi = GetShiftedPhi(t2.phi()); + int phiix_2 = int((phi - philow) / phibinwidth); + + int deltaeta_ix = etaix_1 - etaix_2 + etabins - 1; + int deltaphi_ix = phiix_1 - phiix_2; + if (deltaphi_ix < 0) { + deltaphi_ix += phibins; + } + + return fhN2_vsDEtaDPhi[kOO]->GetBin(deltaeta_ix + 1, deltaphi_ix + 1); + } + + /// \brief fills the singles histograms in singles execution mode + /// \param passedtracks filtered table with the tracks associated to the passed index + /// \param tix index, in the singles histogram bank, for the passed filetered track table + template + void processSingles(TrackListObject const& passedtracks, int tix, float zvtx) + { + for (auto& track : passedtracks) { + double corr = 1.0; /* TODO: track correction weights */ + fhN1_vsPt[tix]->Fill(track.pt(), corr); + fhN1_vsZEtaPhiPt[tix]->Fill(zvtx, GetEtaPhiIndex(track) + 0.5, track.pt(), corr); + fhSum1Pt_vsZEtaPhiPt[tix]->Fill(zvtx, GetEtaPhiIndex(track) + 0.5, track.pt(), corr); + } + } + + /// \brief fills the singles histograms in pair execution mode + /// \param passedtracks filtered table with the tracks associated to the passed index + /// \param tix index, in the singles histogram bank, for the passed filetered track table + /// \param cmul centrality - multiplicity for the collision being analyzed + template + void processTracks(TrackListObject const& passedtracks, int tix, float cmul) + { + /* process magnitudes */ + double n1 = 0; ///< weighted number of track 1 tracks for current collision + double sum1Pt = 0; ///< accumulated sum of weighted track 1 \f$p_T\f$ for current collision + double n1nw = 0; ///< not weighted number of track 1 tracks for current collision + double sum1Ptnw = 0; ///< accumulated sum of not weighted track 1 \f$p_T\f$ for current collision + for (auto& track : passedtracks) { + double corr = 1.0; /* TODO: track correction weights */ + n1 += corr; + sum1Pt += track.pt() * corr; + n1nw += 1; + sum1Ptnw += track.pt(); + + fhN1_vsEtaPhi[tix]->Fill(track.eta(), GetShiftedPhi(track.phi()), corr); + fhSum1Pt_vsEtaPhi[tix]->Fill(track.eta(), GetShiftedPhi(track.phi()), track.pt() * corr); + } + fhN1_vsC[tix]->Fill(cmul, n1); + fhSum1Pt_vsC[tix]->Fill(cmul, sum1Pt); + fhN1nw_vsC[tix]->Fill(cmul, n1nw); + fhSum1Ptnw_vsC[tix]->Fill(cmul, sum1Ptnw); + } + + /// \brief fills the pair histograms in pair execution mode + /// \param trks1 filtered table with the tracks associated to the first track in the pair + /// \param trks2 filtered table with the tracks associated to the second track in the pair + /// \param pix index, in the track combination histogram bank, for the passed filetered track tables + /// \param cmul centrality - multiplicity for the collision being analyzed + /// Be aware that at least in half of the cases traks1 and trks2 will have the same content + template + void processTrackPairs(TrackListObject const& trks1, TrackListObject const& trks2, int pix, float cmul) + { + /* process pair magnitudes */ + double n2 = 0; ///< weighted number of track 1 track 2 pairs for current collision + double sum2PtPt = 0; ///< accumulated sum of weighted track 1 track 2 \f${p_T}_1 {p_T}_2\f$ for current collision + double sum2DptDpt = 0; ///< accumulated sum of weighted number of track 1 tracks times weighted track 2 \f$p_T\f$ for current collision + double n2nw = 0; ///< not weighted number of track1 track 2 pairs for current collision + double sum2PtPtnw = 0; ///< accumulated sum of not weighted track 1 track 2 \f${p_T}_1 {p_T}_2\f$ for current collision + double sum2DptDptnw = 0; ///< accumulated sum of not weighted number of track 1 tracks times not weighted track 2 \f$p_T\f$ for current collision + for (auto& track1 : trks1) { + double ptavg_1 = 0.0; /* TODO: load ptavg_1 for eta1, phi1 bin */ + double corr1 = 1.0; /* TODO: track correction weights */ + for (auto& track2 : trks2) { + /* checkiing the same track id condition */ + if (track1 == track2) { + /* exclude autocorrelations */ + continue; + } else { + /* process pair magnitudes */ + double ptavg_2 = 0.0; /* TODO: load ptavg_2 for eta2, phi2 bin */ + double corr2 = 1.0; /* TODO: track correction weights */ + double corr = corr1 * corr2; + double dptdpt = (track1.pt() - ptavg_1) * (track2.pt() - ptavg_2); + n2 += corr; + sum2PtPt += track1.pt() * track2.pt() * corr; + sum2DptDpt += corr * dptdpt; + n2nw += 1; + sum2PtPtnw += track1.pt() * track2.pt(); + sum2DptDptnw += dptdpt; + /* get the global bin for filling the differential histograms */ + int globalbin = GetDEtaDPhiGlobalIndex(track1, track2); + fhN2_vsDEtaDPhi[pix]->AddBinContent(globalbin, corr); + fhSum2DptDpt_vsDEtaDPhi[pix]->AddBinContent(globalbin, corr * dptdpt); + fhSum2PtPt_vsDEtaDPhi[pix]->AddBinContent(globalbin, track1.pt() * track2.pt() * corr); + fhN2_vsPtPt[pix]->Fill(track1.pt(), track2.pt(), corr); + } + } + } + fhN2_vsC[pix]->Fill(cmul, n2); + fhSum2PtPt_vsC[pix]->Fill(cmul, sum2PtPt); + fhSum2DptDpt_vsC[pix]->Fill(cmul, sum2DptDpt); + fhN2nw_vsC[pix]->Fill(cmul, n2nw); + fhSum2PtPtnw_vsC[pix]->Fill(cmul, sum2PtPtnw); + fhSum2DptDptnw_vsC[pix]->Fill(cmul, sum2DptDptnw); + /* let's also update the number of entries in the differential histograms */ + fhN2_vsDEtaDPhi[pix]->SetEntries(fhN2_vsDEtaDPhi[pix]->GetEntries() + n2); + fhSum2DptDpt_vsDEtaDPhi[pix]->SetEntries(fhSum2DptDpt_vsDEtaDPhi[pix]->GetEntries() + n2); + fhSum2PtPt_vsDEtaDPhi[pix]->SetEntries(fhSum2PtPt_vsDEtaDPhi[pix]->GetEntries() + n2); + } + + void init(TList* fOutputList) + { + using namespace correlationstask; + + /* create the histograms */ + Bool_t oldstatus = TH1::AddDirectoryStatus(); + TH1::AddDirectory(kFALSE); + + if (!processpairs) { + for (int i = 0; i < 2; ++i) { + /* histograms for each track, one and two */ + fhN1_vsPt[i] = new TH1F(TString::Format("n1_%s_vsPt", tname[i]).Data(), + TString::Format("#LT n_{1} #GT;p_{t,%s} (GeV/c);#LT n_{1} #GT", tname[i]).Data(), + ptbins, ptlow, ptup); + /* we don't want the Sumw2 structure being created here */ + bool defSumw2 = TH1::GetDefaultSumw2(); + TH1::SetDefaultSumw2(false); + fhN1_vsZEtaPhiPt[i] = new TH3F(TString::Format("n1_%s_vsZ_vsEtaPhi_vsPt", tname[i]).Data(), + TString::Format("#LT n_{1} #GT;vtx_{z};#eta_{%s}#times#varphi_{%s};p_{t,%s} (GeV/c)", tname[i], tname[i], tname[i]).Data(), + zvtxbins, zvtxlow, zvtxup, etabins * phibins, 0.0, double(etabins * phibins), ptbins, ptlow, ptup); + fhSum1Pt_vsZEtaPhiPt[i] = new TH3F(TString::Format("sumPt1_%s_vsZ_vsEtaPhi_vsPt", tname[i]).Data(), + TString::Format("#LT #Sigma p_{t,%s}#GT;vtx_{z};#eta_{%s}#times#varphi_{%s};p_{t,%s} (GeV/c)", tname[i], tname[i], tname[i], tname[i]).Data(), + zvtxbins, zvtxlow, zvtxup, etabins * phibins, 0.0, double(etabins * phibins), ptbins, ptlow, ptup); + /* we return it back to previuos state */ + TH1::SetDefaultSumw2(defSumw2); + + /* the statistical uncertainties will be estimated by the subsamples method so let's get rid of the error tracking */ + fhN1_vsZEtaPhiPt[i]->SetBit(TH1::kIsNotW); + fhN1_vsZEtaPhiPt[i]->Sumw2(false); + fhSum1Pt_vsZEtaPhiPt[i]->SetBit(TH1::kIsNotW); + fhSum1Pt_vsZEtaPhiPt[i]->Sumw2(false); + + fOutputList->Add(fhN1_vsPt[i]); + fOutputList->Add(fhN1_vsZEtaPhiPt[i]); + fOutputList->Add(fhSum1Pt_vsZEtaPhiPt[i]); + } + } else { + for (int i = 0; i < 2; ++i) { + /* histograms for each track, one and two */ + fhN1_vsEtaPhi[i] = new TH2F(TString::Format("n1_%s_vsEtaPhi", tname[i]).Data(), + TString::Format("#LT n_{1} #GT;#eta_{%s};#varphi_{%s} (radian);#LT n_{1} #GT", tname[i], tname[i]).Data(), + etabins, etalow, etaup, phibins, philow, phiup); + fhSum1Pt_vsEtaPhi[i] = new TH2F(TString::Format("sumPt_%s_vsEtaPhi", tname[i]).Data(), + TString::Format("#LT #Sigma p_{t,%s} #GT;#eta_{%s};#varphi_{%s} (radian);#LT #Sigma p_{t,%s} #GT (GeV/c)", + tname[i], tname[i], tname[i], tname[i]) + .Data(), + etabins, etalow, etaup, phibins, philow, phiup); + fhN1_vsC[i] = new TProfile(TString::Format("n1_%s_vsM", tname[i]).Data(), + TString::Format("#LT n_{1} #GT (weighted);Centrality (%%);#LT n_{1} #GT").Data(), + 100, 0.0, 100.0); + fhSum1Pt_vsC[i] = new TProfile(TString::Format("sumPt_%s_vsM", tname[i]), + TString::Format("#LT #Sigma p_{t,%s} #GT (weighted);Centrality (%%);#LT #Sigma p_{t,%s} #GT (GeV/c)", tname[i], tname[i]).Data(), + 100, 0.0, 100.0); + fhN1nw_vsC[i] = new TProfile(TString::Format("n1Nw_%s_vsM", tname[i]).Data(), + TString::Format("#LT n_{1} #GT;Centrality (%%);#LT n_{1} #GT").Data(), + 100, 0.0, 100.0); + fhSum1Ptnw_vsC[i] = new TProfile(TString::Format("sumPtNw_%s_vsM", tname[i]).Data(), + TString::Format("#LT #Sigma p_{t,%s} #GT;Centrality (%%);#LT #Sigma p_{t,%s} #GT (GeV/c)", tname[i], tname[i]).Data(), 100, 0.0, 100.0); + fOutputList->Add(fhN1_vsEtaPhi[i]); + fOutputList->Add(fhSum1Pt_vsEtaPhi[i]); + fOutputList->Add(fhN1_vsC[i]); + fOutputList->Add(fhSum1Pt_vsC[i]); + fOutputList->Add(fhN1nw_vsC[i]); + fOutputList->Add(fhSum1Ptnw_vsC[i]); + } + + for (int i = 0; i < nTrackPairs; ++i) { + /* histograms for each track pair combination */ + /* we don't want the Sumw2 structure being created here */ + bool defSumw2 = TH1::GetDefaultSumw2(); + TH1::SetDefaultSumw2(false); + const char* pname = trackPairsNames[i]; + fhN2_vsDEtaDPhi[i] = new TH2F(TString::Format("n2_12_vsDEtaDPhi_%s", pname), TString::Format("#LT n_{2} #GT (%s);#Delta#eta;#Delta#varphi;#LT n_{2} #GT", pname), + deltaetabins, deltaetalow, deltaetaup, deltaphibins, deltaphilow, deltaphiup); + fhSum2PtPt_vsDEtaDPhi[i] = new TH2F(TString::Format("sumPtPt_12_vsDEtaDPhi_%s", pname), TString::Format("#LT #Sigma p_{t,1}p_{t,2} #GT (%s);#Delta#eta;#Delta#varphi;#LT #Sigma p_{t,1}p_{t,2} #GT (GeV^{2})", pname), + deltaetabins, deltaetalow, deltaetaup, deltaphibins, deltaphilow, deltaphiup); + fhSum2DptDpt_vsDEtaDPhi[i] = new TH2F(TString::Format("sumDptDpt_12_vsDEtaDPhi_%s", pname), TString::Format("#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (%s);#Delta#eta;#Delta#varphi;#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (GeV^{2})", pname), + deltaetabins, deltaetalow, deltaetaup, deltaphibins, deltaphilow, deltaphiup); + /* we return it back to previuos state */ + TH1::SetDefaultSumw2(defSumw2); + + fhN2_vsPtPt[i] = new TH2F(TString::Format("n2_12_vsPtVsPt_%s", pname), TString::Format("#LT n_{2} #GT (%s);p_{t,1} (GeV/c);p_{t,2} (GeV/c);#LT n_{2} #GT", pname), + ptbins, ptlow, ptup, ptbins, ptlow, ptup); + + fhN2_vsC[i] = new TProfile(TString::Format("n2_12_vsM_%s", pname), TString::Format("#LT n_{2} #GT (%s) (weighted);Centrality (%%);#LT n_{2} #GT", pname), 100, 0.0, 100.0); + fhSum2PtPt_vsC[i] = new TProfile(TString::Format("sumPtPt_12_vsM_%s", pname), TString::Format("#LT #Sigma p_{t,1}p_{t,2} #GT (%s) (weighted);Centrality (%%);#LT #Sigma p_{t,1}p_{t,2} #GT (GeV^{2})", pname), 100, 0.0, 100.0); + fhSum2DptDpt_vsC[i] = new TProfile(TString::Format("sumDptDpt_12_vsM_%s", pname), TString::Format("#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (%s) (weighted);Centrality (%%);#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (GeV^{2})", pname), 100, 0.0, 100.0); + fhN2nw_vsC[i] = new TProfile(TString::Format("n2Nw_12_vsM_%s", pname), TString::Format("#LT n_{2} #GT (%s);Centrality (%%);#LT n_{2} #GT", pname), 100, 0.0, 100.0); + fhSum2PtPtnw_vsC[i] = new TProfile(TString::Format("sumPtPtNw_12_vsM_%s", pname), TString::Format("#LT #Sigma p_{t,1}p_{t,2} #GT (%s);Centrality (%%);#LT #Sigma p_{t,1}p_{t,2} #GT (GeV^{2})", pname), 100, 0.0, 100.0); + fhSum2DptDptnw_vsC[i] = new TProfile(TString::Format("sumDptDptNw_12_vsM_%s", pname), TString::Format("#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (%s);Centrality (%%);#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (GeV^{2})", pname), 100, 0.0, 100.0); + + /* the statistical uncertainties will be estimated by the subsamples method so let's get rid of the error tracking */ + fhN2_vsDEtaDPhi[i]->SetBit(TH1::kIsNotW); + fhN2_vsDEtaDPhi[i]->Sumw2(false); + fhSum2PtPt_vsDEtaDPhi[i]->SetBit(TH1::kIsNotW); + fhSum2PtPt_vsDEtaDPhi[i]->Sumw2(false); + fhSum2DptDpt_vsDEtaDPhi[i]->SetBit(TH1::kIsNotW); + fhSum2DptDpt_vsDEtaDPhi[i]->Sumw2(false); + + fOutputList->Add(fhN2_vsDEtaDPhi[i]); + fOutputList->Add(fhSum2PtPt_vsDEtaDPhi[i]); + fOutputList->Add(fhSum2DptDpt_vsDEtaDPhi[i]); + fOutputList->Add(fhN2_vsPtPt[i]); + fOutputList->Add(fhN2_vsC[i]); + fOutputList->Add(fhSum2PtPt_vsC[i]); + fOutputList->Add(fhSum2DptDpt_vsC[i]); + fOutputList->Add(fhN2nw_vsC[i]); + fOutputList->Add(fhSum2PtPtnw_vsC[i]); + fOutputList->Add(fhSum2DptDptnw_vsC[i]); + } + } + TH1::AddDirectory(oldstatus); + } + }; // DataCollectingEngine + + /* the data memebers for this task */ + /* the centrality / multiplicity limits for collecting data in this task instance */ + int ncmranges = 0; + float* fCentMultMin = nullptr; + float* fCentMultMax = nullptr; + + /* the data collecting engine instances */ + DataCollectingEngine** dataCE; + + Configurable cfgProcessPairs{"processpairs", false, "Process pairs: false = no, just singles, true = yes, process pairs"}; + Configurable cfgCentSpec{"centralities", "00-05,05-10,10-20,20-30,30-40,40-50,50-60,60-70,70-80", "Centrality/multiplicity ranges in min-max separated by commas"}; + + Configurable cfgBinning{"binning", + {28, -7.0, 7.0, 18, 0.2, 2.0, 16, -0.8, 0.8, 72, 0.5}, + "triplets - nbins, min, max - for z_vtx, pT, eta and phi, binning plus bin fraction of phi origin shift"}; + + OutputObj fOutput{"DptDptCorrelationsData", OutputObjHandlingPolicy::AnalysisObject}; + + Filter onlyacceptedevents = (aod::dptdptcorrelations::eventaccepted == (uint8_t) true); + Filter onlyacceptedtracks = ((aod::dptdptcorrelations::trackacceptedasone == (uint8_t) true) or (aod::dptdptcorrelations::trackacceptedastwo == (uint8_t) true)); + + Partition Tracks1 = aod::dptdptcorrelations::trackacceptedasone == (uint8_t) true; + Partition Tracks2 = aod::dptdptcorrelations::trackacceptedastwo == (uint8_t) true; + + void init(InitContext const&) + { + using namespace correlationstask; + + /* update with the configurable values */ + ptbins = cfgBinning->mPTbins; + ptlow = cfgBinning->mPTmin; + ptup = cfgBinning->mPTmax; + etabins = cfgBinning->mEtabins; + etalow = cfgBinning->mEtamin; + etaup = cfgBinning->mEtamax; + zvtxbins = cfgBinning->mZVtxbins; + zvtxlow = cfgBinning->mZVtxmin; + zvtxup = cfgBinning->mZVtxmax; + phibins = cfgBinning->mPhibins; + philow = 0.0f; + phiup = M_PI * 2; + phibinshift = cfgBinning->mPhibinshift; + processpairs = cfgProcessPairs.value; + /* update the potential binning change */ + etabinwidth = (etaup - etalow) / float(etabins); + phibinwidth = (phiup - philow) / float(phibins); + + /* the differential bining */ + deltaetabins = etabins * 2 - 1; + deltaetalow = etalow - etaup, deltaetaup = etaup - etalow; + deltaetabinwidth = (deltaetaup - deltaetalow) / float(deltaetabins); + deltaphibins = phibins; + deltaphibinwidth = M_PI * 2 / deltaphibins; + deltaphilow = 0.0 - deltaphibinwidth / 2.0; + deltaphiup = M_PI * 2 - deltaphibinwidth / 2.0; + + /* create the output directory which will own the task output */ + TList* fGlobalOutputList = new TList(); + fGlobalOutputList->SetName("CorrelationsDataReco"); + fGlobalOutputList->SetOwner(true); + fOutput.setObject(fGlobalOutputList); + + /* incorporate configuration parameters to the output */ + fGlobalOutputList->Add(new TParameter("NoBinsVertexZ", zvtxbins, 'f')); + fGlobalOutputList->Add(new TParameter("NoBinsPt", ptbins, 'f')); + fGlobalOutputList->Add(new TParameter("NoBinsEta", etabins, 'f')); + fGlobalOutputList->Add(new TParameter("NoBinsPhi", phibins, 'f')); + fGlobalOutputList->Add(new TParameter("MinVertexZ", zvtxlow, 'f')); + fGlobalOutputList->Add(new TParameter("MaxVertexZ", zvtxup, 'f')); + fGlobalOutputList->Add(new TParameter("MinPt", ptlow, 'f')); + fGlobalOutputList->Add(new TParameter("MaxPt", ptup, 'f')); + fGlobalOutputList->Add(new TParameter("MinEta", etalow, 'f')); + fGlobalOutputList->Add(new TParameter("MaxEta", etaup, 'f')); + fGlobalOutputList->Add(new TParameter("MinPhi", philow, 'f')); + fGlobalOutputList->Add(new TParameter("MaxPhi", phiup, 'f')); + fGlobalOutputList->Add(new TParameter("PhiBinShift", phibinshift, 'f')); + fGlobalOutputList->Add(new TParameter("DifferentialOutput", true, 'f')); + + /* after the parameters dump the proper phi limits are set according to the phi shift */ + phiup = phiup - phibinwidth * phibinshift; + philow = philow - phibinwidth * phibinshift; + + /* create the data collecting engine instances according to the configured centrality/multiplicity ranges */ + { + TObjArray* tokens = TString(cfgCentSpec.value.c_str()).Tokenize(","); + ncmranges = tokens->GetEntries(); + fCentMultMin = new float[ncmranges]; + fCentMultMax = new float[ncmranges]; + dataCE = new DataCollectingEngine*[ncmranges]; + + for (int i = 0; i < ncmranges; ++i) { + float cmmin = 0.0f; + float cmmax = 0.0f; + sscanf(tokens->At(i)->GetName(), "%f-%f", &cmmin, &cmmax); + fCentMultMin[i] = cmmin; + fCentMultMax[i] = cmmax; + dataCE[i] = new DataCollectingEngine(); + + /* crete the output list for the current centrality range */ + TList* fOutputList = new TList(); + fOutputList->SetName(TString::Format("DptDptCorrelationsData-%s", tokens->At(i)->GetName())); + fOutputList->SetOwner(true); + /* init the data collection instance */ + dataCE[i]->init(fOutputList); + fGlobalOutputList->Add(fOutputList); + } + delete tokens; + for (int i = 0; i < ncmranges; ++i) { + LOGF(INFO, " centrality/multipliicty range: %d, low limit: %f, up limit: %f", i, fCentMultMin[i], fCentMultMax[i]); + } + } + } + + void process(soa::Filtered>::iterator const& collision, aod::FilteredTracks const& tracks) + { + using namespace correlationstask; + + /* locate the data collecting engine for the collision centrality/multiplicity */ + int ixDCE = 0; + float cm = collision.centmult(); + bool rgfound = false; + for (int i = 0; i < ncmranges; ++i) { + if (cm < fCentMultMax[i]) { + rgfound = true; + ixDCE = i; + break; + } + } + + if (rgfound) { + if (not processpairs) { + /* process single tracks */ + dataCE[ixDCE]->processSingles(Tracks1, 0, collision.posZ()); /* track one */ + dataCE[ixDCE]->processSingles(Tracks2, 1, collision.posZ()); /* track two */ + } else { + /* process track magnitudes */ + /* TODO: the centrality should be chosen non detector dependent */ + dataCE[ixDCE]->processTracks(Tracks1, 0, collision.centmult()); /* track one */ + dataCE[ixDCE]->processTracks(Tracks2, 1, collision.centmult()); /* track one */ + /* process pair magnitudes */ + dataCE[ixDCE]->processTrackPairs(Tracks1, Tracks1, kOO, collision.centmult()); + dataCE[ixDCE]->processTrackPairs(Tracks1, Tracks2, kOT, collision.centmult()); + dataCE[ixDCE]->processTrackPairs(Tracks2, Tracks1, kTO, collision.centmult()); + dataCE[ixDCE]->processTrackPairs(Tracks2, Tracks2, kTT, collision.centmult()); + } + } + } +}; + +// Task for building correlations +struct TracksAndEventClassificationQA { + + Configurable cfg{"mycfg", {"mycfg", 3, 2.0f}, "A Configurable Object, default mycfg.x=3, mycfg.y=2.0"}; + + OutputObj fTracksOne{TH1F("TracksOne", "Tracks as track one;number of tracks;events", 1500, 0.0, 1500.0)}; + OutputObj fTracksTwo{TH1F("TracksTwo", "Tracks as track two;number of tracks;events", 1500, 0.0, 1500.0)}; + OutputObj fTracksOneAndTwo{TH1F("TracksOneAndTwo", "Tracks as track one and as track two;number of tracks;events", 1500, 0.0, 1500.0)}; + OutputObj fTracksNone{TH1F("TracksNone", "Not selected tracks;number of tracks;events", 1500, 0.0, 1500.0)}; + OutputObj fTracksOneUnsel{TH1F("TracksOneUnsel", "Tracks as track one;number of tracks;events", 1500, 0.0, 1500.0)}; + OutputObj fTracksTwoUnsel{TH1F("TracksTwoUnsel", "Tracks as track two;number of tracks;events", 1500, 0.0, 1500.0)}; + OutputObj fTracksOneAndTwoUnsel{TH1F("TracksOneAndTwoUnsel", "Tracks as track one and as track two;number of tracks;events", 1500, 0.0, 1500.0)}; + OutputObj fTracksNoneUnsel{TH1F("TracksNoneUnsel", "Not selected tracks;number of tracks;events", 1500, 0.0, 1500.0)}; + OutputObj fSelectedEvents{TH1F("SelectedEvents", "Selected events;;events", 2, 0.0, 2.0)}; + + void init(InitContext const&) + { + fSelectedEvents->GetXaxis()->SetBinLabel(1, "Not selected events"); + fSelectedEvents->GetXaxis()->SetBinLabel(2, "Selected events"); + } + + Filter onlyacceptedevents = (aod::dptdptcorrelations::eventaccepted == (uint8_t) true); + Filter onlyacceptedtracks = ((aod::dptdptcorrelations::trackacceptedasone == (uint8_t) true) or (aod::dptdptcorrelations::trackacceptedastwo == (uint8_t) true)); + + void process(soa::Filtered>::iterator const& collision, + soa::Filtered> const& tracks) + { + if (collision.eventaccepted() != (uint8_t) true) { + fSelectedEvents->Fill(0.5); + } else { + fSelectedEvents->Fill(1.5); + } + + int ntracks_one = 0; + int ntracks_two = 0; + int ntracks_one_and_two = 0; + int ntracks_none = 0; + for (auto& track : tracks) { + if ((track.trackacceptedasone() != (uint8_t) true) and (track.trackacceptedastwo() != (uint8_t) true)) { + ntracks_none++; + } + if ((track.trackacceptedasone() == (uint8_t) true) and (track.trackacceptedastwo() == (uint8_t) true)) { + ntracks_one_and_two++; + } + if (track.trackacceptedasone() == (uint8_t) true) { + ntracks_one++; + } + if (track.trackacceptedastwo() == (uint8_t) true) { + ntracks_two++; + } + } + if (collision.eventaccepted() != (uint8_t) true) { + /* control for non selected events */ + fTracksOneUnsel->Fill(ntracks_one); + fTracksTwoUnsel->Fill(ntracks_two); + fTracksNoneUnsel->Fill(ntracks_none); + fTracksOneAndTwoUnsel->Fill(ntracks_one_and_two); + } else { + fTracksOne->Fill(ntracks_one); + fTracksTwo->Fill(ntracks_two); + fTracksNone->Fill(ntracks_none); + fTracksOneAndTwo->Fill(ntracks_one_and_two); + } + } +}; + +WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) +{ + WorkflowSpec workflow{ + adaptAnalysisTask(cfgc), + adaptAnalysisTask(cfgc), + adaptAnalysisTask(cfgc)}; + return workflow; +} From 3d7bf78847055e5e16f41b8ddb88cc60cdd36a71 Mon Sep 17 00:00:00 2001 From: sstiefel19 <55794986+sstiefel19@users.noreply.github.com> Date: Tue, 6 Jul 2021 21:17:11 +0200 Subject: [PATCH 092/314] add mc version of gammaTask and event cut histogram (#6588) --- Analysis/Tasks/PWGGA/CMakeLists.txt | 4 + Analysis/Tasks/PWGGA/gammaConversions.cxx | 82 +---- Analysis/Tasks/PWGGA/gammaConversionsmc.cxx | 379 ++++++++++++++++++++ 3 files changed, 402 insertions(+), 63 deletions(-) create mode 100644 Analysis/Tasks/PWGGA/gammaConversionsmc.cxx diff --git a/Analysis/Tasks/PWGGA/CMakeLists.txt b/Analysis/Tasks/PWGGA/CMakeLists.txt index a545f050c4943..726c96a9cad65 100644 --- a/Analysis/Tasks/PWGGA/CMakeLists.txt +++ b/Analysis/Tasks/PWGGA/CMakeLists.txt @@ -2,3 +2,7 @@ o2_add_dpl_workflow(gammaconversions SOURCES gammaConversions.cxx PUBLIC_LINK_LIBRARIES O2::Framework O2::DetectorsBase O2::AnalysisDataModel O2::AnalysisCore O2::DetectorsVertexing COMPONENT_NAME Analysis) +o2_add_dpl_workflow(gammaconversionsmc + SOURCES gammaConversionsmc.cxx + PUBLIC_LINK_LIBRARIES O2::Framework O2::DetectorsBase O2::AnalysisDataModel O2::AnalysisCore O2::DetectorsVertexing + COMPONENT_NAME Analysis) diff --git a/Analysis/Tasks/PWGGA/gammaConversions.cxx b/Analysis/Tasks/PWGGA/gammaConversions.cxx index 1ac47cb816cc3..f0ae3af109dc1 100644 --- a/Analysis/Tasks/PWGGA/gammaConversions.cxx +++ b/Analysis/Tasks/PWGGA/gammaConversions.cxx @@ -13,6 +13,7 @@ #include "Framework/AnalysisDataModel.h" #include "AnalysisDataModel/EventSelection.h" +#include "AnalysisDataModel/Centrality.h" #include "AnalysisDataModel/StrangenessTables.h" #include "AnalysisDataModel/HFSecondaryVertex.h" // for BigTracks @@ -30,21 +31,18 @@ using namespace o2; using namespace o2::framework; using namespace o2::framework::expressions; -using collisionIt = aod::Collisions::iterator; using collisionEvSelIt = soa::Join::iterator; - using tracksAndTPCInfo = soa::Join; -using tracksAndTPCInfoMC = soa::Join; -void customize(std::vector& workflowOptions) -{ - ConfigParamSpec optionDoMC{"doMC", VariantType::Bool, false, {"Use MC info"}}; - workflowOptions.push_back(optionDoMC); -} #include "Framework/runDataProcessing.h" struct GammaConversions { + Configurable fDoEventSel{"fDoEventSel", 0, "demand kINT7 and sel7 for events"}; + + Configurable fCentMin{"fCentMin", 0.0, "lower bound of centrality selection"}; + Configurable fCentMax{"fCentMax", 100.0, "upper bound of centrality selection"}; + Configurable fSinglePtCut{"fSinglePtCut", 0.04, "minimum daughter track pt"}; Configurable fEtaCut{"fEtaCut", 0.8, "accepted eta range"}; @@ -79,6 +77,7 @@ struct GammaConversions { HistogramRegistry registry{ "registry", { + {"hEvents", "hEvents", {HistType::kTH1F, {{13, -0.5f, 11.5f}}}}, {"IsPhotonSelected", "IsPhotonSelected", {HistType::kTH1F, {{13, -0.5f, 11.5f}}}}, {"beforeCuts/hPtRec", "hPtRec_before", {HistType::kTH1F, {{100, 0.0f, 25.0f}}}}, @@ -95,7 +94,7 @@ struct GammaConversions { {"hTPCdEdxSigPi", "hTPCdEdxSigPi", {HistType::kTH2F, {{150, 0.03f, 20.f}, {400, -10.f, 10.f}}}}, {"hTPCdEdx", "hTPCdEdx", {HistType::kTH2F, {{150, 0.03f, 20.f}, {800, 0.f, 200.f}}}}, - {"hTPCFoundOverFindableCls", "hTPCFoundOverFindableCls", {HistType::kTH1F, {{100, 0.f, 1.f}}}}, + {"hTPCFoundOverFindableCls", "hTPCFoundOverFindableCls", {HistType::kTH1F, {{100, 0.f, 1.2f}}}}, {"hTPCCrossedRowsOverFindableCls", "hTPCCrossedRowsOverFindableCls", {HistType::kTH1F, {{100, 0.f, 1.5f}}}}, {"hArmenteros", "hArmenteros", {HistType::kTH2F, {{200, -1.f, 1.f}, {250, 0.f, 25.f}}}}, @@ -150,6 +149,12 @@ struct GammaConversions { for (size_t i = 0; i < fPhotCutsLabels.size(); ++i) { lXaxis->SetBinLabel(i + 1, fPhotCutsLabels[i]); } + + lXaxis = registry.get(HIST("hEvents"))->GetXaxis(); + lXaxis->SetBinLabel(1, "in"); + lXaxis->SetBinLabel(2, "int7||sel7"); + lXaxis->SetBinLabel(3, "cent"); + lXaxis->SetBinLabel(4, "out"); } template @@ -177,41 +182,16 @@ struct GammaConversions { return kTRUE; } - template - void processTruePhoton(const TV0& theV0, const TMC& theMcParticles) - { - auto lTrackPos = theV0.template posTrack_as(); //positive daughter - auto lTrackNeg = theV0.template negTrack_as(); //negative daughter - - // todo: verify it is enough to check only mother0 being equal - if (lTrackPos.mcParticle().mother0() > -1 && - lTrackPos.mcParticle().mother0() == lTrackNeg.mcParticle().mother0()) { - auto lMother = theMcParticles.iteratorAt(lTrackPos.mcParticle().mother0()); - - if (lMother.pdgCode() == 22) { - - registry.fill(HIST("resolutions/hPtRes"), theV0.pt() - lMother.pt()); - registry.fill(HIST("resolutions/hEtaRes"), theV0.eta() - lMother.eta()); - registry.fill(HIST("resolutions/hPhiRes"), theV0.phi() - lMother.phi()); - - TVector3 lConvPointRec(theV0.x(), theV0.y(), theV0.z()); - TVector3 lPosTrackVtxMC(lTrackPos.mcParticle().vx(), lTrackPos.mcParticle().vy(), lTrackPos.mcParticle().vz()); - // take the origin of the positive mc track as conversion point (should be identical with negative, verified this on a few photons) - TVector3 lConvPointMC(lPosTrackVtxMC); - - registry.fill(HIST("resolutions/hConvPointRRes"), lConvPointRec.Perp() - lConvPointMC.Perp()); - registry.fill(HIST("resolutions/hConvPointAbsoluteDistanceRes"), TVector3(lConvPointRec - lConvPointMC).Mag()); - } - } - } - void processData(collisionEvSelIt const& theCollision, aod::V0Datas const& theV0s, tracksAndTPCInfo const& theTracks) { - if (!theCollision.alias()[kINT7] || !theCollision.sel7()) { + registry.fill(HIST("hEvents"), 0); + if (fDoEventSel && (!theCollision.alias()[kINT7] || !theCollision.sel7())) { + registry.fill(HIST("hEvents"), 1); return; } + registry.fill(HIST("hEvents"), 3); for (auto& lV0 : theV0s) { if (!processPhoton(theCollision, lV0)) { @@ -220,23 +200,6 @@ struct GammaConversions { } } - void processMC(collisionIt const& theCollision, - aod::V0Datas const& theV0s, - tracksAndTPCInfoMC const& theTracks, - aod::McParticles const& theMcParticles) - { - //~ if (!theCollision.sel7()) { - //~ return; - //~ } - - for (auto& lV0 : theV0s) { - if (!processPhoton(theCollision, lV0)) { - continue; - } - processTruePhoton(lV0, theMcParticles); - } - } - template void fillHistogramsBeforeCuts(const T& theV0) { @@ -382,12 +345,5 @@ struct GammaConversions { WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) { - if (!cfgc.options().get("doMC")) { - return WorkflowSpec{ - adaptAnalysisTask(cfgc, Processes{&GammaConversions::processData}), - }; - } - return WorkflowSpec{ - adaptAnalysisTask(cfgc, Processes{&GammaConversions::processMC}), - }; + return WorkflowSpec{adaptAnalysisTask(cfgc, Processes{&GammaConversions::processData})}; } diff --git a/Analysis/Tasks/PWGGA/gammaConversionsmc.cxx b/Analysis/Tasks/PWGGA/gammaConversionsmc.cxx new file mode 100644 index 0000000000000..a624baa7d15c1 --- /dev/null +++ b/Analysis/Tasks/PWGGA/gammaConversionsmc.cxx @@ -0,0 +1,379 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "Framework/AnalysisTask.h" +#include "Framework/AnalysisDataModel.h" + +#include "AnalysisDataModel/EventSelection.h" +#include "AnalysisDataModel/Centrality.h" + +#include "AnalysisDataModel/StrangenessTables.h" +#include "AnalysisDataModel/HFSecondaryVertex.h" // for BigTracks + +#include "AnalysisDataModel/PID/PIDResponse.h" +#include "AnalysisDataModel/PID/PIDTPC.h" + +#include +#include + +#include +#include + +using namespace o2; +using namespace o2::framework; +using namespace o2::framework::expressions; + +using collisionEvSelIt = soa::Join::iterator; +using tracksAndTPCInfoMC = soa::Join; + +#include "Framework/runDataProcessing.h" + +struct GammaConversionsmc { + + Configurable fDoEventSel{"fDoEventSel", 0, "demand sel7 for events"}; + + Configurable fCentMin{"fCentMin", 0.0, "lower bound of centrality selection"}; + Configurable fCentMax{"fCentMax", 100.0, "upper bound of centrality selection"}; + + Configurable fSinglePtCut{"fSinglePtCut", 0.04, "minimum daughter track pt"}; + + Configurable fEtaCut{"fEtaCut", 0.8, "accepted eta range"}; + + Configurable fMinR{"fMinR", 5., "minimum conversion radius of the V0s"}; + Configurable fMaxR{"fMaxR", 180., "maximum conversion radius of the V0s"}; + + Configurable fPIDnSigmaBelowElectronLine{"fPIDnSigmaBelowElectronLine", -3., "minimum sigma electron PID for V0 daughter tracks"}; + + Configurable fPIDnSigmaAboveElectronLine{"fPIDnSigmaAboveElectronLine", 3., "maximum sigma electron PID for V0 daughter tracks"}; + + Configurable fPIDnSigmaAbovePionLine{"fPIDnSigmaAbovePionLine", 3., "minimum sigma to be over the pion line for low momentum tracks"}; //case 4: 3.0sigma, 1.0 sigma at high momentum + + Configurable fPIDnSigmaAbovePionLineHighP{"fPIDnSigmaAbovePionLineHighP", 1., "minimum sigma to be over the pion line for high momentum tracks"}; + + Configurable fPIDMinPnSigmaAbovePionLine{"fPIDMinPnSigmaAbovePionLine", 0.4, "minimum track momentum to apply any pion rejection"}; //case 7: // 0.4 GeV + + Configurable fPIDMaxPnSigmaAbovePionLine{"fPIDMaxPnSigmaAbovePionLine", 8., "border between low and high momentum pion rejection"}; //case 7: // 8. GeV + + Configurable fMinTPCFoundOverFindableCls{"fMinTPCNClsFoundOverFindable", 0.6, "minimum ratio found tpc clusters over findable"}; //case 9: // 0.6 + + Configurable fMinTPCCrossedRowsOverFindableCls{"fMinTPCCrossedRowsOverFindableCls", 0.0, "minimum ratio TPC crossed rows over findable clusters"}; + + Configurable fQtPtMax{"fQtPtMax", 0.11, "up to fQtMax, multiply the pt of the V0s by this value to get the maximum qt "}; + + Configurable fQtMax{"fQtMax", 0.040, "maximum qt"}; + Configurable fMaxPhotonAsymmetry{"fMaxPhotonAsymmetry", 0.95, "maximum photon asymetry"}; + Configurable fPsiPairCut{"fPsiPairCut", 0.1, "maximum psi angle of the track pair"}; + + Configurable fCosPAngleCut{"fCosPAngleCut", 0.85, "mimimum cosinus of the pointing angle"}; // case 4 + + HistogramRegistry registry{ + "registry", + { + {"hEvents", "hEvents", {HistType::kTH1F, {{13, -0.5f, 11.5f}}}}, + {"IsPhotonSelected", "IsPhotonSelected", {HistType::kTH1F, {{13, -0.5f, 11.5f}}}}, + + {"beforeCuts/hPtRec", "hPtRec_before", {HistType::kTH1F, {{100, 0.0f, 25.0f}}}}, + {"beforeCuts/hEtaRec", "hEtaRec_before", {HistType::kTH1F, {{1000, -2.f, 2.f}}}}, + {"beforeCuts/hPhiRec", "hEtaRec_before", {HistType::kTH1F, {{1000, 0.f, 2.f * M_PI}}}}, + {"beforeCuts/hConvPointR", "hConvPointR_before", {HistType::kTH1F, {{800, 0.f, 200.f}}}}, + + {"hPtRec", "hPtRec", {HistType::kTH1F, {{100, 0.0f, 25.0f}}}}, + {"hEtaRec", "hEtaRec", {HistType::kTH1F, {{1000, -2.f, 2.f}}}}, + {"hPhiRec", "hEtaRec", {HistType::kTH1F, {{1000, 0.f, 2.f * M_PI}}}}, + {"hConvPointR", "hConvPointR", {HistType::kTH1F, {{800, 0.f, 200.f}}}}, + + {"hTPCdEdxSigEl", "hTPCdEdxSigEl", {HistType::kTH2F, {{150, 0.03f, 20.f}, {400, -10.f, 10.f}}}}, + {"hTPCdEdxSigPi", "hTPCdEdxSigPi", {HistType::kTH2F, {{150, 0.03f, 20.f}, {400, -10.f, 10.f}}}}, + {"hTPCdEdx", "hTPCdEdx", {HistType::kTH2F, {{150, 0.03f, 20.f}, {800, 0.f, 200.f}}}}, + + {"hTPCFoundOverFindableCls", "hTPCFoundOverFindableCls", {HistType::kTH1F, {{100, 0.f, 1.2f}}}}, + {"hTPCCrossedRowsOverFindableCls", "hTPCCrossedRowsOverFindableCls", {HistType::kTH1F, {{100, 0.f, 1.5f}}}}, + + {"hArmenteros", "hArmenteros", {HistType::kTH2F, {{200, -1.f, 1.f}, {250, 0.f, 25.f}}}}, + {"hPsiPtRec", "hPsiPtRec", {HistType::kTH2F, {{500, -2.f, 2.f}, {100, 0.f, 25.f}}}}, + + {"hCosPAngle", "hCosPAngle", {HistType::kTH1F, {{1000, -1.f, 1.2f}}}}, + + // resolution histos + {"resolutions/hPtRes", "hPtRes_Rec-MC", {HistType::kTH1F, {{1000, -0.5f, 0.5f}}}}, + {"resolutions/hEtaRes", "hEtaRes_Rec-MC", {HistType::kTH1F, {{1000, -2.f, 2.f}}}}, + {"resolutions/hPhiRes", "hPhiRes_Rec-MC", {HistType::kTH1F, {{1000, -M_PI, M_PI}}}}, + + {"resolutions/hConvPointRRes", "hConvPointRRes_Rec-MC", {HistType::kTH1F, {{1000, -200.f, 200.f}}}}, + {"resolutions/hConvPointAbsoluteDistanceRes", "hConvPointAbsoluteDistanceRes", {HistType::kTH1F, {{1000, -0.0f, 200.f}}}}, + }, + }; + + enum photonCuts { + kPhotonIn = 0, + kTrackEta, + kTrackPt, + kElectronPID, + kPionRejLowMom, + kPionRejHighMom, + kTPCFoundOverFindableCls, + kTPCCrossedRowsOverFindableCls, + kV0Radius, + kArmenteros, + kPsiPair, + kCosinePA, + kPhotonOut + }; + + std::vector fPhotCutsLabels{ + "kPhotonIn", + "kTrackEta", + "kTrackPt", + "kElectronPID", + "kPionRejLowMom", + "kPionRejHighMom", + "kTPCFoundOverFindableCls", + "kTPCCrossedRowsOverFindableCls", + "kV0Radius", + "kArmenteros", + "kPsiPair", + "kCosinePA", + "kPhotonOut"}; + + void init(InitContext const&) + { + TAxis* lXaxis = registry.get(HIST("IsPhotonSelected"))->GetXaxis(); + for (size_t i = 0; i < fPhotCutsLabels.size(); ++i) { + lXaxis->SetBinLabel(i + 1, fPhotCutsLabels[i]); + } + + lXaxis = registry.get(HIST("hEvents"))->GetXaxis(); + lXaxis->SetBinLabel(1, "in"); + lXaxis->SetBinLabel(2, "int7||sel7"); + lXaxis->SetBinLabel(3, "cent"); + lXaxis->SetBinLabel(4, "out"); + } + + template + bool processPhoton(TCOLL const& theCollision, const TV0& theV0) + { + fillHistogramsBeforeCuts(theV0); + + auto lTrackPos = theV0.template posTrack_as(); //positive daughter + auto lTrackNeg = theV0.template negTrack_as(); //negative daughter + + // apply track cuts + if (!(trackPassesCuts(lTrackPos) && trackPassesCuts(lTrackNeg))) { + return kFALSE; + } + + float lV0CosinePA = theV0.v0cosPA(theCollision.posX(), theCollision.posY(), theCollision.posZ()); + + // apply photon cuts + if (!passesPhotonCuts(theV0, lV0CosinePA)) { + return kFALSE; + } + + fillHistogramsAfterCuts(theV0, lTrackPos, lTrackNeg, lV0CosinePA); + + return kTRUE; + } + + template + void processTruePhoton(const TV0& theV0, const TMC& theMcParticles) + { + auto lTrackPos = theV0.template posTrack_as(); //positive daughter + auto lTrackNeg = theV0.template negTrack_as(); //negative daughter + + // todo: verify it is enough to check only mother0 being equal + if (lTrackPos.mcParticle().mother0() > -1 && + lTrackPos.mcParticle().mother0() == lTrackNeg.mcParticle().mother0()) { + auto lMother = theMcParticles.iteratorAt(lTrackPos.mcParticle().mother0()); + + if (lMother.pdgCode() == 22) { + + registry.fill(HIST("resolutions/hPtRes"), theV0.pt() - lMother.pt()); + registry.fill(HIST("resolutions/hEtaRes"), theV0.eta() - lMother.eta()); + registry.fill(HIST("resolutions/hPhiRes"), theV0.phi() - lMother.phi()); + + TVector3 lConvPointRec(theV0.x(), theV0.y(), theV0.z()); + TVector3 lPosTrackVtxMC(lTrackPos.mcParticle().vx(), lTrackPos.mcParticle().vy(), lTrackPos.mcParticle().vz()); + // take the origin of the positive mc track as conversion point (should be identical with negative, verified this on a few photons) + TVector3 lConvPointMC(lPosTrackVtxMC); + + registry.fill(HIST("resolutions/hConvPointRRes"), lConvPointRec.Perp() - lConvPointMC.Perp()); + registry.fill(HIST("resolutions/hConvPointAbsoluteDistanceRes"), TVector3(lConvPointRec - lConvPointMC).Mag()); + } + } + } + + void processMC(collisionEvSelIt const& theCollision, + aod::V0Datas const& theV0s, + tracksAndTPCInfoMC const& theTracks, + aod::McParticles const& theMcParticles) + { + registry.fill(HIST("hEvents"), 0); + if (fDoEventSel && !theCollision.sel7()) { + registry.fill(HIST("hEvents"), 1); + return; + } + registry.fill(HIST("hEvents"), 3); + + for (auto& lV0 : theV0s) { + if (!processPhoton(theCollision, lV0)) { + continue; + } + processTruePhoton(lV0, theMcParticles); + } + } + + template + void fillHistogramsBeforeCuts(const T& theV0) + { + // fill some QA histograms before any cuts + registry.fill(HIST("beforeCuts/hPtRec"), theV0.pt()); + registry.fill(HIST("beforeCuts/hEtaRec"), theV0.eta()); + registry.fill(HIST("beforeCuts/hPhiRec"), theV0.phi()); + registry.fill(HIST("beforeCuts/hConvPointR"), theV0.v0radius()); + registry.fill(HIST("IsPhotonSelected"), kPhotonIn); + } + + template + bool trackPassesCuts(const T& theTrack) + { + + // single track eta cut + if (TMath::Abs(theTrack.eta()) > fEtaCut) { + registry.fill(HIST("IsPhotonSelected"), kTrackEta); + return kFALSE; + } + + // single track pt cut + if (theTrack.pt() < fSinglePtCut) { + registry.fill(HIST("IsPhotonSelected"), kTrackPt); + return kFALSE; + } + + if (!(selectionPIDTPC_track(theTrack))) { + return kFALSE; + } + + if (theTrack.tpcFoundOverFindableCls() < fMinTPCFoundOverFindableCls) { + registry.fill(HIST("IsPhotonSelected"), kTPCFoundOverFindableCls); + return kFALSE; + } + + if (theTrack.tpcCrossedRowsOverFindableCls() < fMinTPCCrossedRowsOverFindableCls) { + registry.fill(HIST("IsPhotonSelected"), kTPCCrossedRowsOverFindableCls); + return kFALSE; + } + + return kTRUE; + } + + template + bool passesPhotonCuts(const T& theV0, float theV0CosinePA) + { + if (theV0.v0radius() < fMinR || theV0.v0radius() > fMaxR) { + registry.fill(HIST("IsPhotonSelected"), kV0Radius); + return kFALSE; + } + + if (!ArmenterosQtCut(theV0.alpha(), theV0.qtarm(), theV0.pt())) { + registry.fill(HIST("IsPhotonSelected"), kArmenteros); + return kFALSE; + } + + if (TMath::Abs(theV0.psipair()) > fPsiPairCut) { + registry.fill(HIST("IsPhotonSelected"), kPsiPair); + return kFALSE; + } + + if (theV0CosinePA < fCosPAngleCut) { + registry.fill(HIST("IsPhotonSelected"), kCosinePA); + return kFALSE; + } + + return kTRUE; + } + + template + void fillHistogramsAfterCuts(const TV0& theV0, const TTRACK& theTrackPos, const TTRACK& theTrackNeg, float theV0CosinePA) + { + registry.fill(HIST("IsPhotonSelected"), kPhotonOut); + + registry.fill(HIST("hPtRec"), theV0.pt()); + registry.fill(HIST("hEtaRec"), theV0.eta()); + registry.fill(HIST("hPhiRec"), theV0.phi()); + registry.fill(HIST("hConvPointR"), theV0.v0radius()); + + registry.fill(HIST("hTPCdEdxSigEl"), theTrackNeg.p(), theTrackNeg.tpcNSigmaEl()); + registry.fill(HIST("hTPCdEdxSigEl"), theTrackPos.p(), theTrackPos.tpcNSigmaEl()); + registry.fill(HIST("hTPCdEdxSigPi"), theTrackNeg.p(), theTrackNeg.tpcNSigmaPi()); + registry.fill(HIST("hTPCdEdxSigPi"), theTrackPos.p(), theTrackPos.tpcNSigmaPi()); + + registry.fill(HIST("hTPCdEdx"), theTrackNeg.p(), theTrackNeg.tpcSignal()); + registry.fill(HIST("hTPCdEdx"), theTrackPos.p(), theTrackPos.tpcSignal()); + + registry.fill(HIST("hTPCFoundOverFindableCls"), theTrackNeg.tpcFoundOverFindableCls()); + registry.fill(HIST("hTPCFoundOverFindableCls"), theTrackPos.tpcFoundOverFindableCls()); + + registry.fill(HIST("hTPCCrossedRowsOverFindableCls"), theTrackNeg.tpcCrossedRowsOverFindableCls()); + registry.fill(HIST("hTPCCrossedRowsOverFindableCls"), theTrackPos.tpcCrossedRowsOverFindableCls()); + + registry.fill(HIST("hArmenteros"), theV0.alpha(), theV0.qtarm()); + registry.fill(HIST("hPsiPtRec"), theV0.psipair(), theV0.pt()); + + registry.fill(HIST("hCosPAngle"), theV0CosinePA); + } + + Bool_t ArmenterosQtCut(Double_t theAlpha, Double_t theQt, Double_t thePt) + { + // in AliPhysics this is the cut for if fDo2DQt && fDoQtGammaSelection == 2 + Float_t lQtMaxPtDep = fQtPtMax * thePt; + if (lQtMaxPtDep > fQtMax) { + lQtMaxPtDep = fQtMax; + } + if (!(TMath::Power(theAlpha / fMaxPhotonAsymmetry, 2) + TMath::Power(theQt / lQtMaxPtDep, 2) < 1)) { + return kFALSE; + } + return kTRUE; + } + + template + bool selectionPIDTPC_track(const T& theTrack) + { + // TPC Electron Line + if (theTrack.tpcNSigmaEl() < fPIDnSigmaBelowElectronLine || theTrack.tpcNSigmaEl() > fPIDnSigmaAboveElectronLine) { + registry.fill(HIST("IsPhotonSelected"), kElectronPID); + return kFALSE; + } + + // TPC Pion Line + if (theTrack.p() > fPIDMinPnSigmaAbovePionLine) { + // low pt Pion rej + if (theTrack.p() < fPIDMaxPnSigmaAbovePionLine) { + if (theTrack.tpcNSigmaEl() > fPIDnSigmaBelowElectronLine && theTrack.tpcNSigmaEl() < fPIDnSigmaAboveElectronLine && theTrack.tpcNSigmaPi() < fPIDnSigmaAbovePionLine) { + registry.fill(HIST("IsPhotonSelected"), kPionRejLowMom); + return kFALSE; + } + } + // High Pt Pion rej + else { + if (theTrack.tpcNSigmaEl() > fPIDnSigmaBelowElectronLine && theTrack.tpcNSigmaEl() < fPIDnSigmaAboveElectronLine && theTrack.tpcNSigmaPi() < fPIDnSigmaAbovePionLineHighP) { + registry.fill(HIST("IsPhotonSelected"), kPionRejHighMom); + return kFALSE; + } + } + } + return kTRUE; + } +}; + +WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) +{ + return WorkflowSpec{adaptAnalysisTask(cfgc, Processes{&GammaConversionsmc::processMC})}; +} From 9eb4f5ffa6e205802b927d5d5f2d80610fb92ad8 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Wed, 7 Jul 2021 01:38:33 +0200 Subject: [PATCH 093/314] DPL Analysis: correctly track consumed offers (#6600) --- .../Framework/ComputingQuotaEvaluator.h | 1 + .../include/Framework/ComputingQuotaOffer.h | 2 +- Framework/Core/src/ArrowSupport.cxx | 53 +++++++++++++++---- .../Core/src/ComputingQuotaEvaluator.cxx | 15 +++++- Framework/Core/src/DataProcessor.cxx | 9 +++- 5 files changed, 65 insertions(+), 15 deletions(-) diff --git a/Framework/Core/include/Framework/ComputingQuotaEvaluator.h b/Framework/Core/include/Framework/ComputingQuotaEvaluator.h index 98835cdca194a..12c3cd005fbc9 100644 --- a/Framework/Core/include/Framework/ComputingQuotaEvaluator.h +++ b/Framework/Core/include/Framework/ComputingQuotaEvaluator.h @@ -50,6 +50,7 @@ class ComputingQuotaEvaluator std::array mInfos; ServiceRegistry& mRegistry; uv_loop_t* mLoop; + uint64_t mTotalDisposedSharedMemory = 0; }; } // namespace o2::framework diff --git a/Framework/Core/include/Framework/ComputingQuotaOffer.h b/Framework/Core/include/Framework/ComputingQuotaOffer.h index 8610d24ea718f..316e7da8c24d0 100644 --- a/Framework/Core/include/Framework/ComputingQuotaOffer.h +++ b/Framework/Core/include/Framework/ComputingQuotaOffer.h @@ -72,7 +72,7 @@ using ComputingQuotaRequest = std::function&)>; +using ComputingQuotaConsumer = std::function&, std::function)>; } // namespace o2::framework diff --git a/Framework/Core/src/ArrowSupport.cxx b/Framework/Core/src/ArrowSupport.cxx index b41a4d0bf0448..58880f33e6ee5 100644 --- a/Framework/Core/src/ArrowSupport.cxx +++ b/Framework/Core/src/ArrowSupport.cxx @@ -22,7 +22,8 @@ #include "CommonMessageBackendsHelpers.h" #include -#include +#include "Headers/DataHeader.h" +#include "Headers/DataHeaderHelpers.h" #include @@ -54,7 +55,7 @@ static int64_t memLimit = 0; struct MetricIndices { size_t arrowBytesCreated = 0; - size_t readerBytesCreated = 0; + size_t shmOfferConsumed = 0; size_t arrowBytesDestroyed = 0; size_t arrowMessagesCreated = 0; size_t arrowMessagesDestroyed = 0; @@ -110,7 +111,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() DeviceMetricsInfo& driverMetrics, size_t timestamp) { int64_t totalBytesCreated = 0; - int64_t readerBytesCreated = 0; + int64_t shmOfferConsumed = 0; int64_t totalBytesDestroyed = 0; int64_t totalBytesExpired = 0; int64_t totalMessagesCreated = 0; @@ -118,7 +119,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() static RateLimitingState currentState = RateLimitingState::UNKNOWN; static auto stateMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "rate-limit-state"); static auto totalBytesCreatedMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "total-arrow-bytes-created"); - static auto readerBytesCreatedMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "reader-arrow-bytes-created"); + static auto shmOfferConsumedMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "shm-offer-bytes-consumed"); static auto unusedOfferedMemoryMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "unusedOfferedMemory"); static auto availableSharedMemoryMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "available-shared-memory"); static auto offeredSharedMemoryMetric = DeviceMetricsHelper::createNumericMetric(driverMetrics, "offered-shared-memory"); @@ -157,9 +158,19 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() auto& data = deviceMetrics.uint64Metrics.at(info.storeIdx); auto value = (int64_t)data.at((info.pos - 1) % data.size()); totalBytesCreated += value; - if (specs[mi].name == "internal-dpl-aod-reader") { - readerBytesCreated += value; - } + lastTimestamp = std::max(lastTimestamp, deviceMetrics.timestamps[index][(info.pos - 1) % data.size()]); + firstTimestamp = std::min(lastTimestamp, firstTimestamp); + } + } + { + size_t index = indices.shmOfferConsumed; + if (index < deviceMetrics.metrics.size()) { + hasMetrics = true; + changed |= deviceMetrics.changed.at(index); + MetricInfo info = deviceMetrics.metrics.at(index); + auto& data = deviceMetrics.uint64Metrics.at(info.storeIdx); + auto value = (int64_t)data.at((info.pos - 1) % data.size()); + shmOfferConsumed += value; lastTimestamp = std::max(lastTimestamp, deviceMetrics.timestamps[index][(info.pos - 1) % data.size()]); firstTimestamp = std::min(lastTimestamp, firstTimestamp); } @@ -207,7 +218,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() totalBytesCreatedMetric(driverMetrics, totalBytesCreated, timestamp); totalBytesDestroyedMetric(driverMetrics, totalBytesDestroyed, timestamp); totalBytesExpiredMetric(driverMetrics, totalBytesExpired, timestamp); - readerBytesCreatedMetric(driverMetrics, readerBytesCreated, timestamp); + shmOfferConsumedMetric(driverMetrics, shmOfferConsumed, timestamp); totalMessagesCreatedMetric(driverMetrics, totalMessagesCreated, timestamp); totalMessagesDestroyedMetric(driverMetrics, totalMessagesDestroyed, timestamp); totalBytesDeltaMetric(driverMetrics, totalBytesCreated - totalBytesExpired - totalBytesDestroyed, timestamp); @@ -253,7 +264,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() continue; } possibleOffer = std::min(MAX_QUANTUM_SHARED_MEMORY, availableSharedMemory); - LOGP(info, "Offering {}MB to {}", possibleOffer, availableSharedMemory, specs[candidate].id); + LOGP(info, "Offering {}MB out of {} to {}", possibleOffer, availableSharedMemory, specs[candidate].id); manager.queueMessage(specs[candidate].id.c_str(), fmt::format("/shm-offer {}", possibleOffer).data()); availableSharedMemory -= possibleOffer; offeredSharedMemory += possibleOffer; @@ -265,8 +276,24 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() lastDeviceOffered = lastCandidate + 1; } - int unusedOfferedMemory = (offeredSharedMemory - readerBytesCreated / 1000000); - availableSharedMemory = MAX_SHARED_MEMORY + ((totalBytesDestroyed + totalBytesExpired - totalBytesCreated) / 1000000) - unusedOfferedMemory; + // unusedOfferedMemory is the amount of memory which was offered and which we know it was + // not used so far. So we need to account for the amount which got actually read (readerBytesCreated) + // and the amount which we know was given back. + static int64_t lastShmOfferConsumed = 0; + static int64_t lastUnusedOfferedMemory = 0; + if (shmOfferConsumed != lastShmOfferConsumed) { + LOGP(INFO, "Offer consumed so far {}", shmOfferConsumed); + lastShmOfferConsumed = shmOfferConsumed; + } + int unusedOfferedMemory = (offeredSharedMemory - (totalBytesExpired + shmOfferConsumed) / 1000000); + if (lastUnusedOfferedMemory != unusedOfferedMemory) { + LOGP(INFO, "Unused offer {}", unusedOfferedMemory); + lastUnusedOfferedMemory = unusedOfferedMemory; + } + // availableSharedMemory is the amount of memory which we know is available to be offered. + // We subtract the amount which we know was already offered but it's unused and we then balance how + // much was created with how much was destroyed. + availableSharedMemory = MAX_SHARED_MEMORY + ((totalBytesDestroyed - totalBytesCreated) / 1000000) - unusedOfferedMemory; availableSharedMemoryMetric(driverMetrics, availableSharedMemory, timestamp); unusedOfferedMemoryMetric(driverMetrics, unusedOfferedMemory, timestamp); @@ -283,6 +310,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() } auto dh = o2::header::get(input.header); if (dh->serialization != o2::header::gSerializationMethodArrow) { + LOGP(INFO, "Message {}/{} is not of kind arrow, therefore we are not accounting its shared memory", dh->dataOrigin, dh->dataDescription); continue; } auto dph = o2::header::get(input.header); @@ -294,12 +322,15 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() } } if (forwarded) { + LOGP(INFO, "Message {}/{} is forwarded so we are not returning its memory.", dh->dataOrigin, dh->dataDescription); continue; } + LOGP(INFO, "Message {}/{} is being deleted. We will return {}MB.", dh->dataOrigin, dh->dataDescription, dh->payloadSize / 1000000.); totalBytes += dh->payloadSize; totalMessages += 1; } arrow->updateBytesDestroyed(totalBytes); + LOGP(INFO, "{}MB bytes being given back to reader, totaling {}MB", totalBytes / 1000000., arrow->bytesDestroyed() / 1000000.); arrow->updateMessagesDestroyed(totalMessages); auto& monitoring = ctx.services().get(); monitoring.send(Metric{(uint64_t)arrow->bytesDestroyed(), "arrow-bytes-destroyed"}.addTag(Key::Subsystem, monitoring::tags::Value::DPL)); diff --git a/Framework/Core/src/ComputingQuotaEvaluator.cxx b/Framework/Core/src/ComputingQuotaEvaluator.cxx index 32b38612bde5b..8b8e4e4a1f3b4 100644 --- a/Framework/Core/src/ComputingQuotaEvaluator.cxx +++ b/Framework/Core/src/ComputingQuotaEvaluator.cxx @@ -15,6 +15,8 @@ #include "Framework/DriverClient.h" #include "Framework/Monitoring.h" #include "Framework/Logger.h" +#include + #include #include #include @@ -162,7 +164,18 @@ bool ComputingQuotaEvaluator::selectOffer(int task, ComputingQuotaRequest const& void ComputingQuotaEvaluator::consume(int id, ComputingQuotaConsumer& consumer) { - consumer(id, mOffers); + using o2::monitoring::Metric; + using o2::monitoring::Monitoring; + using o2::monitoring::tags::Key; + using o2::monitoring::tags::Value; + // This will report how much of the offers has to be considered consumed. + // Notice that actual memory usage might be larger, because we can over + // allocate. + auto reportConsumedOffer = [&totalDisposedMemory = mTotalDisposedSharedMemory, &monitoring = mRegistry.get()](ComputingQuotaOffer const& accumulatedConsumed) { + totalDisposedMemory += accumulatedConsumed.sharedMemory; + monitoring.send(Metric{(uint64_t)totalDisposedMemory, "shm-offer-consumed"}.addTag(Key::Subsystem, Value::DPL)); + }; + consumer(id, mOffers, reportConsumedOffer); } void ComputingQuotaEvaluator::dispose(int taskId) diff --git a/Framework/Core/src/DataProcessor.cxx b/Framework/Core/src/DataProcessor.cxx index b4cf0492e614c..ece774e34f540 100644 --- a/Framework/Core/src/DataProcessor.cxx +++ b/Framework/Core/src/DataProcessor.cxx @@ -18,6 +18,7 @@ #include "FairMQResizableBuffer.h" #include "CommonUtils/BoostSerializer.h" #include "Headers/DataHeader.h" +#include "Headers/DataHeaderHelpers.h" #include #include @@ -98,6 +99,7 @@ void DataProcessor::doSend(FairMQDevice& device, ArrowContext& context, ServiceR dh->payloadSize = payload->GetSize(); dh->serialization = o2::header::gSerializationMethodArrow; monitoring.send(Metric{(uint64_t)payload->GetSize(), fmt::format("table-bytes-{}-{}-created", dh->dataOrigin.as(), dh->dataDescription.as())}.addTag(Key::Subsystem, Value::DPL)); + LOGP(INFO, "Creating {}MB for table {}/{}.", payload->GetSize() / 1000000., dh->dataOrigin, dh->dataDescription); context.updateBytesSent(payload->GetSize()); context.updateMessagesSent(1); parts.AddPart(std::move(messageRef.header)); @@ -105,7 +107,9 @@ void DataProcessor::doSend(FairMQDevice& device, ArrowContext& context, ServiceR device.Send(parts, messageRef.channel, 0); } static int64_t previousBytesSent = 0; - auto disposeResources = [bs = context.bytesSent() - previousBytesSent](int taskId, std::array& offers) { + auto disposeResources = [bs = context.bytesSent() - previousBytesSent](int taskId, std::array& offers, std::function accountDisposed) { + ComputingQuotaOffer disposed; + disposed.sharedMemory = 0; int64_t bytesSent = bs; for (size_t oi = 0; oi < offers.size(); oi++) { auto& offer = offers[oi]; @@ -116,9 +120,10 @@ void DataProcessor::doSend(FairMQDevice& device, ArrowContext& context, ServiceR offer.sharedMemory -= toRemove; bytesSent -= toRemove; if (bytesSent <= 0) { - return; + break; } } + return accountDisposed(disposed); }; registry.get().offerConsumers.push_back(disposeResources); previousBytesSent = context.bytesSent(); From dc091dba2e910273d38d0a4dac48963b427f2adf Mon Sep 17 00:00:00 2001 From: shahoian Date: Mon, 5 Jul 2021 20:52:11 +0200 Subject: [PATCH 094/314] Fixes for TPC-ITS matching in ITS triggered mode --- .../include/GlobalTracking/MatchTPCITS.h | 24 ++++++++++------ Detectors/GlobalTracking/src/MatchTPCITS.cxx | 28 ++++++++++--------- 2 files changed, 30 insertions(+), 22 deletions(-) diff --git a/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITS.h b/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITS.h index aa58b1dc4aafe..0dc251e5ed6f8 100644 --- a/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITS.h +++ b/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITS.h @@ -355,7 +355,7 @@ class MatchTPCITS bool getUseFT0() const { return mUseFT0; } ///< set ITS ROFrame duration in microseconds - void setITSROFrameLengthMUS(float fums) { mITSROFrameLengthMUS = fums; } + void setITSROFrameLengthMUS(float fums); ///< set ITS ROFrame duration in BC (continuous mode only) void setITSROFrameLengthInBC(int nbc); @@ -476,18 +476,26 @@ class MatchTPCITS ///< convert time bracket to IR bracket BracketIR tBracket2IRBracket(const BracketF tbrange); - ///< convert time bin to ITS ROFrame units - int time2ITSROFrame(float t) const + ///< convert time to ITS ROFrame units in case of continuous ITS readout + int time2ITSROFrameCont(float t) const { - if (mITSTriggered) { - LOG(ERROR) << "FIXME"; - //return mITSROForTime[int(t > 0 ? t : 0)]; - } int rof = t > 0 ? t * mITSROFrameLengthMUSInv : 0; // the rof is estimated continuous counter but the actual bins might have gaps (e.g. HB rejects etc)-> use mapping return rof < int(mITSTrackROFContMapping.size()) ? mITSTrackROFContMapping[rof] : mITSTrackROFContMapping.back(); } + ///< convert time to ITS ROFrame units in case of triggered ITS readout + int time2ITSROFrameTrig(float t, int start) const + { + while (start < mITSROFTimes.size()) { + if (mITSROFTimes[start].getMax() > t) { + return start; + } + start++; + } + return --start; + } + ///< convert TPC time bin to microseconds float tpcTimeBin2Z(float tbn) const { return tbn * mTPCBin2Z; } @@ -546,8 +554,6 @@ class MatchTPCITS float mTPCTBinMUS = 0.; ///< TPC time bin duration in microseconds float mTPCTBinNS = 0.; ///< TPC time bin duration in ns float mTPCTBinMUSInv = 0.; ///< inverse TPC time bin duration in microseconds - float mITSROFrame2TPCBin = 0.; ///< conversion coeff from ITS ROFrame units to TPC time-bin - float mTPCBin2ITSROFrame = 0.; ///< conversion coeff from TPC time-bin to ITS ROFrame units float mZ2TPCBin = 0.; ///< conversion coeff from Z to TPC time-bin float mTPCBin2Z = 0.; ///< conversion coeff from TPC time-bin to Z float mNTPCBinsFullDrift = 0.; ///< max time bin for full drift diff --git a/Detectors/GlobalTracking/src/MatchTPCITS.cxx b/Detectors/GlobalTracking/src/MatchTPCITS.cxx index 5b1f3ed78e0ba..e77d6a17aeecf 100644 --- a/Detectors/GlobalTracking/src/MatchTPCITS.cxx +++ b/Detectors/GlobalTracking/src/MatchTPCITS.cxx @@ -421,12 +421,6 @@ void MatchTPCITS::updateTimeDependentParams() mTPCZMax = detParam.TPClength; mTPCTBinMUSInv = 1. / mTPCTBinMUS; assert(mITSROFrameLengthMUS > 0.0f); - if (mITSTriggered) { - mITSROFrame2TPCBin = mITSROFrameLengthMUS * mTPCTBinMUSInv; - } else { - mITSROFrame2TPCBin = mITSROFrameLengthMUS * mTPCTBinMUSInv; // RSTODO use both ITS and TPC times BCs once will be available for TPC also - } - mTPCBin2ITSROFrame = 1. / mITSROFrame2TPCBin; mTPCBin2Z = mTPCTBinMUS * mTPCVDrift0; mZ2TPCBin = 1. / mTPCBin2Z; mTPCVDrift0Inv = 1. / mTPCVDrift0; @@ -657,7 +651,7 @@ bool MatchTPCITS::prepareTPCData() if (maxTime < tmax) { maxTime = tmax; } - int nbins = 1 + time2ITSROFrame(tmax); + int nbins = 1 + (mITSTriggered ? time2ITSROFrameTrig(tmax, 0) : time2ITSROFrameCont(tmax)); auto& timeStart = mTPCTimeStart[sec]; timeStart.resize(nbins, -1); int itsROF = 0; @@ -680,14 +674,12 @@ bool MatchTPCITS::prepareTPCData() } } // loop over tracks of single sector - // create mapping from TPC time-bins to ITS ROFs - + // FIXME + /* + // create mapping from TPC time to ITS ROFs if (mITSROFTimes.back() < maxTime) { maxTime = mITSROFTimes.back().getMax(); } - - // FIXME - /* int nb = int(maxTime) + 1; mITSROFofTPCBin.resize(nb, -1); int itsROF = 0; @@ -893,11 +885,13 @@ void MatchTPCITS::doMatching(int sec) auto t2nbs = tpcTimeBin2MUS(mZ2TPCBin * mParams->tpcTimeICMatchingNSigma); // FIXME work directly with time in \mus bool checkInteractionCandidates = mUseFT0 && mParams->validateMatchByFIT != MatchTPCITSParams::Disable; + int itsROBin = 0; for (int itpc = idxMinTPC; itpc < nTracksTPC; itpc++) { auto& trefTPC = mTPCWork[cacheTPC[itpc]]; // estimate ITS 1st ROframe bin this track may match to: TPC track are sorted according to their // timeMax, hence the timeMax - MaxmNTPCBinsFullDrift are non-decreasing - int itsROBin = time2ITSROFrame(trefTPC.tBracket.getMax() - maxTDriftSafe); + auto tmn = trefTPC.tBracket.getMax() - maxTDriftSafe; + int itsROBin = mITSTriggered ? time2ITSROFrameTrig(tmn, itsROBin) : time2ITSROFrameCont(tmn); if (itsROBin >= int(timeStartITS.size())) { // time of TPC track exceeds the max time of ITS in the cache break; @@ -2449,6 +2443,14 @@ void MatchTPCITS::refitABTrack(int ibest) const } } +//______________________________________________ +void MatchTPCITS::setITSROFrameLengthMUS(float fums) +{ + mITSROFrameLengthMUS = fums; + mITSROFrameLengthMUSInv = 1. / mITSROFrameLengthMUS; + mITSROFrameLengthInBC = std::max(1, int(mITSROFrameLengthMUS / (o2::constants::lhc::LHCBunchSpacingNS * 1e-3))); +} + //______________________________________________ void MatchTPCITS::setITSROFrameLengthInBC(int nbc) { From 7f79d9980468c45b89f1f12acd824f624f4a9239 Mon Sep 17 00:00:00 2001 From: shahoian Date: Tue, 6 Jul 2021 20:14:06 +0200 Subject: [PATCH 095/314] Store det.mask in gGeoMnager and use in misalignment gGeoManager->GetUniqueID() will provide the mask of added detectors, only volumes actually present in the geometry will be misaligned when loading the geometry --- Detectors/Base/src/Aligner.cxx | 3 ++- Steer/src/O2MCApplication.cxx | 7 ++++++- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Detectors/Base/src/Aligner.cxx b/Detectors/Base/src/Aligner.cxx index 5616349d73ade..088660dcfaec4 100644 --- a/Detectors/Base/src/Aligner.cxx +++ b/Detectors/Base/src/Aligner.cxx @@ -47,8 +47,9 @@ void Aligner::applyAlignment(long timestamp, DetID::mask_t addMask) const ccdbmgr.setURL(getCCDB()); ccdbmgr.setTimestamp(timestamp); LOGP(INFO, "applying geometry alignment from {} for timestamp {}", getCCDB(), timestamp); + DetID::mask_t detGeoMask(gGeoManager->GetUniqueID()); for (auto id = DetID::First; id <= DetID::Last; id++) { - if (!msk[id]) { + if (!msk[id] || (detGeoMask.any() && !detGeoMask[id])) { continue; } std::string path = o2::base::NameConf::getAlignmentPath({id}); diff --git a/Steer/src/O2MCApplication.cxx b/Steer/src/O2MCApplication.cxx index bf7b3a8fd69e1..a9cce295677ae 100644 --- a/Steer/src/O2MCApplication.cxx +++ b/Steer/src/O2MCApplication.cxx @@ -96,13 +96,18 @@ void O2MCApplicationBase::ConstructGeometry() { // fill the mapping mModIdToName.clear(); + o2::detectors::DetID::mask_t dmask{}; for (int i = 0; i < fModules->GetEntries(); ++i) { auto mod = static_cast(fModules->At(i)); if (mod) { mModIdToName[mod->GetModId()] = mod->GetName(); + int did = o2::detectors::DetID::nameToID(mod->GetName()); + if (did >= 0) { + dmask |= o2::detectors::DetID::getMask(did); + } } } - + gGeoManager->SetUniqueID(dmask.to_ulong()); FairMCApplication::ConstructGeometry(); std::ofstream voltomodulefile("MCStepLoggerVolMap.dat"); From 169a62e03b434c83948db2b3450b4d602f08bdc9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thiago=20Badar=C3=B3?= Date: Mon, 28 Jun 2021 10:48:26 -0300 Subject: [PATCH 096/314] Move TrackCuts to DataFormatsTPC --- DataFormats/Detectors/TPC/CMakeLists.txt | 11 ++++++++++- .../Detectors/TPC/include/DataFormatsTPC}/TrackCuts.h | 6 +----- DataFormats/Detectors/TPC/src/DataFormatsTPCLinkDef.h | 1 + .../Detectors/TPC}/src/TrackCuts.cxx | 8 ++++---- .../Detectors/TPC}/test/test_TrackCuts.cxx | 4 ++-- Detectors/TPC/qc/CMakeLists.txt | 8 -------- Detectors/TPC/qc/macro/runPID.C | 4 ++-- Detectors/TPC/qc/macro/runTracks.C | 1 - Detectors/TPC/qc/src/TPCQCLinkDef.h | 1 - 9 files changed, 20 insertions(+), 24 deletions(-) rename {Detectors/TPC/qc/include/TPCQC => DataFormats/Detectors/TPC/include/DataFormatsTPC}/TrackCuts.h (97%) rename {Detectors/TPC/qc => DataFormats/Detectors/TPC}/src/TrackCuts.cxx (92%) rename {Detectors/TPC/qc => DataFormats/Detectors/TPC}/test/test_TrackCuts.cxx (91%) diff --git a/DataFormats/Detectors/TPC/CMakeLists.txt b/DataFormats/Detectors/TPC/CMakeLists.txt index 56386a9330f5b..17a0d0f332679 100644 --- a/DataFormats/Detectors/TPC/CMakeLists.txt +++ b/DataFormats/Detectors/TPC/CMakeLists.txt @@ -26,6 +26,7 @@ o2_add_library( src/ClusterNativeHelper.cxx src/WorkflowHelper.cxx src/CompressedClusters.cxx + src/TrackCuts.cxx PUBLIC_LINK_LIBRARIES O2::GPUCommon O2::SimulationDataFormat O2::CommonDataFormat @@ -49,7 +50,8 @@ o2_target_root_dictionary( include/DataFormatsTPC/CTF.h include/DataFormatsTPC/IDC.h include/DataFormatsTPC/ZeroSuppression.h - include/DataFormatsTPC/ZeroSuppressionLinkBased.h) + include/DataFormatsTPC/ZeroSuppressionLinkBased.h + include/DataFormatsTPC/TrackCuts.h) o2_add_test( ClusterNative @@ -71,3 +73,10 @@ o2_add_test( COMPONENT_NAME DataFormats-TPC PUBLIC_LINK_LIBRARIES O2::DataFormatsTPC LABELS tpc dataformats) + +o2_add_test( + TrackCuts + SOURCES test/test_TrackCuts.cxx + COMPONENT_NAME DataFormats-TPC + PUBLIC_LINK_LIBRARIES O2::DataFormatsTPC + LABELS tpc dataformats) diff --git a/Detectors/TPC/qc/include/TPCQC/TrackCuts.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/TrackCuts.h similarity index 97% rename from Detectors/TPC/qc/include/TPCQC/TrackCuts.h rename to DataFormats/Detectors/TPC/include/DataFormatsTPC/TrackCuts.h index c8691d77f21f9..8185d627939ea 100644 --- a/Detectors/TPC/qc/include/TPCQC/TrackCuts.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/TrackCuts.h @@ -26,9 +26,6 @@ namespace tpc class TrackTPC; -namespace qc -{ - /// @brief track cut class /// /// Can be used to apply cuts on tracks during qc. @@ -55,8 +52,7 @@ class TrackCuts ClassDefNV(TrackCuts, 1) }; -} // namespace qc } // namespace tpc } // namespace o2 -#endif \ No newline at end of file +#endif diff --git a/DataFormats/Detectors/TPC/src/DataFormatsTPCLinkDef.h b/DataFormats/Detectors/TPC/src/DataFormatsTPCLinkDef.h index e1ece2e48fe7c..7c6f08ae45f71 100644 --- a/DataFormats/Detectors/TPC/src/DataFormatsTPCLinkDef.h +++ b/DataFormats/Detectors/TPC/src/DataFormatsTPCLinkDef.h @@ -50,5 +50,6 @@ #pragma link C++ class o2::tpc::CTFHeader + ; #pragma link C++ class o2::ctf::EncodedBlocks < o2::tpc::CTFHeader, 23, uint32_t> + ; #pragma link C++ enum o2::tpc::StatisticsType; +#pragma link C++ class o2::tpc::TrackCuts + ; #endif diff --git a/Detectors/TPC/qc/src/TrackCuts.cxx b/DataFormats/Detectors/TPC/src/TrackCuts.cxx similarity index 92% rename from Detectors/TPC/qc/src/TrackCuts.cxx rename to DataFormats/Detectors/TPC/src/TrackCuts.cxx index 2419809203b86..ad7977f6f7b5b 100644 --- a/Detectors/TPC/qc/src/TrackCuts.cxx +++ b/DataFormats/Detectors/TPC/src/TrackCuts.cxx @@ -11,12 +11,12 @@ #include "FairLogger.h" -#include "TPCQC/TrackCuts.h" +#include "DataFormatsTPC/TrackCuts.h" #include "DataFormatsTPC/TrackTPC.h" -ClassImp(o2::tpc::qc::TrackCuts); +ClassImp(o2::tpc::TrackCuts); -using namespace o2::tpc::qc; +using namespace o2::tpc; TrackCuts::TrackCuts(float PMin, float PMax, float NClusMin) : mPMin(PMin), mPMax(PMax), @@ -40,4 +40,4 @@ bool TrackCuts::goodTrack(o2::tpc::TrackTPC const& track) return false; } return true; -} \ No newline at end of file +} diff --git a/Detectors/TPC/qc/test/test_TrackCuts.cxx b/DataFormats/Detectors/TPC/test/test_TrackCuts.cxx similarity index 91% rename from Detectors/TPC/qc/test/test_TrackCuts.cxx rename to DataFormats/Detectors/TPC/test/test_TrackCuts.cxx index f3d15873b7de5..4e924ace2a775 100644 --- a/Detectors/TPC/qc/test/test_TrackCuts.cxx +++ b/DataFormats/Detectors/TPC/test/test_TrackCuts.cxx @@ -13,9 +13,9 @@ #define BOOST_TEST_MAIN #define BOOST_TEST_DYN_LINK #include -#include "TPCQC/TrackCuts.h" +#include "DataFormatsTPC/TrackCuts.h" BOOST_AUTO_TEST_CASE(ReadWriteROOTFile) { - o2::tpc::qc::TrackCuts trackcuts; + o2::tpc::TrackCuts trackcuts; } diff --git a/Detectors/TPC/qc/CMakeLists.txt b/Detectors/TPC/qc/CMakeLists.txt index 64d40ff0f229a..dea3180b0e16f 100644 --- a/Detectors/TPC/qc/CMakeLists.txt +++ b/Detectors/TPC/qc/CMakeLists.txt @@ -13,7 +13,6 @@ o2_add_library(TPCQC SOURCES src/PID.cxx src/Tracking.cxx src/Helpers.cxx - src/TrackCuts.cxx src/Clusters.cxx src/Tracks.cxx PUBLIC_LINK_LIBRARIES O2::TPCBase @@ -25,7 +24,6 @@ o2_target_root_dictionary(TPCQC HEADERS include/TPCQC/PID.h include/TPCQC/Tracking.h include/TPCQC/Helpers.h - include/TPCQC/TrackCuts.h include/TPCQC/Clusters.h include/TPCQC/Tracks.h include/TPCQC/CalPadWrapper.h) @@ -36,12 +34,6 @@ o2_add_test(PID SOURCES test/test_PID.cxx LABELS tpc) -o2_add_test(TrackCuts - COMPONENT_NAME tpc - PUBLIC_LINK_LIBRARIES O2::TPCQC - SOURCES test/test_TrackCuts.cxx - LABELS tpc) - o2_add_test(Clusters COMPONENT_NAME tpc PUBLIC_LINK_LIBRARIES O2::TPCQC diff --git a/Detectors/TPC/qc/macro/runPID.C b/Detectors/TPC/qc/macro/runPID.C index aa9b3700efc5e..f88c27d1f4c42 100644 --- a/Detectors/TPC/qc/macro/runPID.C +++ b/Detectors/TPC/qc/macro/runPID.C @@ -17,10 +17,10 @@ #include "TH1.h" #include "TH2.h" #include "DataFormatsTPC/TrackTPC.h" +#include "DataFormatsTPC/TrackCuts.h" #include "DataFormatsTPC/ClusterNative.h" #include "TPCQC/PID.h" #include "TPCQC/Helpers.h" -#include "TPCQC/TrackCuts.h" #endif using namespace o2::tpc; @@ -91,4 +91,4 @@ void runPID(std::string outputFileName = "PID", std::string_view inputFileName = pid.dumpToFile(histFile); pid.resetHistograms(); -} \ No newline at end of file +} diff --git a/Detectors/TPC/qc/macro/runTracks.C b/Detectors/TPC/qc/macro/runTracks.C index f69be51acb77d..40c5c96d4f3d2 100644 --- a/Detectors/TPC/qc/macro/runTracks.C +++ b/Detectors/TPC/qc/macro/runTracks.C @@ -25,7 +25,6 @@ #include "DataFormatsTPC/ClusterNative.h" #include "TPCQC/Tracks.h" #include "TPCQC/Helpers.h" -//#include "TPCQC/TrackCuts.h" #endif using namespace o2::tpc; diff --git a/Detectors/TPC/qc/src/TPCQCLinkDef.h b/Detectors/TPC/qc/src/TPCQCLinkDef.h index 09854e9305b20..650470f621908 100644 --- a/Detectors/TPC/qc/src/TPCQCLinkDef.h +++ b/Detectors/TPC/qc/src/TPCQCLinkDef.h @@ -17,7 +17,6 @@ #pragma link C++ class o2::tpc::qc::PID+; #pragma link C++ class o2::tpc::qc::Tracking + ; -#pragma link C++ class o2::tpc::qc::TrackCuts+; #pragma link C++ class o2::tpc::qc::Clusters+; #pragma link C++ class o2::tpc::qc::Tracks+; #pragma link C++ class o2::tpc::qc::CalPadWrapper+; From b77f0359f117b54cbdad11a3f857c9c09b6d4c8a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thiago=20Badar=C3=B3?= Date: Sun, 23 May 2021 12:25:44 -0300 Subject: [PATCH 097/314] Initial attempt on TPC dEdx calibration --- Detectors/TPC/calibration/CMakeLists.txt | 12 +- .../include/TPCCalibration/CalibdEdx.h | 116 ++++++++++++++ .../include/TPCCalibration/FastHisto.h | 1 + .../include/TPCCalibration/dEdxHistos.h | 85 +++++++++++ Detectors/TPC/calibration/src/CalibdEdx.cxx | 101 +++++++++++++ .../calibration/src/TPCCalibrationLinkDef.h | 9 +- Detectors/TPC/calibration/src/dEdxHistos.cxx | 76 ++++++++++ Detectors/TPC/qc/macro/runTracks.C | 2 +- Detectors/TPC/workflow/CMakeLists.txt | 7 + .../include/TPCWorkflow/CalibdEdxSpec.h | 31 ++++ .../include/TPCWorkflow/MIPTrackFilterSpec.h | 31 ++++ Detectors/TPC/workflow/src/CalibdEdxSpec.cxx | 141 ++++++++++++++++++ .../TPC/workflow/src/MIPTrackFilterSpec.cxx | 98 ++++++++++++ Detectors/TPC/workflow/src/tpc-calib-dEdx.cxx | 21 +++ .../TPC/workflow/src/tpc-miptrack-filter.cxx | 21 +++ 15 files changed, 746 insertions(+), 6 deletions(-) create mode 100644 Detectors/TPC/calibration/include/TPCCalibration/CalibdEdx.h create mode 100644 Detectors/TPC/calibration/include/TPCCalibration/dEdxHistos.h create mode 100644 Detectors/TPC/calibration/src/CalibdEdx.cxx create mode 100644 Detectors/TPC/calibration/src/dEdxHistos.cxx create mode 100644 Detectors/TPC/workflow/include/TPCWorkflow/CalibdEdxSpec.h create mode 100644 Detectors/TPC/workflow/include/TPCWorkflow/MIPTrackFilterSpec.h create mode 100644 Detectors/TPC/workflow/src/CalibdEdxSpec.cxx create mode 100644 Detectors/TPC/workflow/src/MIPTrackFilterSpec.cxx create mode 100644 Detectors/TPC/workflow/src/tpc-calib-dEdx.cxx create mode 100644 Detectors/TPC/workflow/src/tpc-miptrack-filter.cxx diff --git a/Detectors/TPC/calibration/CMakeLists.txt b/Detectors/TPC/calibration/CMakeLists.txt index ce1177ad262d4..83821ac5da9b0 100644 --- a/Detectors/TPC/calibration/CMakeLists.txt +++ b/Detectors/TPC/calibration/CMakeLists.txt @@ -32,9 +32,13 @@ o2_add_library(TPCCalibration src/IDCFourierTransform.cxx src/RobustAverage.cxx src/IDCCCDBHelper.cxx - PUBLIC_LINK_LIBRARIES O2::DataFormatsTPC O2::TPCBase O2::DetectorsCalibration + src/dEdxHistos.cxx + src/CalibdEdx.cxx + PUBLIC_LINK_LIBRARIES O2::DataFormatsTPC O2::TPCBase O2::TPCReconstruction ROOT::Minuit - Microsoft.GSL::GSL) + Microsoft.GSL::GSL + O2::DetectorsCalibration + O2::CCDB) o2_target_root_dictionary(TPCCalibration HEADERS include/TPCCalibration/CalibRawBase.h @@ -58,7 +62,9 @@ o2_target_root_dictionary(TPCCalibration include/TPCCalibration/IDCContainer.h include/TPCCalibration/RobustAverage.h include/TPCCalibration/IDCFourierTransform.h - include/TPCCalibration/IDCCCDBHelper.h) + include/TPCCalibration/IDCCCDBHelper.h + include/TPCCalibration/dEdxHistos.h + include/TPCCalibration/CalibdEdx.h) o2_add_test_root_macro(macro/comparePedestalsAndNoise.C PUBLIC_LINK_LIBRARIES O2::TPCBase diff --git a/Detectors/TPC/calibration/include/TPCCalibration/CalibdEdx.h b/Detectors/TPC/calibration/include/TPCCalibration/CalibdEdx.h new file mode 100644 index 0000000000000..402e921a9e9ee --- /dev/null +++ b/Detectors/TPC/calibration/include/TPCCalibration/CalibdEdx.h @@ -0,0 +1,116 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file CalibdEdx.h +/// \brief This file provides the time dependent dE/dx calibrator, based on the MIP position. +/// \author Thiago Badaró + +#ifndef ALICEO2_TPC_CALIBDEDX_H_ +#define ALICEO2_TPC_CALIBDEDX_H_ + +#include +#include +#include + +// o2 includes +#include "DataFormatsTPC/TrackTPC.h" +#include "DataFormatsTPC/TrackCuts.h" +#include "CCDB/CcdbObjectInfo.h" +#include "DetectorsCalibration/TimeSlotCalibration.h" +#include "DetectorsCalibration/TimeSlot.h" +#include "TPCCalibration/dEdxHistos.h" +#include "TPCCalibration/FastHisto.h" +#include "CommonUtils/TreeStreamRedirector.h" + +namespace o2::tpc +{ + +/// Container used to store the dE/dx calibration output +struct CalibMIP { + double ASide; + double CSide; +}; + +/// dE/dx calibrator class +class CalibdEdx final : public o2::calibration::TimeSlotCalibration +{ + using TFType = o2::calibration::TFType; + using Slot = o2::calibration::TimeSlot; + using CcdbObjectInfoVector = std::vector; + using MIPVector = std::vector; + + public: + /// Contructor that enables track cuts + CalibdEdx(int nBins = 200, int minEntries = 100, float minP = 0.4, float maxP = 0.6, int minClusters = 60) + : mNBins{nBins}, mMinEntries{minEntries}, mCuts{minP, maxP, static_cast(minClusters)} + { + } + + /// Destructor + ~CalibdEdx() final = default; + + /// \return if there are enough data to compute the calibration + bool hasEnoughData(const Slot& slot) const final + { + return slot.getContainer()->getASideEntries() >= mMinEntries && slot.getContainer()->getCSideEntries() >= mMinEntries; + } + + /// Empty the output vectors + void initOutput() final; + + /// Process time slot data and compute its calibration + void finalizeSlot(Slot& slot) final; + + /// Creates new time slot + Slot& emplaceNewSlot(bool front, TFType tstart, TFType tend) final; + + void setApplyCuts(bool apply) { mApplyCuts = apply; } + bool getApplyCuts() { return mApplyCuts; } + void setCuts(const TrackCuts& cuts) { mCuts = cuts; } + + /// \return the computed calibrations + const MIPVector& getMIPVector() const { return mMIPVector; } + + /// \return CCDB output informations + const CcdbObjectInfoVector& getInfoVector() const { return mInfoVector; } + + /// Non const version + /// \return CCDB output informations + CcdbObjectInfoVector& getInfoVector() { return mInfoVector; } + + /// Enable debug output to file of the time slots calibrations outputs and dE/dx histograms + void enableDebugOutput(std::string_view fileName); + + /// Disable debug output to file. Also writes and closes stored time slots. + void disableDebugOutput(); + + /// \return if debug output is enabled + bool hasDebugOutput() const { return static_cast(mDebugOutputStreamer); } + + /// Write debug output to file + void finalizeDebugOutput() const; + + private: + int mNBins{}; ///< Number of bins in each time slot histogram + int mMinEntries{}; ///< Minimum amount of tracks in each time slot, to get enough statics + bool mApplyCuts{true}; ///< Flag to enable tracks cuts + TrackCuts mCuts; ///< Cut object + + CcdbObjectInfoVector mInfoVector; ///< vector of CCDB Infos, each element is filled with the CCDB description of the accompanying MIP positions + MIPVector mMIPVector; ///< vector of MIP positions, each element is filled in "process" when we finalize one slot (multiple can be finalized during the same "process", which is why we have a vector. Each element is to be considered the output of the device, and will go to the CCDB + + std::unique_ptr mDebugOutputStreamer; ///< Debug output streamer + + ClassDefOverride(CalibdEdx, 1); +}; + +} // namespace o2::tpc +#endif diff --git a/Detectors/TPC/calibration/include/TPCCalibration/FastHisto.h b/Detectors/TPC/calibration/include/TPCCalibration/FastHisto.h index 495887ca62623..ecdafca553663 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/FastHisto.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/FastHisto.h @@ -22,6 +22,7 @@ #include "Framework/Logger.h" #include #include +#include namespace o2 { diff --git a/Detectors/TPC/calibration/include/TPCCalibration/dEdxHistos.h b/Detectors/TPC/calibration/include/TPCCalibration/dEdxHistos.h new file mode 100644 index 0000000000000..e54946f56b385 --- /dev/null +++ b/Detectors/TPC/calibration/include/TPCCalibration/dEdxHistos.h @@ -0,0 +1,85 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file dEdxHistos.h +/// \brief This file provides the container used for time based dE/dx calibration. +/// \author Thiago Badaró + +#ifndef ALICEO2_TPC_DEDXHISTOS_H_ +#define ALICEO2_TPC_DEDXHISTOS_H_ + +#include +#include +#include + +// o2 includes +#include "TPCCalibration/FastHisto.h" +#include "DataFormatsTPC/TrackCuts.h" + +namespace o2::tpc +{ + +// forward declaration +class TrackTPC; + +/// Class that creates dE/dx histograms from a sequence of tracks objects +class dEdxHistos +{ + using Hist = FastHisto; + + public: + /// Default constructor + dEdxHistos() = default; + + /// Constructor that enable tracks cuts + dEdxHistos(unsigned int nBins, const TrackCuts& cuts); + + /// Constructor that enable tracks cuts, and creates a TrackCuts internally + dEdxHistos(unsigned int nBins, float minP = 0.4, float maxP = 0.6, int minClusters = 60) + : dEdxHistos(nBins, {minP, maxP, static_cast(minClusters)}) {} + + /// Fill histograms using tracks data + void fill(const gsl::span tracks); + + /// Add counts from other container + void merge(const dEdxHistos* other); + + /// Print the number of entries in each histogram + void print() const; + + void setApplyCuts(bool apply) { mApplyCuts = apply; } + bool getApplyCuts() { return mApplyCuts; } + void setCuts(const TrackCuts& cuts) { mCuts = cuts; } + + /// \return number of entries in the A side histogram + double getASideEntries() const { return mEntries[0]; } + + /// \return number of entries in the C side histogram + double getCSideEntries() const { return mEntries[1]; } + + /// Get the underlying histograms + const std::array& getHists() const { return mHist; } + + /// Save the histograms to a file + void dumpToFile(std::string_view fileName) const; + + private: + bool mApplyCuts{true}; ///< Whether or not to apply tracks cuts + TrackCuts mCuts; ///< Cut class + + std::array mEntries{0, 0}; ///< Number of entries in each histogram + std::array mHist; ///< MIP position histograms, for TPC's A and C sides + + ClassDefNV(dEdxHistos, 1); +}; + +} // namespace o2::tpc +#endif diff --git a/Detectors/TPC/calibration/src/CalibdEdx.cxx b/Detectors/TPC/calibration/src/CalibdEdx.cxx new file mode 100644 index 0000000000000..4ce590271319a --- /dev/null +++ b/Detectors/TPC/calibration/src/CalibdEdx.cxx @@ -0,0 +1,101 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "TPCCalibration/CalibdEdx.h" + +#include +#include +#include +#include + +//o2 includes +#include "CommonUtils/MemFileHelper.h" +#include "CommonUtils/TreeStreamRedirector.h" +#include "CCDB/CcdbApi.h" +#include "DetectorsCalibration/Utils.h" +#include "Framework/Logger.h" +#include "TPCCalibration/dEdxHistos.h" + +using namespace o2::tpc; + +void CalibdEdx::initOutput() +{ + // Here we initialize the vector of our output objects + mInfoVector.clear(); + mMIPVector.clear(); + return; +} + +void CalibdEdx::finalizeSlot(Slot& slot) +{ + LOG(INFO) << "Finalizing slot " << slot.getTFStart() << " <= TF <= " << slot.getTFEnd(); + + const dEdxHistos* container = slot.getContainer(); + const auto statsASide = container->getHists()[0].getStatisticsData(); + const auto statsCSide = container->getHists()[1].getStatisticsData(); + + slot.print(); + LOG(INFO) << "A side, truncated mean statistics: Mean = " << statsASide.mCOG << ", StdDev = " << statsCSide.mStdDev << ", Entries = " << statsASide.mSum; + LOG(INFO) << "C side, truncated mean statistics: Mean = " << statsCSide.mCOG << ", StdDev = " << statsCSide.mStdDev << ", Entries = " << statsCSide.mSum; + + CalibMIP mips{statsASide.mCOG, statsCSide.mCOG}; + + const auto className = o2::utils::MemFileHelper::getClassName(mips); + const auto fileName = o2::ccdb::CcdbApi::generateFileName(className); + const std::map metaData; + + // TODO: the timestamp is now given with the TF index, but it will have + // to become an absolute time. + TFType timeFrame = slot.getTFStart(); + mInfoVector.emplace_back("TPC/Calib/MIPS", className, fileName, metaData, timeFrame, 99999999999999); + mMIPVector.push_back(mips); + + if (mDebugOutputStreamer) { + LOG(INFO) << "Dumping time slot data to file"; + + *mDebugOutputStreamer << "mipPosition" + << "timeFrame=" << timeFrame // Initial time frame of time slot + << "calibMIP=" << mips // Computed MIP positions + << "dEdxHistos=" << slot.getContainer() // dE/dx histograms + << "\n"; + } +} + +CalibdEdx::Slot& CalibdEdx::emplaceNewSlot(bool front, TFType tstart, TFType tend) +{ + auto& cont = getSlots(); + auto& slot = front ? cont.emplace_front(tstart, tend) : cont.emplace_back(tstart, tend); + + auto container = std::make_unique(mNBins, mCuts); + container->setApplyCuts(mApplyCuts); + + slot.setContainer(std::move(container)); + return slot; +} + +void CalibdEdx::enableDebugOutput(std::string_view fileName) +{ + mDebugOutputStreamer = std::make_unique(fileName.data(), "recreate"); +} + +void CalibdEdx::disableDebugOutput() +{ + // This will call the TreeStream destructor and write any stored data. + mDebugOutputStreamer.reset(); +} + +void CalibdEdx::finalizeDebugOutput() const +{ + if (mDebugOutputStreamer) { + LOG(INFO) << "Closing dump file"; + mDebugOutputStreamer->Close(); + } +} diff --git a/Detectors/TPC/calibration/src/TPCCalibrationLinkDef.h b/Detectors/TPC/calibration/src/TPCCalibrationLinkDef.h index 3a0ed78285c36..9587bb7f8d8cb 100644 --- a/Detectors/TPC/calibration/src/TPCCalibrationLinkDef.h +++ b/Detectors/TPC/calibration/src/TPCCalibrationLinkDef.h @@ -17,10 +17,10 @@ #pragma link C++ class o2::tpc::CalibRawBase; #pragma link C++ class o2::tpc::CalibPedestal; -#pragma link C++ class o2::tpc::CalibPedestalParam +; +#pragma link C++ class o2::tpc::CalibPedestalParam + ; #pragma link C++ class o2::conf::ConfigurableParamHelper < o2::tpc::CalibPedestalParam> + ; #pragma link C++ class o2::tpc::CalibPulser; -#pragma link C++ class o2::tpc::CalibPulserParam +; +#pragma link C++ class o2::tpc::CalibPulserParam + ; #pragma link C++ class o2::conf::ConfigurableParamHelper < o2::tpc::CalibPulserParam> + ; #pragma link C++ class o2::tpc::CalibTreeDump; #pragma link C++ class o2::tpc::DigitDump; @@ -62,5 +62,10 @@ #pragma link C++ class o2::tpc::IDCCCDBHelper +; #pragma link C++ class o2::tpc::IDCCCDBHelper +; #pragma link C++ class o2::tpc::IDCCCDBHelper +; +#pragma link C++ class o2::calibration::TimeSlotCalibration < o2::tpc::TrackTPC, o2::tpc::dEdxHistos> + ; +#pragma link C++ class o2::tpc::CalibdEdx + ; +#pragma link C++ class o2::tpc::dEdxHistos + ; +#pragma link C++ class o2::calibration::TimeSlot < o2::tpc::dEdxHistos> + ; +#pragma link C++ class o2::tpc::CalibMIP + ; #endif diff --git a/Detectors/TPC/calibration/src/dEdxHistos.cxx b/Detectors/TPC/calibration/src/dEdxHistos.cxx new file mode 100644 index 0000000000000..e2c523fe1f83d --- /dev/null +++ b/Detectors/TPC/calibration/src/dEdxHistos.cxx @@ -0,0 +1,76 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "TPCCalibration/dEdxHistos.h" + +#include +#include +#include +#include + +//o2 includes +#include "DataFormatsTPC/TrackTPC.h" +#include "DataFormatsTPC/TrackCuts.h" +#include "Framework/Logger.h" +#include "TPCCalibration/FastHisto.h" + +//root includes +#include "TFile.h" + +using namespace o2::tpc; + +dEdxHistos::dEdxHistos(unsigned int nBins, const TrackCuts& cuts) + : mCuts{cuts}, mHist{{{nBins, 0, static_cast(nBins)}, {nBins, 0, static_cast(nBins)}}} +{ +} + +void dEdxHistos::fill(const gsl::span tracks) +{ + for (const auto& track : tracks) { + + // applying cut + if (!mApplyCuts || mCuts.goodTrack(track)) { + // filling histogram + if (track.hasASideClustersOnly()) { + mEntries[0]++; + mHist[0].fill(track.getdEdx().dEdxTotTPC); + } else if (track.hasCSideClustersOnly()) { + mEntries[1]++; + mHist[1].fill(track.getdEdx().dEdxTotTPC); + } + } + } +} + +void dEdxHistos::merge(const dEdxHistos* other) +{ + for (size_t i = 0; i < mHist.size(); i++) { + const auto binCount = mHist[i].getNBins(); + for (size_t bin = 0; bin < binCount; bin++) { + float bin_content = other->getHists()[i].getBinContent(bin); + mHist[i].fillBin(bin, bin_content); + } + } +} + +void dEdxHistos::print() const +{ + LOG(INFO) << "Total number of entries: " << mEntries[0] << " in A side, " << mEntries[1] << " in C side"; +} + +void dEdxHistos::dumpToFile(std::string_view fileName) const +{ + TFile file(fileName.data(), "recreate"); + file.WriteObject(&mHist[0], "dEdxTotTPC A side"); + file.WriteObject(&mHist[1], "dEdxTotTPC C side"); + + file.Close(); +} diff --git a/Detectors/TPC/qc/macro/runTracks.C b/Detectors/TPC/qc/macro/runTracks.C index 40c5c96d4f3d2..f55747ddd1267 100644 --- a/Detectors/TPC/qc/macro/runTracks.C +++ b/Detectors/TPC/qc/macro/runTracks.C @@ -56,7 +56,7 @@ void runTracks(std::string outputFileName = "tpcQcTracks", std::string_view inpu tree->GetEntry(i); size_t nTracks = (maxTracks > 0) ? std::min(tpcTracks->size(), maxTracks) : tpcTracks->size(); // ---| track loop |--- - for (int k = 0; k < nTracks; k++) { + for (size_t k = 0; k < nTracks; k++) { auto track = (*tpcTracks)[k]; tracksQC.processTrack(track); } diff --git a/Detectors/TPC/workflow/CMakeLists.txt b/Detectors/TPC/workflow/CMakeLists.txt index 2fd6afb45b81f..0b1c8ec195e2d 100644 --- a/Detectors/TPC/workflow/CMakeLists.txt +++ b/Detectors/TPC/workflow/CMakeLists.txt @@ -23,6 +23,8 @@ o2_add_library(TPCWorkflow src/CalDetMergerPublisherSpec.cxx src/KryptonClustererSpec.cxx src/IDCToVectorSpec.cxx + src/CalibdEdxSpec.cxx + src/MIPTrackFilterSpec.cxx TARGETVARNAME targetName PUBLIC_LINK_LIBRARIES O2::Framework O2::DataFormatsTPC O2::DPLUtils O2::TPCReconstruction @@ -102,6 +104,11 @@ o2_add_executable(idc-to-vector SOURCES src/tpc-idc-to-vector.cxx PUBLIC_LINK_LIBRARIES O2::TPCWorkflow) +o2_add_executable(calib-dedx + COMPONENT_NAME tpc + SOURCES src/tpc-calib-dEdx.cxx + PUBLIC_LINK_LIBRARIES O2::TPCWorkflow) + o2_add_test(workflow COMPONENT_NAME tpc LABELS tpc workflow diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/CalibdEdxSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/CalibdEdxSpec.h new file mode 100644 index 0000000000000..290bfbc558f8f --- /dev/null +++ b/Detectors/TPC/workflow/include/TPCWorkflow/CalibdEdxSpec.h @@ -0,0 +1,31 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file CalibdEdxSpec.h +/// \brief Workflow for time based dE/dx calibration. +/// \author Thiago Badaró + +#ifndef O2_TPC_TPCCALIBDEDXSPEC_H_ +#define O2_TPC_TPCCALIBDEDXSPEC_H_ + +#include "Framework/DataProcessorSpec.h" + +using namespace o2::framework; + +namespace o2::tpc +{ + +/// create a processor spec +o2::framework::DataProcessorSpec getCalibdEdxSpec(); + +} // namespace o2::tpc + +#endif // O2_TPC_TPCCALIBDEDXSPEC_H_ diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/MIPTrackFilterSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/MIPTrackFilterSpec.h new file mode 100644 index 0000000000000..05024baad37b3 --- /dev/null +++ b/Detectors/TPC/workflow/include/TPCWorkflow/MIPTrackFilterSpec.h @@ -0,0 +1,31 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file MIPTrackFilterSpec.h +/// \brief Workflow to filter MIP tracks and streams them to other devices. +/// \author Thiago Badaró + +#ifndef O2_TPC_MIPTRACKFILTERSPEC_H_ +#define O2_TPC_MIPTRACKFILTERSPEC_H_ + +#include "Framework/DataProcessorSpec.h" + +using namespace o2::framework; + +namespace o2::tpc +{ + +/// create a processor spec +o2::framework::DataProcessorSpec getMIPTrackFilterSpec(); + +} // namespace o2::tpc + +#endif // O2_TPC_MIPTRACKFILTERSPEC_H_ diff --git a/Detectors/TPC/workflow/src/CalibdEdxSpec.cxx b/Detectors/TPC/workflow/src/CalibdEdxSpec.cxx new file mode 100644 index 0000000000000..c57c1bb4f2f70 --- /dev/null +++ b/Detectors/TPC/workflow/src/CalibdEdxSpec.cxx @@ -0,0 +1,141 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file CalibdEdxSpec.cxx +/// \brief Workflow for time based dE/dx calibration. +/// \author Thiago Badaró + +#include "TPCWorkflow/CalibdEdxSpec.h" + +#include +#include + +// o2 includes +#include "CCDB/CcdbApi.h" +#include "CCDB/CcdbObjectInfo.h" +#include "DataFormatsTPC/TrackTPC.h" +#include "DetectorsCalibration/Utils.h" +#include "Framework/Task.h" +#include "Framework/DataProcessorSpec.h" +#include "Framework/ConfigParamRegistry.h" +#include "TPCCalibration/CalibdEdx.h" + +using namespace o2::framework; + +namespace o2::tpc +{ + +class CalibdEdxDevice : public Task +{ + public: + void init(framework::InitContext& ic) final + { + const int slotLength = ic.options().get("tf-per-slot"); + const int maxDelay = ic.options().get("max-delay"); + const int minEntries = std::max(50, ic.options().get("min-entries")); + const int nbins = std::max(10, ic.options().get("nbins")); + const bool applyCuts = ic.options().get("apply-cuts"); + const float minP = ic.options().get("min-momentum"); + const float maxP = ic.options().get("max-momentum"); + const int minClusters = std::max(10, ic.options().get("min-clusters")); + const bool dumpData = ic.options().get("direct-file-dump"); + + assert(minP < maxP); + + mCalibrator = std::make_unique(nbins, minEntries, minP, maxP, minClusters); + mCalibrator->setApplyCuts(applyCuts); + + mCalibrator->setSlotLength(slotLength); + mCalibrator->setMaxSlotsDelay(maxDelay); + + if (dumpData) { + mCalibrator->enableDebugOutput("calib_dEdx.root"); + } + } + + void run(ProcessingContext& pc) final + { + const auto tfcounter = o2::header::get(pc.inputs().get("tracks").header)->startTime; + const auto tracks = pc.inputs().get>("tracks"); + + LOG(INFO) << "Processing TF " << tfcounter << " with " << tracks.size() << " tracks"; + + mCalibrator->process(tfcounter, tracks); + sendOutput(pc.outputs()); + + const auto& infoVec = mCalibrator->getInfoVector(); + LOG(INFO) << "Created " << infoVec.size() << " objects for TF " << tfcounter; + } + + void endOfStream(EndOfStreamContext& eos) final + { + LOG(INFO) << "Finalizing calibration"; + constexpr calibration::TFType INFINITE_TF = 0xffffffffffffffff; + mCalibrator->checkSlotsToFinalize(INFINITE_TF); + sendOutput(eos.outputs()); + + if (mCalibrator->hasDebugOutput()) { + mCalibrator->finalizeDebugOutput(); + } + } + + private: + void sendOutput(DataAllocator& output) + { + // extract CCDB infos and calibration objects, convert it to TMemFile and send them to the output + using clbUtils = o2::calibration::Utils; + const auto& payloadVec = mCalibrator->getMIPVector(); + auto& infoVec = mCalibrator->getInfoVector(); // use non-const version as we update it + assert(payloadVec.size() == infoVec.size()); + + // FIXME: not sure about this + for (unsigned int i = 0; i < payloadVec.size(); i++) { + auto& entry = infoVec[i]; + auto image = o2::ccdb::CcdbApi::createObjectImage(&payloadVec[i], &entry); + LOG(INFO) << "Sending object " << entry.getPath() << "/" << entry.getFileName() << " of size " << image->size() + << " bytes, valid for " << entry.getStartValidityTimestamp() << " : " << entry.getEndValidityTimestamp(); + output.snapshot(Output{o2::calibration::Utils::gDataOriginCDBPayload, "TPC_MIPS", i}, *image.get()); // vector + output.snapshot(Output{o2::calibration::Utils::gDataOriginCDBWrapper, "TPC_MIPS", i}, entry); // root-serialized + } + if (!payloadVec.empty()) { + mCalibrator->initOutput(); // reset the outputs once they are already sent + } + } + + std::unique_ptr mCalibrator; +}; + +DataProcessorSpec getCalibdEdxSpec() +{ + std::vector outputs; + outputs.emplace_back(ConcreteDataTypeMatcher{o2::calibration::Utils::gDataOriginCDBPayload, "TPC_MIPS"}); + outputs.emplace_back(ConcreteDataTypeMatcher{o2::calibration::Utils::gDataOriginCDBWrapper, "TPC_MIPS"}); + + return DataProcessorSpec{ + "tpc-calib-dEdx", + Inputs{ + InputSpec{"tracks", "TPC", "MIPS"}, + }, + outputs, + adaptFromTask(), + Options{ + {"tf-per-slot", VariantType::Int, 100, {"number of TFs per calibration time slot"}}, + {"max-delay", VariantType::Int, 3, {"number of slots in past to consider"}}, + {"min-entries", VariantType::Int, 100, {"minimum number of entries to fit single time slot"}}, + {"apply-cuts", VariantType::Bool, false, {"enable tracks filter using cut values passed as options"}}, + {"min-momentum", VariantType::Float, 0.4f, {"minimum momentum cut"}}, + {"max-momentum", VariantType::Float, 0.6f, {"maximum momentum cut"}}, + {"min-clusters", VariantType::Int, 60, {"minimum number of clusters in a track"}}, + {"nbins", VariantType::Int, 200, {"number of bins for stored"}}, + {"direct-file-dump", VariantType::Bool, false, {"directly dump calibration to file"}}}}; +} + +} // namespace o2::tpc diff --git a/Detectors/TPC/workflow/src/MIPTrackFilterSpec.cxx b/Detectors/TPC/workflow/src/MIPTrackFilterSpec.cxx new file mode 100644 index 0000000000000..a37eac105834c --- /dev/null +++ b/Detectors/TPC/workflow/src/MIPTrackFilterSpec.cxx @@ -0,0 +1,98 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file MIPTrackFilterSpec.h +/// \brief Workflow to filter MIP tracks and streams them to other devices. +/// \author Thiago Badaró + +#include "TPCWorkflow/MIPTrackFilterSpec.h" + +#include +#include +#include +#include + +//o2 includes +#include "DataFormatsTPC/TrackTPC.h" +#include "DataFormatsTPC/TrackCuts.h" +#include "DetectorsCalibration/Utils.h" +#include "Framework/Task.h" +#include "Framework/DataProcessorSpec.h" +#include "Framework/ConfigParamRegistry.h" + +using namespace o2::framework; + +namespace o2::tpc +{ + +class MIPTrackFilterDevice : public Task +{ + public: + void init(framework::InitContext& ic) final; + void run(ProcessingContext& pc) final; + void endOfStream(EndOfStreamContext& eos) final; + + private: + void sendOutput(DataAllocator& output); + + TrackCuts mCuts{}; ///< Tracks cuts object + std::vector mMIPTracks; ///< Filtered MIP tracks +}; + +void MIPTrackFilterDevice::init(framework::InitContext& ic) +{ + const double minP = ic.options().get("min-momentum"); + const double maxP = ic.options().get("max-momentum"); + assert(minP < maxP); + const int minClusters = std::max(10, ic.options().get("min-clusters")); + + mCuts.setPMin(minP); + mCuts.setPMax(maxP); + mCuts.setNClusMin(minClusters); +} + +void MIPTrackFilterDevice::run(ProcessingContext& pc) +{ + const auto tracks = pc.inputs().get>("tracks"); + + std::copy_if(tracks.begin(), tracks.end(), std::back_inserter(mMIPTracks), + [this](const auto& track) { return this->mCuts.goodTrack(track); }); + + LOG(INFO) << mMIPTracks.size() << " MIP tracks in a total of " << tracks.size() << " tracks"; + + pc.outputs().snapshot(Output{"TPC", "MIPS", 0, Lifetime::Timeframe}, mMIPTracks); + mMIPTracks.clear(); +} + +void MIPTrackFilterDevice::endOfStream(EndOfStreamContext& eos) +{ + LOG(INFO) << "Finalizig MIP Tracks filter"; +} + +DataProcessorSpec getMIPTrackFilterSpec() +{ + std::vector outputs; + outputs.emplace_back("TPC", "MIPS", 0, Lifetime::Timeframe); + + return DataProcessorSpec{ + "tpc-miptrack-filter", + Inputs{ + InputSpec{"tracks", "TPC", "TRACKS"}, + }, + outputs, + adaptFromTask(), + Options{ + {"min-momentum", VariantType::Double, 0.4, {"minimum momentum cut"}}, + {"max-momentum", VariantType::Double, 0.6, {"maximum momentum cut"}}, + {"min-clusters", VariantType::Int, 60, {"minimum number of clusters in a track"}}}}; +} + +} // namespace o2::tpc diff --git a/Detectors/TPC/workflow/src/tpc-calib-dEdx.cxx b/Detectors/TPC/workflow/src/tpc-calib-dEdx.cxx new file mode 100644 index 0000000000000..d3a7f2cae0d0a --- /dev/null +++ b/Detectors/TPC/workflow/src/tpc-calib-dEdx.cxx @@ -0,0 +1,21 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "TPCWorkflow/CalibdEdxSpec.h" +#include "Framework/runDataProcessing.h" + +using namespace o2::framework; + +WorkflowSpec defineDataProcessing(ConfigContext const&) +{ + using namespace o2::tpc; + return WorkflowSpec{getCalibdEdxSpec()}; +} diff --git a/Detectors/TPC/workflow/src/tpc-miptrack-filter.cxx b/Detectors/TPC/workflow/src/tpc-miptrack-filter.cxx new file mode 100644 index 0000000000000..0ef0d4cc74867 --- /dev/null +++ b/Detectors/TPC/workflow/src/tpc-miptrack-filter.cxx @@ -0,0 +1,21 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "TPCWorkflow/MIPTrackFilterSpec.h" +#include "Framework/runDataProcessing.h" + +using namespace o2::framework; + +WorkflowSpec defineDataProcessing(ConfigContext const&) +{ + using namespace o2::tpc; + return WorkflowSpec{getMIPTrackFilterSpec()}; +} From 17b68a64557507212772768a84f58db6bcb18e7f Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Wed, 7 Jul 2021 09:35:42 +0200 Subject: [PATCH 098/314] Update pragmaonce.yml --- .github/workflows/pragmaonce.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pragmaonce.yml b/.github/workflows/pragmaonce.yml index 9a6221379853e..e66a1ce5e1e6e 100644 --- a/.github/workflows/pragmaonce.yml +++ b/.github/workflows/pragmaonce.yml @@ -15,4 +15,4 @@ jobs: - name: Run pragma check id: pragma_check run: | - git grep -l '#pragma once' -- '*.h' && exit 1 + git grep -l '#pragma once' -- '*.h' && exit 1 || exit 0 From ab5f371b6baf4639eb11c48a2f2e6a8d07fb9a9c Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Wed, 7 Jul 2021 09:40:58 +0200 Subject: [PATCH 099/314] Update pragmaonce.yml --- .github/workflows/pragmaonce.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/pragmaonce.yml b/.github/workflows/pragmaonce.yml index e66a1ce5e1e6e..574d41aeb4b57 100644 --- a/.github/workflows/pragmaonce.yml +++ b/.github/workflows/pragmaonce.yml @@ -15,4 +15,4 @@ jobs: - name: Run pragma check id: pragma_check run: | - git grep -l '#pragma once' -- '*.h' && exit 1 || exit 0 + git --no-pager grep -l '#pragma once' -- '*.h' && exit 1 || exit 0 From b66d2cdd81a5b4e401f74a6a5e4393410be8e078 Mon Sep 17 00:00:00 2001 From: wiechula Date: Tue, 6 Jul 2021 15:28:16 +0200 Subject: [PATCH 100/314] TPC: Improve detection/removal of duplicate digits --- Detectors/TPC/calibration/src/DigitDump.cxx | 37 +++++++++++---------- 1 file changed, 20 insertions(+), 17 deletions(-) diff --git a/Detectors/TPC/calibration/src/DigitDump.cxx b/Detectors/TPC/calibration/src/DigitDump.cxx index b45e848fd672a..f226cf9c1b6ef 100644 --- a/Detectors/TPC/calibration/src/DigitDump.cxx +++ b/Detectors/TPC/calibration/src/DigitDump.cxx @@ -174,30 +174,33 @@ void DigitDump::initInputOutput() //______________________________________________________________________________ void DigitDump::checkDuplicates(bool removeDuplicates) { + sortDigits(); + auto isEqual = [](const Digit& a, const Digit& b) { - return (a.getTimeStamp() == b.getTimeStamp()) && (a.getRow() == b.getRow()) && (a.getPad() == b.getPad()); + if ((a.getTimeStamp() == b.getTimeStamp()) && (a.getRow() == b.getRow()) && (a.getPad() == b.getPad())) { + LOGP(debug, "digit found twice at sector {:2}, cru {:3}, row {:3}, pad {:3}, time {:6}, ADC {:.2} (other: {:.2})", b.getCRU() / 10, b.getCRU(), b.getRow(), b.getPad(), b.getTimeStamp(), b.getChargeFloat(), a.getChargeFloat()); + return true; + } + return false; }; - sortDigits(); for (size_t iSec = 0; iSec < Sector::MAXSECTOR; ++iSec) { auto& digits = mDigits[iSec]; - const auto nDigits = digits.size(); - if (nDigits < 2) { - continue; - } - - for (auto iDigit = nDigits - 2; iDigit--;) { - auto& dig = digits[iDigit]; - auto& digPrev = digits[iDigit + 1]; - if (isEqual(dig, digPrev)) { - if (removeDuplicates) { - digits.erase(digits.begin() + iDigit + 1); - LOGP(warning, "dig found twice at sector {:2}, cru {:3}, row {:3}, pad {:3}, time {:6}, ADC {:.2} (previous: {:.2}), removing it", iSec, dig.getCRU(), dig.getRow(), dig.getPad(), dig.getTimeStamp(), dig.getChargeFloat(), digPrev.getChargeFloat()); - } else { - LOGP(warning, "dig found twice at sector {:2}, cru {:3}, row {:3}, pad {:3}, time {:6}, ADC {:.2} (previous: {:.2})", iSec, dig.getCRU(), dig.getRow(), dig.getPad(), dig.getTimeStamp(), dig.getChargeFloat(), digPrev.getChargeFloat()); - } + size_t nDuplicates = 0; + if (removeDuplicates) { + const auto last = std::unique(digits.begin(), digits.end(), isEqual); + nDuplicates = std::distance(last, digits.end()); + digits.erase(last, digits.end()); + } else { + auto first = digits.begin(); + const auto last = digits.end(); + while (++first != last) { + nDuplicates += isEqual(*(first - 1), *first); } } + if (nDuplicates) { + LOGP(warning, "{} {} duplicate digits in sector {}", removeDuplicates ? "removed" : "found", nDuplicates, iSec); + } } } From e2029ea7d946149c089763e0a5b1636954ece345 Mon Sep 17 00:00:00 2001 From: Anton Alkin Date: Wed, 7 Jul 2021 14:13:29 +0200 Subject: [PATCH 101/314] DPL Analysis: Slice and Array index columns (#6543) * Introduction of Slice and Array index columns * (fixed-size) Array index column: getter returns std::array with iterators to the bound table * Slice index column: getter returns a slice of the bound table, defined by the values of 0th and 1st elements of the index * Added a test in test_ASoA.cxx * transfer index bindings to a new slice --- Framework/Core/include/Framework/ASoA.h | 158 ++++++++++++++++++++++++ Framework/Core/test/test_ASoA.cxx | 56 +++++++++ 2 files changed, 214 insertions(+) diff --git a/Framework/Core/include/Framework/ASoA.h b/Framework/Core/include/Framework/ASoA.h index f7be0d723396e..7219812cc11a5 100644 --- a/Framework/Core/include/Framework/ASoA.h +++ b/Framework/Core/include/Framework/ASoA.h @@ -1334,6 +1334,164 @@ constexpr auto is_binding_compatible_v() /// needs to go from parent to child, the only way is to either have /// a separate "association" with the two indices, or to use the standard /// grouping mechanism of AnalysisTask. +/// +/// Normal index: returns iterator to a bound table +/// Slice index: return an instance of the bound table type with a slice defined by the values in 0 and 1st elements +/// Array index: return an array of iterators, defined by values in its elements + +/// SLICE +#define DECLARE_SOA_SLICE_INDEX_COLUMN_FULL(_Name_, _Getter_, _Type_, _Table_, _Suffix_) \ + struct _Name_##IdSlice : o2::soa::Column<_Type_[2], _Name_##IdSlice> { \ + static_assert(std::is_integral_v<_Type_>, "Index type must be integral"); \ + static_assert((*_Suffix_ == '\0') || (*_Suffix_ == '_'), "Suffix has to begin with _"); \ + static constexpr const char* mLabel = "fIndexSlice" #_Table_ _Suffix_; \ + using base = o2::soa::Column<_Type_[2], _Name_##IdSlice>; \ + using type = _Type_[2]; \ + using column_t = _Name_##IdSlice; \ + using binding_t = _Table_; \ + _Name_##IdSlice(arrow::ChunkedArray const* column) \ + : o2::soa::Column<_Type_[2], _Name_##IdSlice>(o2::soa::ColumnIterator(column)) \ + { \ + } \ + \ + _Name_##IdSlice() = default; \ + _Name_##IdSlice(_Name_##IdSlice const& other) = default; \ + _Name_##IdSlice& operator=(_Name_##IdSlice const& other) = default; \ + std::array<_Type_, 2> inline getIds() const \ + { \ + return _Getter_##Ids(); \ + } \ + \ + std::array<_Type_, 2> _Getter_##Ids() const \ + { \ + return std::array{(*mColumnIterator)[0], (*mColumnIterator)[1]}; \ + } \ + \ + bool has_##_Getter_() const \ + { \ + return (*mColumnIterator)[0] >= 0; \ + } \ + \ + template \ + auto _Getter_##_as() const \ + { \ + assert(mBinding != nullptr); \ + auto t = T{static_cast(mBinding)->asArrowTable()->Slice((*mColumnIterator)[0], (*mColumnIterator)[1] - (*mColumnIterator)[0] + 1u), static_cast((*mColumnIterator)[0])}; \ + static_cast(mBinding)->copyIndexBindings(t); \ + return t; \ + } \ + \ + auto _Getter_() const \ + { \ + return _Getter_##_as(); \ + } \ + \ + template \ + bool setCurrent(T* current) \ + { \ + if constexpr (o2::soa::is_binding_compatible_v()) { \ + assert(current != nullptr); \ + this->mBinding = current; \ + return true; \ + } \ + return false; \ + } \ + \ + bool setCurrentRaw(void* current) \ + { \ + this->mBinding = current; \ + return true; \ + } \ + binding_t* getCurrent() const { return static_cast(mBinding); } \ + void* getCurrentRaw() const { return mBinding; } \ + void* mBinding = nullptr; \ + }; + +#define DECLARE_SOA_SLICE_INDEX_COLUMN(_Name_, _Getter_) DECLARE_SOA_SLICE_INDEX_COLUMN_FULL(_Name_, _Getter_, int32_t, _Name_##s, "") + +///ARRAY +#define DECLARE_SOA_ARRAY_INDEX_COLUMN_FULL(_Name_, _Getter_, _Type_, _N_, _Table_, _Suffix_) \ + struct _Name_##Ids : o2::soa::Column<_Type_[_N_], _Name_##Ids> { \ + static_assert(std::is_integral_v<_Type_>, "Index type must be integral"); \ + static_assert((*_Suffix_ == '\0') || (*_Suffix_ == '_'), "Suffix has to begin with _"); \ + static constexpr const char* mLabel = "fIndexArray" #_Table_ _Suffix_; \ + using base = o2::soa::Column<_Type_[_N_], _Name_##Ids>; \ + using type = _Type_[_N_]; \ + using column_t = _Name_##Ids; \ + using binding_t = _Table_; \ + _Name_##Ids(arrow::ChunkedArray const* column) \ + : o2::soa::Column<_Type_[_N_], _Name_##Ids>(o2::soa::ColumnIterator(column)) \ + { \ + } \ + \ + _Name_##Ids() = default; \ + _Name_##Ids(_Name_##Ids const& other) = default; \ + _Name_##Ids& operator=(_Name_##Ids const& other) = default; \ + \ + std::array<_Type_, _N_> inline getIds() const \ + { \ + return _Getter_##Ids(); \ + } \ + \ + std::array<_Type_, _N_> _Getter_##Ids() const \ + { \ + return getIds(std::make_index_sequence<_N_>{}); \ + } \ + \ + template \ + std::array<_Type_, _N_> getIds(std::index_sequence) const \ + { \ + return std::array<_Type_, _N_>{(*mColumnIterator)[N]...}; \ + } \ + \ + template \ + bool has_##_Getter_() const \ + { \ + static_assert(N < _N_, "Out-of-bounds"); \ + return (*mColumnIterator)[N] >= 0; \ + } \ + \ + template \ + auto _Getter_##_as() const \ + { \ + assert(mBinding != nullptr); \ + return getIterators(std::make_index_sequence<_N_>{}); \ + } \ + template \ + auto getIterators(std::index_sequence) const \ + { \ + return std::array{(static_cast(mBinding)->begin() + (*mColumnIterator)[N])...}; \ + } \ + \ + auto _Getter_() const \ + { \ + return _Getter_##_as(); \ + } \ + \ + template \ + bool setCurrent(T* current) \ + { \ + if constexpr (o2::soa::is_binding_compatible_v()) { \ + assert(current != nullptr); \ + this->mBinding = current; \ + return true; \ + } \ + return false; \ + } \ + \ + bool setCurrentRaw(void* current) \ + { \ + this->mBinding = current; \ + return true; \ + } \ + binding_t* getCurrent() const { return static_cast(mBinding); } \ + void* getCurrentRaw() const { return mBinding; } \ + void* mBinding = nullptr; \ + }; + +#define DECLARE_SOA_ARRAY_INDEX_COLUMN(_Name_, _Getter_, _Size_) DECLARE_SOA_ARRAY_INDEX_COLUMN_FULL(_Name_, _Getter_, int32_t, _Size_, _Name_##s, "") + +///NORMAL #define DECLARE_SOA_INDEX_COLUMN_FULL(_Name_, _Getter_, _Type_, _Table_, _Suffix_) \ struct _Name_##Id : o2::soa::Column<_Type_, _Name_##Id> { \ static_assert(std::is_integral_v<_Type_>, "Index type must be integral"); \ diff --git a/Framework/Core/test/test_ASoA.cxx b/Framework/Core/test/test_ASoA.cxx index 74269b93f43a9..093fbbc58dfda 100644 --- a/Framework/Core/test/test_ASoA.cxx +++ b/Framework/Core/test/test_ASoA.cxx @@ -38,6 +38,7 @@ DECLARE_SOA_EXPRESSION_COLUMN(ESum, esum, int32_t, 1 * test::x + test::y); } // namespace test DECLARE_SOA_TABLE(Points, "TST", "POINTS", test::X, test::Y); +DECLARE_SOA_TABLE(Points3Ds, "TST", "PTS3D", o2::soa::Index<>, test::X, test::Y, test::Z); namespace test { @@ -647,3 +648,58 @@ BOOST_AUTO_TEST_CASE(TestEmptyTables) auto spawned = Extend(p); BOOST_CHECK_EQUAL(spawned.size(), 0); } + +namespace test +{ +DECLARE_SOA_ARRAY_INDEX_COLUMN(Points3D, pointGroup, 3); +DECLARE_SOA_SLICE_INDEX_COLUMN(Points3D, pointSlice); +} // namespace test + +DECLARE_SOA_TABLE(PointsRef, "TST", "PTSREF", test::Points3DIdSlice, test::Points3DIds); + +BOOST_AUTO_TEST_CASE(TestAdvancedIndices) +{ + TableBuilder b1; + auto pwriter = b1.cursor(); + for (auto i = 0; i < 20; ++i) { + pwriter(0, -1 * i, 0.5 * i, 2 * i); + } + auto t1 = b1.finalize(); + + TableBuilder b2; + auto prwriter = b2.cursor(); + auto a = std::array{0, 1}; + auto aa = std::array{2, 3, 4}; + prwriter(0, &a[0], &aa[0]); + a = {4, 10}; + aa = {12, 2, 19}; + prwriter(0, &a[0], &aa[0]); + auto t2 = b2.finalize(); + + auto pt = Points3Ds{t1}; + auto prt = PointsRef{t2}; + prt.bindExternalIndices(&pt); + + auto it = prt.begin(); + auto s1 = it.pointSlice(); + auto g1 = it.pointGroup(); + auto bb = std::is_same_v; + + BOOST_CHECK(bb); + BOOST_CHECK_EQUAL(s1.size(), 2); + + aa = {2, 3, 4}; + for (int i = 0; i < 3; ++i) { + BOOST_CHECK_EQUAL(g1[i].globalIndex(), aa[i]); + } + + ++it; + auto s2 = it.pointSlice(); + auto g2 = it.pointGroup(); + BOOST_CHECK_EQUAL(s2.size(), 7); + + aa = {12, 2, 19}; + for (int i = 0; i < 3; ++i) { + BOOST_CHECK_EQUAL(g2[i].globalIndex(), aa[i]); + } +} From 43eb4fd786ab2c852398d99ca013ab30513be87a Mon Sep 17 00:00:00 2001 From: Laurent Aphecetche Date: Mon, 5 Jul 2021 18:47:05 +0200 Subject: [PATCH 102/314] [MRRTF-122] Add MCH to FST Note that the last tracking part (extrap to vertex) is far from final and will be updated in a forthcoming PR (in prep) where FwdTracks will be added to AODs and extrapolation will be part of the AOD producer. Currently the vertex information that is used is completely fake (coming from a vertex sampler that is used for debugging when using Run2 data). --- .../include/MCHWorkflow/ClusterFinderOriginalSpec.h | 2 +- .../include/MCHWorkflow/PreClusterFinderSpec.h | 2 +- .../MCH/Workflow/src/ClusterFinderOriginalSpec.cxx | 4 ++-- .../MUON/MCH/Workflow/src/PreClusterFinderSpec.cxx | 4 ++-- Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx | 4 ++-- Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.h | 2 +- Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx | 4 ++-- Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.h | 2 +- Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.cxx | 4 ++-- Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.h | 3 +-- Detectors/MUON/MCH/Workflow/src/reco-workflow.cxx | 10 +++++----- prodtests/full-system-test/dpl-workflow.sh | 7 +++++-- prodtests/full_system_test.sh | 1 + 13 files changed, 26 insertions(+), 23 deletions(-) diff --git a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/ClusterFinderOriginalSpec.h b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/ClusterFinderOriginalSpec.h index 3f5b69c02e46a..8cf40cbbf9b14 100644 --- a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/ClusterFinderOriginalSpec.h +++ b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/ClusterFinderOriginalSpec.h @@ -24,7 +24,7 @@ namespace o2 namespace mch { -o2::framework::DataProcessorSpec getClusterFinderOriginalSpec(); +o2::framework::DataProcessorSpec getClusterFinderOriginalSpec(const char* name = "ClusterFinderOriginal"); } // end namespace mch } // end namespace o2 diff --git a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/PreClusterFinderSpec.h b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/PreClusterFinderSpec.h index 280e3d489c10b..44b7594f2d599 100644 --- a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/PreClusterFinderSpec.h +++ b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/PreClusterFinderSpec.h @@ -24,7 +24,7 @@ namespace o2 namespace mch { -o2::framework::DataProcessorSpec getPreClusterFinderSpec(); +o2::framework::DataProcessorSpec getPreClusterFinderSpec(const char* name = "PreClusterFinder"); } // end namespace mch } // end namespace o2 diff --git a/Detectors/MUON/MCH/Workflow/src/ClusterFinderOriginalSpec.cxx b/Detectors/MUON/MCH/Workflow/src/ClusterFinderOriginalSpec.cxx index 61a784d602733..f7b2bd418cab0 100644 --- a/Detectors/MUON/MCH/Workflow/src/ClusterFinderOriginalSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/ClusterFinderOriginalSpec.cxx @@ -133,10 +133,10 @@ class ClusterFinderOriginalTask }; //_________________________________________________________________________________________________ -o2::framework::DataProcessorSpec getClusterFinderOriginalSpec() +o2::framework::DataProcessorSpec getClusterFinderOriginalSpec(const char* name) { return DataProcessorSpec{ - "ClusterFinderOriginal", + name, Inputs{InputSpec{"preclusterrofs", "MCH", "PRECLUSTERROFS", 0, Lifetime::Timeframe}, InputSpec{"preclusters", "MCH", "PRECLUSTERS", 0, Lifetime::Timeframe}, InputSpec{"digits", "MCH", "PRECLUSTERDIGITS", 0, Lifetime::Timeframe}}, diff --git a/Detectors/MUON/MCH/Workflow/src/PreClusterFinderSpec.cxx b/Detectors/MUON/MCH/Workflow/src/PreClusterFinderSpec.cxx index a39acd4c49a4f..e5f26de2ad789 100644 --- a/Detectors/MUON/MCH/Workflow/src/PreClusterFinderSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/PreClusterFinderSpec.cxx @@ -186,11 +186,11 @@ class PreClusterFinderTask }; //_________________________________________________________________________________________________ -o2::framework::DataProcessorSpec getPreClusterFinderSpec() +o2::framework::DataProcessorSpec getPreClusterFinderSpec(const char* name) { std::string helpstr = "[off/error/fatal] check that all digits are included in pre-clusters"; return DataProcessorSpec{ - "PreClusterFinder", + name, Inputs{InputSpec{"digitrofs", "MCH", "DIGITROFS", 0, Lifetime::Timeframe}, InputSpec{"digits", "MCH", "DIGITS", 0, Lifetime::Timeframe}}, Outputs{OutputSpec{{"preclusterrofs"}, "MCH", "PRECLUSTERROFS", 0, Lifetime::Timeframe}, diff --git a/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx index 7e60ab5a2018c..ec4bbaea8f717 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.cxx @@ -219,10 +219,10 @@ class TrackAtVertexTask }; //_________________________________________________________________________________________________ -o2::framework::DataProcessorSpec getTrackAtVertexSpec() +o2::framework::DataProcessorSpec getTrackAtVertexSpec(const char* name) { return DataProcessorSpec{ - "TrackAtVertex", + name, Inputs{InputSpec{"vertices", "MCH", "VERTICES", 0, Lifetime::Timeframe}, InputSpec{"rofs", "MCH", "TRACKROFS", 0, Lifetime::Timeframe}, InputSpec{"tracks", "MCH", "TRACKS", 0, Lifetime::Timeframe}, diff --git a/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.h b/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.h index 23329027342e9..8e80ca7a62385 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/TrackAtVertexSpec.h @@ -24,7 +24,7 @@ namespace o2 namespace mch { -o2::framework::DataProcessorSpec getTrackAtVertexSpec(); +o2::framework::DataProcessorSpec getTrackAtVertexSpec(const char* name = "TrackAtVertex"); } // end namespace mch } // end namespace o2 diff --git a/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx index db63525421d72..5c0dc85d2fabf 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.cxx @@ -160,10 +160,10 @@ class TrackFinderTask }; //_________________________________________________________________________________________________ -o2::framework::DataProcessorSpec getTrackFinderSpec() +o2::framework::DataProcessorSpec getTrackFinderSpec(const char* name) { return DataProcessorSpec{ - "TrackFinder", + name, Inputs{InputSpec{"clusterrofs", "MCH", "CLUSTERROFS", 0, Lifetime::Timeframe}, InputSpec{"clusters", "MCH", "GLOBALCLUSTERS", 0, Lifetime::Timeframe}}, Outputs{OutputSpec{{"trackrofs"}, "MCH", "TRACKROFS", 0, Lifetime::Timeframe}, diff --git a/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.h b/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.h index 99ed633be8676..cc8b766476eae 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/TrackFinderSpec.h @@ -24,7 +24,7 @@ namespace o2 namespace mch { -o2::framework::DataProcessorSpec getTrackFinderSpec(); +o2::framework::DataProcessorSpec getTrackFinderSpec(const char* name = "TrackFinder"); } // end namespace mch } // end namespace o2 diff --git a/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.cxx b/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.cxx index 87ae199b5b5b4..3fa592ecf5ff7 100644 --- a/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.cxx @@ -110,10 +110,10 @@ class VertexSamplerSpec }; //_________________________________________________________________________________________________ -o2::framework::DataProcessorSpec getVertexSamplerSpec() +o2::framework::DataProcessorSpec getVertexSamplerSpec(const char* name) { return DataProcessorSpec{ - "VertexSampler", + name, Inputs{InputSpec{"rofs", "MCH", "TRACKROFS", 0, Lifetime::Timeframe}, // track and cluster messages are there just to keep things synchronized InputSpec{"tracks", "MCH", "TRACKS", 0, Lifetime::Timeframe}, diff --git a/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.h b/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.h index 55a54b1ecf571..0aac10e35d157 100644 --- a/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.h +++ b/Detectors/MUON/MCH/Workflow/src/VertexSamplerSpec.h @@ -24,8 +24,7 @@ namespace o2 namespace mch { -o2::framework::DataProcessorSpec getVertexSamplerSpec(); - +o2::framework::DataProcessorSpec getVertexSamplerSpec(const char* name = "VertexSampler"); } // end namespace mch } // end namespace o2 diff --git a/Detectors/MUON/MCH/Workflow/src/reco-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/reco-workflow.cxx index ba66e11206482..32f5242686f96 100644 --- a/Detectors/MUON/MCH/Workflow/src/reco-workflow.cxx +++ b/Detectors/MUON/MCH/Workflow/src/reco-workflow.cxx @@ -49,12 +49,12 @@ WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) o2::conf::ConfigurableParam::updateFromString(configcontext.options().get("configKeyValues")); - specs.emplace_back(o2::mch::getPreClusterFinderSpec()); - specs.emplace_back(o2::mch::getClusterFinderOriginalSpec()); + specs.emplace_back(o2::mch::getPreClusterFinderSpec("mch-precluster-finder")); + specs.emplace_back(o2::mch::getClusterFinderOriginalSpec("mch-cluster-finder")); specs.emplace_back(o2::mch::getClusterTransformerSpec()); - specs.emplace_back(o2::mch::getTrackFinderSpec()); - specs.emplace_back(o2::mch::getVertexSamplerSpec()); - specs.emplace_back(o2::mch::getTrackAtVertexSpec()); + specs.emplace_back(o2::mch::getTrackFinderSpec("mch-track-finder")); + specs.emplace_back(o2::mch::getVertexSamplerSpec("mch-vertex-sampler")); + specs.emplace_back(o2::mch::getTrackAtVertexSpec("mch-track-at-vertex")); // configure dpl timer to inject correct firstTFOrbit: start from the 1st orbit of TF containing 1st sampled orbit o2::raw::HBFUtilsInitializer hbfIni(configcontext, specs); diff --git a/prodtests/full-system-test/dpl-workflow.sh b/prodtests/full-system-test/dpl-workflow.sh index 70dd9ebe78bcd..25c5e449138b3 100755 --- a/prodtests/full-system-test/dpl-workflow.sh +++ b/prodtests/full-system-test/dpl-workflow.sh @@ -32,7 +32,7 @@ if [ $NUMAGPUIDS != 0 ]; then fi # Set some individual workflow arguments depending on configuration -CTF_DETECTORS=ITS,MFT,TPC,TOF,FT0,MID,EMC,PHS,CPV,ZDC,FDD,HMP,FV0,TRD +CTF_DETECTORS=ITS,MFT,TPC,TOF,FT0,MID,EMC,PHS,CPV,ZDC,FDD,HMP,FV0,TRD,MCH CTF_DIR= CTF_DICT_DIR= GPU_INPUT=zsraw @@ -104,7 +104,7 @@ if [ $CTFINPUT == 1 ]; then if [ ! -z $CTF_DICT_DIR ] ; then CTF_DICT=" --ctf-dict ${CTF_DICT_DIR}/ctf_dictionary.root"; fi WORKFLOW="o2-ctf-reader-workflow --ctf-input ${CTFName} ${CTF_DICT} --onlyDet $CTF_DETECTORS $ARGS_ALL | " elif [ $EXTINPUT == 1 ]; then - WORKFLOW="o2-dpl-raw-proxy $ARGS_ALL --dataspec \"FLP:FLP/DISTSUBTIMEFRAME/0;B:TPC/RAWDATA;C:ITS/RAWDATA;D:TOF/RAWDATA;D:MFT/RAWDATA;E:FT0/RAWDATA;F:MID/RAWDATA;G:EMC/RAWDATA;H:PHS/RAWDATA;I:CPV/RAWDATA;J:ZDC/RAWDATA;K:HMP/RAWDATA;L:FDD/RAWDATA;M:TRD/RAWDATA;N:FV0/RAWDATA\" --channel-config \"name=readout-proxy,type=pull,method=connect,address=ipc://@$INRAWCHANNAME,transport=shmem,rateLogging=0\" | " + WORKFLOW="o2-dpl-raw-proxy $ARGS_ALL --dataspec \"FLP:FLP/DISTSUBTIMEFRAME/0;B:TPC/RAWDATA;C:ITS/RAWDATA;D:TOF/RAWDATA;D:MFT/RAWDATA;E:FT0/RAWDATA;F:MID/RAWDATA;G:EMC/RAWDATA;H:PHS/RAWDATA;I:CPV/RAWDATA;J:ZDC/RAWDATA;K:HMP/RAWDATA;L:FDD/RAWDATA;M:TRD/RAWDATA;N:FV0/RAWDATA;O:MCH/RAWDATA\" --channel-config \"name=readout-proxy,type=pull,method=connect,address=ipc://@$INRAWCHANNAME,transport=shmem,rateLogging=0\" | " else WORKFLOW="o2-raw-file-reader-workflow --detect-tf0 $ARGS_ALL --configKeyValues \"HBFUtils.nHBFPerTF=$NHBPERTF;\" --delay $TFDELAY --loop $NTIMEFRAMES --max-tf 0 --input-conf rawAll.cfg | " fi @@ -116,6 +116,7 @@ if [ $CTFINPUT == 0 ]; then WORKFLOW+="o2-ft0-flp-dpl-workflow $ARGS_ALL --disable-root-output | " WORKFLOW+="o2-fv0-flp-dpl-workflow $ARGS_ALL --disable-root-output | " WORKFLOW+="o2-mid-raw-to-digits-workflow $ARGS_ALL | " + WORKFLOW+="o2-mch-raw-to-digits-workflow $ARGS_ALL | " WORKFLOW+="o2-tof-compressor $ARGS_ALL | " WORKFLOW+="o2-fdd-flp-dpl-workflow --disable-root-output $ARGS_ALL | " WORKFLOW+="o2-trd-datareader $ARGS_ALL | " @@ -136,6 +137,7 @@ if [ $SYNCMODE == 0 ]; then WORKFLOW+="o2-tof-matcher-workflow $ARGS_ALL --disable-root-input --disable-root-output $DISABLE_MC | " WORKFLOW+="o2-mid-reco-workflow $ARGS_ALL --disable-root-output $DISABLE_MC | " + WORKFLOW+="o2-mch-reco-workflow $ARGS_ALL | " WORKFLOW+="o2-mft-reco-workflow $ARGS_ALL --clusters-from-upstream $DISABLE_MC --disable-root-output | " WORKFLOW+="o2-primary-vertexing-workflow $ARGS_ALL $DISABLE_MC --disable-root-input --disable-root-output --validate-with-ft0 | " WORKFLOW+="o2-secondary-vertexing-workflow $ARGS_ALL --disable-root-input --disable-root-output | " @@ -157,6 +159,7 @@ if [ $CTFINPUT == 0 ]; then WORKFLOW+="o2-ft0-entropy-encoder-workflow $ARGS_ALL | " WORKFLOW+="o2-fv0-entropy-encoder-workflow $ARGS_ALL | " WORKFLOW+="o2-mid-entropy-encoder-workflow $ARGS_ALL | " + WORKFLOW+="o2-mch-entropy-encoder-workflow $ARGS_ALL | " WORKFLOW+="o2-phos-entropy-encoder-workflow $ARGS_ALL | " WORKFLOW+="o2-cpv-entropy-encoder-workflow $ARGS_ALL | " WORKFLOW+="o2-emcal-entropy-encoder-workflow $ARGS_ALL | " diff --git a/prodtests/full_system_test.sh b/prodtests/full_system_test.sh index b236a9af2f368..1c63b70f9b7d0 100755 --- a/prodtests/full_system_test.sh +++ b/prodtests/full_system_test.sh @@ -111,6 +111,7 @@ taskwrapper fddraw.log o2-fdd-digit2raw --file-per-link -o raw/FDD taskwrapper tpcraw.log o2-tpc-digits-to-rawzs --file-for link -i tpcdigits.root -o raw/TPC taskwrapper tofraw.log o2-tof-reco-workflow ${GLOBALDPLOPT} --tof-raw-file-for link --output-type raw --tof-raw-outdir raw/TOF taskwrapper midraw.log o2-mid-digits-to-raw-workflow ${GLOBALDPLOPT} --mid-raw-outdir raw/MID --mid-raw-perlink +taskwrapper mchraw.log o2-mch-digits-to-raw --input-file mchdigits.root --output-dir raw/MCH --file-per-link taskwrapper emcraw.log o2-emcal-rawcreator --file-for link -o raw/EMC taskwrapper phsraw.log o2-phos-digi2raw --file-for link -o raw/PHS taskwrapper cpvraw.log o2-cpv-digi2raw --file-for link -o raw/CPV From 6d1ebfb7c44a1d3d392ebc33c8879de1746520bf Mon Sep 17 00:00:00 2001 From: Laurent Aphecetche Date: Sun, 4 Jul 2021 12:37:43 +0200 Subject: [PATCH 103/314] [MRRTF-131] MCH: Add reader and writer specs for TrackMCH Also add one feature to o2-mch-tracks-file-dumper : the ability to read from Root files as well. --- .../MUON/MCH/src/DataFormatsMCHLinkDef.h | 1 + Detectors/MUON/MCH/Base/CMakeLists.txt | 7 +- .../MCH/Base/include/MCHBase/ClusterBlock.h | 13 +- Detectors/MUON/MCH/Base/src/MCHBaseLinkDef.h | 2 + Detectors/MUON/MCH/Workflow/CMakeLists.txt | 25 ++- Detectors/MUON/MCH/Workflow/README.md | 19 +++ .../include/MCHWorkflow/TrackReaderSpec.h | 22 +++ .../include/MCHWorkflow/TrackWriterSpec.h | 22 +++ .../MUON/MCH/Workflow/src/TrackReaderSpec.cxx | 103 +++++++++++++ .../MCH/Workflow/src/TrackSamplerSpec.cxx | 9 +- .../MUON/MCH/Workflow/src/TrackSinkSpec.cxx | 9 +- .../MUON/MCH/Workflow/src/TrackTreeReader.cxx | 62 ++++++++ .../MUON/MCH/Workflow/src/TrackTreeReader.h | 41 +++++ .../MUON/MCH/Workflow/src/TrackWriterSpec.cxx | 42 +++++ .../MCH/Workflow/src/tracks-file-dumper.cxx | 144 +++++++++++------- .../Workflow/src/tracks-reader-workflow.cxx | 21 +++ .../Workflow/src/tracks-writer-workflow.cxx | 21 +++ 17 files changed, 479 insertions(+), 84 deletions(-) create mode 100644 Detectors/MUON/MCH/Workflow/include/MCHWorkflow/TrackReaderSpec.h create mode 100644 Detectors/MUON/MCH/Workflow/include/MCHWorkflow/TrackWriterSpec.h create mode 100644 Detectors/MUON/MCH/Workflow/src/TrackReaderSpec.cxx create mode 100644 Detectors/MUON/MCH/Workflow/src/TrackTreeReader.cxx create mode 100644 Detectors/MUON/MCH/Workflow/src/TrackTreeReader.h create mode 100644 Detectors/MUON/MCH/Workflow/src/TrackWriterSpec.cxx create mode 100644 Detectors/MUON/MCH/Workflow/src/tracks-reader-workflow.cxx create mode 100644 Detectors/MUON/MCH/Workflow/src/tracks-writer-workflow.cxx diff --git a/DataFormats/Detectors/MUON/MCH/src/DataFormatsMCHLinkDef.h b/DataFormats/Detectors/MUON/MCH/src/DataFormatsMCHLinkDef.h index 7a1199793364a..fa20c5d66b229 100644 --- a/DataFormats/Detectors/MUON/MCH/src/DataFormatsMCHLinkDef.h +++ b/DataFormats/Detectors/MUON/MCH/src/DataFormatsMCHLinkDef.h @@ -17,6 +17,7 @@ #pragma link C++ class o2::mch::ROFRecord + ; #pragma link C++ class o2::mch::TrackMCH + ; +#pragma link C++ class std::vector < o2::mch::TrackMCH> + ; #pragma link C++ class o2::mch::DsChannelId + ; #pragma link C++ class o2::mch::DsChannelGroup + ; #pragma link C++ class o2::mch::Digit + ; diff --git a/Detectors/MUON/MCH/Base/CMakeLists.txt b/Detectors/MUON/MCH/Base/CMakeLists.txt index 5360d26920815..0261329dedeef 100644 --- a/Detectors/MUON/MCH/Base/CMakeLists.txt +++ b/Detectors/MUON/MCH/Base/CMakeLists.txt @@ -11,10 +11,11 @@ o2_add_library(MCHBase SOURCES - src/ClusterBlock.cxx + src/ClusterBlock.cxx src/PreCluster.cxx src/TrackBlock.cxx - PUBLIC_LINK_LIBRARIES O2::DataFormatsMCH) + PUBLIC_LINK_LIBRARIES O2::DataFormatsMCH) o2_target_root_dictionary(MCHBase - HEADERS include/MCHBase/DecoderError.h) + HEADERS include/MCHBase/DecoderError.h + include/MCHBase/ClusterBlock.h) diff --git a/Detectors/MUON/MCH/Base/include/MCHBase/ClusterBlock.h b/Detectors/MUON/MCH/Base/include/MCHBase/ClusterBlock.h index 6377b2ac23797..ac9150fa1a3f4 100644 --- a/Detectors/MUON/MCH/Base/include/MCHBase/ClusterBlock.h +++ b/Detectors/MUON/MCH/Base/include/MCHBase/ClusterBlock.h @@ -19,6 +19,7 @@ #include #include +#include namespace o2 { @@ -58,11 +59,21 @@ struct ClusterStruct { } return (((chamberId & 0xF) << 28) | ((deId & 0x7FF) << 17) | clusterIndex); } + + ClassDefNV(ClusterStruct, 1) }; std::ostream& operator<<(std::ostream& stream, const ClusterStruct& cluster); - } // namespace mch } // namespace o2 +namespace framework +{ +template +struct is_messageable; +template <> +struct is_messageable : std::true_type { +}; +} // namespace framework + #endif // ALICEO2_MCH_CLUSTERBLOCK_H_ diff --git a/Detectors/MUON/MCH/Base/src/MCHBaseLinkDef.h b/Detectors/MUON/MCH/Base/src/MCHBaseLinkDef.h index ee0562a8c88f1..b5c7e470842fb 100644 --- a/Detectors/MUON/MCH/Base/src/MCHBaseLinkDef.h +++ b/Detectors/MUON/MCH/Base/src/MCHBaseLinkDef.h @@ -17,5 +17,7 @@ #pragma link C++ namespace o2; #pragma link C++ namespace o2::mch; +#pragma link C++ class o2::mch::ClusterStruct + ; +#pragma link C++ class std::vector < o2::mch::ClusterStruct> + ; #endif diff --git a/Detectors/MUON/MCH/Workflow/CMakeLists.txt b/Detectors/MUON/MCH/Workflow/CMakeLists.txt index c0b3cf0811ece..cda2863daea6e 100644 --- a/Detectors/MUON/MCH/Workflow/CMakeLists.txt +++ b/Detectors/MUON/MCH/Workflow/CMakeLists.txt @@ -12,10 +12,13 @@ # MCHWorkflow library is (at least) needed by Detectors/CTF/workflow o2_add_library(MCHWorkflow SOURCES - src/EntropyDecoderSpec.cxx + src/ClusterFinderOriginalSpec.cxx src/DataDecoderSpec.cxx + src/EntropyDecoderSpec.cxx src/PreClusterFinderSpec.cxx - src/ClusterFinderOriginalSpec.cxx + src/TrackReaderSpec.cxx + src/TrackTreeReader.cxx + src/TrackWriterSpec.cxx PUBLIC_LINK_LIBRARIES O2::CommonUtils O2::DPLUtils @@ -143,6 +146,18 @@ o2_add_executable( COMPONENT_NAME mch PUBLIC_LINK_LIBRARIES O2::Framework O2::DataFormatsMCH O2::MCHBase) +o2_add_executable( + tracks-writer-workflow + SOURCES src/tracks-writer-workflow.cxx + COMPONENT_NAME mch + PUBLIC_LINK_LIBRARIES O2::MCHWorkflow) + +o2_add_executable( + tracks-reader-workflow + SOURCES src/tracks-reader-workflow.cxx + COMPONENT_NAME mch + PUBLIC_LINK_LIBRARIES O2::MCHWorkflow) + o2_add_executable( tracks-sampler-workflow SOURCES src/TrackSamplerSpec.cxx src/tracks-sampler-workflow.cxx @@ -177,6 +192,6 @@ o2_add_executable( ) o2_add_executable(tracks-file-dumper - SOURCES src/tracks-file-dumper.cxx - COMPONENT_NAME mch - PUBLIC_LINK_LIBRARIES fmt::fmt Boost::program_options O2::MCHBase) + SOURCES src/tracks-file-dumper.cxx + COMPONENT_NAME mch + PUBLIC_LINK_LIBRARIES Boost::program_options O2::MCHWorkflow) diff --git a/Detectors/MUON/MCH/Workflow/README.md b/Detectors/MUON/MCH/Workflow/README.md index 25b4ab5801315..2a76f68ddae71 100644 --- a/Detectors/MUON/MCH/Workflow/README.md +++ b/Detectors/MUON/MCH/Workflow/README.md @@ -20,11 +20,13 @@ * [Digit sampler](#digit-sampler) * [Cluster sampler](#cluster-sampler) * [Track sampler](#track-sampler) + * [Track reader](#track-reader) * [Vertex sampler](#vertex-sampler) * [Sinks](#sinks) * [Precluster sink](#precluster-sink) * [Cluster sink](#cluster-sink) * [Track sink](#track-sink) + * [Track writer](#track-writer) @@ -266,6 +268,15 @@ Option `--forTrackFitter` allows to send the messages with the data description Option `--nEventsPerTF xxx` allows to set the number of events (i.e. ROF records) to send per time frame (default = 1). +### Track reader + +``` +o2-mch-tracks-reader-workflow --infile mchtracks.root +``` + +Does the same work as the [Track sampler](#track-sampler) but starting from a Root file (`mchtracks.root`) containing `TRACKS`, `TRACKROFS` and `TRACKCLUSTERS` containers written e.g. by the [o2-mch-tracks-writer-workflow](#track-writer). +Note that a very basic utility also exists to get a textual dump of a Root tracks file : `o2-mch-tracks-file-dumper`. + ### Vertex sampler ```shell @@ -337,3 +348,11 @@ Take as input the list of all tracks at vertex ([TrackAtVtxStruct](#track-extrap Option `--tracksAtVertexOnly` allows to take as input and write only the tracks at vertex (number of MCH tracks and number of associated clusters = 0). Option `--mchTracksOnly` allows to take as input and write only the MCH tracks and associated clusters (number of tracks at vertex = 0). + +### Track writer + +```shell +o2-mch-tracks-writer-workflow --outfile "mchtracks.root" +``` + +Does the same kind of work as the [track sink](#track-sink) but the output is in Root format instead of custom binary one. It is implemented using the generic [MakeRootTreeWriterSpec](/DPLUtils/MakeRootTreeWriterSpec.h) and thus offers the same options. diff --git a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/TrackReaderSpec.h b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/TrackReaderSpec.h new file mode 100644 index 0000000000000..e62839051e4b2 --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/TrackReaderSpec.h @@ -0,0 +1,22 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#ifndef O2_MCH_WORKFLOW_TRACK_READER_SPEC_H +#define O2_MCH_WORKFLOW_TRACK_READER_SPEC_H + +#include "Framework/DataProcessorSpec.h" + +namespace o2::mch +{ +o2::framework::DataProcessorSpec getTrackReaderSpec(bool useMC, const char* name = "mch-tracks-reader"); +} + +#endif diff --git a/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/TrackWriterSpec.h b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/TrackWriterSpec.h new file mode 100644 index 0000000000000..74c747daba78a --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/include/MCHWorkflow/TrackWriterSpec.h @@ -0,0 +1,22 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#ifndef O2_MCH_WORKFLOW_TRACK_WRITER_SPEC_H +#define O2_MCH_WORKFLOW_TRACK_WRITER_SPEC_H + +#include "Framework/DataProcessorSpec.h" + +namespace o2::mch +{ +o2::framework::DataProcessorSpec getTrackWriterSpec(bool useMC, const char* name = "mch-tracks-writer"); +} + +#endif diff --git a/Detectors/MUON/MCH/Workflow/src/TrackReaderSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackReaderSpec.cxx new file mode 100644 index 0000000000000..768a7f466de99 --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/src/TrackReaderSpec.cxx @@ -0,0 +1,103 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "MCHWorkflow/TrackReaderSpec.h" + +#include "DPLUtils/RootTreeReader.h" +#include "DataFormatsMCH/ROFRecord.h" +#include "DataFormatsMCH/TrackMCH.h" +#include "Framework/ConfigParamRegistry.h" +#include "Framework/ControlService.h" +#include "Framework/Lifetime.h" +#include "Framework/Logger.h" +#include "Framework/Task.h" +#include "MCHBase/ClusterBlock.h" +#include +#include + +using namespace o2::framework; + +namespace o2::mch +{ + +template +void printBranch(char* data, const char* what) +{ + auto tdata = reinterpret_cast*>(data); + LOGP(info, "MCH {:d} {:s}", tdata->size(), what); +} + +RootTreeReader::SpecialPublishHook logging{ + [](std::string_view name, ProcessingContext&, Output const&, char* data) -> bool { + if (name == "trackrofs") { + printBranch(data, "ROFS"); + } + if (name == "trackclusters") { + printBranch(data, "CLUSTERS"); + } + if (name == "tracks") { + printBranch(data, "TRACKS"); + } + return false; + }}; + +struct TrackReader { + std::unique_ptr mTreeReader; + void init(InitContext& ic) + { + auto treeName = "o2sim"; + auto fileName = ic.options().get("infile"); + auto nofEntries{-1}; + mTreeReader = std::make_unique( + treeName, + fileName.c_str(), + nofEntries, + RootTreeReader::PublishingMode::Single, + RootTreeReader::BranchDefinition>{Output{"MCH", "TRACKS", 0}, "tracks"}, + RootTreeReader::BranchDefinition>{Output{"MCH", "TRACKROFS", 0}, "trackrofs"}, + RootTreeReader::BranchDefinition>{Output{"MCH", "TRACKCLUSTERS", 0}, "trackclusters"}, + &logging); + } + + void + run(ProcessingContext& pc) + { + if (mTreeReader->next()) { + (*mTreeReader)(pc); + } else { + pc.services().get().endOfStream(); + } + } +}; + +DataProcessorSpec getTrackReaderSpec(bool useMC, const char* name) +{ + std::vector outputSpecs; + outputSpecs.emplace_back(OutputSpec{{"tracks"}, "MCH", "TRACKS", 0, Lifetime::Timeframe}); + outputSpecs.emplace_back(OutputSpec{{"trackrofs"}, "MCH", "TRACKROFS", 0, Lifetime::Timeframe}); + outputSpecs.emplace_back(OutputSpec{{"trackclusters"}, "MCH", "TRACKCLUSTERS", 0, Lifetime::Timeframe}); + + if (useMC == true) { + LOGP(warning, "MC handling not yet implemented"); + } + + auto options = Options{ + {"infile", VariantType::String, "mchtracks.root", {"name of the input track file"}}, + }; + + return DataProcessorSpec{ + name, + Inputs{}, + outputSpecs, + adaptFromTask(), + options}; +} +} // namespace o2::mch diff --git a/Detectors/MUON/MCH/Workflow/src/TrackSamplerSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackSamplerSpec.cxx index 4db800b950c0a..cf4b08b933601 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackSamplerSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/TrackSamplerSpec.cxx @@ -34,6 +34,7 @@ #include "DataFormatsMCH/TrackMCH.h" #include "MCHBase/ClusterBlock.h" #include "MCHBase/TrackBlock.h" +#include "TrackAtVtxStruct.h" namespace o2 { @@ -100,14 +101,6 @@ class TrackSamplerTask } } - private: - struct TrackAtVtxStruct { - TrackParamStruct paramAtVertex{}; - double dca = 0.; - double rAbs = 0.; - int mchTrackIdx = 0; - }; - //_________________________________________________________________________________________________ int readOneEvent(std::vector>& tracks, std::vector>& clusters) diff --git a/Detectors/MUON/MCH/Workflow/src/TrackSinkSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackSinkSpec.cxx index fc7532e9f9df1..d8fa684a99cb3 100644 --- a/Detectors/MUON/MCH/Workflow/src/TrackSinkSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/TrackSinkSpec.cxx @@ -35,6 +35,7 @@ #include "DataFormatsMCH/TrackMCH.h" #include "MCHBase/ClusterBlock.h" #include "MCHBase/TrackBlock.h" +#include "TrackAtVtxStruct.h" namespace o2 { @@ -140,14 +141,6 @@ class TrackSinkTask } } - private: - struct TrackAtVtxStruct { - TrackParamStruct paramAtVertex{}; - double dca = 0.; - double rAbs = 0.; - int mchTrackIdx = 0; - }; - //_________________________________________________________________________________________________ gsl::span getEventTracksAndClusters(const ROFRecord& rof, gsl::span tracks, gsl::span clusters, diff --git a/Detectors/MUON/MCH/Workflow/src/TrackTreeReader.cxx b/Detectors/MUON/MCH/Workflow/src/TrackTreeReader.cxx new file mode 100644 index 0000000000000..3e4fb79fbd427 --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/src/TrackTreeReader.cxx @@ -0,0 +1,62 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "TrackTreeReader.h" +#include +#include + +namespace o2::mch +{ +void AssertBranch(ROOT::Internal::TTreeReaderValueBase& value) +{ + if (value.GetSetupStatus() < 0) { + throw std::invalid_argument(fmt::format("Error {} setting up tree reader for branch {}", + value.GetSetupStatus(), value.GetBranchName())); + } +} + +TrackTreeReader::TrackTreeReader(TTree* tree) : mCurrentRof{std::numeric_limits::max()} +{ + if (!tree) { + throw std::invalid_argument("cannot work with a null tree pointer"); + } + mTreeReader.SetTree(tree); + mTreeReader.Restart(); + mTreeReader.Next(); + mCurrentRof = 0; + AssertBranch(mTracks); + AssertBranch(mRofs); + AssertBranch(mClusters); +} + +bool TrackTreeReader::next(o2::mch::ROFRecord& rof, std::vector& tracks, std::vector& clusters) +{ + if (mCurrentRof >= mRofs->size()) { + if (!mTreeReader.Next()) { + return false; + } + mCurrentRof = 0; + } + + if (mRofs->empty()) { + return false; + } + rof = (*mRofs)[mCurrentRof]; + tracks.clear(); + clusters.clear(); + auto& tfTracks = *mTracks; + auto& tfClusters = *mClusters; + tracks.insert(tracks.begin(), tfTracks.begin() + rof.getFirstIdx(), tfTracks.begin() + rof.getLastIdx() + 1); + clusters.insert(clusters.begin(), tfClusters.begin() + rof.getFirstIdx(), tfClusters.begin() + rof.getLastIdx() + 1); + ++mCurrentRof; + return true; +} +} // namespace o2::mch diff --git a/Detectors/MUON/MCH/Workflow/src/TrackTreeReader.h b/Detectors/MUON/MCH/Workflow/src/TrackTreeReader.h new file mode 100644 index 0000000000000..662516aa67757 --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/src/TrackTreeReader.h @@ -0,0 +1,41 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#ifndef O2_MCH_WORKFLOW_TRACK_TREE_READER_H +#define O2_MCH_WORKFLOW_TRACK_TREE_READER_H + +#include "MCHBase/ClusterBlock.h" +#include "DataFormatsMCH/TrackMCH.h" +#include "DataFormatsMCH/ROFRecord.h" +#include +#include + +namespace o2::mch +{ + +class TrackTreeReader +{ + public: + TrackTreeReader(TTree* tree); + + bool next(ROFRecord& rof, + std::vector& tracks, + std::vector& clusters); + + private: + TTreeReader mTreeReader; + TTreeReaderValue> mTracks = {mTreeReader, "tracks"}; + TTreeReaderValue> mRofs = {mTreeReader, "trackrofs"}; + TTreeReaderValue> mClusters = {mTreeReader, "trackclusters"}; + size_t mCurrentRof; +}; +} // namespace o2::mch +#endif diff --git a/Detectors/MUON/MCH/Workflow/src/TrackWriterSpec.cxx b/Detectors/MUON/MCH/Workflow/src/TrackWriterSpec.cxx new file mode 100644 index 0000000000000..ab27173bc3eff --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/src/TrackWriterSpec.cxx @@ -0,0 +1,42 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "MCHWorkflow/TrackWriterSpec.h" + +#include "DPLUtils/MakeRootTreeWriterSpec.h" +#include "DataFormatsMCH/ROFRecord.h" +#include "DataFormatsMCH/TrackMCH.h" +#include "Framework/Logger.h" +#include "MCHBase/ClusterBlock.h" +#include + +using namespace o2::framework; + +namespace o2::mch +{ + +template +using BranchDefinition = MakeRootTreeWriterSpec::BranchDefinition; + +DataProcessorSpec getTrackWriterSpec(bool useMC, const char* name) +{ + if (useMC == true) { + LOGP(warning, "MC handling not yet implemented"); + } + return MakeRootTreeWriterSpec("mch-tracks-writer", + name, + MakeRootTreeWriterSpec::TreeAttributes{"o2sim", "Tree MCH Standalone Tracks"}, + BranchDefinition>{InputSpec{"tracks", "MCH", "TRACKS"}, "tracks"}, + BranchDefinition>{InputSpec{"trackrofs", "MCH", "TRACKROFS"}, "trackrofs"}, + BranchDefinition>{InputSpec{"trackclusters", "MCH", "TRACKCLUSTERS"}, "trackclusters"})(); +} + +} // namespace o2::mch diff --git a/Detectors/MUON/MCH/Workflow/src/tracks-file-dumper.cxx b/Detectors/MUON/MCH/Workflow/src/tracks-file-dumper.cxx index be2fa55092983..6394a7a5bb373 100644 --- a/Detectors/MUON/MCH/Workflow/src/tracks-file-dumper.cxx +++ b/Detectors/MUON/MCH/Workflow/src/tracks-file-dumper.cxx @@ -9,21 +9,29 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. +#include "DataFormatsMCH/ROFRecord.h" +#include "DataFormatsMCH/TrackMCH.h" +#include "MCHBase/ClusterBlock.h" +#include "MCHBase/TrackBlock.h" +#include "TrackAtVtxStruct.h" +#include "TrackTreeReader.h" #include "boost/program_options.hpp" -#include -#include +#include +#include +#include #include -#include "TrackAtVtxStruct.h" -#include "MCHBase/TrackBlock.h" +#include #include -#include "DataFormatsMCH/TrackMCH.h" -#include "MCHBase/ClusterBlock.h" +#include namespace po = boost::program_options; +namespace fs = std::filesystem; using o2::mch::ClusterStruct; +using o2::mch::ROFRecord; using o2::mch::TrackAtVtxStruct; using o2::mch::TrackMCH; +using o2::mch::TrackTreeReader; template bool readBinaryStruct(std::istream& in, int nitems, std::vector& items, const char* itemName) @@ -62,42 +70,14 @@ void dump(std::ostream& os, gsl::span tracksAtVertex) } } -/** - * o2-mch-tracks-file-dumper is a small helper program to inspect - * track binary files (mch custom binary format for debug only) - */ - -int main(int argc, char* argv[]) +void dump(std::ostream& os, const o2::mch::TrackMCH& t) { - std::string inputFile; - po::variables_map vm; - po::options_description options("options"); - - // clang-format off - // clang-format off - options.add_options() - ("help,h", "produce help message") - ("infile,i", po::value(&inputFile)->required(), "input file name") - ; - // clang-format on - - po::options_description cmdline; - cmdline.add(options); - - po::store(po::command_line_parser(argc, argv).options(cmdline).run(), vm); - - if (vm.count("help")) { - std::cout << options << "\n"; - return 2; - } - - try { - po::notify(vm); - } catch (boost::program_options::error& e) { - std::cout << "Error: " << e.what() << "\n"; - exit(1); - } + auto pt = std::sqrt(t.getPx() * t.getPx() + t.getPy() * t.getPy()); + os << fmt::format("({:s}) p {:7.2f} pt {:7.2f} nclusters: {} \n", t.getSign() == -1 ? "-" : "+", t.getP(), pt, t.getNClusters()); +} +int dumpBinary(std::string inputFile) +{ std::ifstream in(inputFile.c_str()); if (!in.is_open()) { std::cerr << "cannot open input file " << inputFile << "\n"; @@ -140,22 +120,68 @@ int main(int argc, char* argv[]) return 0; } -// for (const auto& rof : rofs) { -// -// // get the MCH tracks, attached clusters and corresponding tracks at vertex (if any) -// auto eventClusters = getEventTracksAndClusters(rof, tracks, clusters, eventTracks); -// auto eventTracksAtVtx = getEventTracksAtVtx(tracksAtVtx, tracksAtVtxOffset); -// -// // write the number of tracks at vertex, MCH tracks and attached clusters -// int nEventTracksAtVtx = eventTracksAtVtx.size() / sizeof(TrackAtVtxStruct); -// mOutputFile.write(reinterpret_cast(&nEventTracksAtVtx), sizeof(int)); -// int nEventTracks = eventTracks.size(); -// mOutputFile.write(reinterpret_cast(&nEventTracks), sizeof(int)); -// int nEventClusters = eventClusters.size(); -// mOutputFile.write(reinterpret_cast(&nEventClusters), sizeof(int)); -// -// // write the tracks at vertex, MCH tracks and attached clusters -// mOutputFile.write(eventTracksAtVtx.data(), eventTracksAtVtx.size()); -// mOutputFile.write(reinterpret_cast(eventTracks.data()), eventTracks.size() * sizeof(TrackMCH)); -// mOutputFile.write(reinterpret_cast(eventClusters.data()), eventClusters.size_bytes()); -// } +int dumpRoot(std::string inputFile) +{ + std::unique_ptr fin(TFile::Open(inputFile.c_str())); + TTree* tree = static_cast(fin->Get("o2sim")); + + TrackTreeReader tr(tree); + + ROFRecord rof; + std::vector tracks; + std::vector clusters; + + while (tr.next(rof, tracks, clusters)) { + std::cout << rof << "\n"; + for (const auto& t : tracks) { + std::cout << " "; + dump(std::cout, t); + } + } + return 0; +} + +/** + * o2-mch-tracks-file-dumper is a small helper program to inspect + * track binary files (mch custom binary format for debug only) + */ + +int main(int argc, char* argv[]) +{ + std::string inputFile; + po::variables_map vm; + po::options_description options("options"); + + // clang-format off + // clang-format off + options.add_options() + ("help,h", "produce help message") + ("infile,i", po::value(&inputFile)->required(), "input file name") + ; + // clang-format on + + po::options_description cmdline; + cmdline.add(options); + + po::store(po::command_line_parser(argc, argv).options(cmdline).run(), vm); + + if (vm.count("help")) { + std::cout << options << "\n"; + return 2; + } + + try { + po::notify(vm); + } catch (boost::program_options::error& e) { + std::cout << "Error: " << e.what() << "\n"; + exit(1); + } + + std::string ext = fs::path(inputFile).extension(); + std::transform(ext.begin(), ext.begin(), ext.end(), [](unsigned char c) { return std::tolower(c); }); + + if (ext == ".root") { + return dumpRoot(inputFile); + } + return dumpBinary(inputFile); +} diff --git a/Detectors/MUON/MCH/Workflow/src/tracks-reader-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/tracks-reader-workflow.cxx new file mode 100644 index 0000000000000..f9272adc101d4 --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/src/tracks-reader-workflow.cxx @@ -0,0 +1,21 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "MCHWorkflow/TrackReaderSpec.h" +#include "Framework/runDataProcessing.h" + +using namespace o2::framework; + +WorkflowSpec defineDataProcessing(const ConfigContext& configcontext) +{ + bool useMC{false}; + return WorkflowSpec{o2::mch::getTrackReaderSpec(useMC)}; +} diff --git a/Detectors/MUON/MCH/Workflow/src/tracks-writer-workflow.cxx b/Detectors/MUON/MCH/Workflow/src/tracks-writer-workflow.cxx new file mode 100644 index 0000000000000..73a4eea60ba6f --- /dev/null +++ b/Detectors/MUON/MCH/Workflow/src/tracks-writer-workflow.cxx @@ -0,0 +1,21 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "MCHWorkflow/TrackWriterSpec.h" +#include "Framework/runDataProcessing.h" + +using namespace o2::framework; + +WorkflowSpec defineDataProcessing(const ConfigContext& configcontext) +{ + bool useMC{false}; + return WorkflowSpec{o2::mch::getTrackWriterSpec(useMC)}; +} From 6bf572cfe29f625bcfa97e6ea14d15c9478eb93b Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Wed, 7 Jul 2021 13:20:02 +0200 Subject: [PATCH 104/314] o2-sim: Ensure correct order of events in output file So far, the output event sequence did not necessarily match the order in whey they were generated. This is now ensured to avoid bookkeeping errors. This comes at slight memory cost, as events can't be flushed as soon as they arrive. Minor other changes: - fix pythia8 call in example --- run/O2HitMerger.h | 192 ++++++++++++---------- run/SimExamples/SimAsService_basic/run.sh | 4 +- run/o2sim_parallel.cxx | 5 +- 3 files changed, 112 insertions(+), 89 deletions(-) diff --git a/run/O2HitMerger.h b/run/O2HitMerger.h index d703a190a1bc5..d74adea37bf15 100644 --- a/run/O2HitMerger.h +++ b/run/O2HitMerger.h @@ -385,6 +385,7 @@ class O2HitMerger : public FairMQDevice auto memfile = mEventToTMemFileMap[info.eventID]; tree->SetEntries(tree->GetEntries() + 1); LOG(INFO) << "tree has file " << tree->GetDirectory()->GetFile()->GetName(); + memfile->Write("", TObject::kOverwrite); mEntries++; if (isDataComplete(accum, info.nparts)) { @@ -428,6 +429,7 @@ class O2HitMerger : public FairMQDevice { // remove tree for that eventID const std::lock_guard lock(mMapsMtx); + // mEventToTMemFileMap[eventID]->Close(); delete mEventToTTreeMap[eventID]; delete mEventToTMemFileMap[eventID]; mEventToTTreeMap.erase(eventID); @@ -645,110 +647,128 @@ class O2HitMerger : public FairMQDevice // The method can be called asynchronously to data collection bool mergeAndFlushData(int eventID) { - LOG(INFO) << "ENTERING MERGING/FLUSHING HITS STAGE FOR EVENT " << eventID; - - auto tree = mEventToTTreeMap[eventID]; - if (!tree) { - LOG(INFO) << "NO TTREE FOUND FOR EVENT " << eventID; - return false; - } + auto checkIfNextFlushable = [this]() -> bool { + mNextFlushID++; + return mFlushableEvents.find(mNextFlushID) != mFlushableEvents.end() && mFlushableEvents[mNextFlushID] == true; + }; + + LOG(INFO) << "Marking event " << eventID << " as flushable"; + mFlushableEvents[eventID] = true; + + bool canflush = mFlushableEvents.find(mNextFlushID) != mFlushableEvents.end() && mFlushableEvents[mNextFlushID] == true; + while (canflush == true) { + auto flusheventID = mNextFlushID; + LOG(INFO) << "Merge and flush event " << flusheventID; + auto tree = mEventToTTreeMap[flusheventID]; + if (!tree) { + LOG(INFO) << "NO TTREE FOUND FOR EVENT " << flusheventID; + if (!checkIfNextFlushable()) { + return false; + } + } - if (tree->GetEntries() == 0 || mNExpectedEvents == 0) { - LOG(INFO) << "NO ENTRY IN TTREE FOUND FOR EVENT " << eventID; - return false; - } + if (tree->GetEntries() == 0 || mNExpectedEvents == 0) { + LOG(INFO) << "NO ENTRY IN TTREE FOUND FOR EVENT " << flusheventID; + if (!checkIfNextFlushable()) { + return false; + } + } - TStopwatch timer; - timer.Start(); + TStopwatch timer; + timer.Start(); - // calculate trackoffsets - auto infobr = tree->GetBranch("SubEventInfo"); + // calculate trackoffsets + auto infobr = tree->GetBranch("SubEventInfo"); - auto& confref = o2::conf::SimConfig::Instance(); + auto& confref = o2::conf::SimConfig::Instance(); - std::vector trackoffsets; // collecting trackoffsets to be applied to correct - std::vector nprimaries; // collecting primary particles in each subevent - std::vector nsubevents; // collecting of subevent numbers + std::vector trackoffsets; // collecting trackoffsets to be applied to correct + std::vector nprimaries; // collecting primary particles in each subevent + std::vector nsubevents; // collecting of subevent numbers - o2::dataformats::MCEventHeader* eventheader = nullptr; // The event header + o2::dataformats::MCEventHeader* eventheader = nullptr; // The event header - // the MC labels (trackID) for hits - o2::data::SubEventInfo* info = nullptr; - infobr->SetAddress(&info); - for (int i = 0; i < infobr->GetEntries(); ++i) { - infobr->GetEntry(i); - assert(info->npersistenttracks >= 0); - trackoffsets.emplace_back(info->npersistenttracks); - nprimaries.emplace_back(info->nprimarytracks); - nsubevents.emplace_back(info->part); - info->mMCEventHeader.printInfo(); - if (eventheader == nullptr) { - eventheader = &info->mMCEventHeader; - } else { - eventheader->getMCEventStats().add(info->mMCEventHeader.getMCEventStats()); + // the MC labels (trackID) for hits + o2::data::SubEventInfo* info = nullptr; + infobr->SetAddress(&info); + for (int i = 0; i < infobr->GetEntries(); ++i) { + infobr->GetEntry(i); + assert(info->npersistenttracks >= 0); + trackoffsets.emplace_back(info->npersistenttracks); + nprimaries.emplace_back(info->nprimarytracks); + nsubevents.emplace_back(info->part); + info->mMCEventHeader.printInfo(); + if (eventheader == nullptr) { + eventheader = &info->mMCEventHeader; + } else { + eventheader->getMCEventStats().add(info->mMCEventHeader.getMCEventStats()); + } } - } - // now see which events can be discarded in any case due to no hits - if (confref.isFilterOutNoHitEvents()) { - if (eventheader && eventheader->getMCEventStats().getNHits() == 0) { - LOG(INFO) << " Taking out event " << eventID << " due to no hits "; - cleanEvent(eventID); - return false; + // now see which events can be discarded in any case due to no hits + if (confref.isFilterOutNoHitEvents()) { + if (eventheader && eventheader->getMCEventStats().getNHits() == 0) { + LOG(INFO) << " Taking out event " << flusheventID << " due to no hits "; + cleanEvent(flusheventID); + if (!checkIfNextFlushable()) { + return true; + } + } } - } - - // put the event headers into the new TTree - eventheader->printInfo(); - auto headerbr = o2::base::getOrMakeBranch(*mOutTree, "MCEventHeader.", &eventheader); - headerbr->SetAddress(&eventheader); - headerbr->Fill(); - headerbr->ResetAddress(); - // attention: We need to make sure that we write everything in the same event order - // but iteration over keys of a standard map in C++ is ordered - - // b) merge the general data - // - // for MCTrack remap the motherIds and merge at the same go - const auto entries = tree->GetEntries(); - std::vector subevOrdered((int)(nsubevents.size())); - for (auto entry = entries - 1; entry >= 0; --entry) { - subevOrdered[nsubevents[entry] - 1] = entry; - printf("HitMerger entry: %lld nprimry: %5d trackoffset: %5d \n", entry, nprimaries[entry], trackoffsets[entry]); - } - - reorderAndMergeMCTRacks(*tree, *mOutTree, nprimaries, subevOrdered); - Int_t ioffset = 0; - remapTrackIdsAndMerge>("TrackRefs", *tree, *mOutTree, trackoffsets, nprimaries, subevOrdered); - - // c) do the merge procedure for all hits ... delegate this to detector specific functions - // since they know about types; number of branches; etc. - // this will also fix the trackIDs inside the hits - for (int id = 0; id < mDetectorInstances.size(); ++id) { - auto& det = mDetectorInstances[id]; - if (det) { - auto hittree = mDetectorToTTreeMap[id]; - det->mergeHitEntries(*tree, *hittree, trackoffsets, nprimaries, subevOrdered); - hittree->SetEntries(hittree->GetEntries() + 1); - LOG(INFO) << "flushing tree to file " << hittree->GetDirectory()->GetFile()->GetName(); - mDetectorOutFiles[id]->Write("", TObject::kOverwrite); + // put the event headers into the new TTree + eventheader->printInfo(); + auto headerbr = o2::base::getOrMakeBranch(*mOutTree, "MCEventHeader.", &eventheader); + headerbr->SetAddress(&eventheader); + headerbr->Fill(); + headerbr->ResetAddress(); + + // attention: We need to make sure that we write everything in the same event order + // but iteration over keys of a standard map in C++ is ordered + + // b) merge the general data + // + // for MCTrack remap the motherIds and merge at the same go + const auto entries = tree->GetEntries(); + std::vector subevOrdered((int)(nsubevents.size())); + for (auto entry = entries - 1; entry >= 0; --entry) { + subevOrdered[nsubevents[entry] - 1] = entry; + printf("HitMerger entry: %lld nprimry: %5d trackoffset: %5d \n", entry, nprimaries[entry], trackoffsets[entry]); } - } - // increase the entry count in the tree - mOutTree->SetEntries(mOutTree->GetEntries() + 1); - LOG(INFO) << "outtree has file " << mOutTree->GetDirectory()->GetFile()->GetName(); - mOutFile->Write("", TObject::kOverwrite); + reorderAndMergeMCTRacks(*tree, *mOutTree, nprimaries, subevOrdered); + Int_t ioffset = 0; + remapTrackIdsAndMerge>("TrackRefs", *tree, *mOutTree, trackoffsets, nprimaries, subevOrdered); + + // c) do the merge procedure for all hits ... delegate this to detector specific functions + // since they know about types; number of branches; etc. + // this will also fix the trackIDs inside the hits + for (int id = 0; id < mDetectorInstances.size(); ++id) { + auto& det = mDetectorInstances[id]; + if (det) { + auto hittree = mDetectorToTTreeMap[id]; + det->mergeHitEntries(*tree, *hittree, trackoffsets, nprimaries, subevOrdered); + hittree->SetEntries(hittree->GetEntries() + 1); + LOG(INFO) << "flushing tree to file " << hittree->GetDirectory()->GetFile()->GetName(); + mDetectorOutFiles[id]->Write("", TObject::kOverwrite); + } + } - cleanEvent(eventID); + // increase the entry count in the tree + mOutTree->SetEntries(mOutTree->GetEntries() + 1); + LOG(INFO) << "outtree has file " << mOutTree->GetDirectory()->GetFile()->GetName(); + mOutFile->Write("", TObject::kOverwrite); - LOG(INFO) << "MERGING HITS TOOK " << timer.RealTime(); + cleanEvent(flusheventID); + LOG(INFO) << "Merge/flush for event " << flusheventID << " took " << timer.RealTime(); + if (!checkIfNextFlushable()) { + return true; + } + } // end while return true; } std::map mPartsCheckSum; //! mapping event id -> part checksum used to detect when all info - std::string mOutFileName; //! // structures for the final flush @@ -765,6 +785,8 @@ class O2HitMerger : public FairMQDevice int mEntries = 0; //! counts the number of entries in the branches int mEventChecksum = 0; //! checksum for events int mNExpectedEvents = 0; //! number of events that we expect to receive + std::unordered_map mFlushableEvents; //! collection of events which has completely arrived + int mNextFlushID = 1; //! EventID to be flushed next TStopwatch mTimer; bool mAsService = false; //! if run in deamonized mode diff --git a/run/SimExamples/SimAsService_basic/run.sh b/run/SimExamples/SimAsService_basic/run.sh index 47e493769857c..2be8e646708e3 100755 --- a/run/SimExamples/SimAsService_basic/run.sh +++ b/run/SimExamples/SimAsService_basic/run.sh @@ -20,14 +20,14 @@ rname1=$(hexdump -n 16 -v -e '/1 "%02X"' -e '/16 "\n"' /dev/urandom | head -c 6) ### step 1: Startup the service with some configuration of workers, engines, #### physics/geometry settings. No events are asked at this time. -( o2-sim-client.py --startup "-j ${NWORKERS} -n 0 -g pythia8 -m ${MODULES} -o simservice --logseverity DEBUG" \ +( o2-sim-client.py --startup "-j ${NWORKERS} -n 0 -g pythia8pp -m ${MODULES} -o simservice --logseverity DEBUG" \ --block ) | tee /tmp/${rname1} # <--- return when everything is fully initialized SERVICE1_PID=$(grep "detached as pid" /tmp/${rname1} | awk '//{print $4}') sleep 2 ### step 2: Transport a bunch of pythia8 events; Reconfiguration of engine not possible at this time. ### Reconfiguration of generator ok (but limited). -o2-sim-client.py --pid ${SERVICE1_PID} --command "-n 10 -g pythia8 -o batch1_pythia8" --block +o2-sim-client.py --pid ${SERVICE1_PID} --command "-n 10 -g pythia8pp -o batch1_pythia8" --block sleep 2 diff --git a/run/o2sim_parallel.cxx b/run/o2sim_parallel.cxx index 8f41a0740079b..81d3196d745d8 100644 --- a/run/o2sim_parallel.cxx +++ b/run/o2sim_parallel.cxx @@ -130,10 +130,11 @@ int checkresult() errors++; } else { if (!conf.isFilterOutNoHitEvents()) { - errors += tr->GetEntries() != conf.getNEvents(); + if (tr->GetEntries() != conf.getNEvents()) { + LOG(WARN) << "There are fewer events in the output than asked"; + } } } - // add more simple checks return errors; From a1698aa9e5d3ea77485ecb59de721100e6109980 Mon Sep 17 00:00:00 2001 From: Philip Hauer Date: Sun, 27 Jun 2021 16:21:24 +0200 Subject: [PATCH 105/314] Changed the Kr-ClusterFinder such that it can read arbitrary long digits. Implemented suggested changes. --- .../TPCReconstruction/KrBoxClusterFinder.h | 105 ++++-- .../reconstruction/macro/findKrBoxCluster.C | 33 +- .../reconstruction/src/KrBoxClusterFinder.cxx | 350 +++++++++--------- 3 files changed, 262 insertions(+), 226 deletions(-) diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/KrBoxClusterFinder.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/KrBoxClusterFinder.h index 7637bd584005e..e3e57eed52ccd 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/KrBoxClusterFinder.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/KrBoxClusterFinder.h @@ -47,23 +47,29 @@ /// At least mMinNumberOfNeighbours neighbours (= direct neighbours) has a signal. /// /// Implementation: -/// The RAW data is "expanded" for each sector and stored in a big signal -/// mMapOfAllDigits = 3d vector of all digits +/// Old ansatz: Store every digit in a big 3D map +/// Problem: Memory consumption too large if timebins > 10k +/// New solution: Use rolling map aka "The set of timeslices" /// -/// To make sure that one never has to check if one is inside the sector or not -/// the arrays are larger than a sector. For the size in row-direction, a constant is used. -/// For time and pad direction, a number is set (here is room for improvements). +/// 1 2 3 4 5 6 7 /// -/// ToDo: Find an elegant way to split the huge map into four (IROC, OROC1, OROC2 and OROC3) smaller maps. Unfortunately, this seems to interfere with the rest of the code. +/// 1 o o o x o o o +/// 2 o o o x o o o +/// ............. +/// n-1 o o o x o o o +/// n o o o x o o o /// -/// How to use: -/// Load tpcdigits.root -/// Loop over all events +/// x-axis: timeslices +/// y-axis: global pad number +/// In this example, the fourth timeslice is the interesting one. Here, local maxima and clusters are found. After this slice has been processed, the first slice will be dropped and another slice will be added at the last position (seventh position). +/// Afterwards, the algorithm looks for clusters in the middle time slice. +/// +/// How to use (see macro: findKrBoxCluster.C): +/// Create KrBoxClusterFinder object +/// Load gainmap (if available) +/// Make adjustments to clusterfinder (e.g. set min number of neighbours) /// Loop over all sectors -/// Use KrBoxClusterFinder(sector) to create 3D map -/// Use localMaxima() to find..well the local maxima -/// localMaxima() yields a vector of a tuple with three int -/// Loop over this vector and give the tuple to buildCluster() +/// Use "loopOverSector" function for this /// Write to tree or something similar #ifndef ALICEO2_TPC_KrBoxClusterFinder_H_ @@ -80,6 +86,7 @@ #include #include #include +#include namespace o2 { @@ -96,6 +103,13 @@ namespace tpc class KrBoxClusterFinder { + private: + /// Maximum Map Dimensions + /// Here is room for improvements + static constexpr size_t MaxPads = 138; ///< Size of the map in pad-direction + static constexpr size_t MaxRows = 152; ///< Size of the map in row-direction + size_t mMaxTimes = 114048; ///< Size of the map in time-direction + public: /// Constructor: /// The constructor allocates a three dimensional array (Pad,Row,Time) which is @@ -108,21 +122,12 @@ class KrBoxClusterFinder /// The function expects a CalDet file with a gain map (gain entry for each pad). void loadGainMapFromFile(const std::string_view calDetFileName, const std::string_view gainMapName = "GainMap"); - /// Function used in macro to fill the map with all recorded digits - void fillAndCorrectMap(std::vector& eventSector, const int sector); - - /// Function to fill single digi - void fillADCValue(int cru, int rowInSector, int padInRow, int timeBin, float adcValue); - /// After the map is created, we look for local maxima with this function: - std::vector> findLocalMaxima(bool directFilling = false); + std::vector> findLocalMaxima(bool directFilling = true, const int timeOffset = 0); /// After finding the local maxima, we can now build clusters around it. /// It works according to the explanation at the beginning of the header file. - KrCluster buildCluster(int clusterCenterPad, int clusterCenterRow, int clusterCenterTime, bool directFilling = false); - - /// reset the ADC map - void resetADCMap(); + KrCluster buildCluster(int clusterCenterPad, int clusterCenterRow, int clusterCenterTime, bool directFilling = false, const int timeOffset = 0); /// reset cluster vector void resetClusters() { mClusters.clear(); } @@ -145,6 +150,9 @@ class KrBoxClusterFinder /// Set Function for minimal charge required for maxCharge of a cluster void setMinQTreshold(int minQThreshold) { mQThresholdMax = minQThreshold; } + /// Set Function for minimal charge required for maxCharge of a cluster + void setMaxTimes(int maxTimes) { mMaxTimes = maxTimes; } + /// Set Function for maximal cluster sizes in different ROCs void setMaxClusterSize(int maxClusterSizeRowIROC, int maxClusterSizeRowOROC1, int maxClusterSizeRowOROC2, int maxClusterSizeRowOROC3, int maxClusterSizePadIROC, int maxClusterSizePadOROC1, int maxClusterSizePadOROC2, int maxClusterSizePadOROC3, @@ -163,6 +171,11 @@ class KrBoxClusterFinder mMaxClusterSizeTime = maxClusterSizeTime; } + void fillADCValue(int cru, int rowInSector, int padInRow, int timeBin, float adcValue); + void resetADCMap(); + + void loopOverSector(std::vector& eventSector, const int sector); + private: // These variables can be varied // They were choses such that the box in each readout chamber is approx. the same size @@ -187,18 +200,14 @@ class KrBoxClusterFinder int mSector = -1; ///< sector being processed in this instance std::unique_ptr mGainMap; ///< Gain map object - /// Maximum Map Dimensions - /// Here is room for improvements - static constexpr size_t MaxPads = 138; ///< Size of the map in pad-direction - static constexpr size_t MaxRows = 152; ///< Size of the map in row-direction - static constexpr size_t MaxTimes = 20000; ///< Size of the map in time-direction - /// Values to define ROC boundaries static constexpr size_t MaxRowsIROC = 63; ///< Amount of rows in IROC static constexpr size_t MaxRowsOROC1 = 34; ///< Amount of rows in OROC1 static constexpr size_t MaxRowsOROC2 = 30; ///< Amount of rows in OROC2 static constexpr size_t MaxRowsOROC3 = 25; ///< Amount of rows in OROC3 + /// Vector of cluster objects + /// Used for returning results std::vector mClusters; /// Need an instance of Mapper to know position of pads @@ -206,8 +215,38 @@ class KrBoxClusterFinder KrCluster mTempCluster; ///< Used to save the cluster data - /// Here the map is defined where all digits are temporarily stored - std::array, MaxRows>, MaxTimes> mMapOfAllDigits{}; + using TimeSliceSector = std::array, MaxRows>; + + /// A temporary timeslice that gets filled and can be added to the set of timeslices + // TimeSliceSector mTempTimeSlice; + + /// Used to keep track of the digit that has to be processed + size_t mFirstDigit = 0; + + /// The set of timeslices. + /// It consists of 2*mMaxClusterSizeTime + 1 timeslices. + /// You can imagine it like this: + /// \verbatim + /// + /// 1 2 3 4 5 6 7 + /// + /// 1 o o o x o o o + /// 2 o o o x o o o + /// ............. + /// n-1 o o o x o o o + /// n o o o x o o o + /// + /// \endverbatim + /// + /// x-axis: Timeslice number + /// y-axis: Pad number + /// Time slice four is the interesting one. In there, local maxima are found and clusters are built from it. After it is processed, timeslice number 1 will be dropped and another timeslice will be put at the end of the set. + std::deque mSetOfTimeSlices{}; + + void createInitialMap(std::vector& eventSector); + void popFirstTimeSliceFromMap(); + void fillADCValueInLastSlice(int cru, int rowInSector, int padInRow, float adcValue); + void addTimeSlice(std::vector& eventSector, const int timeSlice); /// For each ROC, the maximum cluster size has to be chosen void setMaxClusterSize(int row); @@ -215,7 +254,7 @@ class KrBoxClusterFinder /// To update the temporary cluster, i.e. all digits are added here void updateTempCluster(float tempCharge, int tempPad, int tempRow, int tempTime); /// After all digits are assigned to the cluster, the mean and sigmas are calculated here - void updateTempClusterFinal(); + void updateTempClusterFinal(const int timeOffset = 0); /// Returns sign of val (in a crazy way) int signnum(int val) { return (0 < val) - (val < 0); } diff --git a/Detectors/TPC/reconstruction/macro/findKrBoxCluster.C b/Detectors/TPC/reconstruction/macro/findKrBoxCluster.C index 6be474c30ffa5..007faf9ac140e 100644 --- a/Detectors/TPC/reconstruction/macro/findKrBoxCluster.C +++ b/Detectors/TPC/reconstruction/macro/findKrBoxCluster.C @@ -40,8 +40,10 @@ void findKrBoxCluster(int lastTimeBin = 1000, int run = -1, int time = -1, std:: TFile* fOut = new TFile(outputFile.c_str(), "RECREATE"); TTree* tClusters = new TTree("Clusters", "Clusters"); + // Create KrBoxClusterFinder object, memory is only allocated once + auto clFinder = std::make_unique(); + auto& clusters = clFinder->getClusters(); // Create a Branch for each sector: - std::vector clusters; tClusters->Branch("cls", &clusters); tClusters->Branch("run", &run); tClusters->Branch("time", &time); @@ -52,18 +54,19 @@ void findKrBoxCluster(int lastTimeBin = 1000, int run = -1, int time = -1, std:: tree->SetBranchAddress(Form("TPCDigit_%zu", iSec), &digitizedSignal[iSec]); } - // Create KrBoxClusterFinder object, memory is only allocated once - auto clFinder = std::make_unique(); if (gainMapFile.size()) { clFinder->loadGainMapFromFile(gainMapFile); } + // clFinder->setMinNumberOfNeighbours(0); + // clFinder->setMinQTreshold(0); + clFinder->setMaxTimes(lastTimeBin); + // Now everything can get processed // Loop over all events for (int iEvent = 0; iEvent < nEntries; ++iEvent) { std::cout << iEvent + 1 << "/" << nEntries << std::endl; tree->GetEntry(iEvent); - // Each event consists of sectors (atm only two) for (int i = 0; i < 36; i++) { auto sector = digitizedSignal[i]; @@ -71,27 +74,7 @@ void findKrBoxCluster(int lastTimeBin = 1000, int run = -1, int time = -1, std:: continue; } - // Fill map and (if specified) correct with existing gain map - clFinder->fillAndCorrectMap(*sector, i); - - // Find all local maxima in sector - std::vector> localMaxima = clFinder->findLocalMaxima(); - - // Loop over cluster centers = local maxima - for (const std::tuple& coords : localMaxima) { - int padMax = std::get<0>(coords); - int rowMax = std::get<1>(coords); - int timeMax = std::get<2>(coords); - - if (timeMax >= lastTimeBin) { - continue; - } - // Build total cluster - o2::tpc::KrCluster tempCluster = clFinder->buildCluster(padMax, rowMax, timeMax); - tempCluster.sector = i; - - clusters.emplace_back(tempCluster); - } + clFinder->loopOverSector(*sector, i); } // Fill Tree tClusters->Fill(); diff --git a/Detectors/TPC/reconstruction/src/KrBoxClusterFinder.cxx b/Detectors/TPC/reconstruction/src/KrBoxClusterFinder.cxx index c1afd79279853..b08e3b64ba550 100644 --- a/Detectors/TPC/reconstruction/src/KrBoxClusterFinder.cxx +++ b/Detectors/TPC/reconstruction/src/KrBoxClusterFinder.cxx @@ -38,66 +38,32 @@ void KrBoxClusterFinder::loadGainMapFromFile(const std::string_view calDetFileNa LOGP(info, "Loaded gain map object '{}' from file '{}'", calDetFileName, gainMapName); } -void KrBoxClusterFinder::resetADCMap() +void KrBoxClusterFinder::createInitialMap(std::vector& eventSector) { - // Reset whole map: - for (int iTime = 0; iTime < MaxTimes; iTime++) { - for (int iRow = 0; iRow < MaxRows; iRow++) { - std::fill(mMapOfAllDigits[iTime][iRow].begin(), mMapOfAllDigits[iTime][iRow].end(), 0.); - //for (int iPad = 0; iPad < MaxPads; iPad++) { - //mMapOfAllDigits[iTime][iRow][iPad] = 0; - //} - } + mSetOfTimeSlices.clear(); + + for (int iTimeSlice = 0; iTimeSlice <= 2 * mMaxClusterSizeTime; ++iTimeSlice) { + addTimeSlice(eventSector, iTimeSlice); } } -// Fill the map with all digits. -// You can pass a CalDet file to it so that the cluster finder can already correct for gain inhomogeneities -// The CalDet File should contain the relative Gain of each Pad. -void KrBoxClusterFinder::fillAndCorrectMap(std::vector& eventSector, const int sector) +void KrBoxClusterFinder::popFirstTimeSliceFromMap() { - mSector = sector; - resetADCMap(); - - if (eventSector.size() == 0) { - // prevents a segementation fault if the envent contains no data - // segementation fault would occure later when trying to dereference the - // max/min pointer (which are nullptr if data is empty) empty events should - // be catched in the main function, hence, this "if" is no longer necessary - LOGP(warning, "Sector size (amount of data points) in current run is 0!"); - LOGP(warning, "mMapOfAllDigits with 0's is generated in order to prevent a segementation fault."); - - return; - } - - // Fill digits map - for (const auto& digit : eventSector) { - const int cru = digit.getCRU(); - const int time = digit.getTimeStamp(); - const int row = digit.getRow(); - const int pad = digit.getPad(); - const float adcValue = digit.getChargeFloat(); - - fillADCValue(cru, row, pad, time, adcValue); - } + mSetOfTimeSlices.pop_front(); } -void KrBoxClusterFinder::fillADCValue(int cru, int rowInSector, int padInRow, int timeBin, float adcValue) +void KrBoxClusterFinder::fillADCValueInLastSlice(int cru, int rowInSector, int padInRow, float adcValue) { - if (timeBin >= MaxTimes) { - return; - } + auto& timeSlice = mSetOfTimeSlices.back(); - // Every row starts at pad zero. But the number of pads in a row is not a constant. - // If we would just fill the map naively, we would put pads next to each other, which are not neighbours on the pad plane. - // Hence, we need to correct for this: - mSector = cru / CRU::CRUperSector; - const int pads = mMapperInstance.getNumberOfPadsInRowSector(rowInSector); - const int corPad = padInRow - (pads / 2) + (MaxPads / 2); + // Correct for pad offset: + const int padsInRow = mMapperInstance.getNumberOfPadsInRowSector(rowInSector); + const int corPad = padInRow - (padsInRow / 2) + (MaxPads / 2); + // Get correction factor from gain map: const auto correctionFactorCalDet = mGainMap.get(); if (!correctionFactorCalDet) { - mMapOfAllDigits[timeBin][rowInSector][corPad] = adcValue; + timeSlice[rowInSector][corPad] = adcValue; return; } @@ -112,7 +78,54 @@ void KrBoxClusterFinder::fillADCValue(int cru, int rowInSector, int padInRow, in adcValue /= correctionFactor; } - mMapOfAllDigits[timeBin][rowInSector][corPad] = adcValue; + timeSlice[rowInSector][corPad] = adcValue; +} + +void KrBoxClusterFinder::addTimeSlice(std::vector& eventSector, const int timeSlice) +{ + mSetOfTimeSlices.emplace_back(); + + for (; mFirstDigit < eventSector.size(); ++mFirstDigit) { + const auto& digit = eventSector[mFirstDigit]; + const int time = digit.getTimeStamp(); + if (time != timeSlice) { + return; + } + + const int cru = digit.getCRU(); + mSector = cru / CRU::CRUperSector; + + const int rowInSector = digit.getRow(); + const int padInRow = digit.getPad(); + float adcValue = digit.getChargeFloat(); + + fillADCValueInLastSlice(cru, rowInSector, padInRow, adcValue); + } +} + +void KrBoxClusterFinder::loopOverSector(std::vector& eventSector, const int sector) +{ + mFirstDigit = 0; + mSector = sector; + + createInitialMap(eventSector); + for (int iTimeSlice = mMaxClusterSizeTime; iTimeSlice < mMaxTimes - mMaxClusterSizeTime; ++iTimeSlice) { + findLocalMaxima(true, iTimeSlice); + popFirstTimeSliceFromMap(); + addTimeSlice(eventSector, iTimeSlice + mMaxClusterSizeTime + 1); + } +} + +void KrBoxClusterFinder::resetADCMap() +{ + // Has to be reimplemented! + return; +} + +void KrBoxClusterFinder::fillADCValue(int cru, int rowInSector, int padInRow, int timeBin, float adcValue) +{ + // Has to be reimplemented! + return; } void KrBoxClusterFinder::init() @@ -139,7 +152,7 @@ void KrBoxClusterFinder::init() //################################################# // Function to update the temporal cluster -void KrBoxClusterFinder::updateTempClusterFinal() +void KrBoxClusterFinder::updateTempClusterFinal(const int timeOffset) { if (mTempCluster.totCharge == 0) { mTempCluster.reset(); @@ -162,6 +175,8 @@ void KrBoxClusterFinder::updateTempClusterFinal() mTempCluster.meanPad = mTempCluster.meanPad + (corPadsMean / 2.0) - (MaxPads / 2.0); mTempCluster.maxChargePad = mTempCluster.maxChargePad + (corPadsMaxCharge / 2.0) - (MaxPads / 2.0); mTempCluster.sector = (decltype(mTempCluster.sector))mSector; + + mTempCluster.meanTime += timeOffset; } } @@ -197,128 +212,133 @@ void KrBoxClusterFinder::updateTempCluster(float tempCharge, int tempPad, int te } } -// This function finds and evaluates all clusters in a 3D mMapOfAllDigits generated by the -// mMapOfAllDigitsCreator function, this function also updates the cluster tree -std::vector> KrBoxClusterFinder::findLocalMaxima(bool directFilling) +// This function finds and evaluates all clusters in a 3D mSetOfTimeSlices generated by the +// mSetOfTimeSlicesCreator function, this function also updates the cluster tree +std::vector> KrBoxClusterFinder::findLocalMaxima(bool directFilling, const int timeOffset) { std::vector> localMaximaCoords; - // loop over whole mMapOfAllDigits the find clusters - for (int iTime = 0; iTime < MaxTimes; iTime++) { //mMapOfAllDigits.size() - const auto& mapRow = mMapOfAllDigits[iTime]; - for (int iRow = 0; iRow < MaxRows; iRow++) { // mapRow.size() - // Since pad size is different for each ROC, we take this into account while looking for maxima: - // setMaxClusterSize(iRow); - if (iRow == 0) { - mMaxClusterSizePad = mMaxClusterSizePadIROC; - mMaxClusterSizeRow = mMaxClusterSizeRowIROC; - } else if (iRow == MaxRowsIROC) { - mMaxClusterSizePad = mMaxClusterSizePadOROC1; - mMaxClusterSizeRow = mMaxClusterSizeRowOROC1; - } else if (iRow == MaxRowsIROC + MaxRowsOROC1) { - mMaxClusterSizePad = mMaxClusterSizePadOROC2; - mMaxClusterSizeRow = mMaxClusterSizeRowOROC2; - } else if (iRow == MaxRowsIROC + MaxRowsOROC1 + MaxRowsOROC2) { - mMaxClusterSizePad = mMaxClusterSizePadOROC3; - mMaxClusterSizeRow = mMaxClusterSizeRowOROC3; - } - const auto& mapPad = mapRow[iRow]; - const int padsInRow = mMapperInstance.getNumberOfPadsInRowSector(iRow); + const int iTime = mMaxClusterSizeTime; + const auto& mapRow = mSetOfTimeSlices[iTime]; + for (int iRow = 0; iRow < MaxRows; iRow++) { // mapRow.size() + // Since pad size is different for each ROC, we take this into account while looking for maxima: + // setMaxClusterSize(iRow); + if (iRow == 0) { + mMaxClusterSizePad = mMaxClusterSizePadIROC; + mMaxClusterSizeRow = mMaxClusterSizeRowIROC; + } else if (iRow == MaxRowsIROC) { + mMaxClusterSizePad = mMaxClusterSizePadOROC1; + mMaxClusterSizeRow = mMaxClusterSizeRowOROC1; + } else if (iRow == MaxRowsIROC + MaxRowsOROC1) { + mMaxClusterSizePad = mMaxClusterSizePadOROC2; + mMaxClusterSizeRow = mMaxClusterSizeRowOROC2; + } else if (iRow == MaxRowsIROC + MaxRowsOROC1 + MaxRowsOROC2) { + mMaxClusterSizePad = mMaxClusterSizePadOROC3; + mMaxClusterSizeRow = mMaxClusterSizeRowOROC3; + } - // Only loop over existing pads: - for (int iPad = MaxPads / 2 - padsInRow / 2; iPad < MaxPads / 2 + padsInRow / 2; iPad++) { // mapPad.size() + const auto& mapPad = mapRow[iRow]; + const int padsInRow = mMapperInstance.getNumberOfPadsInRowSector(iRow); - const float qMax = mapPad[iPad]; + // Only loop over existing pads: + for (int iPad = MaxPads / 2 - padsInRow / 2; iPad < MaxPads / 2 + padsInRow / 2; iPad++) { // mapPad.size() - // cluster Maximum must at least be larger than Threshold - if (qMax <= mQThresholdMax) { + const float qMax = mapPad[iPad]; + + // cluster Maximum must at least be larger than Threshold + if (qMax <= mQThresholdMax) { + continue; + } + + // Acceptance condition: Require at least mMinNumberOfNeighbours neigbours + // with signal in any direction! + int noNeighbours = 0; + if ((iPad + 1 < MaxPads) && (mSetOfTimeSlices[iTime][iRow][iPad + 1] > mQThreshold)) { + if (mSetOfTimeSlices[iTime][iRow][iPad + 1] > qMax) { continue; } + noNeighbours++; + } - // Acceptance condition: Require at least mMinNumberOfNeighbours neigbours - // with signal in any direction! - int noNeighbours = 0; - if ((iPad + 1 < MaxPads) && (mMapOfAllDigits[iTime][iRow][iPad + 1] > mQThreshold)) { - if (mMapOfAllDigits[iTime][iRow][iPad + 1] > qMax) { - continue; - } - noNeighbours++; - } - if ((iPad - 1 >= 0) && (mMapOfAllDigits[iTime][iRow][iPad - 1] > mQThreshold)) { - if (mMapOfAllDigits[iTime][iRow][iPad - 1] > qMax) { - continue; - } - noNeighbours++; - } - if ((iRow + 1 < MaxRows) && (mMapOfAllDigits[iTime][iRow + 1][iPad] > mQThreshold)) { - if (mMapOfAllDigits[iTime][iRow + 1][iPad] > qMax) { - continue; - } - noNeighbours++; + if ((iPad - 1 >= 0) && (mSetOfTimeSlices[iTime][iRow][iPad - 1] > mQThreshold)) { + if (mSetOfTimeSlices[iTime][iRow][iPad - 1] > qMax) { + continue; } - if ((iRow - 1 >= 0) && (mMapOfAllDigits[iTime][iRow - 1][iPad] > mQThreshold)) { - if (mMapOfAllDigits[iTime][iRow - 1][iPad] > qMax) { - continue; - } - noNeighbours++; + noNeighbours++; + } + + if ((iRow + 1 < MaxRows) && (mSetOfTimeSlices[iTime][iRow + 1][iPad] > mQThreshold)) { + if (mSetOfTimeSlices[iTime][iRow + 1][iPad] > qMax) { + continue; } - if ((iTime + 1 < MaxTimes) && (mMapOfAllDigits[iTime + 1][iRow][iPad] > mQThreshold)) { - if (mMapOfAllDigits[iTime + 1][iRow][iPad] > qMax) { - continue; - } - noNeighbours++; + noNeighbours++; + } + + if ((iRow - 1 >= 0) && (mSetOfTimeSlices[iTime][iRow - 1][iPad] > mQThreshold)) { + if (mSetOfTimeSlices[iTime][iRow - 1][iPad] > qMax) { + continue; } - if ((iTime - 1 >= 0) && (mMapOfAllDigits[iTime - 1][iRow][iPad] > mQThreshold)) { - if (mMapOfAllDigits[iTime - 1][iRow][iPad] > qMax) { - continue; - } - noNeighbours++; + noNeighbours++; + } + + if ((iTime + 1 < mMaxTimes) && (mSetOfTimeSlices[iTime + 1][iRow][iPad] > mQThreshold)) { + if (mSetOfTimeSlices[iTime + 1][iRow][iPad] > qMax) { + continue; } - if (noNeighbours < mMinNumberOfNeighbours) { + noNeighbours++; + } + + if ((iTime - 1 >= 0) && (mSetOfTimeSlices[iTime - 1][iRow][iPad] > mQThreshold)) { + if (mSetOfTimeSlices[iTime - 1][iRow][iPad] > qMax) { continue; } + noNeighbours++; + } + if (noNeighbours < mMinNumberOfNeighbours) { + continue; + } - // Check that this is a local maximum - // Note that the checking is done so that if 2 charges have the same - // qMax then only 1 cluster is generated - // (that is why there is BOTH > and >=) - // -> only the maximum with the smalest indices will be accepted - bool thisIsMax = true; + // Check that this is a local maximum + // Note that the checking is done so that if 2 charges have the same + // qMax then only 1 cluster is generated + // (that is why there is BOTH > and >=) + // -> only the maximum with the smalest indices will be accepted + bool thisIsMax = true; - for (int j = -mMaxClusterSizeTime; (j <= mMaxClusterSizeTime) && thisIsMax; j++) { - if ((iTime + j >= MaxTimes) || (iTime + j < 0)) { + for (int j = -mMaxClusterSizeTime; (j <= mMaxClusterSizeTime) && thisIsMax; j++) { + if ((iTime + j >= mMaxTimes) || (iTime + j < 0)) { + continue; + } + for (int k = -mMaxClusterSizeRow; (k <= mMaxClusterSizeRow) && thisIsMax; k++) { + if ((iRow + k >= MaxRows) || (iRow + k < 0)) { continue; } - for (int k = -mMaxClusterSizeRow; (k <= mMaxClusterSizeRow) && thisIsMax; k++) { - if ((iRow + k >= MaxRows) || (iRow + k < 0)) { + for (int i = -mMaxClusterSizePad; (i <= mMaxClusterSizePad) && thisIsMax; i++) { + if ((iPad + i >= MaxPads) || (iPad + i < 0)) { continue; } - for (int i = -mMaxClusterSizePad; (i <= mMaxClusterSizePad) && thisIsMax; i++) { - if ((iPad + i >= MaxPads) || (iPad + i < 0)) { - continue; - } - if (mMapOfAllDigits[iTime + j][iRow + k][iPad + i] > qMax) { - thisIsMax = false; - } + if (mSetOfTimeSlices[iTime + j][iRow + k][iPad + i] > qMax) { + thisIsMax = false; } } } + } + if (!thisIsMax) { + continue; + } else { + if (directFilling) { - if (!thisIsMax) { - continue; + buildCluster(iPad, iRow, iTime, directFilling, timeOffset); } else { - if (directFilling) { - buildCluster(iPad, iRow, iTime, directFilling); - } else { - localMaximaCoords.emplace_back(std::make_tuple(iPad, iRow, iTime)); - } - - // If we have found a local maximum, we can also skip the next few entries: - iPad += mMaxClusterSizePad; + localMaximaCoords.emplace_back(std::make_tuple(iPad, iRow, iTime)); } + + // If we have found a local maximum, we can also skip the next few entries: + iPad += mMaxClusterSizePad; } } } + // } return localMaximaCoords; } @@ -339,24 +359,17 @@ std::vector> KrBoxClusterFinder::findLocalMaxima(bool // for loop over whole cluster, to determine if a charge should be added // conditions are extrapolation of the 5x5 cluster case to arbitrary // cluster sizes in 3 dimensions -KrCluster KrBoxClusterFinder::buildCluster(int clusterCenterPad, int clusterCenterRow, int clusterCenterTime, bool directFilling) +KrCluster KrBoxClusterFinder::buildCluster(int clusterCenterPad, int clusterCenterRow, int clusterCenterTime, bool directFilling, const int timeOffset) { mTempCluster.reset(); - setMaxClusterSize(clusterCenterRow); // Loop over all neighbouring time bins: for (int iTime = -mMaxClusterSizeTime; iTime <= mMaxClusterSizeTime; iTime++) { - // If we would look out of range, we skip - if (clusterCenterTime + iTime < 0) { - continue; - } else if (clusterCenterTime + iTime >= MaxTimes) { - break; - } - // Loop over all neighbouring row bins: + for (int iRow = -mMaxClusterSizeRow; iRow <= mMaxClusterSizeRow; iRow++) { - // First: Check again if we look over array boundaries: + // First: Check if we look over array boundaries: if (clusterCenterRow + iRow < 0) { continue; } else if (clusterCenterRow + iRow >= MaxRows) { @@ -392,42 +405,42 @@ KrCluster KrBoxClusterFinder::buildCluster(int clusterCenterPad, int clusterCent // Second: Check if charge is above threshold // Might be not necessary since we deal with pedestal subtracted data - if (mMapOfAllDigits[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad] <= mQThreshold) { + if (mSetOfTimeSlices[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad] <= mQThreshold) { continue; } // If not, there are several cases which were explained (for 2D) in the header of the code. // The first one is for the diagonal. So, the digit we are investigating here is on the diagonal: if (std::abs(iTime) == std::abs(iPad) && std::abs(iTime) == std::abs(iRow)) { // Now we check, if the next inner digit has a signal above threshold: - if (mMapOfAllDigits[clusterCenterTime + iTime - signnum(iTime)][clusterCenterRow + iRow - signnum(iRow)][clusterCenterPad + iPad - signnum(iPad)] > mQThreshold) { + if (mSetOfTimeSlices[clusterCenterTime + iTime - signnum(iTime)][clusterCenterRow + iRow - signnum(iRow)][clusterCenterPad + iPad - signnum(iPad)] > mQThreshold) { // If yes, the cluster gets updated with the digit on the diagonal. - updateTempCluster(mMapOfAllDigits[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); + updateTempCluster(mSetOfTimeSlices[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); } } // Basically, we go through every possible case in the next few if-else conditions: else if (std::abs(iTime) == std::abs(iPad)) { - if (mMapOfAllDigits[clusterCenterTime + iTime - signnum(iTime)][clusterCenterRow + iRow][clusterCenterPad + iPad - signnum(iPad)] > mQThreshold) { - updateTempCluster(mMapOfAllDigits[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); + if (mSetOfTimeSlices[clusterCenterTime + iTime - signnum(iTime)][clusterCenterRow + iRow][clusterCenterPad + iPad - signnum(iPad)] > mQThreshold) { + updateTempCluster(mSetOfTimeSlices[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); } } else if (std::abs(iTime) == std::abs(iRow)) { - if (mMapOfAllDigits[clusterCenterTime + iTime - signnum(iTime)][clusterCenterRow + iRow - signnum(iRow)][clusterCenterPad + iPad] > mQThreshold) { - updateTempCluster(mMapOfAllDigits[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); + if (mSetOfTimeSlices[clusterCenterTime + iTime - signnum(iTime)][clusterCenterRow + iRow - signnum(iRow)][clusterCenterPad + iPad] > mQThreshold) { + updateTempCluster(mSetOfTimeSlices[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); } } else if (std::abs(iPad) == std::abs(iRow)) { - if (mMapOfAllDigits[clusterCenterTime + iTime][clusterCenterRow + iRow - signnum(iRow)][clusterCenterPad + iPad - signnum(iPad)] > mQThreshold) { - updateTempCluster(mMapOfAllDigits[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); + if (mSetOfTimeSlices[clusterCenterTime + iTime][clusterCenterRow + iRow - signnum(iRow)][clusterCenterPad + iPad - signnum(iPad)] > mQThreshold) { + updateTempCluster(mSetOfTimeSlices[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); } } else if (std::abs(iTime) > std::abs(iPad) && std::abs(iTime) > std::abs(iRow)) { - if (mMapOfAllDigits[clusterCenterTime + iTime - signnum(iTime)][clusterCenterRow + iRow][clusterCenterPad + iPad] > mQThreshold) { - updateTempCluster(mMapOfAllDigits[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); + if (mSetOfTimeSlices[clusterCenterTime + iTime - signnum(iTime)][clusterCenterRow + iRow][clusterCenterPad + iPad] > mQThreshold) { + updateTempCluster(mSetOfTimeSlices[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); } } else if (std::abs(iTime) < std::abs(iPad) && std::abs(iPad) > std::abs(iRow)) { - if (mMapOfAllDigits[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad - signnum(iPad)] > mQThreshold) { - updateTempCluster(mMapOfAllDigits[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); + if (mSetOfTimeSlices[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad - signnum(iPad)] > mQThreshold) { + updateTempCluster(mSetOfTimeSlices[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); } } else if (std::abs(iTime) < std::abs(iRow) && std::abs(iPad) < std::abs(iRow)) { - if (mMapOfAllDigits[clusterCenterTime + iTime][clusterCenterRow + iRow - signnum(iRow)][clusterCenterPad + iPad] > mQThreshold) { - updateTempCluster(mMapOfAllDigits[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); + if (mSetOfTimeSlices[clusterCenterTime + iTime][clusterCenterRow + iRow - signnum(iRow)][clusterCenterPad + iPad] > mQThreshold) { + updateTempCluster(mSetOfTimeSlices[clusterCenterTime + iTime][clusterCenterRow + iRow][clusterCenterPad + iPad], clusterCenterPad + iPad, clusterCenterRow + iRow, clusterCenterTime + iTime); } } } @@ -435,7 +448,8 @@ KrCluster KrBoxClusterFinder::buildCluster(int clusterCenterPad, int clusterCent } // At the end, out mTempCluster should contain all digits that were assigned to the cluster. // So before returning it, we update it one last time to calculate the correct means and sigmas. - updateTempClusterFinal(); + + updateTempClusterFinal(timeOffset); if (directFilling) { mClusters.emplace_back(mTempCluster); From 940712c1311ad24d0c9e6be59d60f4fcb5f192ab Mon Sep 17 00:00:00 2001 From: Chiara Zampolli Date: Mon, 5 Jul 2021 14:27:25 +0200 Subject: [PATCH 106/314] Update names of configurables and some comments clang-format --- .../Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx | 26 ++++++++++++------- 1 file changed, 16 insertions(+), 10 deletions(-) diff --git a/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx b/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx index 5c2b789eb532d..0a2c2ad12df4d 100644 --- a/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx +++ b/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx @@ -1082,9 +1082,15 @@ struct HfTrackIndexSkimsCreatorCascades { // quality cut Configurable doCutQuality{"doCutQuality", true, "apply quality cuts"}; + // track cuts for bachelor + Configurable TPCRefitBach{"TPCRefitBach", true, "request TPC refit bachelor"}; + Configurable minCrossedRowsBach{"minCrossedRowsBach", 50, "min crossed rows bachelor"}; + + // track cuts for V0 daughters + Configurable TPCRefitV0Daugh{"TPCRefitV0Daugh", true, "request TPC refit V0 daughters"}; + Configurable minCrossedRowsV0Daugh{"minCrossedRowsV0Daugh", 50, "min crossed rows V0 daughters"}; + // track cuts for V0 daughters - Configurable TPCRefit{"TPCRefit", true, "request TPC refit V0 daughters"}; - Configurable i_minCrossedRows{"i_minCrossedRows", 50, "min crossed rows V0 daughters"}; Configurable etaMax{"etaMax", 1.1, "max. pseudorapidity V0 daughters"}; Configurable ptMin{"ptMin", 0.05, "min. pT V0 daughters"}; @@ -1095,11 +1101,11 @@ struct HfTrackIndexSkimsCreatorCascades { // v0 cuts Configurable cosPAV0{"cosPAV0", .995, "CosPA V0"}; // as in the task that create the V0s Configurable dcaXYNegToPV{"dcaXYNegToPV", .1, "DCA_XY Neg To PV"}; // check: in HF Run 2, it was 0 at filtering - Configurable dcaXYPosToPV{"dcaXYPosToPVS", .1, "DCA_XY Pos To PV"}; // check: in HF Run 2, it was 0 at filtering + Configurable dcaXYPosToPV{"dcaXYPosToPV", .1, "DCA_XY Pos To PV"}; // check: in HF Run 2, it was 0 at filtering Configurable cutInvMassV0{"cutInvMassV0", 0.05, "V0 candidate invariant mass difference wrt PDG"}; // cascade cuts - Configurable cutCascPtCandMin{"cutCascPtCandMin", -1., "min. pT of the 2-prong candidate"}; // PbPb 2018: use 1 + Configurable cutCascPtCandMin{"cutCascPtCandMin", -1., "min. pT of the cascade candidate"}; // PbPb 2018: use 1 Configurable cutCascInvMassLc{"cutCascInvMassLc", 1., "Lc candidate invariant mass difference wrt PDG"}; // for PbPb 2018: use 0.2 //Configurable cutCascDCADaughters{"cutCascDCADaughters", .1, "DCA between V0 and bachelor in cascade"}; @@ -1174,14 +1180,14 @@ struct HfTrackIndexSkimsCreatorCascades { continue; } - if (TPCRefit) { + if (TPCRefitBach) { if (!(bach.trackType() & o2::aod::track::TPCrefit)) { MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "proton " << indexBach << ": rejected due to TPCrefit"); continue; } } - if (bach.tpcNClsCrossedRows() < i_minCrossedRows) { - MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "proton " << indexBach << ": rejected due to minNUmberOfCrossedRows " << bach.tpcNClsCrossedRows() << " (cut " << i_minCrossedRows << ")"); + if (bach.tpcNClsCrossedRows() < minCrossedRowsBach) { + MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "proton " << indexBach << ": rejected due to minNUmberOfCrossedRows " << bach.tpcNClsCrossedRows() << " (cut " << minCrossedRowsBach << ")"); continue; } MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "KEPT! proton from Lc with daughters " << indexBach); @@ -1209,15 +1215,15 @@ struct HfTrackIndexSkimsCreatorCascades { MY_DEBUG_MSG(isLc, LOG(INFO) << "Combination of K0S and p which correspond to a Lc found!"); - if (TPCRefit) { + if (TPCRefitV0Daugh) { if (!(trackV0DaughPos.trackType() & o2::aod::track::TPCrefit) || !(trackV0DaughNeg.trackType() & o2::aod::track::TPCrefit)) { MY_DEBUG_MSG(isK0SfromLc, LOG(INFO) << "K0S with daughters " << indexV0DaughPos << " and " << indexV0DaughNeg << ": rejected due to TPCrefit"); continue; } } - if (trackV0DaughPos.tpcNClsCrossedRows() < i_minCrossedRows || - trackV0DaughNeg.tpcNClsCrossedRows() < i_minCrossedRows) { + if (trackV0DaughPos.tpcNClsCrossedRows() < minCrossedRowsV0Daugh || + trackV0DaughNeg.tpcNClsCrossedRows() < minCrossedRowsV0Daugh) { MY_DEBUG_MSG(isK0SfromLc, LOG(INFO) << "K0S with daughters " << indexV0DaughPos << " and " << indexV0DaughNeg << ": rejected due to minCrossedRows"); continue; } From 0d49bb4d920ed02ee5fd32adc88bb75557c797ef Mon Sep 17 00:00:00 2001 From: Ole Schmidt Date: Tue, 22 Jun 2021 22:18:51 +0200 Subject: [PATCH 107/314] TRD calibration for vDrift and ExB added - results are written to CCDB --- DataFormats/Detectors/TRD/CMakeLists.txt | 1 + .../TRD/include/DataFormatsTRD/CalVdriftExB.h | 49 +++++++ .../Detectors/TRD/src/DataFormatsTRDLinkDef.h | 1 + .../include/TRDCalibration/CalibratorVdExB.h | 20 ++- .../TRD/calibration/src/CalibratorVdExB.cxx | 136 +++++++++++++++++- .../include/TRDWorkflow/VdAndExBCalibSpec.h | 2 +- 6 files changed, 206 insertions(+), 3 deletions(-) create mode 100644 DataFormats/Detectors/TRD/include/DataFormatsTRD/CalVdriftExB.h diff --git a/DataFormats/Detectors/TRD/CMakeLists.txt b/DataFormats/Detectors/TRD/CMakeLists.txt index 15151e9542839..ddeb2e5b75fcc 100644 --- a/DataFormats/Detectors/TRD/CMakeLists.txt +++ b/DataFormats/Detectors/TRD/CMakeLists.txt @@ -33,6 +33,7 @@ o2_target_root_dictionary(DataFormatsTRD include/DataFormatsTRD/Hit.h include/DataFormatsTRD/Digit.h include/DataFormatsTRD/CTF.h + include/DataFormatsTRD/CalVdriftExB.h include/DataFormatsTRD/SignalArray.h include/DataFormatsTRD/CompressedDigit.h include/DataFormatsTRD/CompressedHeader.h) diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CalVdriftExB.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CalVdriftExB.h new file mode 100644 index 0000000000000..0341ee1f4a051 --- /dev/null +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CalVdriftExB.h @@ -0,0 +1,49 @@ +// Copyright CERN and copyright holders of ALICE O2. This software is +// distributed under the terms of the GNU General Public License v3 (GPL +// Version 3), copied verbatim in the file "COPYING". +// +// See http://alice-o2.web.cern.ch/license for full licensing information. +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file CalVdriftExB.h +/// \brief Object with vDrift and ExB values per chamber to be written into the CCDB + +#ifndef ALICEO2_CALVDRIFTEXB_H +#define ALICEO2_CALVDRIFTEXB_H + +#include "DataFormatsTRD/Constants.h" +#include "Rtypes.h" +#include + +namespace o2 +{ +namespace trd +{ + +class CalVdriftExB +{ + public: + CalVdriftExB() = default; + CalVdriftExB(const CalVdriftExB&) = default; + ~CalVdriftExB() = default; + + void setVdrift(int iDet, float vd) { mVdrift[iDet] = vd; } + void setExB(int iDet, float exb) { mExB[iDet] = exb; } + + float getVdrift(int iDet) const { return mVdrift[iDet]; } + float getExB(int iDet) const { return mExB[iDet]; } + + private: + std::array mVdrift{}; ///< calibrated drift velocity per TRD chamber + std::array mExB{}; ///< calibrated Lorentz angle per TRD chamber + + ClassDefNV(CalVdriftExB, 1); +}; + +} // namespace trd +} // namespace o2 + +#endif // ALICEO2_CALVDRIFTEXB_H diff --git a/DataFormats/Detectors/TRD/src/DataFormatsTRDLinkDef.h b/DataFormats/Detectors/TRD/src/DataFormatsTRDLinkDef.h index 0c76ab8a28ad2..dbe64a0cf0cf8 100644 --- a/DataFormats/Detectors/TRD/src/DataFormatsTRDLinkDef.h +++ b/DataFormats/Detectors/TRD/src/DataFormatsTRDLinkDef.h @@ -27,6 +27,7 @@ #pragma link C++ class o2::trd::Hit + ; #pragma link C++ class o2::trd::Digit + ; #pragma link C++ class o2::trd::AngularResidHistos + ; +#pragma link C++ class o2::trd::CalVdriftExB + ; #pragma link C++ class o2::trd::CompressedDigit + ; #pragma link C++ class std::vector < o2::trd::Tracklet64> + ; #pragma link C++ class std::vector < o2::trd::CalibratedTracklet> + ; diff --git a/Detectors/TRD/calibration/include/TRDCalibration/CalibratorVdExB.h b/Detectors/TRD/calibration/include/TRDCalibration/CalibratorVdExB.h index d13bd13ab6ff4..8e01fa6bb5d7c 100644 --- a/Detectors/TRD/calibration/include/TRDCalibration/CalibratorVdExB.h +++ b/Detectors/TRD/calibration/include/TRDCalibration/CalibratorVdExB.h @@ -22,6 +22,7 @@ #include "DataFormatsTRD/AngularResidHistos.h" #include "Rtypes.h" +#include "TProfile.h" #include #include @@ -31,11 +32,26 @@ namespace o2 namespace trd { +struct FitFunctor { + double operator()(const double* par) const; + double calculateDeltaAlphaSim(double vdFit, double laFit, double impactAng) const; + std::array, constants::MAXCHAMBER> profiles; ///< profile histograms for each TRD chamber + double vdPreCorr; // TODO: these values should eventually be taken from CCDB + double laPreCorr; // TODO: these values should eventually be taken from CCDB + int currDet; ///< the current TRD chamber number + float lowerBoundAngleFit; + float upperBoundAngleFit; +}; + class CalibratorVdExB final : public o2::calibration::TimeSlotCalibration { using Slot = o2::calibration::TimeSlot; public: + enum ParamIndex : int { + LA, + VD + }; CalibratorVdExB(size_t nMin = 40'000) : mMinEntries(nMin) {} ~CalibratorVdExB() final = default; @@ -44,10 +60,12 @@ class CalibratorVdExB final : public o2::calibration::TimeSlotCalibration +#include #include +using namespace o2::trd::constants; + namespace o2::trd { +double FitFunctor::calculateDeltaAlphaSim(double vdFit, double laFit, double impactAng) const +{ + + double trdAnodePlane = .0335; // distance of the TRD anode plane from the drift cathodes in [m] + + auto xDir = TMath::Cos(impactAng); + auto yDir = TMath::Sin(impactAng); + double slope = (TMath::Abs(xDir) < 1e-7) ? 1e7 : yDir / xDir; + auto laTan = TMath::Tan(laFit); + double lorentzSlope = (TMath::Abs(laTan) < 1e-7) ? 1e7 : 1. / laTan; + + // hit point of incoming track with anode plane + double xAnodeHit = trdAnodePlane / slope; + double yAnodeHit = trdAnodePlane; + + // hit point at anode plane of Lorentz angle shifted cluster from the entrance -> independent of true drift velocity + double xLorentzAnodeHit = trdAnodePlane / lorentzSlope; + double yLorentzAnodeHit = trdAnodePlane; + + // cluster location within drift cell of cluster from entrance after drift velocity ratio is applied + double xLorentzDriftHit = xLorentzAnodeHit; + double yLorentzDriftHit = trdAnodePlane - trdAnodePlane * (vdPreCorr / vdFit); + + // reconstructed hit of first cluster at chamber entrance after pre Lorentz angle correction + double xLorentzDriftHitPreCorr = xLorentzAnodeHit - (trdAnodePlane - yLorentzDriftHit) * TMath::Tan(laPreCorr); + double yLorentzDriftHitPreCorr = trdAnodePlane - trdAnodePlane * (vdPreCorr / vdFit); + + double impactAngleSim = TMath::ATan2(yAnodeHit, xAnodeHit); + + double deltaXLorentzDriftHit = xAnodeHit - xLorentzDriftHitPreCorr; + double deltaYLorentzDriftHit = yAnodeHit - yLorentzDriftHitPreCorr; + double impactAngleRec = TMath::ATan2(deltaYLorentzDriftHit, deltaXLorentzDriftHit); + + double deltaAngle = (impactAngleRec - impactAngleSim); // * TMath::RadToDeg()); + + return deltaAngle; +} + +double FitFunctor::operator()(const double* par) const +{ + double sum = 0; // this value is minimized + for (int iBin = 1; iBin <= profiles[currDet]->GetNbinsX(); ++iBin) { + auto impactAngle = (profiles[currDet]->GetBinCenter(iBin) + 90) * TMath::DegToRad(); + auto deltaAlpha = profiles[currDet]->GetBinContent(iBin) * TMath::DegToRad(); + if (TMath::Abs(deltaAlpha) < 1e-7) { + continue; + } + if (impactAngle < lowerBoundAngleFit || impactAngle > upperBoundAngleFit) { + continue; + } + auto deltaAlphaSim = calculateDeltaAlphaSim(par[CalibratorVdExB::ParamIndex::VD], par[CalibratorVdExB::ParamIndex::LA], impactAngle); + sum += TMath::Power(deltaAlphaSim - deltaAlpha, 2); + } + return sum; +} + using Slot = o2::calibration::TimeSlot; void CalibratorVdExB::initOutput() { // prepare output objects which will go to CCDB + // nothing to be done +} + +void CalibratorVdExB::initProcessing() +{ + if (mInitDone) { + return; + } + mFitFunctor.lowerBoundAngleFit = 80 * TMath::DegToRad(); + mFitFunctor.upperBoundAngleFit = 100 * TMath::DegToRad(); + mFitFunctor.vdPreCorr = 1.546; // TODO: will be taken from CCDB in the future + mFitFunctor.laPreCorr = -0.16133; // TODO: will be taken from CCDB in the future + for (int iDet = 0; iDet < MAXCHAMBER; ++iDet) { + mFitFunctor.profiles[iDet] = std::make_unique(Form("profAngleDiff_%i", iDet), Form("profAngleDiff_%i", iDet), NBINSANGLEDIFF, -MAXIMPACTANGLE, MAXIMPACTANGLE); + } + mInitDone = true; } void CalibratorVdExB::finalizeSlot(Slot& slot) { // do actual calibration for the data provided in the given slot - // TODO! + TStopwatch timer; + timer.Start(); + std::array laFitResults{}; + std::array vdFitResults{}; + auto residHists = slot.getContainer(); + initProcessing(); + for (int iDet = 0; iDet < MAXCHAMBER; ++iDet) { + mFitFunctor.profiles[iDet]->Reset(); + mFitFunctor.currDet = iDet; + for (int iBin = 0; iBin < NBINSANGLEDIFF; ++iBin) { + // fill profiles + auto angleDiffSum = residHists->getHistogramEntry(iDet * NBINSANGLEDIFF + iBin); + auto nEntries = residHists->getBinCount(iDet * NBINSANGLEDIFF + iBin); + if (nEntries > 0) { + mFitFunctor.profiles[iDet]->Fill(2 * iBin - MAXIMPACTANGLE, angleDiffSum / nEntries, nEntries); + } + } + ROOT::Fit::Fitter fitter; + double paramsStart[2]; + paramsStart[ParamIndex::LA] = -7.5 * TMath::DegToRad(); + paramsStart[ParamIndex::VD] = 1.; + fitter.SetFCN(2, mFitFunctor, paramsStart); + fitter.Config().ParSettings(ParamIndex::LA).SetLimits(-0.7, 0.7); + fitter.Config().ParSettings(ParamIndex::LA).SetStepSize(.01); + fitter.Config().ParSettings(ParamIndex::VD).SetLimits(0., 3.); + fitter.Config().ParSettings(ParamIndex::VD).SetStepSize(.01); + ROOT::Math::MinimizerOptions opt; + opt.SetMinimizerType("Minuit2"); + opt.SetMinimizerAlgorithm("Migrad"); + opt.SetPrintLevel(0); + opt.SetMaxFunctionCalls(1'000); + opt.SetTolerance(.001); + fitter.Config().SetMinimizerOptions(opt); + fitter.FitFCN(); + auto fitResult = fitter.Result(); + laFitResults[iDet] = fitResult.Parameter(ParamIndex::LA); + vdFitResults[iDet] = fitResult.Parameter(ParamIndex::VD); + LOGF(DEBUG, "Fit result for chamber %i: vd=%f, la=%f", iDet, vdFitResults[iDet], laFitResults[iDet] * TMath::RadToDeg()); + } + timer.Stop(); + LOGF(INFO, "Done fitting angular residual histograms. CPU time: %f, real time: %f", timer.CpuTime(), timer.RealTime()); + + // write results to CCDB + o2::ccdb::CcdbApi ccdb; + ccdb.init("http://ccdb-test.cern.ch:8080"); + std::map metadata; // TODO: do we want to store any meta data? + CalVdriftExB calObject; + for (int iDet = 0; iDet < MAXCHAMBER; ++iDet) { + // OS: what about chambers for which we had no data in this slot? should we use the initial parameters or something else? + // maybe it is better not to overwrite an older result if we don't have anything better? + calObject.setVdrift(iDet, vdFitResults[iDet]); + calObject.setExB(iDet, laFitResults[iDet]); + } + ccdb.storeAsTFileAny(&calObject, "TRD_test/CalVdriftExB", metadata, 265503, 265503 + 1); // temporary only short validity of 1 run } Slot& CalibratorVdExB::emplaceNewSlot(bool front, uint64_t tStart, uint64_t tEnd) diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/VdAndExBCalibSpec.h b/Detectors/TRD/workflow/include/TRDWorkflow/VdAndExBCalibSpec.h index 7f6998b6d0605..f55ef5eac79d2 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/VdAndExBCalibSpec.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/VdAndExBCalibSpec.h @@ -39,7 +39,7 @@ class VdAndExBCalibDevice : public o2::framework::Task public: void init(o2::framework::InitContext& ic) final { - int minEnt = std::max(50'000, ic.options().get("min-entries")); + int minEnt = std::max(100'000, ic.options().get("min-entries")); int slotL = ic.options().get("tf-per-slot"); int delay = ic.options().get("max-delay"); mCalibrator = std::make_unique(minEnt); From 9593ce7f413a92c73db3f7d1b2d24f21e04d46fa Mon Sep 17 00:00:00 2001 From: Ole Schmidt Date: Mon, 5 Jul 2021 09:09:47 +0200 Subject: [PATCH 108/314] Update copyright notice --- .../Detectors/TRD/include/DataFormatsTRD/CalVdriftExB.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CalVdriftExB.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CalVdriftExB.h index 0341ee1f4a051..bad9dcfef4e37 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CalVdriftExB.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CalVdriftExB.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization From c627edaa54164fbe9b103dc2ff3a012e26610f70 Mon Sep 17 00:00:00 2001 From: Kavaldrin Date: Mon, 7 Jun 2021 08:12:16 +0200 Subject: [PATCH 109/314] fix unmatched input/output --- .../calibration/testWorkflow/FT0CalibrationDummy-Workflow.cxx | 4 ++-- .../calibration/testWorkflow/FT0ChannelTimeCalibrationSpec.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibrationDummy-Workflow.cxx b/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibrationDummy-Workflow.cxx index 7adef65ae70d0..ddee1295df6d4 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibrationDummy-Workflow.cxx +++ b/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibrationDummy-Workflow.cxx @@ -40,8 +40,8 @@ WorkflowSpec defineDataProcessing(ConfigContext const& config) o2::ft0::FT0ChannelTimeTimeSlotContainer, o2::ft0::FT0DummyCalibrationObject>; std::vector outputs; - outputs.emplace_back(o2::framework::ConcreteDataTypeMatcher{o2::calibration::Utils::gDataOriginCDBPayload, "FIT_ChannelTime"}); - outputs.emplace_back(o2::framework::ConcreteDataTypeMatcher{o2::calibration::Utils::gDataOriginCDBWrapper, "FIT_ChannelTime"}); + outputs.emplace_back(o2::framework::ConcreteDataTypeMatcher{o2::calibration::Utils::gDataOriginCDBPayload, "FIT_CALIB"}); + outputs.emplace_back(o2::framework::ConcreteDataTypeMatcher{o2::calibration::Utils::gDataOriginCDBWrapper, "FIT_CALIB"}); constexpr const char* DEFAULT_INPUT_LABEL = "calib"; diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/FT0ChannelTimeCalibrationSpec.h b/Detectors/FIT/FT0/calibration/testWorkflow/FT0ChannelTimeCalibrationSpec.h index 9bc3496c7f5bf..7b0683f9ccab3 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/FT0ChannelTimeCalibrationSpec.h +++ b/Detectors/FIT/FT0/calibration/testWorkflow/FT0ChannelTimeCalibrationSpec.h @@ -26,8 +26,8 @@ o2::framework::DataProcessorSpec getFT0ChannelTimeCalibrationSpec() o2::ft0::FT0ChannelTimeTimeSlotContainer, o2::ft0::FT0ChannelTimeCalibrationObject>; std::vector outputs; - outputs.emplace_back(o2::framework::ConcreteDataTypeMatcher{o2::calibration::Utils::gDataOriginCDBPayload, "FT0_ChannelTime"}); - outputs.emplace_back(o2::framework::ConcreteDataTypeMatcher{o2::calibration::Utils::gDataOriginCDBWrapper, "FT0_ChannelTime"}); + outputs.emplace_back(o2::framework::ConcreteDataTypeMatcher{o2::calibration::Utils::gDataOriginCDBPayload, "FIT_CALIB"}); + outputs.emplace_back(o2::framework::ConcreteDataTypeMatcher{o2::calibration::Utils::gDataOriginCDBWrapper, "FIT_CALIB"}); constexpr const char* DEFAULT_INPUT_LABEL = "calib"; From f3ccc6c0914585a91a8138448e4bbecf3d1c646f Mon Sep 17 00:00:00 2001 From: aferrero2707 Date: Wed, 16 Jun 2021 17:59:51 +0200 Subject: [PATCH 110/314] [MCH] added decoder benchmarking --- .../MUON/MCH/Workflow/src/DataDecoderSpec.cxx | 20 +++++++++++++++++++ 1 file changed, 20 insertions(+) diff --git a/Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx b/Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx index 6a8d630f64616..63a5e9d7a1727 100644 --- a/Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx +++ b/Detectors/MUON/MCH/Workflow/src/DataDecoderSpec.cxx @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include @@ -85,6 +86,12 @@ class DataDecoderTask auto useDummyElecMap = ic.options().get("dummy-elecmap"); mDecoder = new DataDecoder(channelHandler, rdhHandler, sampaBcOffset, mapCRUfile, mapFECfile, ds2manu, mDebug, useDummyElecMap); + + auto stop = [this]() { + LOG(INFO) << "decoding duration = " << mTimeDecoding.count() * 1000 / mTFcount << " us / TF"; + LOG(INFO) << "ROF finder duration = " << mTimeROFFinder.count() * 1000 / mTFcount << " us / TF"; + }; + ic.services().get().set(CallbackService::Id::Stop, stop); } //_________________________________________________________________________________________________ @@ -217,6 +224,7 @@ class DataDecoderTask mDecoder->reset(); + auto tStart = std::chrono::high_resolution_clock::now(); for (auto&& input : pc.inputs()) { if (input.spec->binding == "readout") { decodeReadout(input); @@ -226,6 +234,8 @@ class DataDecoderTask } } mDecoder->computeDigitsTime(); + auto tEnd = std::chrono::high_resolution_clock::now(); + mTimeDecoding += tEnd - tStart; auto& digits = mDecoder->getDigits(); auto& orbits = mDecoder->getOrbits(); @@ -245,8 +255,11 @@ class DataDecoderTask } #endif + tStart = std::chrono::high_resolution_clock::now(); ROFFinder rofFinder(digits, mFirstTForbit); rofFinder.process(mDummyROFs); + tEnd = std::chrono::high_resolution_clock::now(); + mTimeROFFinder += tEnd - tStart; if (mDebug) { rofFinder.dumpOutputDigits(); @@ -273,6 +286,8 @@ class DataDecoderTask pc.outputs().adoptChunk(Output{header::gDataOriginMCH, "DIGITS", 0}, digitsBuffer, digitsSize, freefct, nullptr); pc.outputs().adoptChunk(Output{header::gDataOriginMCH, "DIGITROFS", 0}, rofsBuffer, rofsSize, freefct, nullptr); pc.outputs().adoptChunk(Output{header::gDataOriginMCH, "ORBITS", 0}, orbitsBuffer, orbitsSize, freefct, nullptr); + + mTFcount += 1; } private: @@ -282,6 +297,11 @@ class DataDecoderTask bool mDummyROFs = {false}; /// flag to disable the ROFs finding uint32_t mFirstTForbit{0}; /// first orbit of the time frame being processed DataDecoder* mDecoder = {nullptr}; /// pointer to the data decoder instance + + uint32_t mTFcount{0}; + + std::chrono::duration mTimeDecoding{}; ///< timer + std::chrono::duration mTimeROFFinder{}; ///< timer }; //_________________________________________________________________________________________________ From 744629a21ca3c2332f0564ea9cb4141ad0086a94 Mon Sep 17 00:00:00 2001 From: aferrero2707 Date: Wed, 16 Jun 2021 18:01:03 +0200 Subject: [PATCH 111/314] [MCH] improved code structure This commit does not introduce any new feature, it only aims at improving the code readability --- .../include/MCHRawDecoder/DataDecoder.h | 6 +- .../MUON/MCH/Raw/Decoder/src/DataDecoder.cxx | 206 ++++++++++++------ .../Decoder/src/testDigitsTimeComputation.cxx | 6 +- 3 files changed, 145 insertions(+), 73 deletions(-) diff --git a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h index 0e12e9a5ba867..42ad98566a2ff 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h +++ b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h @@ -142,10 +142,10 @@ class DataDecoder uint32_t getSampaBcOffset() const { return mSampaTimeOffset; } static int32_t digitsTimeDiff(uint32_t orbit1, uint32_t bc1, uint32_t orbit2, uint32_t bc2); - static void computeDigitsTime_(RawDigitVector& digits, SampaTimeFrameStart& sampaTimeFrameStart, bool debug); + static void computeDigitsTime(RawDigitVector& digits, SampaTimeFrameStart& sampaTimeFrameStart, bool debug); void computeDigitsTime() { - computeDigitsTime_(mDigits, mSampaTimeFrameStart, mDebug); + computeDigitsTime(mDigits, mSampaTimeFrameStart, mDebug); } const RawDigitVector& getDigits() const { return mDigits; } @@ -157,6 +157,8 @@ class DataDecoder void init(); void decodePage(gsl::span page); void dumpDigits(); + bool getPadMapping(const DsElecId& dsElecId, DualSampaChannelId channel, int& deId, int& dsIddet, int& padId); + bool addDigit(const DsElecId& dsElecId, DualSampaChannelId channel, const o2::mch::raw::SampaCluster& sc); Elec2DetMapper mElec2Det{nullptr}; ///< front-end electronics mapping FeeLink2SolarMapper mFee2Solar{nullptr}; ///< CRU electronics mapping diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx index 3a23db3a8392f..ebed4a86911cd 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx @@ -69,6 +69,8 @@ static int ds2manu(int i) return refDs2manu_st345[i]; } +//_________________________________________________________________________________________________ + static void patchPage(gsl::span rdhBuffer, bool verbose) { auto& rdhAny = *reinterpret_cast(const_cast(&(rdhBuffer[0]))); @@ -87,6 +89,8 @@ static void patchPage(gsl::span rdhBuffer, bool verbose) } }; +//_________________________________________________________________________________________________ + bool operator<(const DataDecoder::RawDigit& d1, const DataDecoder::RawDigit& d2) { if (d1.getTime() == d2.getTime()) { @@ -110,6 +114,19 @@ std::ostream& operator<<(std::ostream& os, const DataDecoder::RawDigit& d) return os; } +//_________________________________________________________________________________________________ + +static bool isValidDeID(int deId) +{ + for (auto id : deIdsForAllMCH) { + if (id == deId) { + return true; + } + } + + return false; +} + //======================= // Data decoder @@ -130,6 +147,8 @@ bool DataDecoder::RawDigit::operator==(const DataDecoder::RawDigit& other) const return digit == other.digit && info == other.info; } +//_________________________________________________________________________________________________ + DataDecoder::DataDecoder(SampaChannelHandler channelHandler, RdhHandler rdhHandler, uint32_t sampaBcOffset, std::string mapCRUfile, std::string mapFECfile, @@ -139,16 +158,7 @@ DataDecoder::DataDecoder(SampaChannelHandler channelHandler, RdhHandler rdhHandl init(); } -static bool isValidDeID(int deId) -{ - for (auto id : deIdsForAllMCH) { - if (id == deId) { - return true; - } - } - - return false; -} +//_________________________________________________________________________________________________ void DataDecoder::setFirstOrbitInTF(uint32_t orbit) { @@ -172,6 +182,8 @@ void DataDecoder::setFirstOrbitInTF(uint32_t orbit) mSampaTimeFrameStart = SampaTimeFrameStart(orbit, bc20bits); } +//_________________________________________________________________________________________________ + void DataDecoder::decodeBuffer(gsl::span buf) { if (mDebug) { @@ -210,6 +222,8 @@ void DataDecoder::decodeBuffer(gsl::span buf) } } +//_________________________________________________________________________________________________ + void DataDecoder::dumpDigits() { for (size_t di = 0; di < mDigits.size(); di++) { @@ -233,6 +247,8 @@ void DataDecoder::dumpDigits() } }; +//_________________________________________________________________________________________________ + void dumpOrbits(const std::unordered_set& mOrbits) { std::set ordered_orbits(mOrbits.begin(), mOrbits.end()); @@ -241,8 +257,95 @@ void dumpOrbits(const std::unordered_set& mOrbits) } }; +//_________________________________________________________________________________________________ + +bool DataDecoder::getPadMapping(const DsElecId& dsElecId, DualSampaChannelId channel, int& deId, int& dsIddet, int& padId) +{ + deId = -1; + dsIddet = -1; + padId = -1; + + if (auto opt = mElec2Det(dsElecId); opt.has_value()) { + DsDetId dsDetId = opt.value(); + dsIddet = dsDetId.dsId(); + deId = dsDetId.deId(); + } + if (mDebug) { + auto s = asString(dsElecId); + auto ch = fmt::format("{}-CH{:02d}", s, channel); + std::cout << ch << " " + << "deId " << deId << " dsIddet " << dsIddet << std::endl; + } + + if (deId < 0 || dsIddet < 0 || !isValidDeID(deId)) { + LOGP(error, "got invalid DsDetId from dsElecId={}", asString(dsElecId)); + return false; + } + + const Segmentation& segment = segmentation(deId); + padId = segment.findPadByFEE(dsIddet, int(channel)); + + if (padId < 0) { + return false; + } + return true; +} + +//_________________________________________________________________________________________________ + +bool DataDecoder::addDigit(const DsElecId& dsElecId, DualSampaChannelId channel, const o2::mch::raw::SampaCluster& sc) +{ + int deId, dsIddet, padId; + if (!getPadMapping(dsElecId, channel, deId, dsIddet, padId)) { + return false; + } + + uint32_t digitadc = sc.sum(); + + if (mDebug) { + auto s = asString(dsElecId); + auto ch = fmt::format("{}-CH{:02d}", s, channel); + std::cout << ch << " " + << fmt::format("PAD ({:04d} {:04d} {:04d})\tADC {:06d} TIME ({} {} {:02d}) SIZE {} END {}", + deId, dsIddet, padId, digitadc, mOrbit, sc.bunchCrossing, sc.sampaTime, sc.nofSamples(), (sc.sampaTime + sc.nofSamples() - 1)) + << (((sc.sampaTime + sc.nofSamples() - 1) >= 98) ? " *" : "") << std::endl; + } + + // skip channels not associated to any pad + if (padId < 0) { + LOGP(error, "got invalid padId from dsElecId={} dualSampaId={} channel={}", asString(dsElecId), dsIddet, channel); + return false; + } + + RawDigit digit; + digit.digit = o2::mch::Digit(deId, padId, digitadc, 0, sc.nofSamples()); + digit.info.chip = channel / 32; + digit.info.ds = dsElecId.elinkId(); + digit.info.solar = dsElecId.solarId(); + digit.info.sampaTime = sc.sampaTime; + digit.info.bunchCrossing = sc.bunchCrossing; + digit.info.orbit = mOrbit; + + mDigits.emplace_back(digit); + + if (mDebug) { + RawDigit& lastDigit = mDigits.back(); + LOGP(info, "DIGIT STORED: ORBIT {} ADC {} DE {} PADID {} TIME {} BXCOUNT {}", + mOrbit, lastDigit.getADC(), lastDigit.getDetID(), lastDigit.getPadID(), + lastDigit.getSampaTime(), lastDigit.getBunchCrossing()); + } + return true; +} + +//_________________________________________________________________________________________________ + void DataDecoder::decodePage(gsl::span page) { + uint8_t isStopRDH = 0; + uint32_t orbit; + uint32_t feeId; + uint32_t linkId; + /* * TODO: we should use the HBPackets to verify the synchronization between the SAMPA chips auto heartBeatHandler = [&](DsElecId dsElecId, uint8_t chip, uint32_t bunchCrossing) { @@ -272,63 +375,15 @@ void DataDecoder::decodePage(gsl::span page) channel = ds2manu(int(channel)); } - uint32_t digitadc = sc.sum(); - - int deId{-1}; - int dsIddet{-1}; - if (auto opt = mElec2Det(dsElecId); opt.has_value()) { - DsDetId dsDetId = opt.value(); - dsIddet = dsDetId.dsId(); - deId = dsDetId.deId(); - } - if (mDebug) { - auto s = asString(dsElecId); - auto ch = fmt::format("{}-CH{:02d}", s, channel); - std::cout << ch << " " - << "deId " << deId << " dsIddet " << dsIddet << std::endl; - } - - if (deId < 0 || dsIddet < 0 || !isValidDeID(deId)) { - LOGP(error, "got invalid DsDetId from dsElecId={}", asString(dsElecId)); + int32_t mergerChannelId = getMergerChannelId(dsElecId, channel); + if (mergerChannelId < 0) { + LOGP(error, "dsElecId={} is out-of-bounds", asString(dsElecId)); return; } - int padId = -1; - const Segmentation& segment = segmentation(deId); - - padId = segment.findPadByFEE(dsIddet, int(channel)); - if (mDebug) { - auto s = asString(dsElecId); - auto ch = fmt::format("{}-CH{:02d}", s, channel); - std::cout << ch << " " - << fmt::format("PAD ({:04d} {:04d} {:04d})\tADC {:06d} TIME ({} {} {:02d}) SIZE {} END {}", - deId, dsIddet, padId, digitadc, mOrbit, sc.bunchCrossing, sc.sampaTime, sc.nofSamples(), (sc.sampaTime + sc.nofSamples() - 1)) - << (((sc.sampaTime + sc.nofSamples() - 1) >= 98) ? " *" : "") << std::endl; - } - - // skip channels not associated to any pad - if (padId < 0) { - LOGP(error, "got invalid padId from dsElecId={} dualSampaId={} channel={}", asString(dsElecId), dsIddet, channel); + if (!addDigit(dsElecId, channel, sc)) { return; } - - RawDigit digit; - digit.digit = o2::mch::Digit(deId, padId, digitadc, 0, sc.nofSamples()); - digit.info.chip = channel / 32; - digit.info.ds = dsElecId.elinkId(); - digit.info.solar = dsElecId.solarId(); - digit.info.sampaTime = sc.sampaTime; - digit.info.bunchCrossing = sc.bunchCrossing; - digit.info.orbit = mOrbit; - - mDigits.emplace_back(digit); - - if (mDebug) { - RawDigit& lastDigit = mDigits.back(); - LOGP(info, "DIGIT STORED: ORBIT {} ADC {} DE {} PADID {} TIME {} BXCOUNT {}", - mOrbit, lastDigit.getADC(), lastDigit.getDetID(), lastDigit.getPadID(), - lastDigit.getSampaTime(), lastDigit.getBunchCrossing()); - } }; patchPage(page, mDebug); @@ -353,9 +408,12 @@ void DataDecoder::decodePage(gsl::span page) mDecoder = mFee2Solar ? o2::mch::raw::createPageDecoder(page, handlers, mFee2Solar) : o2::mch::raw::createPageDecoder(page, handlers); } + mDecoder(page); }; +//_________________________________________________________________________________________________ + int32_t DataDecoder::digitsTimeDiff(uint32_t orbit1, uint32_t bc1, uint32_t orbit2, uint32_t bc2) { // bunch crossings are stored with 20 bits @@ -370,7 +428,7 @@ int32_t DataDecoder::digitsTimeDiff(uint32_t orbit1, uint32_t bc1, uint32_t orbi // Digits might be sent out later than the orbit in which they were recorded. // We account for this by allowing an extra +/- 3 orbits when converting the // difference from orbit numbers to bunch crossings. - int64_t dBcMin = (dOrbit - 3) * BCINORBIT; + int64_t dBcMin = (dOrbit - 10) * BCINORBIT; int64_t dBcMax = (dOrbit + 3) * BCINORBIT; // Difference in bunch crossing values @@ -389,13 +447,16 @@ int32_t DataDecoder::digitsTimeDiff(uint32_t orbit1, uint32_t bc1, uint32_t orbi return static_cast(dBc); } -void DataDecoder::computeDigitsTime_(RawDigitVector& digits, SampaTimeFrameStart& sampaTimeFrameStart, bool debug) +//_________________________________________________________________________________________________ + +void DataDecoder::computeDigitsTime(RawDigitVector& digits, SampaTimeFrameStart& sampaTimeFrameStart, bool debug) { + constexpr int32_t bcInTF = 256 * o2::constants::lhc::LHCMaxBunches; constexpr int32_t timeInvalid = DataDecoder::tfTimeInvalid; auto setDigitTime = [&](Digit& d, int32_t tfTime) { d.setTime(tfTime); if (debug) { - std::cout << "[computeDigitsTime_] hit time set to " << d.getTime() << std::endl; + std::cout << "[computeDigitsTime] hit time set to " << d.getTime() << std::endl; } }; @@ -407,8 +468,11 @@ void DataDecoder::computeDigitsTime_(RawDigitVector& digits, SampaTimeFrameStart uint32_t bc = sampaTimeFrameStart.mBunchCrossing; uint32_t orbit = sampaTimeFrameStart.mOrbit; tfTime = DataDecoder::digitsTimeDiff(orbit, bc, info.orbit, info.getBXTime()); + if (tfTime >= bcInTF) { + LOGP(warning, "DE {} PAD {}: time {} exceeds TF length", d.getDetID(), d.getPadID(), tfTime); + } if (debug) { - std::cout << "\n[computeDigitsTime_] hit " << info.orbit << "," << info.getBXTime() + std::cout << "\n[computeDigitsTime] hit " << info.orbit << "," << info.getBXTime() << " tfTime(1) " << orbit << "," << bc << " diff " << tfTime << std::endl; } setDigitTime(d, tfTime); @@ -422,6 +486,8 @@ void DataDecoder::computeDigitsTime_(RawDigitVector& digits, SampaTimeFrameStart } } +//_________________________________________________________________________________________________ + static std::string readFileContent(std::string& filename) { std::string content; @@ -431,11 +497,11 @@ static std::string readFileContent(std::string& filename) content += s; content += "\n"; } - std::cout << "readFileContent(" << filename << "):" << std::endl - << content << std::endl; return content; }; +//_________________________________________________________________________________________________ + void DataDecoder::initElec2DetMapper(std::string filename) { if (filename.empty()) { @@ -452,6 +518,8 @@ void DataDecoder::initElec2DetMapper(std::string filename) } }; +//_________________________________________________________________________________________________ + void DataDecoder::initFee2SolarMapper(std::string filename) { if (filename.empty()) { @@ -469,6 +537,7 @@ void DataDecoder::initFee2SolarMapper(std::string filename) }; //_________________________________________________________________________________________________ + void DataDecoder::init() { for (int i = 0; i < 64; i++) { @@ -486,6 +555,7 @@ void DataDecoder::init() }; //_________________________________________________________________________________________________ + void DataDecoder::reset() { mDigits.clear(); diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/testDigitsTimeComputation.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/testDigitsTimeComputation.cxx index bb0d61c33e30e..15b05ed9b6f40 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/testDigitsTimeComputation.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/testDigitsTimeComputation.cxx @@ -85,7 +85,7 @@ BOOST_AUTO_TEST_CASE(ComputeDigitsTime) DataDecoder::SampaTimeFrameStart sampaTimeFrameStart{tfOrbit, tfBunchCrossing}; - DataDecoder::computeDigitsTime_(digits, sampaTimeFrameStart, false); + DataDecoder::computeDigitsTime(digits, sampaTimeFrameStart, false); int32_t digitTime = static_cast(bunchCrossing) + static_cast(sampaTime * 4) - static_cast(tfBunchCrossing); @@ -106,7 +106,7 @@ BOOST_AUTO_TEST_CASE(ComputeDigitsTimeWithRollover) DataDecoder::SampaTimeFrameStart sampaTimeFrameStart{tfOrbit, tfBunchCrossing}; - DataDecoder::computeDigitsTime_(digits, sampaTimeFrameStart, false); + DataDecoder::computeDigitsTime(digits, sampaTimeFrameStart, false); int32_t digitTime = static_cast(bunchCrossing) + static_cast(sampaTime * 4) - static_cast(tfBunchCrossing) + BCROLLOVER; @@ -127,7 +127,7 @@ BOOST_AUTO_TEST_CASE(ComputeDigitsTimeWithRollover2) DataDecoder::SampaTimeFrameStart sampaTimeFrameStart{tfOrbit, tfBunchCrossing}; - DataDecoder::computeDigitsTime_(digits, sampaTimeFrameStart, false); + DataDecoder::computeDigitsTime(digits, sampaTimeFrameStart, false); int32_t digitTime = static_cast(bunchCrossing) + static_cast(sampaTime * 4) - static_cast(tfBunchCrossing) - BCROLLOVER; From bb2bcc35e03b9b71879b9dd63b952081c2f2bad7 Mon Sep 17 00:00:00 2001 From: aferrero2707 Date: Wed, 16 Jun 2021 18:09:45 +0200 Subject: [PATCH 112/314] [MCH] digits merging implementation This commit introduces the code that merges digits that belong to the same detector signal. The merging is performed when the first ADC sample of a given digit follows immediately the last ADC sample of an existing digit for the same readout channel. --- .../include/MCHRawDecoder/DataDecoder.h | 15 ++++ .../MUON/MCH/Raw/Decoder/src/DataDecoder.cxx | 82 +++++++++++++++++++ 2 files changed, 97 insertions(+) diff --git a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h index 42ad98566a2ff..09933c141ee9d 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h +++ b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h @@ -159,6 +159,21 @@ class DataDecoder void dumpDigits(); bool getPadMapping(const DsElecId& dsElecId, DualSampaChannelId channel, int& deId, int& dsIddet, int& padId); bool addDigit(const DsElecId& dsElecId, DualSampaChannelId channel, const o2::mch::raw::SampaCluster& sc); + int32_t getMergerChannelId(const DsElecId& dsElecId, DualSampaChannelId channel); + void updateMergerRecord(uint32_t mergerChannelId, uint32_t digitId); + bool mergeDigits(uint32_t mergerChannelId, o2::mch::raw::SampaCluster& sc); + + // structure that stores the index of the last decoded digit for a given readout channel, + // as well as the time stamp of the last ADC sample of the digit + struct MergerChannelRecord { + MergerChannelRecord() = default; + int32_t digitId{-1}; + int32_t bcEnd{-1}; + }; + static constexpr uint32_t sMaxSolarId = 200 * 8 - 1; + static constexpr uint32_t sReadoutChannelsNum = (sMaxSolarId + 1) * 40 * 64; + // table storing the digits merging information for each readout channel in the MCH system + std::array mMergerRecords; ///< merger records for all MCH readout channels Elec2DetMapper mElec2Det{nullptr}; ///< front-end electronics mapping FeeLink2SolarMapper mFee2Solar{nullptr}; ///< CRU electronics mapping diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx index ebed4a86911cd..1506a5bb185fa 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx @@ -259,6 +259,78 @@ void dumpOrbits(const std::unordered_set& mOrbits) //_________________________________________________________________________________________________ +int32_t DataDecoder::getMergerChannelId(const DsElecId& dsElecId, DualSampaChannelId channel) +{ + auto solarId = dsElecId.solarId(); + uint32_t dsId = static_cast(dsElecId.elinkGroupId()) * 5 + dsElecId.elinkIndexInGroup(); + if (solarId > DataDecoder::sMaxSolarId || dsId >= 40) { + return -1; + } + + return (solarId * 40 * 64) + (dsId * 64) + channel; +} + +//_________________________________________________________________________________________________ + +bool DataDecoder::mergeDigits(uint32_t mergerChannelId, o2::mch::raw::SampaCluster& sc) +{ + static constexpr uint32_t BCROLLOVER = (1 << 20); + static constexpr uint32_t ONEADCCLOCK = 4; + static constexpr uint32_t MAXNOFSAMPLES = 0x3FF; + static constexpr uint32_t TWENTYBITSATONE = 0xFFFFF; + + // only digits that start at the beginning of the SAMPA window can be merged + if (sc.sampaTime != 0) { + return false; + } + + auto& mergerCh = mMergerRecords.at(mergerChannelId); + + // if there is not previous digit for this channel then no merging is possible + if (mergerCh.digitId < 0) { + return false; + } + + // time stamp of the digits to be merged + uint32_t bcStart = sc.bunchCrossing; + // correct for bunch crossing counter rollover if needed + if (bcStart < mergerCh.bcEnd) { + bcStart += BCROLLOVER; + } + + // if the new digit starts just one ADC clock cycle after the end of the previous, + // the it can be merged into the existing one + if ((bcStart - mergerCh.bcEnd) != ONEADCCLOCK) { + return false; + } + + // add total charge and number of samples to existing digit + auto& digit = mDigits.at(mergerCh.digitId).digit; + digit.setADC(digit.getADC() + sc.sum()); + uint32_t newNofSamples = digit.getNofSamples() + sc.nofSamples(); + if (newNofSamples > MAXNOFSAMPLES) { + newNofSamples = MAXNOFSAMPLES; + } + digit.setNofSamples(newNofSamples); + + // update the time stamp of the signal's end + mergerCh.bcEnd = (bcStart & TWENTYBITSATONE) + (sc.nofSamples() - 1) * 4; + + return true; +} + +//_________________________________________________________________________________________________ + +void DataDecoder::updateMergerRecord(uint32_t mergerChannelId, uint32_t digitId) +{ + auto& mergerCh = mMergerRecords.at(mergerChannelId); + auto& digit = mDigits.at(digitId); + mergerCh.digitId = digitId; + mergerCh.bcEnd = digit.info.bunchCrossing + (digit.info.sampaTime + digit.digit.getNofSamples() - 1) * 4; +} + +//_________________________________________________________________________________________________ + bool DataDecoder::getPadMapping(const DsElecId& dsElecId, DualSampaChannelId channel, int& deId, int& dsIddet, int& padId) { deId = -1; @@ -381,9 +453,15 @@ void DataDecoder::decodePage(gsl::span page) return; } + if (mergeDigits(mergerChannelId, sc)) { + return; + } + if (!addDigit(dsElecId, channel, sc)) { return; } + + updateMergerRecord(mergerChannelId, mDigits.size() - 1); }; patchPage(page, mDebug); @@ -560,6 +638,10 @@ void DataDecoder::reset() { mDigits.clear(); mOrbits.clear(); + for (auto& mergerCh : mMergerRecords) { + mergerCh.digitId = -1; + mergerCh.bcEnd = -1; + } } } // namespace raw From 4efb836646fa63bf76c24ece5ce6ebea899fbe6e Mon Sep 17 00:00:00 2001 From: aferrero2707 Date: Mon, 21 Jun 2021 11:07:12 +0200 Subject: [PATCH 113/314] [MCH] make sure the digits merge table is allocated on the heap This also fixes a segfault in the ClosureCoDec test --- .../MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h | 2 +- Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h index 09933c141ee9d..9452e24b3f6d1 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h +++ b/Detectors/MUON/MCH/Raw/Decoder/include/MCHRawDecoder/DataDecoder.h @@ -173,7 +173,7 @@ class DataDecoder static constexpr uint32_t sMaxSolarId = 200 * 8 - 1; static constexpr uint32_t sReadoutChannelsNum = (sMaxSolarId + 1) * 40 * 64; // table storing the digits merging information for each readout channel in the MCH system - std::array mMergerRecords; ///< merger records for all MCH readout channels + std::vector mMergerRecords{sReadoutChannelsNum}; ///< merger records for all MCH readout channels Elec2DetMapper mElec2Det{nullptr}; ///< front-end electronics mapping FeeLink2SolarMapper mFee2Solar{nullptr}; ///< CRU electronics mapping diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx index 1506a5bb185fa..90e638e0c6870 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx @@ -284,7 +284,7 @@ bool DataDecoder::mergeDigits(uint32_t mergerChannelId, o2::mch::raw::SampaClust return false; } - auto& mergerCh = mMergerRecords.at(mergerChannelId); + auto& mergerCh = mMergerRecords[mergerChannelId]; // if there is not previous digit for this channel then no merging is possible if (mergerCh.digitId < 0) { @@ -305,7 +305,7 @@ bool DataDecoder::mergeDigits(uint32_t mergerChannelId, o2::mch::raw::SampaClust } // add total charge and number of samples to existing digit - auto& digit = mDigits.at(mergerCh.digitId).digit; + auto& digit = mDigits[mergerCh.digitId].digit; digit.setADC(digit.getADC() + sc.sum()); uint32_t newNofSamples = digit.getNofSamples() + sc.nofSamples(); if (newNofSamples > MAXNOFSAMPLES) { @@ -323,8 +323,8 @@ bool DataDecoder::mergeDigits(uint32_t mergerChannelId, o2::mch::raw::SampaClust void DataDecoder::updateMergerRecord(uint32_t mergerChannelId, uint32_t digitId) { - auto& mergerCh = mMergerRecords.at(mergerChannelId); - auto& digit = mDigits.at(digitId); + auto& mergerCh = mMergerRecords[mergerChannelId]; + auto& digit = mDigits[digitId]; mergerCh.digitId = digitId; mergerCh.bcEnd = digit.info.bunchCrossing + (digit.info.sampaTime + digit.digit.getNofSamples() - 1) * 4; } From 79c3430b3856302de79c08b4ba56db476cbcb047 Mon Sep 17 00:00:00 2001 From: aferrero2707 Date: Sun, 4 Jul 2021 14:53:33 +0200 Subject: [PATCH 114/314] [MCH] added check for DS channel overflow --- Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx b/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx index 90e638e0c6870..08b3657a2ea08 100644 --- a/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx +++ b/Detectors/MUON/MCH/Raw/Decoder/src/DataDecoder.cxx @@ -263,7 +263,7 @@ int32_t DataDecoder::getMergerChannelId(const DsElecId& dsElecId, DualSampaChann { auto solarId = dsElecId.solarId(); uint32_t dsId = static_cast(dsElecId.elinkGroupId()) * 5 + dsElecId.elinkIndexInGroup(); - if (solarId > DataDecoder::sMaxSolarId || dsId >= 40) { + if (solarId > DataDecoder::sMaxSolarId || dsId >= 40 || channel >= 64) { return -1; } From e6b8f13cf88124980d01eb8709f0b8c655c255dd Mon Sep 17 00:00:00 2001 From: Piotr Konopka Date: Thu, 8 Jul 2021 10:47:29 +0200 Subject: [PATCH 115/314] [QC-134] Moving window in Mergers (#6456) --- .../include/Mergers/FullHistoryMerger.h | 2 ++ .../include/Mergers/IntegratingMerger.h | 2 ++ .../Mergers/include/Mergers/MergerConfig.h | 9 ++++-- Utilities/Mergers/src/FullHistoryMerger.cxx | 30 +++++++++++++++++-- Utilities/Mergers/src/IntegratingMerger.cxx | 20 ++++++++++--- .../src/MergerInfrastructureBuilder.cxx | 6 ++-- 6 files changed, 57 insertions(+), 12 deletions(-) diff --git a/Utilities/Mergers/include/Mergers/FullHistoryMerger.h b/Utilities/Mergers/include/Mergers/FullHistoryMerger.h index 8a53a4f6a8d4a..7dc9a491eaec1 100644 --- a/Utilities/Mergers/include/Mergers/FullHistoryMerger.h +++ b/Utilities/Mergers/include/Mergers/FullHistoryMerger.h @@ -55,6 +55,7 @@ class FullHistoryMerger : public framework::Task MergerConfig mConfig; std::unique_ptr mCollector; + int mCyclesSinceReset = 0; // stats int mTotalObjectsMerged = 0; @@ -66,6 +67,7 @@ class FullHistoryMerger : public framework::Task void updateCache(const framework::DataRef& ref); void mergeCache(); void publish(framework::DataAllocator& allocator); + void clear(); }; } // namespace o2::mergers diff --git a/Utilities/Mergers/include/Mergers/IntegratingMerger.h b/Utilities/Mergers/include/Mergers/IntegratingMerger.h index 8d946c4201237..99113b1058d89 100644 --- a/Utilities/Mergers/include/Mergers/IntegratingMerger.h +++ b/Utilities/Mergers/include/Mergers/IntegratingMerger.h @@ -53,12 +53,14 @@ class IntegratingMerger : public framework::Task private: void publish(framework::DataAllocator& allocator); + void clear(); private: header::DataHeader::SubSpecificationType mSubSpec; ObjectStore mMergedObject = std::monostate{}; MergerConfig mConfig; std::unique_ptr mCollector; + int mCyclesSinceReset = 0; // stats int mTotalDeltasMerged = 0; diff --git a/Utilities/Mergers/include/Mergers/MergerConfig.h b/Utilities/Mergers/include/Mergers/MergerConfig.h index c8a896e8fbbea..9e027336d20ed 100644 --- a/Utilities/Mergers/include/Mergers/MergerConfig.h +++ b/Utilities/Mergers/include/Mergers/MergerConfig.h @@ -35,8 +35,11 @@ enum class MergedObjectTimespan { FullHistory, // Merged object should be an sum of differences received after last publication. // Merged object is reset after published. It won't produce meaningful results - // when InputObjectsTimespan::FullHstory is set. - LastDifference + // when InputObjectsTimespan::FullHistory is set. + LastDifference, + // Generalisation of the two above. Resets all objects in Mergers after n cycles (0 - infinite). + // The the above will be removed once we switch to NCycles in QC. + NCycles }; enum class PublicationDecision { @@ -57,7 +60,7 @@ struct ConfigEntry { // \brief MergerAlgorithm configuration structure. Default configuration should work in most cases, out of the box. struct MergerConfig { ConfigEntry inputObjectTimespan = {InputObjectsTimespan::FullHistory}; - ConfigEntry mergedObjectTimespan = {MergedObjectTimespan::FullHistory}; + ConfigEntry mergedObjectTimespan = {MergedObjectTimespan::FullHistory}; ConfigEntry publicationDecision = {PublicationDecision::EachNSeconds, 10}; ConfigEntry topologySize = {TopologySize::NumberOfLayers, 1}; std::string monitoringUrl = "infologger:///debug?qc"; diff --git a/Utilities/Mergers/src/FullHistoryMerger.cxx b/Utilities/Mergers/src/FullHistoryMerger.cxx index c2bf40546864a..8f88ff2aee5b8 100644 --- a/Utilities/Mergers/src/FullHistoryMerger.cxx +++ b/Utilities/Mergers/src/FullHistoryMerger.cxx @@ -46,6 +46,7 @@ FullHistoryMerger::~FullHistoryMerger() void FullHistoryMerger::init(framework::InitContext& ictx) { + mCyclesSinceReset = 0; mCollector = monitoring::MonitoringFactory::Get(mConfig.monitoringUrl); mCollector->addGlobalTag(monitoring::tags::Key::Subsystem, monitoring::tags::Value::Mergers); } @@ -63,11 +64,36 @@ void FullHistoryMerger::run(framework::ProcessingContext& ctx) } if (ctx.inputs().isValid("timer-publish") && !mFirstObjectSerialized.first.empty()) { + mCyclesSinceReset++; mergeCache(); publish(ctx.outputs()); + + if (mConfig.mergedObjectTimespan.value == MergedObjectTimespan::LastDifference || + mConfig.mergedObjectTimespan.value == MergedObjectTimespan::NCycles && mConfig.mergedObjectTimespan.param == mCyclesSinceReset) { + clear(); + } } } +// I am not calling it reset(), because it does not have to be performed during the FairMQs reset. +void FullHistoryMerger::clear() +{ + mFirstObjectSerialized.first.clear(); + delete mFirstObjectSerialized.second.header; + delete mFirstObjectSerialized.second.payload; + delete mFirstObjectSerialized.second.spec; + mFirstObjectSerialized.second.header = nullptr; + mFirstObjectSerialized.second.payload = nullptr; + mFirstObjectSerialized.second.spec = nullptr; + mMergedObject = std::monostate{}; + mCache.clear(); + mCyclesSinceReset = 0; + mTotalObjectsMerged = 0; + mObjectsMerged = 0; + mTotalUpdatesReceived = 0; + mUpdatesReceived = 0; +} + void FullHistoryMerger::updateCache(const DataRef& ref) { auto* dh = get(ref.header); @@ -79,7 +105,6 @@ void FullHistoryMerger::updateCache(const DataRef& ref) // We store one object in the serialized form, so we can take it as the first object to be merged (multiple times). // If we kept it deserialized, we would need to require implementing a clone() method in MergeInterface. - // Clang-Tidy: 'if' statement is unnecessary; deleting null pointer has no effect delete mFirstObjectSerialized.second.spec; delete mFirstObjectSerialized.second.header; delete mFirstObjectSerialized.second.payload; @@ -130,7 +155,7 @@ void FullHistoryMerger::publish(framework::DataAllocator& allocator) { // todo see if std::visit is faster here if (std::holds_alternative(mMergedObject)) { - LOG(INFO) << "Nothing to publish yet"; + LOG(INFO) << "No objects received since start or reset, nothing to publish"; } else if (std::holds_alternative(mMergedObject)) { allocator.snapshot(framework::OutputRef{MergerBuilder::mergerOutputBinding(), mSubSpec}, *std::get(mMergedObject)); @@ -151,6 +176,7 @@ void FullHistoryMerger::publish(framework::DataAllocator& allocator) mCollector->send({mObjectsMerged, "objects_merged_since_last_publication"}); mCollector->send({mTotalUpdatesReceived, "total_updates_received"}, monitoring::DerivedMetricMode::RATE); mCollector->send({mUpdatesReceived, "updates_received_since_last_publication"}); + mCollector->send({mCyclesSinceReset, "cycles_since_reset"}); mObjectsMerged = 0; mUpdatesReceived = 0; } diff --git a/Utilities/Mergers/src/IntegratingMerger.cxx b/Utilities/Mergers/src/IntegratingMerger.cxx index cd0d54683506f..dce3f4256f881 100644 --- a/Utilities/Mergers/src/IntegratingMerger.cxx +++ b/Utilities/Mergers/src/IntegratingMerger.cxx @@ -37,6 +37,7 @@ IntegratingMerger::IntegratingMerger(const MergerConfig& config, const header::D void IntegratingMerger::init(framework::InitContext& ictx) { + mCyclesSinceReset = 0; mCollector = monitoring::MonitoringFactory::Get(mConfig.monitoringUrl); mCollector->addGlobalTag(monitoring::tags::Key::Subsystem, monitoring::tags::Value::Mergers); } @@ -69,21 +70,31 @@ void IntegratingMerger::run(framework::ProcessingContext& ctx) } if (ctx.inputs().isValid("timer-publish")) { - + mCyclesSinceReset++; publish(ctx.outputs()); - if (mConfig.mergedObjectTimespan.value == MergedObjectTimespan::LastDifference) { - mMergedObject = std::monostate{}; + if (mConfig.mergedObjectTimespan.value == MergedObjectTimespan::LastDifference || + mConfig.mergedObjectTimespan.value == MergedObjectTimespan::NCycles && mConfig.mergedObjectTimespan.param == mCyclesSinceReset) { + clear(); } } } +// I am not calling it reset(), because it does not have to be performed during the FairMQs reset. +void IntegratingMerger::clear() +{ + mMergedObject = std::monostate{}; + mCyclesSinceReset = 0; + mTotalDeltasMerged = 0; + mDeltasMerged = 0; +} + void IntegratingMerger::publish(framework::DataAllocator& allocator) { mTotalDeltasMerged += mDeltasMerged; if (std::holds_alternative(mMergedObject)) { - LOG(INFO) << "Nothing to publish yet"; + LOG(INFO) << "No objects received since start or reset, nothing to publish"; } else if (std::holds_alternative(mMergedObject)) { allocator.snapshot(framework::OutputRef{MergerBuilder::mergerOutputBinding(), mSubSpec}, *std::get(mMergedObject)); @@ -100,6 +111,7 @@ void IntegratingMerger::publish(framework::DataAllocator& allocator) mCollector->send({mTotalDeltasMerged, "total_deltas_merged"}, monitoring::DerivedMetricMode::RATE); mCollector->send({mDeltasMerged, "deltas_merged_since_last_publication"}); + mCollector->send({mCyclesSinceReset, "cycles_since_reset"}); mDeltasMerged = 0; } diff --git a/Utilities/Mergers/src/MergerInfrastructureBuilder.cxx b/Utilities/Mergers/src/MergerInfrastructureBuilder.cxx index 7feff470ebe43..121f793cd3aa7 100644 --- a/Utilities/Mergers/src/MergerInfrastructureBuilder.cxx +++ b/Utilities/Mergers/src/MergerInfrastructureBuilder.cxx @@ -105,9 +105,9 @@ framework::WorkflowSpec MergerInfrastructureBuilder::generateInfrastructure() size_t inputsPerMergerRemainder = layerInputs.size() % numberOfMergers; MergerConfig layerConfig = mConfig; - if (layer > 1 && mConfig.inputObjectTimespan.value == InputObjectsTimespan::LastDifference) { - layerConfig.inputObjectTimespan = {InputObjectsTimespan::FullHistory}; // in LastDifference mode only the first layer should integrate - layerConfig.mergedObjectTimespan = {MergedObjectTimespan::LastDifference}; // and objects that are merged should not be used again + if (layer < mergersPerLayer.size() - 1) { + // in intermediate layers we should reset the results, so the same data is not added many times. + layerConfig.mergedObjectTimespan = {MergedObjectTimespan::NCycles, 1}; } mergerBuilder.setConfig(layerConfig); From 381ca553fae0627eb432fcb65fb5a67f8f6742e1 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Thu, 8 Jul 2021 11:04:42 +0200 Subject: [PATCH 116/314] DPL Analysis: demote shm accounting messages (#6606) --- Framework/Core/src/ArrowSupport.cxx | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Framework/Core/src/ArrowSupport.cxx b/Framework/Core/src/ArrowSupport.cxx index 58880f33e6ee5..9ef52c212d5bb 100644 --- a/Framework/Core/src/ArrowSupport.cxx +++ b/Framework/Core/src/ArrowSupport.cxx @@ -310,7 +310,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() } auto dh = o2::header::get(input.header); if (dh->serialization != o2::header::gSerializationMethodArrow) { - LOGP(INFO, "Message {}/{} is not of kind arrow, therefore we are not accounting its shared memory", dh->dataOrigin, dh->dataDescription); + LOGP(DEBUG, "Message {}/{} is not of kind arrow, therefore we are not accounting its shared memory", dh->dataOrigin, dh->dataDescription); continue; } auto dph = o2::header::get(input.header); @@ -322,15 +322,15 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() } } if (forwarded) { - LOGP(INFO, "Message {}/{} is forwarded so we are not returning its memory.", dh->dataOrigin, dh->dataDescription); + LOGP(DEBUG, "Message {}/{} is forwarded so we are not returning its memory.", dh->dataOrigin, dh->dataDescription); continue; } - LOGP(INFO, "Message {}/{} is being deleted. We will return {}MB.", dh->dataOrigin, dh->dataDescription, dh->payloadSize / 1000000.); + LOGP(DEBUG, "Message {}/{} is being deleted. We will return {}MB.", dh->dataOrigin, dh->dataDescription, dh->payloadSize / 1000000.); totalBytes += dh->payloadSize; totalMessages += 1; } arrow->updateBytesDestroyed(totalBytes); - LOGP(INFO, "{}MB bytes being given back to reader, totaling {}MB", totalBytes / 1000000., arrow->bytesDestroyed() / 1000000.); + LOGP(DEBUG, "{}MB bytes being given back to reader, totaling {}MB", totalBytes / 1000000., arrow->bytesDestroyed() / 1000000.); arrow->updateMessagesDestroyed(totalMessages); auto& monitoring = ctx.services().get(); monitoring.send(Metric{(uint64_t)arrow->bytesDestroyed(), "arrow-bytes-destroyed"}.addTag(Key::Subsystem, monitoring::tags::Value::DPL)); From 2360d52d0484a1880a77e519cdfc6705d04394a3 Mon Sep 17 00:00:00 2001 From: Matteo Concas Date: Thu, 8 Jul 2021 11:36:07 +0200 Subject: [PATCH 117/314] Fix some of the ALICE 3 geometry issues (#6562) * Fix length and thickness of TRK * Update ALICE 3 beam pipe default length --- .../ALICE3/TRK/simulation/src/Detector.cxx | 29 +++++++++---------- macro/build_geometry.C | 2 +- 2 files changed, 15 insertions(+), 16 deletions(-) diff --git a/Detectors/Upgrades/ALICE3/TRK/simulation/src/Detector.cxx b/Detectors/Upgrades/ALICE3/TRK/simulation/src/Detector.cxx index b998050f9440d..482ee207f37b8 100644 --- a/Detectors/Upgrades/ALICE3/TRK/simulation/src/Detector.cxx +++ b/Detectors/Upgrades/ALICE3/TRK/simulation/src/Detector.cxx @@ -111,22 +111,21 @@ void Detector::configITS(Detector* its) std::vector> layers; const int nLayers{12}; - layers.emplace_back(std::array{0.5f, 15.f}); - layers.emplace_back(std::array{1.2f, 15.f}); - layers.emplace_back(std::array{2.5f, 15.f}); - layers.emplace_back(std::array{3.75f, 62.f}); - layers.emplace_back(std::array{7.f, 62.f}); - layers.emplace_back(std::array{12.f, 62.f}); - layers.emplace_back(std::array{20.f, 62.f}); - layers.emplace_back(std::array{30.f, 62.f}); - layers.emplace_back(std::array{45.f, 132.f}); - layers.emplace_back(std::array{60.f, 132.f}); - layers.emplace_back(std::array{80.f, 132.f}); - layers.emplace_back(std::array{100.f, 132.f}); - - std::array sensorThicknesses = {50.e-4, 50.e-4, 50.e-4, 50.e-4, 50.e-3, 50.e-3, 50.e-3, 50.e-3, 50.e-3, 50.e-3, 50.e-3, 50.e-3}; + layers.emplace_back(std::array{0.5f, 30.f}); + layers.emplace_back(std::array{1.2f, 30.f}); + layers.emplace_back(std::array{2.5f, 30.f}); + layers.emplace_back(std::array{3.75f, 124.f}); + layers.emplace_back(std::array{7.f, 124.f}); + layers.emplace_back(std::array{12.f, 124.f}); + layers.emplace_back(std::array{20.f, 124.f}); + layers.emplace_back(std::array{30.f, 124.f}); + layers.emplace_back(std::array{45.f, 264.f}); + layers.emplace_back(std::array{60.f, 264.f}); + layers.emplace_back(std::array{80.f, 264.f}); + layers.emplace_back(std::array{100.f, 264.f}); + + std::array sensorThicknesses = {100.e-4, 100.e-4, 100.e-4, 100.e-4, 100.e-3, 100.e-3, 100.e-3, 100.e-3, 100.e-3, 100.e-3, 100.e-3, 100.e-3}; its->setStaveModelOB(o2::trk::Detector::kOBModel2); - // its->createOuterBarrel(false); auto idLayer{0}; for (auto& layerData : layers) { diff --git a/macro/build_geometry.C b/macro/build_geometry.C index fc3e02f2099b1..0f6e749bfb407 100644 --- a/macro/build_geometry.C +++ b/macro/build_geometry.C @@ -144,7 +144,7 @@ void build_geometry(FairRunSim* run = nullptr) #ifdef ENABLE_UPGRADES // upgraded beampipe at the interaction point (IP) if (isActivated("A3IP")) { - run->AddModule(new o2::passive::Alice3Pipe("A3IP", "Alice 3 beam pipe", !isActivated("TRK"), 0.48f, 0.015f, 44.4f, 3.7f, 0.05f, 44.4f)); + run->AddModule(new o2::passive::Alice3Pipe("A3IP", "Alice 3 beam pipe", !isActivated("TRK"), 0.48f, 0.015f, 1000.f, 3.7f, 0.05f, 1000.f)); } #endif From 5dbcf2f73f8a2b6eee26b3be1b2f4bf302faf6da Mon Sep 17 00:00:00 2001 From: Alla Maevskaya Date: Tue, 6 Jul 2021 10:46:12 +0300 Subject: [PATCH 118/314] FT0 module's positions according drawings --- .../FIT/FT0/base/include/FT0Base/Geometry.h | 4 +-- Detectors/FIT/FT0/base/src/Geometry.cxx | 32 ++++++++++++------- .../include/FT0Simulation/Detector.h | 18 +++-------- Detectors/FIT/FT0/simulation/src/Detector.cxx | 1 - 4 files changed, 27 insertions(+), 28 deletions(-) diff --git a/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h b/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h index bbf9474613b7d..6d41589545700 100644 --- a/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h +++ b/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h @@ -49,8 +49,8 @@ class Geometry static constexpr int Nsensors = 208; // number of channels static constexpr int NCellsA = 24; // number of radiatiors on A side static constexpr int NCellsC = 28; // number of radiatiors on C side - static constexpr float ZdetA = 335.5; // number of radiatiors on A side - static constexpr float ZdetC = 82; // number of radiatiors on C side + static constexpr float ZdetA = 335.5; // Z position of center volume on A side + static constexpr float ZdetC = 82; // Z position of center volume on C side static constexpr float ChannelWidth = 13.02; // channel width in ps static constexpr float ChannelWidthInverse = 0.076804916; // channel width in ps inverse static constexpr o2::detectors::DetID::ID getDetID() { return o2::detectors::DetID::FT0; } diff --git a/Detectors/FIT/FT0/base/src/Geometry.cxx b/Detectors/FIT/FT0/base/src/Geometry.cxx index 2aad6bb2c32f7..09eead0a77a41 100644 --- a/Detectors/FIT/FT0/base/src/Geometry.cxx +++ b/Detectors/FIT/FT0/base/src/Geometry.cxx @@ -65,19 +65,27 @@ void Geometry::setCsideModules() for (Int_t i = 0; i < 6; i++) { gridpoints[i] = crad * TMath::Sin((1 - 1 / (2 * TMath::Abs(grdin[i]))) * grdin[i] * btta); } + Double_t xi[NCellsC] = {-15.038271418735729, 15.038271418735729, + -15.003757581112167, 15.003757581112167, -9.02690018974363, + 9.02690018974363, -9.026897413747076, 9.026897413747076, + -9.026896531935773, 9.026896531935773, -3.0004568618531313, + 3.0004568618531313, -3.0270795197907225, 3.0270795197907225, + 3.0003978432927543, -3.0003978432927543, 3.0270569670429572, + -3.0270569670429572, 9.026750365564254, -9.026750365564254, + 9.026837450695885, -9.026837450695885, 9.026849243816981, + -9.026849243816981, 15.038129472387304, -15.038129472387304, + 15.003621961057961, -15.003621961057961}; + Double_t yi[NCellsC] = {3.1599494336464455, -3.1599494336464455, + 9.165191680982874, -9.165191680982874, 3.1383331772537426, + -3.1383331772537426, 9.165226363918643, -9.165226363918643, + 15.141616002932361, -15.141616002932361, 9.16517861649866, + -9.16517861649866, 15.188854859073416, -15.188854859073416, + 9.165053319552113, -9.165053319552113, 15.188703787345304, + -15.188703787345304, 3.138263189805292, -3.138263189805292, + 9.165104089644917, -9.165104089644917, 15.141494417823818, + -15.141494417823818, 3.1599158563428644, -3.1599158563428644, + 9.165116302773846, -9.165116302773846}; - Double_t xi[NCellsC] = {gridpoints[1], gridpoints[2], gridpoints[3], gridpoints[4], gridpoints[0], - gridpoints[1], gridpoints[2], gridpoints[3], gridpoints[4], gridpoints[5], - gridpoints[0], gridpoints[1], gridpoints[4], gridpoints[5], gridpoints[0], - gridpoints[1], gridpoints[4], gridpoints[5], gridpoints[0], gridpoints[1], - gridpoints[2], gridpoints[3], gridpoints[4], gridpoints[5], gridpoints[1], - gridpoints[2], gridpoints[3], gridpoints[4]}; - Double_t yi[NCellsC] = {gridpoints[5], gridpoints[5], gridpoints[5], gridpoints[5], gridpoints[4], - gridpoints[4], gridpoints[4], gridpoints[4], gridpoints[4], gridpoints[4], - gridpoints[3], gridpoints[3], gridpoints[3], gridpoints[3], gridpoints[2], - gridpoints[2], gridpoints[2], gridpoints[2], gridpoints[1], gridpoints[1], - gridpoints[1], gridpoints[1], gridpoints[1], gridpoints[1], gridpoints[0], - gridpoints[0], gridpoints[0], gridpoints[0]}; Double_t zi[NCellsC]; for (Int_t i = 0; i < NCellsC; i++) { zi[i] = TMath::Sqrt(TMath::Power(crad, 2) - TMath::Power(xi[i], 2) - TMath::Power(yi[i], 2)); diff --git a/Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h b/Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h index 2545f7a8eb063..ac5c76526d088 100644 --- a/Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h +++ b/Detectors/FIT/FT0/simulation/include/FT0Simulation/Detector.h @@ -263,19 +263,11 @@ class Detector : public o2::base::DetImpl int mSim2LUT[Geometry::Nchannels]; - Float_t mPosModuleAx[Geometry::NCellsA] = {-12.2, -6.1, 0, 6.1, 12.2, -12.2, -6.1, 0, - 6.1, 12.2, -13.3743, -7.274299999999999, - 7.274299999999999, 13.3743, -12.2, -6.1, 0, - 6.1, 12.2, -12.2, -6.1, 0, 6.1, 12.2}; - - Float_t mPosModuleAy[Geometry::NCellsA] = {12.2, 12.2, 13.53, 12.2, 12.2, 6.1, 6.1, - 7.43, 6.1, 6.1, 0, 0, 0, 0, -6.1, -6.1, - -7.43, -6.1, -6.1, -12.2, -12.2, -13.53, - -12.2, -12.2}; - - float mPosModuleCx[Geometry::NCellsC]; - float mPosModuleCy[Geometry::NCellsC]; - float mPosModuleCz[Geometry::NCellsC]; + Double_t mPosModuleAx[Geometry::NCellsA]; + Double_t mPosModuleAy[Geometry::NCellsA]; + Double_t mPosModuleCx[Geometry::NCellsC]; + Double_t mPosModuleCy[Geometry::NCellsC]; + Double_t mPosModuleCz[Geometry::NCellsC]; Float_t mStartC[3] = {20., 20, 5.5}; Float_t mStartA[3] = {20., 20., 5}; Float_t mInStart[3] = {2.9491, 2.9491, 2.5}; diff --git a/Detectors/FIT/FT0/simulation/src/Detector.cxx b/Detectors/FIT/FT0/simulation/src/Detector.cxx index edfafbe395057..f6ec732eaaab2 100644 --- a/Detectors/FIT/FT0/simulation/src/Detector.cxx +++ b/Detectors/FIT/FT0/simulation/src/Detector.cxx @@ -47,7 +47,6 @@ Detector::Detector(Bool_t Active) { // Gegeo = GetGeometry() ; - // TString gn(geo->GetName()); } From 9eea0b36d9d435bc3a01567f3be8f2353ba29c92 Mon Sep 17 00:00:00 2001 From: Alla Maevskaya Date: Tue, 6 Jul 2021 10:47:27 +0300 Subject: [PATCH 119/314] FV0 alignment --- Detectors/FIT/FV0/base/CMakeLists.txt | 6 +- .../FIT/FV0/base/include/FV0Base/Geometry.h | 16 ++++- Detectors/FIT/FV0/macro/CMakeLists.txt | 5 +- Detectors/FIT/FV0/macro/FV0Misaligner.C | 66 +++++++++++++++++++ .../include/FV0Simulation/Detector.h | 3 + Detectors/FIT/FV0/simulation/src/Detector.cxx | 26 ++++++++ 6 files changed, 117 insertions(+), 5 deletions(-) create mode 100644 Detectors/FIT/FV0/macro/FV0Misaligner.C diff --git a/Detectors/FIT/FV0/base/CMakeLists.txt b/Detectors/FIT/FV0/base/CMakeLists.txt index fe2b7e763bbfa..b8faf38fb070c 100644 --- a/Detectors/FIT/FV0/base/CMakeLists.txt +++ b/Detectors/FIT/FV0/base/CMakeLists.txt @@ -11,9 +11,11 @@ o2_add_library(FV0Base SOURCES src/Geometry.cxx - PUBLIC_LINK_LIBRARIES ROOT::Geom + PUBLIC_LINK_LIBRARIES ROOT::Geom FairRoot::Base - O2::FrameworkLogger) + O2::FrameworkLogger + O2::DetectorsBase + O2::DetectorsCommonDataFormats) o2_target_root_dictionary(FV0Base HEADERS include/FV0Base/Geometry.h diff --git a/Detectors/FIT/FV0/base/include/FV0Base/Geometry.h b/Detectors/FIT/FV0/base/include/FV0Base/Geometry.h index 45c9e83be5aa0..2b464987c9751 100644 --- a/Detectors/FIT/FV0/base/include/FV0Base/Geometry.h +++ b/Detectors/FIT/FV0/base/include/FV0Base/Geometry.h @@ -17,14 +17,18 @@ #ifndef ALICEO2_FV0_GEOMETRY_H_ #define ALICEO2_FV0_GEOMETRY_H_ - +#include "DetectorsBase/GeometryManager.h" +#include "DetectorsCommonDataFormats/DetID.h" +#include +#include #include #include - #include #include #include +class TGeoPNEntry; + namespace o2 { namespace fv0 @@ -120,6 +124,14 @@ class Geometry /// \return True if cellId belongs to ring 5. bool isRing5(UInt_t cellId); + static constexpr o2::detectors::DetID::ID getDetID() { return o2::detectors::DetID::FV0; } + TGeoPNEntry* getPNEntry(int index) const + { + /// Get a pointer to the TGeoPNEntry of a chip identified by 'index' + /// Returns NULL in case of invalid index, missing TGeoManager or invalid symbolic name + return o2::base::GeometryManager::getPNEntry(getDetID(), index); + } + private: explicit Geometry(EGeoType initType); diff --git a/Detectors/FIT/FV0/macro/CMakeLists.txt b/Detectors/FIT/FV0/macro/CMakeLists.txt index 884c7429d7419..90cb5185fd9f9 100644 --- a/Detectors/FIT/FV0/macro/CMakeLists.txt +++ b/Detectors/FIT/FV0/macro/CMakeLists.txt @@ -15,4 +15,7 @@ o2_add_test_root_macro(readFV0Hits.C o2_add_test_root_macro(readFV0Digits.C PUBLIC_LINK_LIBRARIES O2::FV0Simulation - LABELS fv0) + LABELS fv0) +o2_add_test_root_macro(FV0Misaligner.C + PUBLIC_LINK_LIBRARIES O2::FV0Simulation + LABELS fv0) diff --git a/Detectors/FIT/FV0/macro/FV0Misaligner.C b/Detectors/FIT/FV0/macro/FV0Misaligner.C new file mode 100644 index 0000000000000..8d1f7d5cff1ee --- /dev/null +++ b/Detectors/FIT/FV0/macro/FV0Misaligner.C @@ -0,0 +1,66 @@ +#if !defined(__CLING__) || defined(__ROOTCLING__) +//#define ENABLE_UPGRADES +#include "DetectorsCommonDataFormats/DetID.h" +#include "DetectorsCommonDataFormats/NameConf.h" +#include "DetectorsCommonDataFormats/AlignParam.h" +#include "DetectorsBase/GeometryManager.h" +#include "CCDB/CcdbApi.h" +#include "FT0Base/Geometry.h" +#include +#include +#include +#include +#endif + +using AlgPar = std::array; + +AlgPar generateMisalignment(double x, double y, double z, double psi, double theta, double phi); + +void FV0Misaligner(const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080", long tmin = 0, long tmax = -1, + double x = 0., double y = 0., double z = 0., double psi = 0., double theta = 0., double phi = 0., + const std::string& objectPath = "", + const std::string& fileName = "FV0Alignment.root") +{ + std::vector params; + o2::base::GeometryManager::loadGeometry("", false); + // auto geom = o2::ft0::Geometry::Instance(); + AlgPar pars; + bool glo = true; + + o2::detectors::DetID detFT0("FV0"); + + // FV0 detector + for (int ihalf = 1; ihalf < 3; ihalf++) { + std::string symName = Form("FV0half_%i", ihalf); + pars = generateMisalignment(x, y, z, psi, theta, phi); + params.emplace_back(symName.c_str(), -1, pars[0], pars[1], pars[2], pars[3], pars[4], pars[5], glo); + } + + if (!ccdbHost.empty()) { + std::string path = objectPath.empty() ? o2::base::NameConf::getAlignmentPath(detFT0) : objectPath; + LOGP(INFO, "Storing alignment object on {}/{}", ccdbHost, path); + o2::ccdb::CcdbApi api; + map metadata; // can be empty + api.init(ccdbHost.c_str()); // or http://localhost:8080 for a local installation + // store abitrary user object in strongly typed manner + api.storeAsTFileAny(¶ms, path, metadata, tmin, tmax); + } + + if (!fileName.empty()) { + LOGP(INFO, "Storing FV0 alignment in local file {}", fileName); + TFile algFile(fileName.c_str(), "recreate"); + algFile.WriteObjectAny(¶ms, "std::vector", "alignment"); + algFile.Close(); + } +} +AlgPar generateMisalignment(double x, double y, double z, double psi, double theta, double phi) +{ + AlgPar pars; + pars[0] = gRandom->Gaus(0, x); + pars[1] = gRandom->Gaus(0, y); + pars[2] = gRandom->Gaus(0, z); + pars[3] = gRandom->Gaus(0, psi); + pars[4] = gRandom->Gaus(0, theta); + pars[5] = gRandom->Gaus(0, phi); + return std::move(pars); +} diff --git a/Detectors/FIT/FV0/simulation/include/FV0Simulation/Detector.h b/Detectors/FIT/FV0/simulation/include/FV0Simulation/Detector.h index 11930a048e062..232f7b4c44a47 100644 --- a/Detectors/FIT/FV0/simulation/include/FV0Simulation/Detector.h +++ b/Detectors/FIT/FV0/simulation/include/FV0Simulation/Detector.h @@ -93,6 +93,9 @@ class Detector : public o2::base::DetImpl Titanium }; // media IDs used in createMaterials() + /// Add alignable volumes + void addAlignableVolumes() const override; + private: /// Container for hits std::vector* mHits = nullptr; diff --git a/Detectors/FIT/FV0/simulation/src/Detector.cxx b/Detectors/FIT/FV0/simulation/src/Detector.cxx index 98d83c82b4b96..06613d63bc008 100644 --- a/Detectors/FIT/FV0/simulation/src/Detector.cxx +++ b/Detectors/FIT/FV0/simulation/src/Detector.cxx @@ -277,6 +277,32 @@ void Detector::ConstructGeometry() // mGeometry->enableComponent(Geometry::eAluminiumContainer, false); mGeometry->buildGeometry(); } +void Detector::addAlignableVolumes() const +{ + // + // Creates entries for alignable volumes associating the symbolic volume + // name with the corresponding volume path. + // + // First version (mainly ported from AliRoot) + // + + LOG(INFO) << "Add FV0 alignable volumes"; + + if (!gGeoManager) { + LOG(FATAL) << "TGeoManager doesn't exist !"; + return; + } + + TString volPath, symName; + for (int ihalf = 1; ihalf < 3; ihalf++) { + volPath = Form("/cave_1/barrel_1/FV0_1/FV0CONTAINER_%i", ihalf); + symName = Form("FV0half_%i", ihalf); + LOG(INFO) << symName << " <-> " << volPath; + if (!gGeoManager->SetAlignableEntry(symName.Data(), volPath.Data())) { + LOG(FATAL) << "Unable to set alignable entry ! " << symName << " : " << volPath; + } + } +} o2::fv0::Hit* Detector::addHit(Int_t trackId, Int_t cellId, const math_utils::Point3D& startPos, const math_utils::Point3D& endPos, From 80eb09e9876f402af119d4ccf1d3f314a78dd110 Mon Sep 17 00:00:00 2001 From: Ole Schmidt Date: Tue, 29 Jun 2021 10:15:39 +0200 Subject: [PATCH 120/314] Remove unnecessary track seed refs --- Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx | 2 +- GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h | 7 +------ GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx | 2 +- GPU/GPUTracking/DataTypes/GPUTRDTrack.h | 2 +- GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h | 2 +- 5 files changed, 5 insertions(+), 10 deletions(-) diff --git a/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx b/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx index 62fee748369a8..0f924ddba8dd1 100644 --- a/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx +++ b/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx @@ -159,7 +159,7 @@ void TRDGlobalTracking::run(ProcessingContext& pc) continue; } const auto& trkTpc = mChainTracking->mIOPtrs.outputTracksTPCO2[iTrk]; - GPUTRDTrack trkLoad(trkTpc, mTPCTBinMUS, mTPCVdrift, iTrk); + GPUTRDTrack trkLoad(trkTpc, mTPCTBinMUS, mTPCVdrift); auto trackGID = GTrackID(iTrk, GTrackID::TPC); if (mTracker->LoadTrack(trkLoad, trackGID.getRaw())) { continue; diff --git a/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h b/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h index 88dfc6ddad5bd..be7f8d925b5b3 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h +++ b/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h @@ -53,14 +53,11 @@ class trackInterface : public GPUTRDO2BaseTrack mTime = trkItsTpc.getTimeMUS().getTimeStamp(); mTimeAddMax = trkItsTpc.getTimeMUS().getTimeStampError(); mTimeSubMax = trkItsTpc.getTimeMUS().getTimeStampError(); - mRefITS = trkItsTpc.getRefITS(); - mRefTPC = trkItsTpc.getRefTPC(); float tmp = trkItsTpc.getTimeMUS().getTimeStampError() * vDrift; updateCov(tmp * tmp, o2::track::CovLabels::kSigZ2); // account for time uncertainty by increasing sigmaZ2 } - GPUd() trackInterface(const o2::tpc::TrackTPC& trkTpc, float tbWidth, float vDrift, unsigned int iTrk) : GPUTRDO2BaseTrack(trkTpc.getParamOut()) + GPUd() trackInterface(const o2::tpc::TrackTPC& trkTpc, float tbWidth, float vDrift) : GPUTRDO2BaseTrack(trkTpc.getParamOut()) { - mRefTPC = {iTrk, o2::dataformats::GlobalTrackID::TPC}; mTime = trkTpc.getTime0() * tbWidth; mTimeAddMax = trkTpc.getDeltaTFwd() * tbWidth; mTimeSubMax = trkTpc.getDeltaTBwd() * tbWidth; @@ -103,8 +100,6 @@ class trackInterface : public GPUTRDO2BaseTrack typedef GPUTRDO2BaseTrack baseClass; private: - o2::dataformats::GlobalTrackID mRefTPC; // reference on TPC track entry in its original container - o2::dataformats::GlobalTrackID mRefITS; // reference on ITS track entry in its original container float mTime{-1.f}; // time estimate for this track in us float mTimeAddMax{0.f}; // max. time that can be added to this track in us float mTimeSubMax{0.f}; // max. time that can be subtracted to this track in us diff --git a/GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx b/GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx index a719683fe4ada..c224d0f775a67 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx +++ b/GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx @@ -100,7 +100,7 @@ GPUd() GPUTRDTrack_t::GPUTRDTrack_t(const o2::dataformats::TrackTPCITS& t, fl } template -GPUd() GPUTRDTrack_t::GPUTRDTrack_t(const o2::tpc::TrackTPC& t, float tbWidth, float vDrift, unsigned int iTrk) : T(t, tbWidth, vDrift, iTrk) +GPUd() GPUTRDTrack_t::GPUTRDTrack_t(const o2::tpc::TrackTPC& t, float tbWidth, float vDrift) : T(t, tbWidth, vDrift) { initialize(); } diff --git a/GPU/GPUTracking/DataTypes/GPUTRDTrack.h b/GPU/GPUTracking/DataTypes/GPUTRDTrack.h index 92019f9d50bfd..b3bcabca10589 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDTrack.h +++ b/GPU/GPUTracking/DataTypes/GPUTRDTrack.h @@ -71,7 +71,7 @@ class GPUTRDTrack_t : public T GPUd() GPUTRDTrack_t(const AliHLTExternalTrackParam& t); #ifndef GPUCA_GPUCODE GPUd() GPUTRDTrack_t(const o2::dataformats::TrackTPCITS& t, float vDrift); - GPUd() GPUTRDTrack_t(const o2::tpc::TrackTPC& t, float tbWidth, float vDrift, unsigned int iTrk); + GPUd() GPUTRDTrack_t(const o2::tpc::TrackTPC& t, float tbWidth, float vDrift); #endif GPUd() GPUTRDTrack_t(const T& t); GPUd() GPUTRDTrack_t& operator=(const GPUTRDTrack_t& t); diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h b/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h index 3902c670d7426..50c608de5ec67 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h @@ -261,7 +261,7 @@ class trackInterface : public GPUTPCGMTrackParam float tmp = param.getTimeMUS().getTimeStampError() * 2.58f; // TPCvDrift = 2.58 cm/us fixed for now, should come from CCDB Cov()[2] += tmp * tmp; // account for time uncertainty by increasing sigmaZ2 } - trackInterface(const o2::tpc::TrackTPC& param, float, float, unsigned int) : GPUTPCGMTrackParam(), mAlpha(param.getParamOut().getAlpha()) + trackInterface(const o2::tpc::TrackTPC& param, float, float) : GPUTPCGMTrackParam(), mAlpha(param.getParamOut().getAlpha()) { SetX(param.getParamOut().getX()); SetPar(0, param.getParamOut().getY()); From 15bc6c706d8bf62299bb3f71727516fea76726bd Mon Sep 17 00:00:00 2001 From: Ole Schmidt Date: Tue, 29 Jun 2021 15:40:05 +0200 Subject: [PATCH 121/314] Move transient data members from TRD tracks into helper struct TODO: take care of GPU track types and continuous tracking mode --- .../workflow/src/TRDGlobalTrackingSpec.cxx | 25 +++++-- .../DataTypes/GPUTRDInterfaceO2Track.h | 41 +--------- GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx | 4 +- GPU/GPUTracking/DataTypes/GPUTRDTrack.h | 4 +- .../TRDTracking/GPUTRDInterfaces.h | 29 +++----- GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx | 74 ++++++++++--------- GPU/GPUTracking/TRDTracking/GPUTRDTracker.h | 22 ++++-- .../TRDTracking/macros/run_trd_tracker.C | 16 ++-- 8 files changed, 104 insertions(+), 111 deletions(-) diff --git a/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx b/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx index 0f924ddba8dd1..04bfe3dedcc29 100644 --- a/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx +++ b/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx @@ -144,13 +144,17 @@ void TRDGlobalTracking::run(ProcessingContext& pc) // load ITS-TPC matched tracks for (int iTrk = 0; iTrk < mChainTracking->mIOPtrs.nTracksTPCITSO2; ++iTrk) { const auto& trkITSTPC = mChainTracking->mIOPtrs.tracksTPCITSO2[iTrk]; - GPUTRDTrack trkLoad(trkITSTPC, mTPCVdrift); + GPUTRDTracker::HelperTrackAttributes trkAttribs; + trkAttribs.mTime = trkITSTPC.getTimeMUS().getTimeStamp(); + trkAttribs.mTimeAddMax = trkITSTPC.getTimeMUS().getTimeStampError(); + trkAttribs.mTimeSubMax = trkITSTPC.getTimeMUS().getTimeStampError(); + GPUTRDTrack trkLoad(trkITSTPC); auto trackGID = GTrackID(iTrk, GTrackID::ITSTPC); - if (mTracker->LoadTrack(trkLoad, trackGID.getRaw())) { + if (mTracker->LoadTrack(trkLoad, trackGID.getRaw(), true, &trkAttribs)) { continue; } ++nTracksLoadedITSTPC; - LOGF(DEBUG, "Loaded ITS-TPC track %i with time %f", nTracksLoadedITSTPC, trkLoad.getTime()); + LOGF(DEBUG, "Loaded ITS-TPC track %i with time %f", nTracksLoadedITSTPC, trkAttribs.mTime); } // load TPC-only tracks for (int iTrk = 0; iTrk < mChainTracking->mIOPtrs.nOutputTracksTPCO2; ++iTrk) { @@ -159,13 +163,22 @@ void TRDGlobalTracking::run(ProcessingContext& pc) continue; } const auto& trkTpc = mChainTracking->mIOPtrs.outputTracksTPCO2[iTrk]; - GPUTRDTrack trkLoad(trkTpc, mTPCTBinMUS, mTPCVdrift); + GPUTRDTracker::HelperTrackAttributes trkAttribs; + trkAttribs.mTime = trkTpc.getTime0() * mTPCTBinMUS; + trkAttribs.mTimeAddMax = trkTpc.getDeltaTFwd() * mTPCTBinMUS; + trkAttribs.mTimeSubMax = trkTpc.getDeltaTBwd() * mTPCTBinMUS; + if (trkTpc.hasASideClustersOnly()) { + trkAttribs.mSide = -1; + } else if (trkTpc.hasCSideClustersOnly()) { + trkAttribs.mSide = 1; + } + GPUTRDTrack trkLoad(trkTpc); auto trackGID = GTrackID(iTrk, GTrackID::TPC); - if (mTracker->LoadTrack(trkLoad, trackGID.getRaw())) { + if (mTracker->LoadTrack(trkLoad, trackGID.getRaw(), true, &trkAttribs)) { continue; } ++nTracksLoadedTPC; - LOGF(DEBUG, "Loaded TPC track %i with time %f", nTracksLoadedTPC, trkLoad.getTime()); + LOGF(DEBUG, "Loaded TPC track %i with time %f", nTracksLoadedTPC, trkAttribs.mTime); } LOGF(INFO, "%i tracks are loaded into the TRD tracker. Out of those %i ITS-TPC tracks and %i TPC tracks", nTracksLoadedITSTPC + nTracksLoadedTPC, nTracksLoadedITSTPC, nTracksLoadedTPC); diff --git a/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h b/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h index be7f8d925b5b3..1861b91b2c77b 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h +++ b/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h @@ -48,30 +48,9 @@ class trackInterface : public GPUTRDO2BaseTrack public: GPUdDefault() trackInterface() = default; trackInterface(const GPUTRDO2BaseTrack& param) = delete; - GPUd() trackInterface(const o2::dataformats::TrackTPCITS& trkItsTpc, float vDrift) : GPUTRDO2BaseTrack(trkItsTpc.getParamOut()) - { - mTime = trkItsTpc.getTimeMUS().getTimeStamp(); - mTimeAddMax = trkItsTpc.getTimeMUS().getTimeStampError(); - mTimeSubMax = trkItsTpc.getTimeMUS().getTimeStampError(); - float tmp = trkItsTpc.getTimeMUS().getTimeStampError() * vDrift; - updateCov(tmp * tmp, o2::track::CovLabels::kSigZ2); // account for time uncertainty by increasing sigmaZ2 - } - GPUd() trackInterface(const o2::tpc::TrackTPC& trkTpc, float tbWidth, float vDrift) : GPUTRDO2BaseTrack(trkTpc.getParamOut()) - { - mTime = trkTpc.getTime0() * tbWidth; - mTimeAddMax = trkTpc.getDeltaTFwd() * tbWidth; - mTimeSubMax = trkTpc.getDeltaTBwd() * tbWidth; - if (trkTpc.hasASideClustersOnly()) { - mSide = -1; - } else if (trkTpc.hasCSideClustersOnly()) { - mSide = 1; - } else { - // CE-crossing tracks are not shifted along z, but the time uncertainty is taken into account by increasing sigmaZ2 - float timeWindow = (mTimeAddMax + mTimeSubMax) * .5f; - float tmp = timeWindow * vDrift; - updateCov(tmp * tmp, o2::track::CovLabels::kSigZ2); - } - } + GPUd() trackInterface(const o2::dataformats::TrackTPCITS& trkItsTpc) : GPUTRDO2BaseTrack(trkItsTpc.getParamOut()) {} + GPUd() trackInterface(const o2::tpc::TrackTPC& trkTpc) : GPUTRDO2BaseTrack(trkTpc.getParamOut()) {} + GPUd() void set(float x, float alpha, const float* param, const float* cov) { setX(x); @@ -85,26 +64,14 @@ class trackInterface : public GPUTRDO2BaseTrack } GPUd() trackInterface(const GPUTPCGMMergedTrack& trk); GPUd() trackInterface(const gputpcgmmergertypes::GPUTPCOuterParam& param); + GPUd() void updateCovZ2(float addZerror) { updateCov(addZerror, o2::track::CovLabels::kSigZ2); } GPUdi() const float* getPar() const { return getParams(); } - GPUdi() float getTime() const { return mTime; } - GPUdi() void setTime(float t) { mTime = t; } - GPUdi() float getTimeMax() const { return mTime + mTimeAddMax; } - GPUdi() float getTimeMin() const { return mTime - mTimeSubMax; } - GPUdi() short getSide() const { return mSide; } - GPUdi() float getZShift() const { return mZShift; } - GPUdi() void setZShift(float z) { mZShift = z; } GPUdi() bool CheckNumericalQuality() const { return true; } typedef GPUTRDO2BaseTrack baseClass; - private: - float mTime{-1.f}; // time estimate for this track in us - float mTimeAddMax{0.f}; // max. time that can be added to this track in us - float mTimeSubMax{0.f}; // max. time that can be subtracted to this track in us - short mSide{0}; // -1 : A-side, +1 : C-side (relevant only for TPC-only tracks) - float mZShift{0.f}; // calculated new for each TRD trigger candidate for this track ClassDefNV(trackInterface, 1); }; diff --git a/GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx b/GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx index c224d0f775a67..4d953128ab5ad 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx +++ b/GPU/GPUTracking/DataTypes/GPUTRDTrack.cxx @@ -94,13 +94,13 @@ GPUd() void GPUTRDTrack_t::ConvertFrom(const GPUTRDTrackDataRecord& t) #include "DataFormatsTPC/TrackTPC.h" template -GPUd() GPUTRDTrack_t::GPUTRDTrack_t(const o2::dataformats::TrackTPCITS& t, float vDrift) : T(t, vDrift) +GPUd() GPUTRDTrack_t::GPUTRDTrack_t(const o2::dataformats::TrackTPCITS& t) : T(t) { initialize(); } template -GPUd() GPUTRDTrack_t::GPUTRDTrack_t(const o2::tpc::TrackTPC& t, float tbWidth, float vDrift) : T(t, tbWidth, vDrift) +GPUd() GPUTRDTrack_t::GPUTRDTrack_t(const o2::tpc::TrackTPC& t) : T(t) { initialize(); } diff --git a/GPU/GPUTracking/DataTypes/GPUTRDTrack.h b/GPU/GPUTracking/DataTypes/GPUTRDTrack.h index b3bcabca10589..d99e5ff1d9dd5 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDTrack.h +++ b/GPU/GPUTracking/DataTypes/GPUTRDTrack.h @@ -70,8 +70,8 @@ class GPUTRDTrack_t : public T GPUd() GPUTRDTrack_t(const GPUTRDTrack_t& t); GPUd() GPUTRDTrack_t(const AliHLTExternalTrackParam& t); #ifndef GPUCA_GPUCODE - GPUd() GPUTRDTrack_t(const o2::dataformats::TrackTPCITS& t, float vDrift); - GPUd() GPUTRDTrack_t(const o2::tpc::TrackTPC& t, float tbWidth, float vDrift); + GPUd() GPUTRDTrack_t(const o2::dataformats::TrackTPCITS& t); + GPUd() GPUTRDTrack_t(const o2::tpc::TrackTPC& t); #endif GPUd() GPUTRDTrack_t(const T& t); GPUd() GPUTRDTrack_t& operator=(const GPUTRDTrack_t& t); diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h b/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h index 50c608de5ec67..bc0310eee0643 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h @@ -82,12 +82,7 @@ class trackInterface : public AliExternalTrackParam const My_Float* getPar() const { return GetParameter(); } const My_Float* getCov() const { return GetCovariance(); } void resetCovariance(float s) { ResetCovariance(10.); } - float getTime() const { return -1.f; } - float getTimeMax() const { return 0.f; } - float getTimeMin() const { return 0.f; } - short getSide() const { return 0; } - void setZShift(float) {} - float getZShift() const { return 0.f; } + void updateCovZ2(float) {} bool CheckNumericalQuality() const { return true; } // parameter manipulation @@ -244,7 +239,7 @@ class trackInterface : public GPUTPCGMTrackParam }; #endif #if defined(GPUCA_O2_LIB) && !defined(GPUCA_GPUCODE) - trackInterface(const o2::dataformats::TrackTPCITS& param, float) : GPUTPCGMTrackParam(), mAlpha(param.getParamOut().getAlpha()) + trackInterface(const o2::dataformats::TrackTPCITS& param) : GPUTPCGMTrackParam(), mAlpha(param.getParamOut().getAlpha()) { SetX(param.getParamOut().getX()); SetPar(0, param.getParamOut().getY()); @@ -255,13 +250,15 @@ class trackInterface : public GPUTPCGMTrackParam for (int i = 0; i < 15; i++) { SetCov(i, param.getParamOut().getCov()[i]); } + /* mTime = param.getTimeMUS().getTimeStamp(); mTimeAddMax = param.getTimeMUS().getTimeStampError(); mTimeSubMax = param.getTimeMUS().getTimeStampError(); float tmp = param.getTimeMUS().getTimeStampError() * 2.58f; // TPCvDrift = 2.58 cm/us fixed for now, should come from CCDB Cov()[2] += tmp * tmp; // account for time uncertainty by increasing sigmaZ2 + */ } - trackInterface(const o2::tpc::TrackTPC& param, float, float) : GPUTPCGMTrackParam(), mAlpha(param.getParamOut().getAlpha()) + trackInterface(const o2::tpc::TrackTPC& param) : GPUTPCGMTrackParam(), mAlpha(param.getParamOut().getAlpha()) { SetX(param.getParamOut().getX()); SetPar(0, param.getParamOut().getY()); @@ -272,6 +269,7 @@ class trackInterface : public GPUTPCGMTrackParam for (int i = 0; i < 15; i++) { SetCov(i, param.getParamOut().getCov()[i]); } + /* const float tpcZBinWidth = 0.199606f; mTime = param.getTime0() * tpcZBinWidth; mTimeAddMax = param.getDeltaTFwd() * tpcZBinWidth; @@ -286,6 +284,7 @@ class trackInterface : public GPUTPCGMTrackParam float tmp = timeWindow * 2.58f; // TPCvDrift = 2.58 cm/us fixed for now, should come from CCDB Cov()[2] += tmp * tmp; } + */ } #endif @@ -306,13 +305,8 @@ class trackInterface : public GPUTPCGMTrackParam GPUd() const float* getPar() const { return GetPar(); } GPUd() const float* getCov() const { return GetCov(); } - GPUd() float getTime() const { return mTime; } - GPUd() float getTimeMax() const { return mTime + mTimeAddMax; } - GPUd() float getTimeMin() const { return mTime - mTimeSubMax; } - GPUd() short getSide() const { return mSide; } - GPUd() void setZShift(float zShift) { mZShift = zShift; } - GPUd() float getZShift() const { return mZShift; } GPUd() void resetCovariance(float s) { ResetCovariance(); } + GPUd() void updateCovZ2(float addZerror) { SetCov(2, GetErr2Z() + addZerror); } GPUd() void setAlpha(float alpha) { mAlpha = alpha; } GPUd() void set(float x, float alpha, const float param[5], const float cov[15]) { @@ -329,12 +323,7 @@ class trackInterface : public GPUTPCGMTrackParam typedef GPUTPCGMTrackParam baseClass; private: - float mAlpha = 0.f; // rotation along phi wrt global coordinate system - float mTime = -1.f; // time estimate for this track in us - float mTimeAddMax = 0.f; // max. time that can be added to this track in us - float mTimeSubMax = 0.f; // max. time that can be subtracted to this track in us - short mSide = 0; // -1 : A-side, +1 : C-side (relevant only for TPC-only tracks) - float mZShift = 0.f; // calculated new for each TRD trigger candidate for this track + float mAlpha = 0.f; // rotation along phi wrt global coordinate system }; template <> diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx index 5cb5757b5068d..252bc46366b00 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx @@ -100,11 +100,12 @@ void* GPUTRDTracker_t::SetPointersTracks(void* base) // Allocate memory for tracks (this is done once per event) //-------------------------------------------------------------------- computePointerWithAlignment(base, mTracks, mNMaxTracks); + computePointerWithAlignment(base, mTrackAttribs, mNMaxTracks); return base; } template -GPUTRDTracker_t::GPUTRDTracker_t() : mR(nullptr), mIsInitialized(false), mGenerateSpacePoints(false), mProcessPerTimeFrame(false), mNAngleHistogramBins(25), mAngleHistogramRange(50), mMemoryPermanent(-1), mMemoryTracklets(-1), mMemoryTracks(-1), mNMaxCollisions(0), mNMaxTracks(0), mNMaxSpacePoints(0), mTracks(nullptr), mNCandidates(1), mNTracks(0), mNEvents(0), mMaxThreads(100), mTrackletIndexArray(nullptr), mHypothesis(nullptr), mCandidates(nullptr), mSpacePoints(nullptr), mGeo(nullptr), mRPhiA2(0), mRPhiB(0), mRPhiC2(0), mDyA2(0), mDyB(0), mDyC2(0), mAngleToDyA(0), mAngleToDyB(0), mAngleToDyC(0), mDebugOutput(false), mMaxEta(0.84f), mExtraRoadY(2.f), mRoadZ(18.f), mZCorrCoefNRC(1.4f), mTPCVdrift(2.58f), mDebug(new GPUTRDTrackerDebug()) +GPUTRDTracker_t::GPUTRDTracker_t() : mR(nullptr), mIsInitialized(false), mGenerateSpacePoints(false), mProcessPerTimeFrame(false), mNAngleHistogramBins(25), mAngleHistogramRange(50), mMemoryPermanent(-1), mMemoryTracklets(-1), mMemoryTracks(-1), mNMaxCollisions(0), mNMaxTracks(0), mNMaxSpacePoints(0), mTracks(nullptr), mTrackAttribs(nullptr), mNCandidates(1), mNTracks(0), mNEvents(0), mMaxThreads(100), mTrackletIndexArray(nullptr), mHypothesis(nullptr), mCandidates(nullptr), mSpacePoints(nullptr), mGeo(nullptr), mRPhiA2(0), mRPhiB(0), mRPhiC2(0), mDyA2(0), mDyB(0), mDyC2(0), mAngleToDyA(0), mAngleToDyB(0), mAngleToDyC(0), mDebugOutput(false), mMaxEta(0.84f), mExtraRoadY(2.f), mRoadZ(18.f), mZCorrCoefNRC(1.4f), mTPCVdrift(2.58f), mDebug(new GPUTRDTrackerDebug()) { //-------------------------------------------------------------------- // Default constructor @@ -361,7 +362,7 @@ GPUd() bool GPUTRDTracker_t::CheckTrackTRDCandidate(const TRDTRK& } template -GPUd() int GPUTRDTracker_t::LoadTrack(const TRDTRK& trk, unsigned int tpcTrackId, bool checkTrack) +GPUd() int GPUTRDTracker_t::LoadTrack(const TRDTRK& trk, unsigned int tpcTrackId, bool checkTrack, HelperTrackAttributes* attribs) { if (mNTracks >= mNMaxTracks) { #ifndef GPUCA_GPUCODE @@ -378,6 +379,9 @@ GPUd() int GPUTRDTracker_t::LoadTrack(const TRDTRK& trk, unsigned mTracks[mNTracks] = trk; #endif mTracks[mNTracks].setRefGlobalTrackIdRaw(tpcTrackId); + if (attribs) { + mTrackAttribs[mNTracks] = *attribs; + } mNTracks++; return (0); } @@ -393,12 +397,12 @@ GPUd() void GPUTRDTracker_t::DumpTracks() GPUInfo("There are %i tracks loaded. mNMaxTracks(%i)", mNTracks, mNMaxTracks); for (int i = 0; i < mNTracks; ++i) { auto* trk = &(mTracks[i]); - GPUInfo("track %i: x=%f, alpha=%f, nTracklets=%i, pt=%f, time=%f", i, trk->getX(), trk->getAlpha(), trk->getNtracklets(), trk->getPt(), trk->getTime()); + GPUInfo("track %i: x=%f, alpha=%f, nTracklets=%i, pt=%f, time=%f", i, trk->getX(), trk->getAlpha(), trk->getNtracklets(), trk->getPt(), mTrackAttribs[i].mTime); } } template -GPUd() int GPUTRDTracker_t::GetCollisionIDs(TRDTRK& trk, int* collisionIds) const +GPUd() int GPUTRDTracker_t::GetCollisionIDs(int iTrk, int* collisionIds) const { //-------------------------------------------------------------------- // Check which TRD trigger times possibly match given input track. @@ -409,9 +413,9 @@ GPUd() int GPUTRDTracker_t::GetCollisionIDs(TRDTRK& trk, int* coll //-------------------------------------------------------------------- int nColls = 0; for (unsigned int iColl = 0; iColl < GetConstantMem()->ioPtrs.nTRDTriggerRecords; ++iColl) { - if (GetConstantMem()->ioPtrs.trdTriggerTimes[iColl] > trk.getTimeMin() && GetConstantMem()->ioPtrs.trdTriggerTimes[iColl] < trk.getTimeMax()) { + if (GetConstantMem()->ioPtrs.trdTriggerTimes[iColl] > mTrackAttribs[iTrk].GetTimeMin() && GetConstantMem()->ioPtrs.trdTriggerTimes[iColl] < mTrackAttribs[iTrk].GetTimeMax()) { if (nColls == 20) { - GPUError("Found too many collision candidates for track with tMin(%f) and tMax(%f)", trk.getTimeMin(), trk.getTimeMax()); + GPUError("Found too many collision candidates for track with tMin(%f) and tMax(%f)", mTrackAttribs[iTrk].GetTimeMin(), mTrackAttribs[iTrk].GetTimeMax()); return nColls; } collisionIds[nColls++] = iColl; @@ -429,10 +433,10 @@ GPUd() void GPUTRDTracker_t::DoTrackingThread(int iTrk, int thread int collisionIds[20] = {0}; // due to the dead time there will never exist more possible TRD triggers for a single track int nCollisionIds = 1; // initialize with 1 for AliRoot compatibility if (mProcessPerTimeFrame) { - nCollisionIds = GetCollisionIDs(mTracks[iTrk], collisionIds); + nCollisionIds = GetCollisionIDs(iTrk, collisionIds); if (nCollisionIds == 0) { if (ENABLE_INFO) { - GPUInfo("Did not find TRD data for track %i with t=%f. tMin(%f), tMax(%f)", iTrk, mTracks[iTrk].getTime(), mTracks[iTrk].getTimeMin(), mTracks[iTrk].getTimeMax()); + GPUInfo("Did not find TRD data for track %i with t=%f. tMin(%f), tMax(%f)", iTrk, mTrackAttribs[iTrk].mTime, mTrackAttribs[iTrk].GetTimeMin(), mTrackAttribs[iTrk].GetTimeMax()); } // no TRD data available for the bunch crossing this track originates from return; @@ -446,7 +450,7 @@ GPUd() void GPUTRDTracker_t::DoTrackingThread(int iTrk, int thread auto trkCopy = trkStart; prop.setTrack(&trkCopy); prop.setFitInProjections(true); - FollowProlongation(&prop, &trkCopy, threadId, collisionIds[iColl]); + FollowProlongation(&prop, &trkCopy, iTrk, threadId, collisionIds[iColl]); if (trkCopy.getReducedChi2() < mTracks[iTrk].getReducedChi2()) { mTracks[iTrk] = trkCopy; // copy back the resulting track } @@ -539,7 +543,7 @@ GPUd() bool GPUTRDTracker_t::CalculateSpacePoints(int iCollision) } template -GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK* t, int threadId, int collisionId) +GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK* t, int iTrk, int threadId, int collisionId) { //-------------------------------------------------------------------- // Propagate TPC track layerwise through TRD and pick up closest @@ -549,10 +553,14 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK //-------------------------------------------------------------------- //GPUInfo("Start track following for track %i at x=%f with pt=%f", t->getRefGlobalTrackIdRaw(), t->getX(), t->getPt()); mDebug->Reset(); - int iTrack = t->getRefGlobalTrackIdRaw(); t->setChi2(0.f); + float zShiftTrk = 0.f; if (mProcessPerTimeFrame) { - t->setZShift((t->getTime() - GetConstantMem()->ioPtrs.trdTriggerTimes[collisionId]) * mTPCVdrift * t->getSide()); + zShiftTrk = (mTrackAttribs[iTrk].mTime - GetConstantMem()->ioPtrs.trdTriggerTimes[collisionId]) * mTPCVdrift * mTrackAttribs[iTrk].mSide; + float addZerr = (mTrackAttribs[iTrk].mTimeAddMax + mTrackAttribs[iTrk].mTimeSubMax) * .5f * mTPCVdrift; + // increase Z error based on time window + // -> this is here since it was done before, but the efficiency seems to be better if the covariance is not updated (more tracklets are attached) + //t->updateCovZ2(addZerr * addZerr); // TODO check again once detailed performance study tools are available, maybe this can be tuned } const GPUTRDpadPlane* pad = nullptr; const GPUTRDTrackletWord* tracklets = GetConstantMem()->ioPtrs.trdTracklets; @@ -580,7 +588,7 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK float roadZ = 0.f; const int nMaxChambersToSearch = 4; - mDebug->SetGeneralInfo(mNEvents, mNTracks, iTrack, t->getPt()); + mDebug->SetGeneralInfo(mNEvents, mNTracks, iTrk, t->getPt()); for (int iLayer = 0; iLayer < kNLayers; ++iLayer) { int nCurrHypothesis = 0; @@ -615,7 +623,7 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK // propagate track to average radius of TRD layer iLayer (sector 0, stack 2 is chosen as a reference) if (!prop->propagateToX(mR[2 * kNLayers + iLayer], .8f, 2.f)) { if (ENABLE_INFO) { - GPUInfo("Track propagation failed for track %i candidate %i in layer %i (pt=%f, x=%f, mR[layer]=%f)", iTrack, iCandidate, iLayer, trkWork->getPt(), trkWork->getX(), mR[2 * kNLayers + iLayer]); + GPUInfo("Track propagation failed for track %i candidate %i in layer %i (pt=%f, x=%f, mR[layer]=%f)", iTrk, iCandidate, iLayer, trkWork->getPt(), trkWork->getX(), mR[2 * kNLayers + iLayer]); } continue; } @@ -623,13 +631,13 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK // rotate track in new sector in case of sector crossing if (!AdjustSector(prop, trkWork)) { if (ENABLE_INFO) { - GPUInfo("Adjusting sector failed for track %i candidate %i in layer %i", iTrack, iCandidate, iLayer); + GPUInfo("Adjusting sector failed for track %i candidate %i in layer %i", iTrk, iCandidate, iLayer); } continue; } // check if track is findable - if (IsGeoFindable(trkWork, iLayer, prop->getAlpha())) { + if (IsGeoFindable(trkWork, iLayer, prop->getAlpha(), zShiftTrk)) { trkWork->setIsFindable(iLayer); } @@ -638,15 +646,15 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK // roadZ = 7.f * CAMath::Sqrt(trkWork->getSigmaZ2() + 9.f * 9.f / 12.f); // take longest pad length roadZ = mRoadZ; // simply twice the longest pad length -> efficiency 99.996% // - if (CAMath::Abs(trkWork->getZ() + trkWork->getZShift()) - roadZ >= zMaxTRD) { + if (CAMath::Abs(trkWork->getZ() + zShiftTrk) - roadZ >= zMaxTRD) { if (ENABLE_INFO) { - GPUInfo("Track out of TRD acceptance with z=%f in layer %i (eta=%f)", trkWork->getZ() + trkWork->getZShift(), iLayer, trkWork->getEta()); + GPUInfo("Track out of TRD acceptance with z=%f in layer %i (eta=%f)", trkWork->getZ() + zShiftTrk, iLayer, trkWork->getEta()); } continue; } // determine chamber(s) to be searched for tracklets - FindChambersInRoad(trkWork, roadY, roadZ, iLayer, det, zMaxTRD, prop->getAlpha()); + FindChambersInRoad(trkWork, roadY, roadZ, iLayer, det, zMaxTRD, prop->getAlpha(), zShiftTrk); // track debug information to be stored in case no matching tracklet can be found mDebug->SetTrackParameter(*trkWork, iLayer); @@ -674,12 +682,12 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK // propagate track to radius of chamber if (!prop->propagateToX(mR[currDet], .8f, .2f)) { if (ENABLE_WARNING) { - GPUWarning("Track parameter for track %i, x=%f at chamber %i x=%f in layer %i cannot be retrieved", iTrack, trkWork->getX(), currDet, mR[currDet], iLayer); + GPUWarning("Track parameter for track %i, x=%f at chamber %i x=%f in layer %i cannot be retrieved", iTrk, trkWork->getX(), currDet, mR[currDet], iLayer); } } // first propagate track to x of tracklet for (int trkltIdx = glbTrkltIdxOffset + mTrackletIndexArray[trkltIdxOffset + currDet]; trkltIdx < glbTrkltIdxOffset + mTrackletIndexArray[trkltIdxOffset + currDet + 1]; ++trkltIdx) { - if (CAMath::Abs(trkWork->getY() - spacePoints[trkltIdx].getY()) > roadY || CAMath::Abs(trkWork->getZ() + trkWork->getZShift() - spacePoints[trkltIdx].getZ()) > roadZ) { + if (CAMath::Abs(trkWork->getY() - spacePoints[trkltIdx].getY()) > roadY || CAMath::Abs(trkWork->getZ() + zShiftTrk - spacePoints[trkltIdx].getZ()) > roadZ) { // skip tracklets which are too far away // although the radii of space points and tracks may differ by ~ few mm the roads are large enough to allow no efficiency loss by this cut continue; @@ -695,7 +703,7 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK // correction for mean z position of tracklet (is not the center of the pad if track eta != 0) float zPosCorr = spacePoints[trkltIdx].getZ() + mZCorrCoefNRC * trkWork->getTgl(); float yPosCorr = spacePoints[trkltIdx].getY() - tiltCorr; - zPosCorr -= trkWork->getZShift(); // shift tracklet instead of track in order to avoid having to do a re-fit for each collision + zPosCorr -= zShiftTrk; // shift tracklet instead of track in order to avoid having to do a re-fit for each collision float deltaY = yPosCorr - projY; float deltaZ = zPosCorr - projZ; My_Float trkltPosTmpYZ[2] = {yPosCorr, zPosCorr}; @@ -734,7 +742,7 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK // no more candidates if (iUpdate == 0) { if (ENABLE_WARNING) { - GPUWarning("No valid candidates for track %i in layer %i", iTrack, iLayer); + GPUWarning("No valid candidates for track %i in layer %i", iTrk, iLayer); } nCandidates = 0; } @@ -769,7 +777,7 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK } if (!prop->propagateToX(spacePoints[mHypothesis[iUpdate + hypothesisIdxOffset].mTrackletId].getX(), .8f, 2.f)) { if (ENABLE_WARNING) { - GPUWarning("Final track propagation for track %i update %i in layer %i failed", iTrack, iUpdate, iLayer); + GPUWarning("Final track propagation for track %i update %i in layer %i failed", iTrk, iUpdate, iLayer); } trkWork->setChi2(trkWork->getChi2() + Param().rec.trd.penaltyChi2); if (trkWork->getIsFindable(iLayer)) { @@ -786,7 +794,7 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK pad = mGeo->GetPadPlane(tracklets[mHypothesis[iUpdate + hypothesisIdxOffset].mTrackletId].GetDetector()); float tiltCorrUp = tilt * (spacePoints[mHypothesis[iUpdate + hypothesisIdxOffset].mTrackletId].getZ() - trkWork->getZ()); float zPosCorrUp = spacePoints[mHypothesis[iUpdate + hypothesisIdxOffset].mTrackletId].getZ() + mZCorrCoefNRC * trkWork->getTgl(); - zPosCorrUp -= trkWork->getZShift(); + zPosCorrUp -= zShiftTrk; float padLength = pad->GetRowSize(tracklets[mHypothesis[iUpdate + hypothesisIdxOffset].mTrackletId].GetZbin()); if (!((trkWork->getSigmaZ2() < (padLength * padLength / 12.f)) && (CAMath::Abs(spacePoints[mHypothesis[iUpdate + hypothesisIdxOffset].mTrackletId].getZ() - trkWork->getZ()) < padLength))) { tiltCorrUp = 0.f; @@ -817,7 +825,7 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK if (!prop->update(trkltPosUp, trkltCovUp)) { if (ENABLE_WARNING) { - GPUWarning("Failed to update track %i with space point in layer %i", iTrack, iLayer); + GPUWarning("Failed to update track %i with space point in layer %i", iTrk, iLayer); } trkWork->setChi2(trkWork->getChi2() + Param().rec.trd.penaltyChi2); if (trkWork->getIsFindable(iLayer)) { @@ -832,7 +840,7 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK } if (!trkWork->CheckNumericalQuality()) { if (ENABLE_INFO) { - GPUInfo("Track %i has invalid covariance matrix. Aborting track following\n", iTrack); + GPUInfo("Track %i has invalid covariance matrix. Aborting track following\n", iTrk); } return false; } @@ -847,7 +855,7 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK if (!isOK) { if (ENABLE_INFO) { - GPUInfo("Track %i cannot be followed. Stopped in layer %i", iTrack, iLayer); + GPUInfo("Track %i cannot be followed. Stopped in layer %i", iTrk, iLayer); } return false; } @@ -1027,7 +1035,7 @@ GPUd() float GPUTRDTracker_t::GetAngularPull(float dYtracklet, flo } template -GPUd() void GPUTRDTracker_t::FindChambersInRoad(const TRDTRK* t, const float roadY, const float roadZ, const int iLayer, int* det, const float zMax, const float alpha) const +GPUd() void GPUTRDTracker_t::FindChambersInRoad(const TRDTRK* t, const float roadY, const float roadZ, const int iLayer, int* det, const float zMax, const float alpha, const float zShiftTrk) const { //-------------------------------------------------------------------- // determine initial chamber where the track ends up @@ -1036,14 +1044,14 @@ GPUd() void GPUTRDTracker_t::FindChambersInRoad(const TRDTRK* t, c //-------------------------------------------------------------------- const float yMax = CAMath::Abs(mGeo->GetCol0(iLayer)); + float zTrk = t->getZ() + zShiftTrk; - int currStack = mGeo->GetStack(t->getZ(), iLayer); + int currStack = mGeo->GetStack(zTrk, iLayer); int currSec = GetSector(alpha); int currDet; int nDets = 0; - float zTrk = t->getZ() + t->getZShift(); if (currStack > -1) { // chamber unambiguous @@ -1104,14 +1112,14 @@ GPUd() void GPUTRDTracker_t::FindChambersInRoad(const TRDTRK* t, c } template -GPUd() bool GPUTRDTracker_t::IsGeoFindable(const TRDTRK* t, const int layer, const float alpha) const +GPUd() bool GPUTRDTracker_t::IsGeoFindable(const TRDTRK* t, const int layer, const float alpha, const float zShiftTrk) const { //-------------------------------------------------------------------- // returns true if track position inside active area of the TRD // and not too close to the boundaries //-------------------------------------------------------------------- - float zTrk = t->getZ() + t->getZShift(); + float zTrk = t->getZ() + zShiftTrk; int det = GetDetectorNumber(zTrk, alpha, layer); diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.h b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.h index f99bf035ae137..a7237dd71c2a2 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.h @@ -78,6 +78,17 @@ class GPUTRDTracker_t : public GPUProcessor kNSectors = 18, kNChambers = 540 }; + struct HelperTrackAttributes { + // additional TRD track attributes which are transient + float mTime; // time estimate for seeding track in us + float mTimeAddMax; // max. time that can be added to this track seed in us + float mTimeSubMax; // max. time that can be subtracted to this track seed in us + short mSide; // -1 : A-side, +1 : C-side (relevant only for TPC-only tracks) + GPUd() float GetTimeMin() const { return mTime - mTimeSubMax; } + GPUd() float GetTimeMax() const { return mTime + mTimeAddMax; } + GPUd() HelperTrackAttributes() : mTime(-1.f), mTimeAddMax(0.f), mTimeSubMax(0.f), mSide(0) {} + }; + struct Hypothesis { int mLayers; // number of layers with TRD space point int mCandidateId; // to which track candidate the hypothesis belongs @@ -102,13 +113,13 @@ class GPUTRDTracker_t : public GPUProcessor } GPUd() bool PreCheckTrackTRDCandidate(const GPUTPCGMMergedTrack& trk) const { return trk.OK() && !trk.Looper(); } GPUd() bool CheckTrackTRDCandidate(const TRDTRK& trk) const; - GPUd() int LoadTrack(const TRDTRK& trk, unsigned int tpcTrackId, bool checkTrack = true); + GPUd() int LoadTrack(const TRDTRK& trk, unsigned int tpcTrackId, bool checkTrack = true, HelperTrackAttributes* attribs = nullptr); - GPUd() int GetCollisionIDs(TRDTRK& trk, int* collisionIds) const; + GPUd() int GetCollisionIDs(int iTrk, int* collisionIds) const; GPUd() void DoTrackingThread(int iTrk, int threadId = 0); static GPUd() bool ConvertTrkltToSpacePoint(const GPUTRDGeometry& geo, GPUTRDTrackletWord& trklt, GPUTRDSpacePoint& sp); GPUd() bool CalculateSpacePoints(int iCollision = 0); - GPUd() bool FollowProlongation(PROP* prop, TRDTRK* t, int threadId, int collisionId); + GPUd() bool FollowProlongation(PROP* prop, TRDTRK* t, int iTrk, int threadId, int collisionId); GPUd() int GetDetectorNumber(const float zPos, const float alpha, const int layer) const; GPUd() bool AdjustSector(PROP* prop, TRDTRK* t) const; GPUd() int GetSector(float alpha) const; @@ -118,8 +129,8 @@ class GPUTRDTracker_t : public GPUProcessor GPUd() float ConvertAngleToDy(float snp) const { return mAngleToDyA + mAngleToDyB * snp + mAngleToDyC * snp * snp; } // a + b*snp + c*snp^2 is more accurate than sin(phi) = (dy / xDrift) / sqrt(1+(dy/xDrift)^2) GPUd() float GetAngularPull(float dYtracklet, float snp) const; GPUd() void RecalcTrkltCov(const float tilt, const float snp, const float rowSize, My_Float (&cov)[3]); - GPUd() void FindChambersInRoad(const TRDTRK* t, const float roadY, const float roadZ, const int iLayer, int* det, const float zMax, const float alpha) const; - GPUd() bool IsGeoFindable(const TRDTRK* t, const int layer, const float alpha) const; + GPUd() void FindChambersInRoad(const TRDTRK* t, const float roadY, const float roadZ, const int iLayer, int* det, const float zMax, const float alpha, const float zShiftTrk) const; + GPUd() bool IsGeoFindable(const TRDTRK* t, const int layer, const float alpha, const float zShiftTrk) const; GPUd() void InsertHypothesis(Hypothesis hypo, int& nCurrHypothesis, int idxOffset); @@ -161,6 +172,7 @@ class GPUTRDTracker_t : public GPUProcessor int mNMaxTracks; // max number of tracks the tracker can handle (per event) int mNMaxSpacePoints; // max number of space points hold by the tracker (per event) TRDTRK* mTracks; // array of trd-updated tracks + HelperTrackAttributes* mTrackAttribs; // array with additional (transient) track attributes int mNCandidates; // max. track hypothesis per layer int mNTracks; // number of TPC tracks to be matched int mNEvents; // number of processed events diff --git a/GPU/GPUTracking/TRDTracking/macros/run_trd_tracker.C b/GPU/GPUTracking/TRDTracking/macros/run_trd_tracker.C index faa65de975528..7a1fe6dc98686 100644 --- a/GPU/GPUTracking/TRDTracking/macros/run_trd_tracker.C +++ b/GPU/GPUTracking/TRDTracking/macros/run_trd_tracker.C @@ -52,10 +52,10 @@ void run_trd_tracker(std::string path = "./", // different settings are defined in GPUSettingsList.h GPUSettingsGRP cfgGRP; // defaults should be ok GPUSettingsRec cfgRec; // settings concerning reconstruction - cfgRec.trdMinTrackPt = .5f; - cfgRec.trdMaxChi2 = 15.f; - cfgRec.trdPenaltyChi2 = 12.f; - cfgRec.trdStopTrkAfterNMissLy = 6; + cfgRec.trd.minTrackPt = .5f; + cfgRec.trd.maxChi2 = 15.f; + cfgRec.trd.penaltyChi2 = 12.f; + cfgRec.trd.stopTrkAfterNMissLy = 6; GPUSettingsProcessing cfgDeviceProcessing; // also keep defaults here, or adjust debug level cfgDeviceProcessing.debugLevel = 5; GPURecoStepConfiguration cfgRecoStep; @@ -140,8 +140,12 @@ void run_trd_tracker(std::string path = "./", // load everything into the tracker for (unsigned int iTrk = 0; iTrk < nTracks; ++iTrk) { const auto& trkITSTPC = tracksInArrayPtr->at(iTrk); - GPUTRDTrack trkLoad(trkITSTPC, tpcVdrift); - tracker->LoadTrack(trkLoad, iTrk); + GPUTRDTracker::HelperTrackAttributes trkAttribs; + trkAttribs.mTime = trkITSTPC.getTimeMUS().getTimeStamp(); + trkAttribs.mTimeAddMax = trkITSTPC.getTimeMUS().getTimeStampError(); + trkAttribs.mTimeSubMax = trkITSTPC.getTimeMUS().getTimeStampError(); + GPUTRDTrack trkLoad(trkITSTPC); + tracker->LoadTrack(trkLoad, iTrk, true, &trkAttribs); } tracker->DumpTracks(); From f47b061b3ebc5e84fae4ff81d04561e9db38b675 Mon Sep 17 00:00:00 2001 From: Ole Schmidt Date: Tue, 29 Jun 2021 16:01:18 +0200 Subject: [PATCH 122/314] Add path length support, not sure where calculation should be done --- GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h b/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h index 1861b91b2c77b..052c79e01817a 100644 --- a/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h +++ b/GPU/GPUTracking/DataTypes/GPUTRDInterfaceO2Track.h @@ -35,6 +35,7 @@ struct GPUTPCOuterParam; #include "ReconstructionDataFormats/TrackTPCITS.h" #include "DataFormatsTPC/TrackTPC.h" #include "ReconstructionDataFormats/GlobalTrackID.h" +#include "ReconstructionDataFormats/TrackLTIntegral.h" #include "GPUTRDO2BaseTrack.h" namespace GPUCA_NAMESPACE @@ -65,6 +66,8 @@ class trackInterface : public GPUTRDO2BaseTrack GPUd() trackInterface(const GPUTPCGMMergedTrack& trk); GPUd() trackInterface(const gputpcgmmergertypes::GPUTPCOuterParam& param); GPUd() void updateCovZ2(float addZerror) { updateCov(addZerror, o2::track::CovLabels::kSigZ2); } + GPUd() o2::track::TrackLTIntegral& getLTIntegralOut() { return mLTOut; } + GPUd() const o2::track::TrackLTIntegral& getLTIntegralOut() const { return mLTOut; } GPUdi() const float* getPar() const { return getParams(); } @@ -72,6 +75,8 @@ class trackInterface : public GPUTRDO2BaseTrack typedef GPUTRDO2BaseTrack baseClass; + private: + o2::track::TrackLTIntegral mLTOut; ClassDefNV(trackInterface, 1); }; From ef83fd88a8f9b58c4ca160184dbf1ed5e5e86ea3 Mon Sep 17 00:00:00 2001 From: Ole Schmidt Date: Thu, 1 Jul 2021 14:58:23 +0200 Subject: [PATCH 123/314] Add filter for trigger records without ITS contribution --- .../GlobalTracking/src/RecoContainer.cxx | 1 + .../DataFormatsTRD/RecoInputContainer.h | 3 + Detectors/TRD/workflow/CMakeLists.txt | 2 +- .../TRDWorkflow/TRDGlobalTrackingSpec.h | 2 +- .../include/TRDWorkflow/TRDTrackingWorkflow.h | 2 +- .../TRDWorkflow/TRDTrackletTransformerSpec.h | 11 +- .../TRDWorkflowIO/TRDTrackletReaderSpec.h | 1 + .../src/TRDCalibratedTrackletWriterSpec.cxx | 4 +- .../workflow/io/src/TRDTrackletReaderSpec.cxx | 3 + .../workflow/src/TRDGlobalTrackingSpec.cxx | 5 +- .../TRD/workflow/src/TRDTrackingWorkflow.cxx | 11 +- .../src/TRDTrackletTransformerSpec.cxx | 110 ++++++++++++++---- .../src/TRDTrackletTransformerWorkflow.cxx | 27 +++-- .../workflow/src/trd-tracking-workflow.cxx | 4 +- GPU/GPUTracking/DataTypes/GPUDataTypes.h | 1 + GPU/GPUTracking/Global/GPUChainTracking.cxx | 1 + GPU/GPUTracking/Global/GPUChainTracking.h | 1 + GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx | 12 +- .../TRDTracking/GPUTRDTrackerComponent.cxx | 2 + 19 files changed, 150 insertions(+), 53 deletions(-) diff --git a/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx b/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx index 71da3cfceae4a..a7c78dc3f18a8 100644 --- a/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx +++ b/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx @@ -170,6 +170,7 @@ void DataRequest::requestTRDTracklets(bool mc) { addInput({"trdtracklets", o2::header::gDataOriginTRD, "TRACKLETS", 0, Lifetime::Timeframe}); addInput({"trdctracklets", o2::header::gDataOriginTRD, "CTRACKLETS", 0, Lifetime::Timeframe}); + addInput({"trdtrigrecmask", o2::header::gDataOriginTRD, "TRIGRECMASK", 0, Lifetime::Timeframe}); addInput({"trdtriggerrec", o2::header::gDataOriginTRD, "TRKTRGRD", 0, Lifetime::Timeframe}); if (mc) { addInput({"trdtrackletlabels", o2::header::gDataOriginTRD, "TRKLABELS", 0, Lifetime::Timeframe}); diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/RecoInputContainer.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/RecoInputContainer.h index 070939ca3ee42..e23b32fe17357 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/RecoInputContainer.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/RecoInputContainer.h @@ -41,6 +41,7 @@ struct RecoInputContainer { gsl::span mTracklets; gsl::span mSpacePoints; gsl::span mTriggerRecords; + gsl::span mTrigRecMask; unsigned int mNTracklets; unsigned int mNSpacePoints; unsigned int mNTriggerRecords; @@ -58,6 +59,7 @@ inline auto getRecoInputContainer(o2::framework::ProcessingContext& pc, o2::gpu: retVal->mTracklets = pc.inputs().get>("trdtracklets"); retVal->mSpacePoints = pc.inputs().get>("trdctracklets"); retVal->mTriggerRecords = pc.inputs().get>("trdtriggerrec"); + retVal->mTrigRecMask = pc.inputs().get>("trdtrigrecmask"); retVal->mNTracklets = retVal->mTracklets.size(); retVal->mNSpacePoints = retVal->mSpacePoints.size(); @@ -86,6 +88,7 @@ inline void RecoInputContainer::fillGPUIOPtr(o2::gpu::GPUTrackingInOutPointers* ptrs->nTRDTriggerRecords = mNTriggerRecords; ptrs->trdTriggerTimes = &(trdTriggerTimes[0]); ptrs->trdTrackletIdxFirst = &(trdTriggerIndices[0]); + ptrs->trdTrigRecMask = reinterpret_cast(mTrigRecMask.data()); ptrs->nTRDTracklets = mNTracklets; ptrs->trdTracklets = reinterpret_cast(mTracklets.data()); ptrs->trdSpacePoints = reinterpret_cast(mSpacePoints.data()); diff --git a/Detectors/TRD/workflow/CMakeLists.txt b/Detectors/TRD/workflow/CMakeLists.txt index ba457c884fae2..abd686872d479 100644 --- a/Detectors/TRD/workflow/CMakeLists.txt +++ b/Detectors/TRD/workflow/CMakeLists.txt @@ -22,7 +22,7 @@ o2_add_library(TRDWorkflow src/EntropyEncoderSpec.cxx src/TrackBasedCalibSpec.cxx include/TRDWorkflow/VdAndExBCalibSpec.h - PUBLIC_LINK_LIBRARIES O2::Framework O2::DPLUtils O2::Steer O2::Algorithm O2::DataFormatsTRD O2::TRDSimulation O2::TRDReconstruction O2::DetectorsBase O2::SimulationDataFormat O2::TRDBase O2::TRDCalibration O2::GPUTracking O2::GlobalTrackingWorkflowReaders O2::GPUWorkflowHelper O2::ReconstructionDataFormats O2::TPCWorkflow O2::TRDWorkflowIO) + PUBLIC_LINK_LIBRARIES O2::Framework O2::DPLUtils O2::Steer O2::Algorithm O2::DataFormatsTRD O2::TRDSimulation O2::TRDReconstruction O2::DetectorsBase O2::SimulationDataFormat O2::TRDBase O2::TRDCalibration O2::GPUTracking O2::GlobalTrackingWorkflowReaders O2::GPUWorkflowHelper O2::ReconstructionDataFormats O2::ITSWorkflow O2::TPCWorkflow O2::TRDWorkflowIO) o2_add_executable(trap-sim COMPONENT_NAME trd diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/TRDGlobalTrackingSpec.h b/Detectors/TRD/workflow/include/TRDWorkflow/TRDGlobalTrackingSpec.h index 1df530e7d3f3d..83f9f907d528e 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/TRDGlobalTrackingSpec.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/TRDGlobalTrackingSpec.h @@ -56,7 +56,7 @@ class TRDGlobalTracking : public o2::framework::Task }; /// create a processor spec -framework::DataProcessorSpec getTRDGlobalTrackingSpec(bool useMC, o2::dataformats::GlobalTrackID::mask_t src); +framework::DataProcessorSpec getTRDGlobalTrackingSpec(bool useMC, o2::dataformats::GlobalTrackID::mask_t src, bool trigRecFilterActive); } // namespace trd } // namespace o2 diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackingWorkflow.h b/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackingWorkflow.h index 4a3565e83c26e..d427bbb9d9c70 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackingWorkflow.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackingWorkflow.h @@ -22,7 +22,7 @@ namespace o2 namespace trd { -framework::WorkflowSpec getTRDTrackingWorkflow(bool disableRootInp, bool disableRootOut, o2::dataformats::GlobalTrackID::mask_t srcTRD); +framework::WorkflowSpec getTRDTrackingWorkflow(bool disableRootInp, bool disableRootOut, o2::dataformats::GlobalTrackID::mask_t srcTRD, bool trigRecFilterActive); } // namespace trd } // namespace o2 diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackletTransformerSpec.h b/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackletTransformerSpec.h index ee92d14b7332f..efa2ccc2cb12b 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackletTransformerSpec.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackletTransformerSpec.h @@ -11,6 +11,7 @@ #include "Framework/DataProcessorSpec.h" #include "Framework/Task.h" +#include "DataFormatsGlobalTracking/RecoContainer.h" #include "TRDBase/TrackletTransformer.h" @@ -22,16 +23,18 @@ namespace trd class TRDTrackletTransformerSpec : public o2::framework::Task { public: - // TRDTrackletTransformerSpec(); - // ~TRDTrackletTransformerSpec() override = default; + TRDTrackletTransformerSpec(std::shared_ptr dataRequest, bool trigRecFilterActive) : mDataRequest(dataRequest), mTrigRecFilterActive(trigRecFilterActive){}; + ~TRDTrackletTransformerSpec() override = default; void init(o2::framework::InitContext& ic) override; void run(o2::framework::ProcessingContext& pc) override; private: - o2::trd::TrackletTransformer mTransformer; + TrackletTransformer mTransformer; + bool mTrigRecFilterActive; ///< if true, transform only TRD tracklets for which ITS data is available + std::shared_ptr mDataRequest; }; -o2::framework::DataProcessorSpec getTRDTrackletTransformerSpec(); +o2::framework::DataProcessorSpec getTRDTrackletTransformerSpec(bool trigRecFilterActive); } // end namespace trd } // end namespace o2 diff --git a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackletReaderSpec.h b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackletReaderSpec.h index 0f14ca89afcc4..812a56b93f874 100644 --- a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackletReaderSpec.h +++ b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDTrackletReaderSpec.h @@ -50,6 +50,7 @@ class TRDTrackletReader : public o2::framework::Task std::string mInFileNameTrklt{"trdtracklets.root"}; std::string mInTreeNameTrklt{"o2sim"}; std::vector mTrackletsCal, *mTrackletsCalPtr = &mTrackletsCal; + std::vector mTrigRecMask, *mTrigRecMaskPtr = &mTrigRecMask; std::vector mTracklets, *mTrackletsPtr = &mTracklets; std::vector mTriggerRecords, *mTriggerRecordsPtr = &mTriggerRecords; o2::dataformats::MCTruthContainer mLabels, *mLabelsPtr = &mLabels; diff --git a/Detectors/TRD/workflow/io/src/TRDCalibratedTrackletWriterSpec.cxx b/Detectors/TRD/workflow/io/src/TRDCalibratedTrackletWriterSpec.cxx index 81fccf77fea2a..2170479cc9b15 100644 --- a/Detectors/TRD/workflow/io/src/TRDCalibratedTrackletWriterSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDCalibratedTrackletWriterSpec.cxx @@ -31,8 +31,8 @@ o2::framework::DataProcessorSpec getTRDCalibratedTrackletWriterSpec() return MakeRootTreeWriterSpec("calibrated-tracklet-writer", "trdcalibratedtracklets.root", "ctracklets", - BranchDefinition>{InputSpec{"ctracklets", "TRD", "CTRACKLETS"}, "CTracklets"})(); - // BranchDefinition>{InputSpec{"tracklettrigs", "TRD", "TRKTRGRD"}, "TrackTrg"})(); + BranchDefinition>{InputSpec{"ctracklets", "TRD", "CTRACKLETS"}, "CTracklets"}, + BranchDefinition>{InputSpec{"trigrecmask", "TRD", "TRIGRECMASK"}, "TrigRecMask"})(); }; } // end namespace trd diff --git a/Detectors/TRD/workflow/io/src/TRDTrackletReaderSpec.cxx b/Detectors/TRD/workflow/io/src/TRDTrackletReaderSpec.cxx index 615c861a91f22..e20d4ccc0e252 100644 --- a/Detectors/TRD/workflow/io/src/TRDTrackletReaderSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDTrackletReaderSpec.cxx @@ -47,6 +47,7 @@ void TRDTrackletReader::connectTreeCTracklet() mTreeCTrklt.reset((TTree*)mFileCTrklt->Get("ctracklets")); assert(mTreeCTrklt); mTreeCTrklt->SetBranchAddress("CTracklets", &mTrackletsCalPtr); + mTreeCTrklt->SetBranchAddress("TRIGRECMASK", &mTrigRecMaskPtr); LOG(INFO) << "Loaded tree from trdcalibratedtracklets.root with " << mTreeCTrklt->GetEntries() << " entries"; } @@ -78,6 +79,7 @@ void TRDTrackletReader::run(ProcessingContext& pc) mTreeCTrklt->GetEntry(currEntry); LOG(INFO) << "Pushing " << mTrackletsCal.size() << " calibrated TRD tracklets for these trigger records"; pc.outputs().snapshot(Output{o2::header::gDataOriginTRD, "CTRACKLETS", 0, Lifetime::Timeframe}, mTrackletsCal); + pc.outputs().snapshot(Output{o2::header::gDataOriginTRD, "TRIGRECMASK", 0, Lifetime::Timeframe}, mTrigRecMask); } pc.outputs().snapshot(Output{o2::header::gDataOriginTRD, "TRKTRGRD", 0, Lifetime::Timeframe}, mTriggerRecords); @@ -96,6 +98,7 @@ DataProcessorSpec getTRDTrackletReaderSpec(bool useMC, bool useCalibratedTrackle std::vector outputs; if (useCalibratedTracklets) { outputs.emplace_back(o2::header::gDataOriginTRD, "CTRACKLETS", 0, Lifetime::Timeframe); + outputs.emplace_back(o2::header::gDataOriginTRD, "TRIGRECMASK", 0, Lifetime::Timeframe); } outputs.emplace_back(o2::header::gDataOriginTRD, "TRACKLETS", 0, Lifetime::Timeframe); outputs.emplace_back(o2::header::gDataOriginTRD, "TRKTRGRD", 0, Lifetime::Timeframe); diff --git a/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx b/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx index 04bfe3dedcc29..c3d171be84934 100644 --- a/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx +++ b/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx @@ -239,7 +239,7 @@ void TRDGlobalTracking::endOfStream(EndOfStreamContext& ec) mTimer.CpuTime(), mTimer.RealTime(), mTimer.Counter() - 1); } -DataProcessorSpec getTRDGlobalTrackingSpec(bool useMC, GTrackID::mask_t src) +DataProcessorSpec getTRDGlobalTrackingSpec(bool useMC, GTrackID::mask_t src, bool trigRecFilterActive) { std::vector outputs; @@ -260,6 +260,9 @@ DataProcessorSpec getTRDGlobalTrackingSpec(bool useMC, GTrackID::mask_t src) if (GTrackID::includesSource(GTrackID::Source::TPC, src)) { outputs.emplace_back(o2::header::gDataOriginTRD, "MATCHTRD_TPC", 0, Lifetime::Timeframe); outputs.emplace_back(o2::header::gDataOriginTRD, "TRKTRG_TPC", 0, Lifetime::Timeframe); + if (trigRecFilterActive) { + LOG(ERROR) << "Matching to TPC-only tracks requested, but IR without ITS contribution are filtered out. This does not lead to a crash, but it deteriorates the matching efficiency."; + } } std::string processorName = o2::utils::Str::concat_string("trd-globaltracking", GTrackID::getSourcesNames(src)); diff --git a/Detectors/TRD/workflow/src/TRDTrackingWorkflow.cxx b/Detectors/TRD/workflow/src/TRDTrackingWorkflow.cxx index fa2c7eab9cc2e..69b861221cf03 100644 --- a/Detectors/TRD/workflow/src/TRDTrackingWorkflow.cxx +++ b/Detectors/TRD/workflow/src/TRDTrackingWorkflow.cxx @@ -23,6 +23,7 @@ #include "TRDWorkflow/TRDTrackingWorkflow.h" #include "TRDWorkflow/TrackBasedCalibSpec.h" #include "TRDWorkflowIO/TRDCalibWriterSpec.h" +#include "ITSWorkflow/IRFrameReaderSpec.h" using GTrackID = o2::dataformats::GlobalTrackID; @@ -31,7 +32,7 @@ namespace o2 namespace trd { -framework::WorkflowSpec getTRDTrackingWorkflow(bool disableRootInp, bool disableRootOut, GTrackID::mask_t srcTRD) +framework::WorkflowSpec getTRDTrackingWorkflow(bool disableRootInp, bool disableRootOut, GTrackID::mask_t srcTRD, bool trigRecFilterActive) { framework::WorkflowSpec specs; bool useMC = false; @@ -43,11 +44,13 @@ framework::WorkflowSpec getTRDTrackingWorkflow(bool disableRootInp, bool disable specs.emplace_back(o2::tpc::getTPCTrackReaderSpec(useMC)); } specs.emplace_back(o2::trd::getTRDTrackletReaderSpec(useMC, false)); + if (trigRecFilterActive) { + specs.emplace_back(o2::its::getIRFrameReaderSpec()); + } } - specs.emplace_back(o2::trd::getTRDTrackletTransformerSpec()); - specs.emplace_back(o2::trd::getTRDGlobalTrackingSpec(useMC, srcTRD)); - + specs.emplace_back(o2::trd::getTRDTrackletTransformerSpec(trigRecFilterActive)); + specs.emplace_back(o2::trd::getTRDGlobalTrackingSpec(useMC, srcTRD, trigRecFilterActive)); specs.emplace_back(o2::trd::getTRDTrackBasedCalibSpec()); if (!disableRootOut) { diff --git a/Detectors/TRD/workflow/src/TRDTrackletTransformerSpec.cxx b/Detectors/TRD/workflow/src/TRDTrackletTransformerSpec.cxx index 8772bd328aac4..78e5e40f3e1d5 100644 --- a/Detectors/TRD/workflow/src/TRDTrackletTransformerSpec.cxx +++ b/Detectors/TRD/workflow/src/TRDTrackletTransformerSpec.cxx @@ -16,9 +16,10 @@ #include "DataFormatsTRD/TriggerRecord.h" #include "DataFormatsTRD/Tracklet64.h" #include "DataFormatsTRD/CalibratedTracklet.h" +#include "CommonDataFormat/IRFrame.h" using namespace o2::framework; -using SubSpecificationType = o2::framework::DataAllocator::SubSpecificationType; +using namespace o2::globaltracking; namespace o2 { @@ -27,45 +28,108 @@ namespace trd void TRDTrackletTransformerSpec::init(o2::framework::InitContext& ic) { - LOG(info) << "initializing tracklet transformer"; + LOG(INFO) << "Initializing tracklet transformer"; } void TRDTrackletTransformerSpec::run(o2::framework::ProcessingContext& pc) { - LOG(info) << "running tracklet transformer"; + LOG(INFO) << "Running tracklet transformer"; - auto tracklets = pc.inputs().get>("inTracklets"); - // std::vector triggerRec = pc.inputs().get>("triggerRecord"); + o2::globaltracking::RecoContainer inputData; + inputData.collectData(pc, *mDataRequest); - std::vector calibratedTracklets; - calibratedTracklets.reserve(tracklets.size()); + //auto tracklets = inputData.getTRDTracklets(); + //auto trigRecs = inputData.getTRDTriggerRecords(); - // temporary. For testing - // for (int reci=0; reci < triggerRec.size(); reci++) - // { - // LOG(info) << triggerRec[reci].getFirstEntry() << " | " << triggerRec[reci].getNumberOfObjects(); - // } + auto tracklets = pc.inputs().get>("trdtracklets"); + auto trigRecs = pc.inputs().get>("trdtriggerrec"); - LOG(info) << tracklets.size() << " tracklets found!"; + std::vector calibratedTracklets(tracklets.size()); - for (const auto& tracklet : tracklets) { - calibratedTracklets.push_back(mTransformer.transformTracklet(tracklet)); + std::vector trigRecBitfield(trigRecs.size()); // flag TRD IR with ITS data (std::vector platform dependend) + int nTrackletsTransformed = 0; + + if (mTrigRecFilterActive) { + const auto irFrames = inputData.getIRFramesITS(); + for (const auto& irFrame : irFrames) { + int lastMatchedIdx = 0; // ITS IR are sorted in time and do not overlap + for (int j = lastMatchedIdx; j < trigRecs.size(); ++j) { + const auto& trigRec = trigRecs[j]; + if (trigRec.getBCData() >= irFrame.getMin()) { + if (trigRec.getBCData() <= irFrame.getMax()) { + // TRD interaction record inside ITS frame + trigRecBitfield[j] = 1; + lastMatchedIdx = j; + } else { + // too late, also the higher trigger records won't match + break; + } + } + } + LOGF(DEBUG, "ITS IR Frame start: %li, end: %li", irFrame.getMin().toLong(), irFrame.getMax().toLong()); + } + /* + // for debugging: print TRD trigger times which are accepted and which are filtered out + for (int j = 0; j < trigRecs.size(); ++j) { + const auto& trigRec = trigRecs[j]; + if (!trigRecBitfield[j]) { + LOGF(DEBUG, "Could not find ITS info for TRD trigger %i: %li", j, trigRec.getBCData().toLong()); + } else { + LOGF(DEBUG, "Found ITS info for TRD trigger %i: %li", j, trigRec.getBCData().toLong()); + } + } + */ + } else { + // fill bitmask with 1 + std::fill(trigRecBitfield.begin(), trigRecBitfield.end(), 1); + } + + if (mTrigRecFilterActive) { + // skip tracklets from TRD triggers without ITS data + for (int iTrig = 0; iTrig < trigRecs.size(); ++iTrig) { + if (!trigRecBitfield[iTrig]) { + continue; + } else { + const auto& trigRec = trigRecs[iTrig]; + for (int iTrklt = trigRec.getFirstTracklet(); iTrklt < trigRec.getFirstTracklet() + trigRec.getNumberOfTracklets(); ++iTrklt) { + calibratedTracklets[iTrklt] = mTransformer.transformTracklet(tracklets[iTrklt]); + ++nTrackletsTransformed; + } + } + } + } else { + // transform all tracklets + for (int iTrklt = 0; iTrklt < tracklets.size(); ++iTrklt) { + calibratedTracklets[iTrklt] = mTransformer.transformTracklet(tracklets[iTrklt]); + ++nTrackletsTransformed; + } } + LOGF(INFO, "Found %lu tracklets. Applied filter for ITS IR frames: %i. Transformed %i tracklets.", tracklets.size(), mTrigRecFilterActive, nTrackletsTransformed); + pc.outputs().snapshot(Output{"TRD", "CTRACKLETS", 0, Lifetime::Timeframe}, calibratedTracklets); + pc.outputs().snapshot(Output{"TRD", "TRIGRECMASK", 0, Lifetime::Timeframe}, trigRecBitfield); } -o2::framework::DataProcessorSpec getTRDTrackletTransformerSpec() +o2::framework::DataProcessorSpec getTRDTrackletTransformerSpec(bool trigRecFilterActive) { - LOG(info) << "getting TRDTrackletTransformerSpec"; + std::shared_ptr dataRequest = std::make_shared(); + if (trigRecFilterActive) { + dataRequest->requestIRFramesITS(); + } + auto& inputs = dataRequest->inputs; + inputs.emplace_back("trdtracklets", "TRD", "TRACKLETS", 0, Lifetime::Timeframe); + inputs.emplace_back("trdtriggerrec", "TRD", "TRKTRGRD", 0, Lifetime::Timeframe); + + std::vector outputs; + outputs.emplace_back("TRD", "CTRACKLETS", 0, Lifetime::Timeframe); + outputs.emplace_back("TRD", "TRIGRECMASK", 0, Lifetime::Timeframe); + return DataProcessorSpec{ "TRDTRACKLETTRANSFORMER", - Inputs{ - InputSpec{"inTracklets", "TRD", "TRACKLETS", 0}, - // InputSpec{"triggerRecord", "TRD", "TRKTRGRD", 0} - }, - Outputs{OutputSpec{"TRD", "CTRACKLETS", 0, Lifetime::Timeframe}}, - AlgorithmSpec{adaptFromTask()}, + inputs, + outputs, + AlgorithmSpec{adaptFromTask(dataRequest, trigRecFilterActive)}, Options{}}; } diff --git a/Detectors/TRD/workflow/src/TRDTrackletTransformerWorkflow.cxx b/Detectors/TRD/workflow/src/TRDTrackletTransformerWorkflow.cxx index 96e5a1df7ee5e..2924256771b84 100644 --- a/Detectors/TRD/workflow/src/TRDTrackletTransformerWorkflow.cxx +++ b/Detectors/TRD/workflow/src/TRDTrackletTransformerWorkflow.cxx @@ -12,6 +12,7 @@ #include "TRDWorkflow/TRDTrackletTransformerSpec.h" #include "TRDWorkflowIO/TRDCalibratedTrackletWriterSpec.h" #include "TRDWorkflowIO/TRDTrackletReaderSpec.h" +#include "ITSWorkflow/IRFrameReaderSpec.h" #include "CommonUtils/ConfigurableParam.h" #include "Framework/CompletionPolicy.h" @@ -20,31 +21,35 @@ using namespace o2::framework; void customize(std::vector& workflowOptions) { - workflowOptions.push_back(ConfigParamSpec{ - "root-in", VariantType::Int, 1, {"enable (1) or disable (0) input from ROOT file"}}); - workflowOptions.push_back(ConfigParamSpec{ - "root-out", VariantType::Int, 1, {"enable (1) or disable (0) output to ROOT file"}}); - workflowOptions.push_back( - ConfigParamSpec{"configKeyValues", VariantType::String, "", {"Semicolon separated key=value strings"}}); + std::vector options{ + {"disable-root-input", o2::framework::VariantType::Bool, false, {"disable root-files input reader"}}, + {"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writer"}}, + {"filter-trigrec", o2::framework::VariantType::Bool, false, {"ignore interaction records without ITS data"}}, + {"configKeyValues", VariantType::String, "", {"Semicolon separated key=value strings ..."}}}; + + std::swap(workflowOptions, options); } #include "Framework/runDataProcessing.h" WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) { - int rootIn = configcontext.options().get("root-in"); - int rootOut = configcontext.options().get("root-out"); o2::conf::ConfigurableParam::updateFromString(configcontext.options().get("configKeyValues")); + auto trigRecFilterActive = configcontext.options().get("filter-trigrec"); + WorkflowSpec spec; - if (rootIn) { + if (!configcontext.options().get("disable-root-input")) { spec.emplace_back(o2::trd::getTRDTrackletReaderSpec(false, false)); + if (trigRecFilterActive) { + spec.emplace_back(o2::its::getIRFrameReaderSpec()); + } } - spec.emplace_back(o2::trd::getTRDTrackletTransformerSpec()); + spec.emplace_back(o2::trd::getTRDTrackletTransformerSpec(trigRecFilterActive)); - if (rootOut) { + if (!configcontext.options().get("disable-root-output")) { spec.emplace_back(o2::trd::getTRDCalibratedTrackletWriterSpec()); } diff --git a/Detectors/TRD/workflow/src/trd-tracking-workflow.cxx b/Detectors/TRD/workflow/src/trd-tracking-workflow.cxx index b4c00daa96547..678f0d9473623 100644 --- a/Detectors/TRD/workflow/src/trd-tracking-workflow.cxx +++ b/Detectors/TRD/workflow/src/trd-tracking-workflow.cxx @@ -28,6 +28,7 @@ void customize(std::vector& workflowOptions) {"disable-root-input", o2::framework::VariantType::Bool, false, {"disable root-files input readers"}}, {"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writers"}}, {"tracking-sources", VariantType::String, std::string{o2::dataformats::GlobalTrackID::ALL}, {"comma-separated list of sources to use for tracking"}}, + {"filter-trigrec", o2::framework::VariantType::Bool, false, {"ignore interaction records without ITS data"}}, {"configKeyValues", VariantType::String, "", {"Semicolon separated key=value strings"}}}; o2::raw::HBFUtilsInitializer::addConfigOption(options); @@ -48,9 +49,10 @@ WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) o2::conf::ConfigurableParam::writeINI("o2trdtracking-workflow_configuration.ini"); auto disableRootInp = configcontext.options().get("disable-root-input"); auto disableRootOut = configcontext.options().get("disable-root-output"); + auto trigRecFilterActive = configcontext.options().get("filter-trigrec"); o2::dataformats::GlobalTrackID::mask_t srcTRD = allowedSources & o2::dataformats::GlobalTrackID::getSourcesMask(configcontext.options().get("tracking-sources")); - auto wf = o2::trd::getTRDTrackingWorkflow(disableRootInp, disableRootOut, srcTRD); + auto wf = o2::trd::getTRDTrackingWorkflow(disableRootInp, disableRootOut, srcTRD, trigRecFilterActive); // configure dpl timer to inject correct firstTFOrbit: start from the 1st orbit of TF containing 1st sampled orbit o2::raw::HBFUtilsInitializer hbfIni(configcontext, wf); diff --git a/GPU/GPUTracking/DataTypes/GPUDataTypes.h b/GPU/GPUTracking/DataTypes/GPUDataTypes.h index 1b0947785beb5..43ef9667dd45b 100644 --- a/GPU/GPUTracking/DataTypes/GPUDataTypes.h +++ b/GPU/GPUTracking/DataTypes/GPUDataTypes.h @@ -295,6 +295,7 @@ struct GPUTrackingInOutPointers { unsigned int nTRDTracks = 0; const float* trdTriggerTimes = nullptr; const int* trdTrackletIdxFirst = nullptr; + const char* trdTrigRecMask = nullptr; unsigned int nTRDTriggerRecords = 0; const GPUTRDTrack* trdTracksITSTPCTRD = nullptr; unsigned int nTRDTracksITSTPCTRD = 0; diff --git a/GPU/GPUTracking/Global/GPUChainTracking.cxx b/GPU/GPUTracking/Global/GPUChainTracking.cxx index 4e7d42f1603c5..f895c3a6151e1 100644 --- a/GPU/GPUTracking/Global/GPUChainTracking.cxx +++ b/GPU/GPUTracking/Global/GPUChainTracking.cxx @@ -489,6 +489,7 @@ void GPUChainTracking::AllocateIOMemory() AllocateIOMemoryHelper(mIOPtrs.nTRDTracks, mIOPtrs.trdTracks, mIOMem.trdTracks); AllocateIOMemoryHelper(mIOPtrs.nTRDTracklets, mIOPtrs.trdTracklets, mIOMem.trdTracklets); AllocateIOMemoryHelper(mIOPtrs.nTRDTracklets, mIOPtrs.trdSpacePoints, mIOMem.trdSpacePoints); + AllocateIOMemoryHelper(mIOPtrs.nTRDTriggerRecords, mIOPtrs.trdTrigRecMask, mIOMem.trdTrigRecMask); AllocateIOMemoryHelper(mIOPtrs.nTRDTriggerRecords, mIOPtrs.trdTriggerTimes, mIOMem.trdTriggerTimes); AllocateIOMemoryHelper(mIOPtrs.nTRDTriggerRecords, mIOPtrs.trdTrackletIdxFirst, mIOMem.trdTrackletIdxFirst); } diff --git a/GPU/GPUTracking/Global/GPUChainTracking.h b/GPU/GPUTracking/Global/GPUChainTracking.h index fd7b099ffe667..8c8d73645d909 100644 --- a/GPU/GPUTracking/Global/GPUChainTracking.h +++ b/GPU/GPUTracking/Global/GPUChainTracking.h @@ -111,6 +111,7 @@ class GPUChainTracking : public GPUChain, GPUReconstructionHelpers::helperDelega std::unique_ptr mergedTrackHitsXYZ; std::unique_ptr trdTracklets; std::unique_ptr trdSpacePoints; + std::unique_ptr trdTrigRecMask; std::unique_ptr trdTriggerTimes; std::unique_ptr trdTrackletIdxFirst; std::unique_ptr trdTracks; diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx index 252bc46366b00..5b9b334e58d13 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx @@ -42,10 +42,7 @@ class GPUTPCGMPolynomialField; #include "TDatabasePDG.h" #include "AliMCParticle.h" #include "AliMCEvent.h" -//static const float piMass = TDatabasePDG::Instance()->GetParticle(211)->Mass(); -#else // GPUCA_ALIROOT_LIB -//static const float piMass = 0.139f; -#endif // !GPUCA_ALIROOT_LIB +#endif // GPUCA_ALIROOT_LIB #include "GPUChainTracking.h" @@ -208,6 +205,10 @@ void GPUTRDTracker_t::PrepareTracking(GPUChainTracking* chainTrack // this function on the host prior to GPU processing //-------------------------------------------------------------------- for (unsigned int iColl = 0; iColl < GetConstantMem()->ioPtrs.nTRDTriggerRecords; ++iColl) { + if (GetConstantMem()->ioPtrs.trdTrigRecMask[iColl] == 0) { + // this trigger is masked as there is no ITS information available for it + continue; + } int nTrklts = 0; int idxOffset = 0; if (mProcessPerTimeFrame) { @@ -413,6 +414,9 @@ GPUd() int GPUTRDTracker_t::GetCollisionIDs(int iTrk, int* collisi //-------------------------------------------------------------------- int nColls = 0; for (unsigned int iColl = 0; iColl < GetConstantMem()->ioPtrs.nTRDTriggerRecords; ++iColl) { + if (GetConstantMem()->ioPtrs.trdTrigRecMask[iColl] == 0) { + continue; + } if (GetConstantMem()->ioPtrs.trdTriggerTimes[iColl] > mTrackAttribs[iTrk].GetTimeMin() && GetConstantMem()->ioPtrs.trdTriggerTimes[iColl] < mTrackAttribs[iTrk].GetTimeMax()) { if (nColls == 20) { GPUError("Found too many collision candidates for track with tMin(%f) and tMax(%f)", mTrackAttribs[iTrk].GetTimeMin(), mTrackAttribs[iTrk].GetTimeMax()); diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTrackerComponent.cxx b/GPU/GPUTracking/TRDTracking/GPUTRDTrackerComponent.cxx index 8640c58f5aa81..63cdf5ccb2886 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTrackerComponent.cxx +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTrackerComponent.cxx @@ -367,6 +367,8 @@ int GPUTRDTrackerComponent::DoEvent(const AliHLTComponentEventData& evtData, con fChain->mIOPtrs.nMergedTracks = tracksTPC.size(); fChain->mIOPtrs.nTRDTracklets = nTrackletsTotal; fChain->mIOPtrs.nTRDTriggerRecords = 1; + char trigRecMaskDummy[1] = {1}; + fChain->mIOPtrs.trdTrigRecMask = &(trigRecMaskDummy[0]); fRec->PrepareEvent(); fRec->SetupGPUProcessor(fTracker, true); From 229c2d0e6c4a0bad9dcf01ce6a22e8c89818a204 Mon Sep 17 00:00:00 2001 From: Ole Schmidt Date: Tue, 6 Jul 2021 14:41:13 +0200 Subject: [PATCH 124/314] Separate tracklet transformer and tracking and use InputHelper in both workflows --- Detectors/TRD/workflow/CMakeLists.txt | 3 +- .../include/TRDWorkflow/TRDTrackingWorkflow.h | 30 -------- .../workflow/io/src/TRDTrackletReaderSpec.cxx | 3 +- .../workflow/src/TRDGlobalTrackingSpec.cxx | 4 +- .../TRD/workflow/src/TRDTrackingWorkflow.cxx | 69 ------------------- .../src/TRDTrackletTransformerSpec.cxx | 2 +- .../src/TRDTrackletTransformerWorkflow.cxx | 10 +-- .../workflow/src/trd-tracking-workflow.cxx | 48 ++++++++++--- GPU/GPUTracking/Definitions/GPUSettingsList.h | 1 + .../TRDTracking/GPUTRDInterfaces.h | 23 ------- 10 files changed, 52 insertions(+), 141 deletions(-) delete mode 100644 Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackingWorkflow.h delete mode 100644 Detectors/TRD/workflow/src/TRDTrackingWorkflow.cxx diff --git a/Detectors/TRD/workflow/CMakeLists.txt b/Detectors/TRD/workflow/CMakeLists.txt index abd686872d479..f2190edd474ee 100644 --- a/Detectors/TRD/workflow/CMakeLists.txt +++ b/Detectors/TRD/workflow/CMakeLists.txt @@ -17,12 +17,11 @@ o2_add_library(TRDWorkflow src/TRDTrapSimulatorSpec.cxx src/TRDTrackletTransformerSpec.cxx src/TRDGlobalTrackingSpec.cxx - src/TRDTrackingWorkflow.cxx src/EntropyDecoderSpec.cxx src/EntropyEncoderSpec.cxx src/TrackBasedCalibSpec.cxx include/TRDWorkflow/VdAndExBCalibSpec.h - PUBLIC_LINK_LIBRARIES O2::Framework O2::DPLUtils O2::Steer O2::Algorithm O2::DataFormatsTRD O2::TRDSimulation O2::TRDReconstruction O2::DetectorsBase O2::SimulationDataFormat O2::TRDBase O2::TRDCalibration O2::GPUTracking O2::GlobalTrackingWorkflowReaders O2::GPUWorkflowHelper O2::ReconstructionDataFormats O2::ITSWorkflow O2::TPCWorkflow O2::TRDWorkflowIO) + PUBLIC_LINK_LIBRARIES O2::Framework O2::DPLUtils O2::Steer O2::Algorithm O2::DataFormatsTRD O2::TRDSimulation O2::TRDReconstruction O2::DetectorsBase O2::SimulationDataFormat O2::TRDBase O2::TRDCalibration O2::GPUTracking O2::GlobalTrackingWorkflowHelpers O2::GlobalTrackingWorkflowReaders O2::GPUWorkflowHelper O2::ReconstructionDataFormats O2::ITSWorkflow O2::TPCWorkflow O2::TRDWorkflowIO) o2_add_executable(trap-sim COMPONENT_NAME trd diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackingWorkflow.h b/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackingWorkflow.h deleted file mode 100644 index d427bbb9d9c70..0000000000000 --- a/Detectors/TRD/workflow/include/TRDWorkflow/TRDTrackingWorkflow.h +++ /dev/null @@ -1,30 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -#ifndef O2_TRD_TRACKING_WORKFLOW_H -#define O2_TRD_TRACKING_WORKFLOW_H - -/// @file TRDTrackingWorkflow.h - -#include "Framework/WorkflowSpec.h" -#include "ReconstructionDataFormats/GlobalTrackID.h" - -namespace o2 -{ -namespace trd -{ - -framework::WorkflowSpec getTRDTrackingWorkflow(bool disableRootInp, bool disableRootOut, o2::dataformats::GlobalTrackID::mask_t srcTRD, bool trigRecFilterActive); - -} // namespace trd -} // namespace o2 - -#endif diff --git a/Detectors/TRD/workflow/io/src/TRDTrackletReaderSpec.cxx b/Detectors/TRD/workflow/io/src/TRDTrackletReaderSpec.cxx index e20d4ccc0e252..27de47f8dc21c 100644 --- a/Detectors/TRD/workflow/io/src/TRDTrackletReaderSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDTrackletReaderSpec.cxx @@ -47,7 +47,7 @@ void TRDTrackletReader::connectTreeCTracklet() mTreeCTrklt.reset((TTree*)mFileCTrklt->Get("ctracklets")); assert(mTreeCTrklt); mTreeCTrklt->SetBranchAddress("CTracklets", &mTrackletsCalPtr); - mTreeCTrklt->SetBranchAddress("TRIGRECMASK", &mTrigRecMaskPtr); + mTreeCTrklt->SetBranchAddress("TrigRecMask", &mTrigRecMaskPtr); LOG(INFO) << "Loaded tree from trdcalibratedtracklets.root with " << mTreeCTrklt->GetEntries() << " entries"; } @@ -78,6 +78,7 @@ void TRDTrackletReader::run(ProcessingContext& pc) assert(mTreeTrklt->GetEntries() == mTreeCTrklt->GetEntries()); mTreeCTrklt->GetEntry(currEntry); LOG(INFO) << "Pushing " << mTrackletsCal.size() << " calibrated TRD tracklets for these trigger records"; + LOG(INFO) << "Pushing " << mTrigRecMask.size() << " flags for the given TRD trigger records"; pc.outputs().snapshot(Output{o2::header::gDataOriginTRD, "CTRACKLETS", 0, Lifetime::Timeframe}, mTrackletsCal); pc.outputs().snapshot(Output{o2::header::gDataOriginTRD, "TRIGRECMASK", 0, Lifetime::Timeframe}, mTrigRecMask); } diff --git a/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx b/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx index c3d171be84934..c33f1cf4475db 100644 --- a/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx +++ b/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx @@ -146,8 +146,8 @@ void TRDGlobalTracking::run(ProcessingContext& pc) const auto& trkITSTPC = mChainTracking->mIOPtrs.tracksTPCITSO2[iTrk]; GPUTRDTracker::HelperTrackAttributes trkAttribs; trkAttribs.mTime = trkITSTPC.getTimeMUS().getTimeStamp(); - trkAttribs.mTimeAddMax = trkITSTPC.getTimeMUS().getTimeStampError(); - trkAttribs.mTimeSubMax = trkITSTPC.getTimeMUS().getTimeStampError(); + trkAttribs.mTimeAddMax = trkITSTPC.getTimeMUS().getTimeStampError() * mRec->GetParam().rec.trd.nSigmaTerrITSTPC; + trkAttribs.mTimeSubMax = trkITSTPC.getTimeMUS().getTimeStampError() * mRec->GetParam().rec.trd.nSigmaTerrITSTPC; GPUTRDTrack trkLoad(trkITSTPC); auto trackGID = GTrackID(iTrk, GTrackID::ITSTPC); if (mTracker->LoadTrack(trkLoad, trackGID.getRaw(), true, &trkAttribs)) { diff --git a/Detectors/TRD/workflow/src/TRDTrackingWorkflow.cxx b/Detectors/TRD/workflow/src/TRDTrackingWorkflow.cxx deleted file mode 100644 index 69b861221cf03..0000000000000 --- a/Detectors/TRD/workflow/src/TRDTrackingWorkflow.cxx +++ /dev/null @@ -1,69 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -/// @file TRDTrackingWorkflow.cxx - -#include - -#include "Framework/WorkflowSpec.h" -#include "GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h" -#include "TRDWorkflowIO/TRDTrackletReaderSpec.h" -#include "TPCReaderWorkflow/TrackReaderSpec.h" -#include "TRDWorkflow/TRDTrackletTransformerSpec.h" -#include "TRDWorkflow/TRDGlobalTrackingSpec.h" -#include "TRDWorkflowIO/TRDTrackWriterSpec.h" -#include "TRDWorkflow/TRDTrackingWorkflow.h" -#include "TRDWorkflow/TrackBasedCalibSpec.h" -#include "TRDWorkflowIO/TRDCalibWriterSpec.h" -#include "ITSWorkflow/IRFrameReaderSpec.h" - -using GTrackID = o2::dataformats::GlobalTrackID; - -namespace o2 -{ -namespace trd -{ - -framework::WorkflowSpec getTRDTrackingWorkflow(bool disableRootInp, bool disableRootOut, GTrackID::mask_t srcTRD, bool trigRecFilterActive) -{ - framework::WorkflowSpec specs; - bool useMC = false; - if (!disableRootInp) { - if (GTrackID::includesSource(GTrackID::Source::ITSTPC, srcTRD)) { - specs.emplace_back(o2::globaltracking::getTrackTPCITSReaderSpec(useMC)); - } - if (GTrackID::includesSource(GTrackID::Source::TPC, srcTRD)) { - specs.emplace_back(o2::tpc::getTPCTrackReaderSpec(useMC)); - } - specs.emplace_back(o2::trd::getTRDTrackletReaderSpec(useMC, false)); - if (trigRecFilterActive) { - specs.emplace_back(o2::its::getIRFrameReaderSpec()); - } - } - - specs.emplace_back(o2::trd::getTRDTrackletTransformerSpec(trigRecFilterActive)); - specs.emplace_back(o2::trd::getTRDGlobalTrackingSpec(useMC, srcTRD, trigRecFilterActive)); - specs.emplace_back(o2::trd::getTRDTrackBasedCalibSpec()); - - if (!disableRootOut) { - if (GTrackID::includesSource(GTrackID::Source::ITSTPC, srcTRD)) { - specs.emplace_back(o2::trd::getTRDGlobalTrackWriterSpec(useMC)); - } - if (GTrackID::includesSource(GTrackID::Source::TPC, srcTRD)) { - specs.emplace_back(o2::trd::getTRDTPCTrackWriterSpec(useMC)); - } - specs.emplace_back(o2::trd::getTRDCalibWriterSpec()); - } - return specs; -} - -} // namespace trd -} // namespace o2 diff --git a/Detectors/TRD/workflow/src/TRDTrackletTransformerSpec.cxx b/Detectors/TRD/workflow/src/TRDTrackletTransformerSpec.cxx index 78e5e40f3e1d5..49d979a1d37df 100644 --- a/Detectors/TRD/workflow/src/TRDTrackletTransformerSpec.cxx +++ b/Detectors/TRD/workflow/src/TRDTrackletTransformerSpec.cxx @@ -51,8 +51,8 @@ void TRDTrackletTransformerSpec::run(o2::framework::ProcessingContext& pc) if (mTrigRecFilterActive) { const auto irFrames = inputData.getIRFramesITS(); + int lastMatchedIdx = 0; // ITS IR are sorted in time and do not overlap for (const auto& irFrame : irFrames) { - int lastMatchedIdx = 0; // ITS IR are sorted in time and do not overlap for (int j = lastMatchedIdx; j < trigRecs.size(); ++j) { const auto& trigRec = trigRecs[j]; if (trigRec.getBCData() >= irFrame.getMin()) { diff --git a/Detectors/TRD/workflow/src/TRDTrackletTransformerWorkflow.cxx b/Detectors/TRD/workflow/src/TRDTrackletTransformerWorkflow.cxx index 2924256771b84..5b918f7b83da4 100644 --- a/Detectors/TRD/workflow/src/TRDTrackletTransformerWorkflow.cxx +++ b/Detectors/TRD/workflow/src/TRDTrackletTransformerWorkflow.cxx @@ -12,7 +12,7 @@ #include "TRDWorkflow/TRDTrackletTransformerSpec.h" #include "TRDWorkflowIO/TRDCalibratedTrackletWriterSpec.h" #include "TRDWorkflowIO/TRDTrackletReaderSpec.h" -#include "ITSWorkflow/IRFrameReaderSpec.h" +#include "GlobalTrackingWorkflowHelpers/InputHelper.h" #include "CommonUtils/ConfigurableParam.h" #include "Framework/CompletionPolicy.h" @@ -41,10 +41,12 @@ WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) WorkflowSpec spec; if (!configcontext.options().get("disable-root-input")) { + // cannot use InputHelper here, since we have to create the calibrated tracklets first spec.emplace_back(o2::trd::getTRDTrackletReaderSpec(false, false)); - if (trigRecFilterActive) { - spec.emplace_back(o2::its::getIRFrameReaderSpec()); - } + } + + if (trigRecFilterActive) { + o2::globaltracking::InputHelper::addInputSpecsIRFramesITS(configcontext, spec); } spec.emplace_back(o2::trd::getTRDTrackletTransformerSpec(trigRecFilterActive)); diff --git a/Detectors/TRD/workflow/src/trd-tracking-workflow.cxx b/Detectors/TRD/workflow/src/trd-tracking-workflow.cxx index 678f0d9473623..09700cdce57a6 100644 --- a/Detectors/TRD/workflow/src/trd-tracking-workflow.cxx +++ b/Detectors/TRD/workflow/src/trd-tracking-workflow.cxx @@ -9,13 +9,18 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#include "TRDWorkflow/TRDTrackingWorkflow.h" #include "CommonUtils/ConfigurableParam.h" #include "Framework/CompletionPolicy.h" #include "DetectorsRaw/HBFUtilsInitializer.h" #include "ReconstructionDataFormats/GlobalTrackID.h" +#include "TRDWorkflowIO/TRDCalibWriterSpec.h" +#include "TRDWorkflowIO/TRDTrackWriterSpec.h" +#include "TRDWorkflow/TrackBasedCalibSpec.h" +#include "TRDWorkflow/TRDGlobalTrackingSpec.h" +#include "GlobalTrackingWorkflowHelpers/InputHelper.h" using namespace o2::framework; +using GTrackID = o2::dataformats::GlobalTrackID; // ------------------------------------------------------------------ @@ -27,7 +32,7 @@ void customize(std::vector& workflowOptions) {"disable-mc", o2::framework::VariantType::Bool, false, {"Disable MC labels"}}, {"disable-root-input", o2::framework::VariantType::Bool, false, {"disable root-files input readers"}}, {"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writers"}}, - {"tracking-sources", VariantType::String, std::string{o2::dataformats::GlobalTrackID::ALL}, {"comma-separated list of sources to use for tracking"}}, + {"tracking-sources", VariantType::String, std::string{GTrackID::ALL}, {"comma-separated list of sources to use for tracking"}}, {"filter-trigrec", o2::framework::VariantType::Bool, false, {"ignore interaction records without ITS data"}}, {"configKeyValues", VariantType::String, "", {"Semicolon separated key=value strings"}}}; @@ -42,20 +47,45 @@ void customize(std::vector& workflowOptions) WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) { - o2::dataformats::GlobalTrackID::mask_t allowedSources = o2::dataformats::GlobalTrackID::getSourcesMask("ITS-TPC,TPC"); + GTrackID::mask_t allowedSources = GTrackID::getSourcesMask("ITS-TPC,TPC"); // Update the (declared) parameters if changed from the command line o2::conf::ConfigurableParam::updateFromString(configcontext.options().get("configKeyValues")); // write the configuration used for the workflow o2::conf::ConfigurableParam::writeINI("o2trdtracking-workflow_configuration.ini"); - auto disableRootInp = configcontext.options().get("disable-root-input"); - auto disableRootOut = configcontext.options().get("disable-root-output"); auto trigRecFilterActive = configcontext.options().get("filter-trigrec"); - o2::dataformats::GlobalTrackID::mask_t srcTRD = allowedSources & o2::dataformats::GlobalTrackID::getSourcesMask(configcontext.options().get("tracking-sources")); + GTrackID::mask_t srcTRD = allowedSources & GTrackID::getSourcesMask(configcontext.options().get("tracking-sources")); - auto wf = o2::trd::getTRDTrackingWorkflow(disableRootInp, disableRootOut, srcTRD, trigRecFilterActive); + o2::framework::WorkflowSpec specs; + bool useMC = false; + if (!configcontext.options().get("disable-mc") && !useMC) { + LOG(WARNING) << "MC is not disabled, although it is not yet supported by the workflow. It is forced off."; + } + + // processing devices + specs.emplace_back(o2::trd::getTRDGlobalTrackingSpec(useMC, srcTRD, trigRecFilterActive)); + if (GTrackID::includesSource(GTrackID::Source::ITSTPC, srcTRD)) { + specs.emplace_back(o2::trd::getTRDTrackBasedCalibSpec()); + } + + // output devices + if (!configcontext.options().get("disable-root-output")) { + if (GTrackID::includesSource(GTrackID::Source::ITSTPC, srcTRD)) { + specs.emplace_back(o2::trd::getTRDGlobalTrackWriterSpec(useMC)); + specs.emplace_back(o2::trd::getTRDCalibWriterSpec()); + } + if (GTrackID::includesSource(GTrackID::Source::TPC, srcTRD)) { + specs.emplace_back(o2::trd::getTRDTPCTrackWriterSpec(useMC)); + } + } + + // input + auto maskClusters = GTrackID::getSourcesMask("TRD"); + auto maskTracks = srcTRD & GTrackID::getSourcesMask("TPC"); + auto maskMatches = srcTRD & GTrackID::getSourcesMask("ITS-TPC"); + o2::globaltracking::InputHelper::addInputSpecs(configcontext, specs, maskClusters, maskMatches, maskTracks, useMC); // configure dpl timer to inject correct firstTFOrbit: start from the 1st orbit of TF containing 1st sampled orbit - o2::raw::HBFUtilsInitializer hbfIni(configcontext, wf); + o2::raw::HBFUtilsInitializer hbfIni(configcontext, specs); - return std::move(wf); + return std::move(specs); } diff --git a/GPU/GPUTracking/Definitions/GPUSettingsList.h b/GPU/GPUTracking/Definitions/GPUSettingsList.h index 093009b6483ea..821a272099c99 100644 --- a/GPU/GPUTracking/Definitions/GPUSettingsList.h +++ b/GPU/GPUTracking/Definitions/GPUSettingsList.h @@ -83,6 +83,7 @@ BeginSubConfig(GPUSettingsRecTRD, trd, configStandalone.rec, "RECTRD", 0, "Recon AddOptionRTC(minTrackPt, float, .5f, "", 0, "Min Pt for tracks to be propagated through the TRD") AddOptionRTC(maxChi2, float, 15.f, "", 0, "Max chi2 for TRD tracklets to be matched to a track") AddOptionRTC(penaltyChi2, float, 12.f, "", 0, "Chi2 penalty for no available TRD tracklet (effective chi2 cut value)") +AddOptionRTC(nSigmaTerrITSTPC, float, 4.f, "", 0, "Number of sigmas for ITS-TPC track time error estimate") AddOptionRTC(stopTrkAfterNMissLy, unsigned char, 6, "", 0, "Abandon track following after N layers without a TRD match") AddHelp("help", 'h') EndConfig() diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h b/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h index bc0310eee0643..d323748928ea0 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h +++ b/GPU/GPUTracking/TRDTracking/GPUTRDInterfaces.h @@ -250,13 +250,6 @@ class trackInterface : public GPUTPCGMTrackParam for (int i = 0; i < 15; i++) { SetCov(i, param.getParamOut().getCov()[i]); } - /* - mTime = param.getTimeMUS().getTimeStamp(); - mTimeAddMax = param.getTimeMUS().getTimeStampError(); - mTimeSubMax = param.getTimeMUS().getTimeStampError(); - float tmp = param.getTimeMUS().getTimeStampError() * 2.58f; // TPCvDrift = 2.58 cm/us fixed for now, should come from CCDB - Cov()[2] += tmp * tmp; // account for time uncertainty by increasing sigmaZ2 - */ } trackInterface(const o2::tpc::TrackTPC& param) : GPUTPCGMTrackParam(), mAlpha(param.getParamOut().getAlpha()) { @@ -269,22 +262,6 @@ class trackInterface : public GPUTPCGMTrackParam for (int i = 0; i < 15; i++) { SetCov(i, param.getParamOut().getCov()[i]); } - /* - const float tpcZBinWidth = 0.199606f; - mTime = param.getTime0() * tpcZBinWidth; - mTimeAddMax = param.getDeltaTFwd() * tpcZBinWidth; - mTimeSubMax = param.getDeltaTBwd() * tpcZBinWidth; - if (param.hasASideClustersOnly()) { - mSide = -1; - } else if (param.hasCSideClustersOnly()) { - mSide = 1; - } else { - // CE-crossing tracks are not shifted along z, but the time uncertainty is taken into account by increasing sigmaZ2 - float timeWindow = (mTimeAddMax + mTimeSubMax) * .5f; - float tmp = timeWindow * 2.58f; // TPCvDrift = 2.58 cm/us fixed for now, should come from CCDB - Cov()[2] += tmp * tmp; - } - */ } #endif From cc315e0ae7e516befc86dd23ab21528e155c9f6e Mon Sep 17 00:00:00 2001 From: Ole Schmidt Date: Thu, 8 Jul 2021 11:34:44 +0200 Subject: [PATCH 125/314] Check filter flag in TRD reco and adapt FST script --- .../include/TRDWorkflow/TRDGlobalTrackingSpec.h | 3 ++- .../TRD/workflow/src/TRDGlobalTrackingSpec.cxx | 15 ++++++++++++++- prodtests/full-system-test/dpl-workflow.sh | 6 ++++-- prodtests/sim_challenge.sh | 6 ++++-- 4 files changed, 24 insertions(+), 6 deletions(-) diff --git a/Detectors/TRD/workflow/include/TRDWorkflow/TRDGlobalTrackingSpec.h b/Detectors/TRD/workflow/include/TRDWorkflow/TRDGlobalTrackingSpec.h index 83f9f907d528e..3058afba3be3c 100644 --- a/Detectors/TRD/workflow/include/TRDWorkflow/TRDGlobalTrackingSpec.h +++ b/Detectors/TRD/workflow/include/TRDWorkflow/TRDGlobalTrackingSpec.h @@ -34,7 +34,7 @@ namespace trd class TRDGlobalTracking : public o2::framework::Task { public: - TRDGlobalTracking(bool useMC, std::shared_ptr dataRequest, o2::dataformats::GlobalTrackID::mask_t src) : mUseMC(useMC), mDataRequest(dataRequest), mTrkMask(src) {} + TRDGlobalTracking(bool useMC, std::shared_ptr dataRequest, o2::dataformats::GlobalTrackID::mask_t src, bool trigRecFilterActive) : mUseMC(useMC), mDataRequest(dataRequest), mTrkMask(src), mTrigRecFilter(trigRecFilterActive) {} ~TRDGlobalTracking() override = default; void init(o2::framework::InitContext& ic) final; void updateTimeDependentParams(); @@ -48,6 +48,7 @@ class TRDGlobalTracking : public o2::framework::Task o2::gpu::GPUChainTracking* mChainTracking{nullptr}; ///< TRD tracker is run in the tracking chain std::unique_ptr mFlatGeo{nullptr}; ///< flat TRD geometry bool mUseMC{false}; ///< MC flag + bool mTrigRecFilter{false}; ///< if true, TRD trigger records without matching ITS IR are filtered out float mTPCTBinMUS{.2f}; ///< width of a TPC time bin in us float mTPCVdrift{2.58f}; ///< TPC drift velocity (for shifting TPC tracks along Z) std::shared_ptr mDataRequest; ///< seeding input (TPC-only, ITS-TPC or both) diff --git a/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx b/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx index c33f1cf4475db..e9564a3c16e2f 100644 --- a/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx +++ b/Detectors/TRD/workflow/src/TRDGlobalTrackingSpec.cxx @@ -137,6 +137,19 @@ void TRDGlobalTracking::run(ProcessingContext& pc) mRec->PrepareEvent(); mRec->SetupGPUProcessor(mTracker, true); + // check trigger record filter setting + bool foundFilteredTrigger = false; + for (int iTrig = 0; iTrig < mChainTracking->mIOPtrs.nTRDTriggerRecords; ++iTrig) { + if (mChainTracking->mIOPtrs.trdTrigRecMask[iTrig] == 0) { + foundFilteredTrigger = true; + } + } + if (!foundFilteredTrigger && mTrigRecFilter) { + LOG(WARNING) << "Trigger filtering requested, but no TRD trigger is actually masked. Can be that none needed to be masked or that the setting was not active for the tracklet transformer"; + } else if (foundFilteredTrigger && !mTrigRecFilter) { + LOG(ERROR) << "Trigger filtering is not requested, but masked TRD triggers are found. Rerun tracklet transformer without trigger filtering"; + } + // load input tracks LOG(DEBUG) << "Start loading input seeds into TRD tracker"; int nTracksLoadedITSTPC = 0; @@ -272,7 +285,7 @@ DataProcessorSpec getTRDGlobalTrackingSpec(bool useMC, GTrackID::mask_t src, boo processorName, inputs, outputs, - AlgorithmSpec{adaptFromTask(useMC, dataRequest, src)}, + AlgorithmSpec{adaptFromTask(useMC, dataRequest, src, trigRecFilterActive)}, Options{}}; } diff --git a/prodtests/full-system-test/dpl-workflow.sh b/prodtests/full-system-test/dpl-workflow.sh index 25c5e449138b3..4efe4d1ef88b9 100755 --- a/prodtests/full-system-test/dpl-workflow.sh +++ b/prodtests/full-system-test/dpl-workflow.sh @@ -44,10 +44,12 @@ TOF_OUTPUT=clusters ITS_CONFIG= ITS_CONFIG_KEY= TRD_CONFIG= +TRD_TRANSFORMER_CONFIG= if [ $SYNCMODE == 1 ]; then ITS_CONFIG_KEY+="fastMultConfig.cutMultClusLow=30;fastMultConfig.cutMultClusHigh=2000;fastMultConfig.cutMultVtxHigh=500;" GPU_CONFIG_KEY+="GPU_global.synchronousProcessing=1;GPU_proc.clearO2OutputFromGPU=1;" - TRD_CONFIG+=" --tracking-sources ITS-TPC --configKeyValues 'GPU_proc.ompThreads=1;'" + TRD_CONFIG+=" --tracking-sources ITS-TPC --filter-trigrec --configKeyValues 'GPU_proc.ompThreads=1;'" + TRD_TRANSFORMER_CONFIG+=" --filter-trigrec" else TRD_CONFIG+=" --tracking-sources TPC,ITS-TPC" fi @@ -128,7 +130,7 @@ WORKFLOW+="o2-gpu-reco-workflow ${ARGS_ALL/--severity $SEVERITY/--severity $SEVE WORKFLOW+="o2-tpcits-match-workflow $ARGS_ALL --disable-root-input --disable-root-output $DISABLE_MC --pipeline itstpc-track-matcher:$N_TPCITS | " WORKFLOW+="o2-ft0-reco-workflow $ARGS_ALL --disable-root-input --disable-root-output $DISABLE_MC | " WORKFLOW+="o2-tof-reco-workflow $ARGS_ALL --input-type $TOF_INPUT --output-type $TOF_OUTPUT --disable-root-input --disable-root-output $DISABLE_MC | " -WORKFLOW+="o2-trd-tracklet-transformer $ARGS_ALL --root-in 0 --root-out 0 | " +WORKFLOW+="o2-trd-tracklet-transformer $ARGS_ALL --disable-root-input --disable-root-output $TRD_TRANSFORMER_CONFIG | " WORKFLOW+="o2-trd-global-tracking $ARGS_ALL --disable-root-input --disable-root-output $TRD_CONFIG | " # Workflows disabled in sync mode diff --git a/prodtests/sim_challenge.sh b/prodtests/sim_challenge.sh index 8c11b6876816d..208239e9b2a52 100755 --- a/prodtests/sim_challenge.sh +++ b/prodtests/sim_challenge.sh @@ -152,9 +152,11 @@ if [ "$doreco" == "1" ]; then echo "Return status of itstpcMatch: $?" echo "Running TRD matching to ITS-TPC and TPC" - #needs results of o2-tpc-reco-workflow and o2-tpcits-match-workflow + #needs results of o2-tpc-reco-workflow, o2-tpcits-match-workflow and o2-trd-tracklet-transformer + taskwrapper trdTrkltTransf.log o2-trd-tracklet-transformer $gloOpt + echo "Return status of trdTrkltTransf: $?" taskwrapper trdMatch.log o2-trd-global-tracking $gloOpt - echo "Return status of itstpcMatch: $?" + echo "Return status of trdTracker: $?" echo "Running TOF reco flow to produce clusters" #needs results of TOF digitized data and results of o2-tpcits-match-workflow From b699ff8aae0dd65c30d5895708175a4ed7d48223 Mon Sep 17 00:00:00 2001 From: Anton Alkin Date: Fri, 9 Jul 2021 10:03:49 +0200 Subject: [PATCH 126/314] [O2-2453] DPL Analysis: Fix integer result type inference for expressions --- Framework/Core/src/Expressions.cxx | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Framework/Core/src/Expressions.cxx b/Framework/Core/src/Expressions.cxx index 8ba4950faa28e..e7a1f6c8bfc83 100644 --- a/Framework/Core/src/Expressions.cxx +++ b/Framework/Core/src/Expressions.cxx @@ -277,6 +277,12 @@ Operations createOperations(Filter const& expression) if (t2 == atype::DOUBLE) { return atype::DOUBLE; } + if (isIntType(t2)) { + if (t1 > t2) { + return t1; + } + return t2; + } } if (t1 == atype::FLOAT) { if (isIntType(t2)) { From e0d179f7ad237ddc1b3030f242cf086af59afbca Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Fri, 9 Jul 2021 14:52:16 +0200 Subject: [PATCH 127/314] DPL: process region callbacks as early as possible (#6553) In case we are not running, we can afford processing the callbacks as soon as possible. --- Framework/Core/src/DataProcessingDevice.cxx | 39 ++++++++++++++++----- 1 file changed, 31 insertions(+), 8 deletions(-) diff --git a/Framework/Core/src/DataProcessingDevice.cxx b/Framework/Core/src/DataProcessingDevice.cxx index b070fe7dde62a..f3dea6416d523 100644 --- a/Framework/Core/src/DataProcessingDevice.cxx +++ b/Framework/Core/src/DataProcessingDevice.cxx @@ -343,10 +343,25 @@ void on_signal_callback(uv_signal_t* handle, int signum) context->stats->totalSigusr1 += 1; } +/// Invoke the callbacks for the mPendingRegionInfos +void handleRegionCallbacks(ServiceRegistry& registry, std::vector& infos) +{ + if (infos.empty() == false) { + std::vector toBeNotified; + toBeNotified.swap(infos); // avoid any MT issue. + for (auto const& info : toBeNotified) { + registry.get()(CallbackService::Id::RegionInfoCallback, info); + } + } +} + void DataProcessingDevice::InitTask() { for (auto& channel : fChannels) { - channel.second.at(0).Transport()->SubscribeToRegionEvents([&pendingRegionInfos = mPendingRegionInfos, ®ionInfoMutex = mRegionInfoMutex](FairMQRegionInfo info) { + channel.second.at(0).Transport()->SubscribeToRegionEvents([this, + ®istry = mServiceRegistry, + &pendingRegionInfos = mPendingRegionInfos, + ®ionInfoMutex = mRegionInfoMutex](FairMQRegionInfo info) { std::lock_guard lock(regionInfoMutex); LOG(debug) << ">>> Region info event" << info.event; LOG(debug) << "id: " << info.id; @@ -354,6 +369,10 @@ void DataProcessingDevice::InitTask() LOG(debug) << "size: " << info.size; LOG(debug) << "flags: " << info.flags; pendingRegionInfos.push_back(info); + // When not running we can handle the callbacks synchronously. + if (this->GetCurrentState() != fair::mq::State::Running) { + handleRegionCallbacks(registry, pendingRegionInfos); + } }); } @@ -498,6 +517,12 @@ void DataProcessingDevice::Reset() { mServiceRegistry.get()(Cal bool DataProcessingDevice::ConditionalRun() { + // Notify on the main thread the new region callbacks, making sure + // no callback is issued if there is something still processing. + { + std::lock_guard lock(mRegionInfoMutex); + handleRegionCallbacks(mServiceRegistry, mPendingRegionInfos); + } // This will block for the correct delay (or until we get data // on a socket). We also do not block on the first iteration // so that devices which do not have a timer can still start an @@ -529,15 +554,13 @@ bool DataProcessingDevice::ConditionalRun() // Notify on the main thread the new region callbacks, making sure // no callback is issued if there is something still processing. + // Notice that we still need to perform callbacks also after + // the socket epolled, because otherwise we would end up serving + // the callback after the first data arrives is the system is too + // fast to transition from Init to Run. { std::lock_guard lock(mRegionInfoMutex); - if (mPendingRegionInfos.empty() == false) { - std::vector toBeNotified; - toBeNotified.swap(mPendingRegionInfos); // avoid any MT issue. - for (auto const& info : toBeNotified) { - mServiceRegistry.get()(CallbackService::Id::RegionInfoCallback, info); - } - } + handleRegionCallbacks(mServiceRegistry, mPendingRegionInfos); } assert(mStreams.size() == mHandles.size()); From 12f49a1c8eb4d00bd3f76d3aacc7005b07ab6b86 Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Fri, 9 Jul 2021 12:09:25 +0200 Subject: [PATCH 128/314] It's enough to use MCHeader file to create digi context --- Steer/include/Steer/HitProcessingManager.h | 4 ++-- Steer/src/HitProcessingManager.cxx | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/Steer/include/Steer/HitProcessingManager.h b/Steer/include/Steer/HitProcessingManager.h index 74c5b992b5139..9494ba58f17d6 100644 --- a/Steer/include/Steer/HitProcessingManager.h +++ b/Steer/include/Steer/HitProcessingManager.h @@ -43,10 +43,10 @@ class HitProcessingManager } ~HitProcessingManager() = default; - // add background file to chain + // add background file (simprefix) to chain void addInputFile(std::string_view simfilename); - // add a signal file to chain corresponding to signal index "signalindex" + // add a signal file (simprefix) to chain corresponding to signal index "signalindex" void addInputSignalFile(std::string_view signalfilename, int signalindex = 1); void setGeometryFile(std::string const& geomfile) { mGeometryFile = geomfile; } diff --git a/Steer/src/HitProcessingManager.cxx b/Steer/src/HitProcessingManager.cxx index 63076062bb0b7..d8d5e8f0f978a 100644 --- a/Steer/src/HitProcessingManager.cxx +++ b/Steer/src/HitProcessingManager.cxx @@ -56,7 +56,7 @@ bool HitProcessingManager::setupChain() auto& c = *mSimChains[0]; c.Reset(); for (auto& filename : mBackgroundFileNames) { - c.AddFile(o2::base::NameConf::getMCKinematicsFileName(filename.data()).c_str()); + c.AddFile(o2::base::NameConf::getMCHeadersFileName(filename.data()).c_str()); } for (auto& pair : mSignalFileNames) { @@ -64,7 +64,7 @@ bool HitProcessingManager::setupChain() const auto& filenamevector = pair.second; auto& chain = *mSimChains[signalid]; for (auto& filename : filenamevector) { - chain.AddFile(o2::base::NameConf::getMCKinematicsFileName(filename.data()).c_str()); + chain.AddFile(o2::base::NameConf::getMCHeadersFileName(filename.data()).c_str()); } } From dade6a01e69d83aceae0c626734915a44853a015 Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Fri, 9 Jul 2021 15:23:51 +0200 Subject: [PATCH 129/314] Less verbose printing in HitMerger --- run/O2HitMerger.h | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/run/O2HitMerger.h b/run/O2HitMerger.h index d74adea37bf15..7492cc8c6b1fb 100644 --- a/run/O2HitMerger.h +++ b/run/O2HitMerger.h @@ -385,7 +385,7 @@ class O2HitMerger : public FairMQDevice auto memfile = mEventToTMemFileMap[info.eventID]; tree->SetEntries(tree->GetEntries() + 1); LOG(INFO) << "tree has file " << tree->GetDirectory()->GetFile()->GetName(); - memfile->Write("", TObject::kOverwrite); + // memfile->Write("", TObject::kOverwrite); mEntries++; if (isDataComplete(accum, info.nparts)) { @@ -697,7 +697,6 @@ class O2HitMerger : public FairMQDevice trackoffsets.emplace_back(info->npersistenttracks); nprimaries.emplace_back(info->nprimarytracks); nsubevents.emplace_back(info->part); - info->mMCEventHeader.printInfo(); if (eventheader == nullptr) { eventheader = &info->mMCEventHeader; } else { @@ -717,7 +716,6 @@ class O2HitMerger : public FairMQDevice } // put the event headers into the new TTree - eventheader->printInfo(); auto headerbr = o2::base::getOrMakeBranch(*mOutTree, "MCEventHeader.", &eventheader); headerbr->SetAddress(&eventheader); headerbr->Fill(); From 8cc1b488be892e1bd94ca9b25b4f337f24c520c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADt=20Ku=C4=8Dera?= Date: Fri, 9 Jul 2021 15:32:22 +0200 Subject: [PATCH 130/314] CI: Run space checker on pull_request_target --- .github/workflows/space-checker.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/space-checker.yml b/.github/workflows/space-checker.yml index 81520442e6485..d7eb91329fc91 100644 --- a/.github/workflows/space-checker.yml +++ b/.github/workflows/space-checker.yml @@ -1,6 +1,6 @@ # Find bad spacing in modified text files name: Space checker -on: [push, pull_request] +on: [push, pull_request_target] env: MAIN_BRANCH: dev jobs: From 8cc6c989ae0b5519d65043b6af39d53eeed334f3 Mon Sep 17 00:00:00 2001 From: Anton Alkin Date: Fri, 9 Jul 2021 10:12:18 +0200 Subject: [PATCH 131/314] [O2-2452] DPL Analysis: Fix extende tables example to account for unassigned tracks --- Analysis/Tutorials/src/extendedTables.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Analysis/Tutorials/src/extendedTables.cxx b/Analysis/Tutorials/src/extendedTables.cxx index 91f611ffeb19c..ce511fbb8870d 100644 --- a/Analysis/Tutorials/src/extendedTables.cxx +++ b/Analysis/Tutorials/src/extendedTables.cxx @@ -108,7 +108,7 @@ struct SpawnDynamicColumns { Produces dyntable; Spawns extable; - void process(aod::Collision const&, aod::Tracks const& tracks) + void process(aod::Tracks const& tracks) { for (auto& track : tracks) { dyntable(track.x(), track.y(), track.p()); From 3dd03bb9df8d76189d427735bf8fd09c1a702dd0 Mon Sep 17 00:00:00 2001 From: Laurent Aphecetche Date: Sat, 10 Jul 2021 19:05:59 +0200 Subject: [PATCH 132/314] [O2-2461] MCHRaw: bc offset should be applied before the rollover --- Detectors/MUON/MCH/Raw/Common/src/SampaBunchCrossingCounter.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/MUON/MCH/Raw/Common/src/SampaBunchCrossingCounter.cxx b/Detectors/MUON/MCH/Raw/Common/src/SampaBunchCrossingCounter.cxx index f62863901091d..8dd617eef119b 100644 --- a/Detectors/MUON/MCH/Raw/Common/src/SampaBunchCrossingCounter.cxx +++ b/Detectors/MUON/MCH/Raw/Common/src/SampaBunchCrossingCounter.cxx @@ -26,7 +26,7 @@ uint20_t sampaBunchCrossingCounter(uint32_t orbit, uint16_t bc, { auto offset = CoDecParam::Instance().sampaBcOffset; orbit -= firstOrbit; - auto bunchCrossingCounter = (orbit * LHCMaxBunches + bc) % ((1 << 20) - 1) + offset; + auto bunchCrossingCounter = (orbit * LHCMaxBunches + bc + offset) % ((1 << 20) - 1); impl::assertNofBits("bunchCrossingCounter", bunchCrossingCounter, 20); return bunchCrossingCounter; } From 6d593ff33daf5572aee7a4849ed6da1ae6ccf13b Mon Sep 17 00:00:00 2001 From: Anton Alkin Date: Mon, 12 Jul 2021 09:53:10 +0200 Subject: [PATCH 133/314] DPL Analysis: make all indices behave consistently with Filtered binding (#6607) --- Framework/Core/include/Framework/ASoA.h | 316 +++++++++++++----------- Framework/Core/test/test_ASoA.cxx | 63 ++++- 2 files changed, 232 insertions(+), 147 deletions(-) diff --git a/Framework/Core/include/Framework/ASoA.h b/Framework/Core/include/Framework/ASoA.h index 7219812cc11a5..e894afcd67e1b 100644 --- a/Framework/Core/include/Framework/ASoA.h +++ b/Framework/Core/include/Framework/ASoA.h @@ -1045,7 +1045,12 @@ class Table return filtered_iterator(mColumnChunks, {selection, mOffset}); } - unfiltered_iterator iteratorAt(uint64_t i) const + iterator iteratorAt(uint64_t i) const + { + return rawIteratorAt(i); + } + + unfiltered_iterator rawIteratorAt(uint64_t i) const { return mBegin + (i - mOffset); } @@ -1120,6 +1125,16 @@ class Table return t; } + auto slice(uint64_t start, uint64_t end) + { + return rawSlice(start, end); + } + + auto rawSlice(uint64_t start, uint64_t end) + { + return table_t{mTable->Slice(start, end - start + 1), start}; + } + protected: /// Offset of the table within a larger table. uint64_t mOffset; @@ -1340,153 +1355,153 @@ constexpr auto is_binding_compatible_v() /// Array index: return an array of iterators, defined by values in its elements /// SLICE -#define DECLARE_SOA_SLICE_INDEX_COLUMN_FULL(_Name_, _Getter_, _Type_, _Table_, _Suffix_) \ - struct _Name_##IdSlice : o2::soa::Column<_Type_[2], _Name_##IdSlice> { \ - static_assert(std::is_integral_v<_Type_>, "Index type must be integral"); \ - static_assert((*_Suffix_ == '\0') || (*_Suffix_ == '_'), "Suffix has to begin with _"); \ - static constexpr const char* mLabel = "fIndexSlice" #_Table_ _Suffix_; \ - using base = o2::soa::Column<_Type_[2], _Name_##IdSlice>; \ - using type = _Type_[2]; \ - using column_t = _Name_##IdSlice; \ - using binding_t = _Table_; \ - _Name_##IdSlice(arrow::ChunkedArray const* column) \ - : o2::soa::Column<_Type_[2], _Name_##IdSlice>(o2::soa::ColumnIterator(column)) \ - { \ - } \ - \ - _Name_##IdSlice() = default; \ - _Name_##IdSlice(_Name_##IdSlice const& other) = default; \ - _Name_##IdSlice& operator=(_Name_##IdSlice const& other) = default; \ - std::array<_Type_, 2> inline getIds() const \ - { \ - return _Getter_##Ids(); \ - } \ - \ - std::array<_Type_, 2> _Getter_##Ids() const \ - { \ - return std::array{(*mColumnIterator)[0], (*mColumnIterator)[1]}; \ - } \ - \ - bool has_##_Getter_() const \ - { \ - return (*mColumnIterator)[0] >= 0; \ - } \ - \ - template \ - auto _Getter_##_as() const \ - { \ - assert(mBinding != nullptr); \ - auto t = T{static_cast(mBinding)->asArrowTable()->Slice((*mColumnIterator)[0], (*mColumnIterator)[1] - (*mColumnIterator)[0] + 1u), static_cast((*mColumnIterator)[0])}; \ - static_cast(mBinding)->copyIndexBindings(t); \ - return t; \ - } \ - \ - auto _Getter_() const \ - { \ - return _Getter_##_as(); \ - } \ - \ - template \ - bool setCurrent(T* current) \ - { \ - if constexpr (o2::soa::is_binding_compatible_v()) { \ - assert(current != nullptr); \ - this->mBinding = current; \ - return true; \ - } \ - return false; \ - } \ - \ - bool setCurrentRaw(void* current) \ - { \ - this->mBinding = current; \ - return true; \ - } \ - binding_t* getCurrent() const { return static_cast(mBinding); } \ - void* getCurrentRaw() const { return mBinding; } \ - void* mBinding = nullptr; \ +#define DECLARE_SOA_SLICE_INDEX_COLUMN_FULL(_Name_, _Getter_, _Type_, _Table_, _Suffix_) \ + struct _Name_##IdSlice : o2::soa::Column<_Type_[2], _Name_##IdSlice> { \ + static_assert(std::is_integral_v<_Type_>, "Index type must be integral"); \ + static_assert((*_Suffix_ == '\0') || (*_Suffix_ == '_'), "Suffix has to begin with _"); \ + static constexpr const char* mLabel = "fIndexSlice" #_Table_ _Suffix_; \ + using base = o2::soa::Column<_Type_[2], _Name_##IdSlice>; \ + using type = _Type_[2]; \ + using column_t = _Name_##IdSlice; \ + using binding_t = _Table_; \ + _Name_##IdSlice(arrow::ChunkedArray const* column) \ + : o2::soa::Column<_Type_[2], _Name_##IdSlice>(o2::soa::ColumnIterator(column)) \ + { \ + } \ + \ + _Name_##IdSlice() = default; \ + _Name_##IdSlice(_Name_##IdSlice const& other) = default; \ + _Name_##IdSlice& operator=(_Name_##IdSlice const& other) = default; \ + std::array<_Type_, 2> inline getIds() const \ + { \ + return _Getter_##Ids(); \ + } \ + \ + std::array<_Type_, 2> _Getter_##Ids() const \ + { \ + return std::array{(*mColumnIterator)[0], (*mColumnIterator)[1]}; \ + } \ + \ + bool has_##_Getter_() const \ + { \ + return (*mColumnIterator)[0] >= 0; \ + } \ + \ + template \ + auto _Getter_##_as() const \ + { \ + assert(mBinding != nullptr); \ + auto t = static_cast(mBinding)->rawSlice((*mColumnIterator)[0], (*mColumnIterator)[1]); \ + static_cast(mBinding)->copyIndexBindings(t); \ + return t; \ + } \ + \ + auto _Getter_() const \ + { \ + return _Getter_##_as(); \ + } \ + \ + template \ + bool setCurrent(T* current) \ + { \ + if constexpr (o2::soa::is_binding_compatible_v()) { \ + assert(current != nullptr); \ + this->mBinding = current; \ + return true; \ + } \ + return false; \ + } \ + \ + bool setCurrentRaw(void* current) \ + { \ + this->mBinding = current; \ + return true; \ + } \ + binding_t* getCurrent() const { return static_cast(mBinding); } \ + void* getCurrentRaw() const { return mBinding; } \ + void* mBinding = nullptr; \ }; #define DECLARE_SOA_SLICE_INDEX_COLUMN(_Name_, _Getter_) DECLARE_SOA_SLICE_INDEX_COLUMN_FULL(_Name_, _Getter_, int32_t, _Name_##s, "") ///ARRAY -#define DECLARE_SOA_ARRAY_INDEX_COLUMN_FULL(_Name_, _Getter_, _Type_, _N_, _Table_, _Suffix_) \ - struct _Name_##Ids : o2::soa::Column<_Type_[_N_], _Name_##Ids> { \ - static_assert(std::is_integral_v<_Type_>, "Index type must be integral"); \ - static_assert((*_Suffix_ == '\0') || (*_Suffix_ == '_'), "Suffix has to begin with _"); \ - static constexpr const char* mLabel = "fIndexArray" #_Table_ _Suffix_; \ - using base = o2::soa::Column<_Type_[_N_], _Name_##Ids>; \ - using type = _Type_[_N_]; \ - using column_t = _Name_##Ids; \ - using binding_t = _Table_; \ - _Name_##Ids(arrow::ChunkedArray const* column) \ - : o2::soa::Column<_Type_[_N_], _Name_##Ids>(o2::soa::ColumnIterator(column)) \ - { \ - } \ - \ - _Name_##Ids() = default; \ - _Name_##Ids(_Name_##Ids const& other) = default; \ - _Name_##Ids& operator=(_Name_##Ids const& other) = default; \ - \ - std::array<_Type_, _N_> inline getIds() const \ - { \ - return _Getter_##Ids(); \ - } \ - \ - std::array<_Type_, _N_> _Getter_##Ids() const \ - { \ - return getIds(std::make_index_sequence<_N_>{}); \ - } \ - \ - template \ - std::array<_Type_, _N_> getIds(std::index_sequence) const \ - { \ - return std::array<_Type_, _N_>{(*mColumnIterator)[N]...}; \ - } \ - \ - template \ - bool has_##_Getter_() const \ - { \ - static_assert(N < _N_, "Out-of-bounds"); \ - return (*mColumnIterator)[N] >= 0; \ - } \ - \ - template \ - auto _Getter_##_as() const \ - { \ - assert(mBinding != nullptr); \ - return getIterators(std::make_index_sequence<_N_>{}); \ - } \ - template \ - auto getIterators(std::index_sequence) const \ - { \ - return std::array{(static_cast(mBinding)->begin() + (*mColumnIterator)[N])...}; \ - } \ - \ - auto _Getter_() const \ - { \ - return _Getter_##_as(); \ - } \ - \ - template \ - bool setCurrent(T* current) \ - { \ - if constexpr (o2::soa::is_binding_compatible_v()) { \ - assert(current != nullptr); \ - this->mBinding = current; \ - return true; \ - } \ - return false; \ - } \ - \ - bool setCurrentRaw(void* current) \ - { \ - this->mBinding = current; \ - return true; \ - } \ - binding_t* getCurrent() const { return static_cast(mBinding); } \ - void* getCurrentRaw() const { return mBinding; } \ - void* mBinding = nullptr; \ +#define DECLARE_SOA_ARRAY_INDEX_COLUMN_FULL(_Name_, _Getter_, _Type_, _N_, _Table_, _Suffix_) \ + struct _Name_##Ids : o2::soa::Column<_Type_[_N_], _Name_##Ids> { \ + static_assert(std::is_integral_v<_Type_>, "Index type must be integral"); \ + static_assert((*_Suffix_ == '\0') || (*_Suffix_ == '_'), "Suffix has to begin with _"); \ + static constexpr const char* mLabel = "fIndexArray" #_Table_ _Suffix_; \ + using base = o2::soa::Column<_Type_[_N_], _Name_##Ids>; \ + using type = _Type_[_N_]; \ + using column_t = _Name_##Ids; \ + using binding_t = _Table_; \ + _Name_##Ids(arrow::ChunkedArray const* column) \ + : o2::soa::Column<_Type_[_N_], _Name_##Ids>(o2::soa::ColumnIterator(column)) \ + { \ + } \ + \ + _Name_##Ids() = default; \ + _Name_##Ids(_Name_##Ids const& other) = default; \ + _Name_##Ids& operator=(_Name_##Ids const& other) = default; \ + \ + std::array<_Type_, _N_> inline getIds() const \ + { \ + return _Getter_##Ids(); \ + } \ + \ + std::array<_Type_, _N_> _Getter_##Ids() const \ + { \ + return getIds(std::make_index_sequence<_N_>{}); \ + } \ + \ + template \ + std::array<_Type_, _N_> getIds(std::index_sequence) const \ + { \ + return std::array<_Type_, _N_>{(*mColumnIterator)[N]...}; \ + } \ + \ + template \ + bool has_##_Getter_() const \ + { \ + static_assert(N < _N_, "Out-of-bounds"); \ + return (*mColumnIterator)[N] >= 0; \ + } \ + \ + template \ + auto _Getter_##_as() const \ + { \ + assert(mBinding != nullptr); \ + return getIterators(std::make_index_sequence<_N_>{}); \ + } \ + template \ + auto getIterators(std::index_sequence) const \ + { \ + return std::array{(static_cast(mBinding)->rawIteratorAt((*mColumnIterator)[N]))...}; \ + } \ + \ + auto _Getter_() const \ + { \ + return _Getter_##_as(); \ + } \ + \ + template \ + bool setCurrent(T* current) \ + { \ + if constexpr (o2::soa::is_binding_compatible_v()) { \ + assert(current != nullptr); \ + this->mBinding = current; \ + return true; \ + } \ + return false; \ + } \ + \ + bool setCurrentRaw(void* current) \ + { \ + this->mBinding = current; \ + return true; \ + } \ + binding_t* getCurrent() const { return static_cast(mBinding); } \ + void* getCurrentRaw() const { return mBinding; } \ + void* mBinding = nullptr; \ }; #define DECLARE_SOA_ARRAY_INDEX_COLUMN(_Name_, _Getter_, _Size_) DECLARE_SOA_ARRAY_INDEX_COLUMN_FULL(_Name_, _Getter_, int32_t, _Size_, _Name_##s, "") @@ -1528,7 +1543,7 @@ constexpr auto is_binding_compatible_v() auto _Getter_##_as() const \ { \ assert(mBinding != nullptr); \ - return static_cast(mBinding)->begin() + *mColumnIterator; \ + return static_cast(mBinding)->rawIteratorAt(*mColumnIterator); \ } \ \ auto _Getter_() const \ @@ -1807,6 +1822,7 @@ template class FilteredPolicy : public T { public: + using self_t = FilteredPolicy; using originals = originals_pack_t; using table_t = typename T::table_t; using persistent_columns_t = typename T::persistent_columns_t; @@ -1918,6 +1934,18 @@ class FilteredPolicy : public T doCopyIndexBindings(external_index_columns_t{}, dest); } + auto slice(uint64_t start, uint64_t end) + { + auto start_iterator = std::lower_bound(mSelectedRows.begin(), mSelectedRows.end(), start); + auto stop_iterator = std::lower_bound(start_iterator, mSelectedRows.end(), end); + SelectionVector slicedSelection{start_iterator, stop_iterator}; + std::transform(slicedSelection.begin(), slicedSelection.end(), slicedSelection.begin(), + [&](int64_t idx) { + return idx - static_cast(start); + }); + return self_t{{this->asArrowTable()->Slice(start, end - start + 1)}, std::move(slicedSelection), start}; + } + protected: void sumWithSelection(SelectionVector const& selection) { diff --git a/Framework/Core/test/test_ASoA.cxx b/Framework/Core/test/test_ASoA.cxx index 093fbbc58dfda..7c0471fb821a5 100644 --- a/Framework/Core/test/test_ASoA.cxx +++ b/Framework/Core/test/test_ASoA.cxx @@ -649,6 +649,43 @@ BOOST_AUTO_TEST_CASE(TestEmptyTables) BOOST_CHECK_EQUAL(spawned.size(), 0); } +DECLARE_SOA_TABLE(Origins, "TST", "ORIG", o2::soa::Index<>, test::X, test::SomeBool); +namespace test +{ +DECLARE_SOA_INDEX_COLUMN(Origin, origin); +} +DECLARE_SOA_TABLE(References, "TST", "REFS", o2::soa::Index<>, test::OriginId); + +BOOST_AUTO_TEST_CASE(TestIndexToFiltered) +{ + TableBuilder b; + auto writer = b.cursor(); + for (auto i = 0; i < 20; ++i) { + writer(0, i, i % 3 == 0); + } + auto origins = b.finalize(); + Origins o{origins}; + + TableBuilder w; + auto writer_w = w.cursor(); + for (auto i = 0; i < 5 * 20; ++i) { + writer_w(0, i % 20); + } + auto refs = w.finalize(); + References r{refs}; + expressions::Filter flt = test::someBool == true; + using Flt = o2::soa::Filtered; + Flt f{{o.asArrowTable()}, expressions::createSelection(o.asArrowTable(), flt)}; + r.bindExternalIndices(&f); + auto it = r.begin(); + it.moveByIndex(23); + BOOST_CHECK_EQUAL(it.origin().globalIndex(), 3); + it++; + BOOST_CHECK_EQUAL(it.origin().globalIndex(), 4); + it++; + BOOST_CHECK_EQUAL(it.origin().globalIndex(), 5); +} + namespace test { DECLARE_SOA_ARRAY_INDEX_COLUMN(Points3D, pointGroup, 3); @@ -684,10 +721,8 @@ BOOST_AUTO_TEST_CASE(TestAdvancedIndices) auto s1 = it.pointSlice(); auto g1 = it.pointGroup(); auto bb = std::is_same_v; - BOOST_CHECK(bb); BOOST_CHECK_EQUAL(s1.size(), 2); - aa = {2, 3, 4}; for (int i = 0; i < 3; ++i) { BOOST_CHECK_EQUAL(g1[i].globalIndex(), aa[i]); @@ -697,9 +732,31 @@ BOOST_AUTO_TEST_CASE(TestAdvancedIndices) auto s2 = it.pointSlice(); auto g2 = it.pointGroup(); BOOST_CHECK_EQUAL(s2.size(), 7); - aa = {12, 2, 19}; for (int i = 0; i < 3; ++i) { BOOST_CHECK_EQUAL(g2[i].globalIndex(), aa[i]); } + + using Flt = o2::soa::Filtered; + expressions::Filter flt = test::x <= -6; + Flt f{{pt.asArrowTable()}, expressions::createSelection(pt.asArrowTable(), flt)}; + prt.bindExternalIndices(&f); + + auto it2 = prt.begin(); + auto s1f = it2.pointSlice_as(); + auto g1f = it2.pointGroup_as(); + BOOST_CHECK_EQUAL(s1f.size(), 2); + aa = {2, 3, 4}; + for (int i = 0; i < 3; ++i) { + BOOST_CHECK_EQUAL(g1f[i].globalIndex(), aa[i]); + } + + ++it2; + auto s2f = it2.pointSlice_as(); + auto g2f = it2.pointGroup_as(); + BOOST_CHECK_EQUAL(s2f.size(), 7); + aa = {12, 2, 19}; + for (int i = 0; i < 3; ++i) { + BOOST_CHECK_EQUAL(g2f[i].globalIndex(), aa[i]); + } } From f12c60c54153e2cc1786e130325b81abc7e32794 Mon Sep 17 00:00:00 2001 From: Anton Alkin Date: Mon, 12 Jul 2021 10:01:31 +0200 Subject: [PATCH 134/314] DPL Analysis: add unsigned int types to Variant/Configurable (#6577) * add unsigned int types to Variant * add handling and tests for uints --- .../include/Framework/ConfigParamRegistry.h | 25 +++++++--- .../include/Framework/ConfigParamsHelper.h | 15 +----- Framework/Core/include/Framework/Variant.h | 48 ++++++++++++++++--- Framework/Core/src/BoostOptionsRetriever.cxx | 12 +++++ Framework/Core/src/ConfigParamsHelper.cxx | 12 +++++ Framework/Core/src/PropertyTreeHelpers.cxx | 36 ++++++++++++++ Framework/Core/src/Variant.cxx | 16 ++++++- .../Core/src/WorkflowSerializationHelpers.cxx | 12 +++++ .../Core/test/test_BoostOptionsRetriever.cxx | 12 +++++ .../Core/test/test_ConfigParamRegistry.cxx | 16 +++++++ Framework/Core/test/test_ConfigParamStore.cxx | 20 ++++++++ .../src/FrameworkGUIDeviceInspector.cxx | 15 ++++++ 12 files changed, 212 insertions(+), 27 deletions(-) diff --git a/Framework/Core/include/Framework/ConfigParamRegistry.h b/Framework/Core/include/Framework/ConfigParamRegistry.h index 0f0aa10166bfd..f7bf011abaf00 100644 --- a/Framework/Core/include/Framework/ConfigParamRegistry.h +++ b/Framework/Core/include/Framework/ConfigParamRegistry.h @@ -21,6 +21,24 @@ #include #include +namespace +{ +template +constexpr auto isSimpleType() +{ + return std::is_same_v || + std::is_same_v || + std::is_same_v || + std::is_same_v || + std::is_same_v || + std::is_same_v || + std::is_same_v || + std::is_same_v || + std::is_same_v || + std::is_same_v; +} +} // namespace + namespace o2::framework { class ConfigParamStore; @@ -54,12 +72,7 @@ class ConfigParamRegistry { assert(mStore.get()); try { - if constexpr (std::is_same_v || - std::is_same_v || - std::is_same_v || - std::is_same_v || - std::is_same_v || - std::is_same_v) { + if constexpr (isSimpleType()) { return mStore->store().get(key); } else if constexpr (std::is_same_v) { return mStore->store().get(key); diff --git a/Framework/Core/include/Framework/ConfigParamsHelper.h b/Framework/Core/include/Framework/ConfigParamsHelper.h index d0179777932f2..4dc974549a2bb 100644 --- a/Framework/Core/include/Framework/ConfigParamsHelper.h +++ b/Framework/Core/include/Framework/ConfigParamsHelper.h @@ -105,11 +105,7 @@ struct ConfigParamsHelper { const char* name = spec.name.c_str(); const char* help = spec.help.c_str(); - if constexpr (V == VariantType::Int || - V == VariantType::Int64 || - V == VariantType::Float || - V == VariantType::Double || - V == VariantType::Bool) { + if constexpr (isSimpleVariant()) { using Type = typename variant_type::type; using BoostType = typename std::conditional::type; auto value = boost::program_options::value(); @@ -120,14 +116,7 @@ struct ConfigParamsHelper { value = value->zero_tokens(); } options.add_options()(name, value, help); - } else if constexpr (V == VariantType::ArrayInt || - V == VariantType::ArrayFloat || - V == VariantType::ArrayDouble || - V == VariantType::ArrayBool || - V == VariantType::ArrayString || - V == VariantType::Array2DInt || - V == VariantType::Array2DFloat || - V == VariantType::Array2DDouble) { + } else if constexpr (isArray() || isArray2D()) { auto value = boost::program_options::value(); value = value->default_value(spec.defaultValue.asString()); if constexpr (V != VariantType::String) { diff --git a/Framework/Core/include/Framework/Variant.h b/Framework/Core/include/Framework/Variant.h index df76219ffa052..dd03aa8a6521f 100644 --- a/Framework/Core/include/Framework/Variant.h +++ b/Framework/Core/include/Framework/Variant.h @@ -28,6 +28,10 @@ namespace o2::framework enum class VariantType : int { Int = 0, Int64, + UInt8, + UInt16, + UInt32, + UInt64, Float, Double, String, @@ -49,19 +53,41 @@ enum class VariantType : int { Int = 0, template constexpr auto isArray() { - return (V == VariantType::ArrayBool || V == VariantType::ArrayDouble || V == VariantType::ArrayFloat || V == VariantType::ArrayInt || V == VariantType::ArrayString); + return (V == VariantType::ArrayBool || + V == VariantType::ArrayDouble || + V == VariantType::ArrayFloat || + V == VariantType::ArrayInt || + V == VariantType::ArrayString); } template constexpr auto isArray2D() { - return (V == VariantType::Array2DInt || V == VariantType::Array2DFloat || V == VariantType::Array2DDouble); + return (V == VariantType::Array2DInt || + V == VariantType::Array2DFloat || + V == VariantType::Array2DDouble); } template constexpr auto isLabeledArray() { - return (V == VariantType::LabeledArrayInt || V == VariantType::LabeledArrayFloat || V == VariantType::LabeledArrayDouble); + return (V == VariantType::LabeledArrayInt || + V == VariantType::LabeledArrayFloat || + V == VariantType::LabeledArrayDouble); +} + +template +constexpr auto isSimpleVariant() +{ + return (V == VariantType::Int) || + (V == VariantType::Int64) || + (V == VariantType::UInt8) || + (V == VariantType::UInt16) || + (V == VariantType::UInt32) || + (V == VariantType::UInt64) || + (V == VariantType::Float) || + (V == VariantType::Double) || + (V == VariantType::Bool); } template @@ -76,6 +102,11 @@ struct variant_trait : std::integral_constant DECLARE_VARIANT_TRAIT(int, Int); DECLARE_VARIANT_TRAIT(long int, Int64); DECLARE_VARIANT_TRAIT(long long int, Int64); +DECLARE_VARIANT_TRAIT(uint8_t, UInt8); +DECLARE_VARIANT_TRAIT(uint16_t, UInt16); +DECLARE_VARIANT_TRAIT(uint32_t, UInt32); +DECLARE_VARIANT_TRAIT(uint64_t, UInt64); + DECLARE_VARIANT_TRAIT(float, Float); DECLARE_VARIANT_TRAIT(double, Double); DECLARE_VARIANT_TRAIT(bool, Bool); @@ -152,6 +183,10 @@ struct variant_type { DECLARE_VARIANT_TYPE(int, Int); DECLARE_VARIANT_TYPE(int64_t, Int64); +DECLARE_VARIANT_TYPE(uint8_t, UInt8); +DECLARE_VARIANT_TYPE(uint16_t, UInt16); +DECLARE_VARIANT_TYPE(uint32_t, UInt32); +DECLARE_VARIANT_TYPE(uint64_t, UInt64); DECLARE_VARIANT_TYPE(float, Float); DECLARE_VARIANT_TYPE(double, Double); DECLARE_VARIANT_TYPE(const char*, String); @@ -236,7 +271,8 @@ struct variant_helper { /// Variant for configuration parameter storage. Owns stored data. class Variant { - using storage_t = std::aligned_union<8, int, int64_t, const char*, float, double, bool, + using storage_t = std::aligned_union<8, int, int64_t, uint8_t, uint16_t, uint32_t, uint64_t, + const char*, float, double, bool, int*, float*, double*, bool*, Array2D, Array2D, Array2D, LabeledArray, LabeledArray, LabeledArray>::type; @@ -271,10 +307,10 @@ class Variant } Variant(const Variant& other); - Variant(Variant&& other); + Variant(Variant&& other) noexcept; ~Variant(); Variant& operator=(const Variant& other); - Variant& operator=(Variant&& other); + Variant& operator=(Variant&& other) noexcept; template T get() const diff --git a/Framework/Core/src/BoostOptionsRetriever.cxx b/Framework/Core/src/BoostOptionsRetriever.cxx index ae9183e16400c..63b8c07fbb946 100644 --- a/Framework/Core/src/BoostOptionsRetriever.cxx +++ b/Framework/Core/src/BoostOptionsRetriever.cxx @@ -50,6 +50,18 @@ void BoostOptionsRetriever::update(std::vector const& specs, case VariantType::Int: options = options(name, bpo::value()->default_value(spec.defaultValue.get()), help); break; + case VariantType::UInt8: + options = options(name, bpo::value()->default_value(spec.defaultValue.get()), help); + break; + case VariantType::UInt16: + options = options(name, bpo::value()->default_value(spec.defaultValue.get()), help); + break; + case VariantType::UInt32: + options = options(name, bpo::value()->default_value(spec.defaultValue.get()), help); + break; + case VariantType::UInt64: + options = options(name, bpo::value()->default_value(spec.defaultValue.get()), help); + break; case VariantType::Int64: options = options(name, bpo::value()->default_value(spec.defaultValue.get()), help); break; diff --git a/Framework/Core/src/ConfigParamsHelper.cxx b/Framework/Core/src/ConfigParamsHelper.cxx index 169433dfa53d3..b52d44a294a97 100644 --- a/Framework/Core/src/ConfigParamsHelper.cxx +++ b/Framework/Core/src/ConfigParamsHelper.cxx @@ -44,6 +44,18 @@ void ConfigParamsHelper::populateBoostProgramOptions( case VariantType::Int64: addConfigSpecOption(spec, options); break; + case VariantType::UInt8: + addConfigSpecOption(spec, options); + break; + case VariantType::UInt16: + addConfigSpecOption(spec, options); + break; + case VariantType::UInt32: + addConfigSpecOption(spec, options); + break; + case VariantType::UInt64: + addConfigSpecOption(spec, options); + break; case VariantType::Float: addConfigSpecOption(spec, options); break; diff --git a/Framework/Core/src/PropertyTreeHelpers.cxx b/Framework/Core/src/PropertyTreeHelpers.cxx index ba9a7f01c25b0..dbbfc0a97a93f 100644 --- a/Framework/Core/src/PropertyTreeHelpers.cxx +++ b/Framework/Core/src/PropertyTreeHelpers.cxx @@ -36,6 +36,18 @@ void PropertyTreeHelpers::populateDefaults(std::vector const& s case VariantType::Int: pt.put(key, spec.defaultValue.get()); break; + case VariantType::UInt8: + pt.put(key, spec.defaultValue.get()); + break; + case VariantType::UInt16: + pt.put(key, spec.defaultValue.get()); + break; + case VariantType::UInt32: + pt.put(key, spec.defaultValue.get()); + break; + case VariantType::UInt64: + pt.put(key, spec.defaultValue.get()); + break; case VariantType::Int64: pt.put(key, spec.defaultValue.get()); break; @@ -116,6 +128,18 @@ void PropertyTreeHelpers::populate(std::vector const& schema, case VariantType::Int: pt.put(key, vmap[key].as()); break; + case VariantType::UInt8: + pt.put(key, vmap[key].as()); + break; + case VariantType::UInt16: + pt.put(key, vmap[key].as()); + break; + case VariantType::UInt32: + pt.put(key, vmap[key].as()); + break; + case VariantType::UInt64: + pt.put(key, vmap[key].as()); + break; case VariantType::Int64: pt.put(key, vmap[key].as()); break; @@ -209,6 +233,18 @@ void PropertyTreeHelpers::populate(std::vector const& schema, case VariantType::Int: pt.put(key, (*it).get_value()); break; + case VariantType::UInt8: + pt.put(key, (*it).get_value()); + break; + case VariantType::UInt16: + pt.put(key, (*it).get_value()); + break; + case VariantType::UInt32: + pt.put(key, (*it).get_value()); + break; + case VariantType::UInt64: + pt.put(key, (*it).get_value()); + break; case VariantType::Int64: pt.put(key, (*it).get_value()); break; diff --git a/Framework/Core/src/Variant.cxx b/Framework/Core/src/Variant.cxx index ad9a6461f9fd0..41c46e98629cb 100644 --- a/Framework/Core/src/Variant.cxx +++ b/Framework/Core/src/Variant.cxx @@ -56,6 +56,18 @@ std::ostream& operator<<(std::ostream& oss, Variant const& val) case VariantType::Int: oss << val.get(); break; + case VariantType::UInt8: + oss << val.get(); + break; + case VariantType::UInt16: + oss << val.get(); + break; + case VariantType::UInt32: + oss << val.get(); + break; + case VariantType::UInt64: + oss << val.get(); + break; case VariantType::Int64: oss << val.get(); break; @@ -146,7 +158,7 @@ Variant::Variant(const Variant& other) : mType(other.mType) } } -Variant::Variant(Variant&& other) : mType(other.mType) +Variant::Variant(Variant&& other) noexcept : mType(other.mType) { mStore = other.mStore; mSize = other.mSize; @@ -222,7 +234,7 @@ Variant& Variant::operator=(const Variant& other) } } -Variant& Variant::operator=(Variant&& other) +Variant& Variant::operator=(Variant&& other) noexcept { mSize = other.mSize; mType = other.mType; diff --git a/Framework/Core/src/WorkflowSerializationHelpers.cxx b/Framework/Core/src/WorkflowSerializationHelpers.cxx index eb2ce9aafc3ec..fc4d0765a20ed 100644 --- a/Framework/Core/src/WorkflowSerializationHelpers.cxx +++ b/Framework/Core/src/WorkflowSerializationHelpers.cxx @@ -319,6 +319,18 @@ struct WorkflowImporter : public rapidjson::BaseReaderHandler, case VariantType::Int: opt = std::make_unique(optionName, optionType, std::stoi(optionDefault, nullptr), HelpString{optionHelp}, optionKind); break; + case VariantType::UInt8: + opt = std::make_unique(optionName, optionType, static_cast(std::stoul(optionDefault, nullptr)), HelpString{optionHelp}, optionKind); + break; + case VariantType::UInt16: + opt = std::make_unique(optionName, optionType, static_cast(std::stoul(optionDefault, nullptr)), HelpString{optionHelp}, optionKind); + break; + case VariantType::UInt32: + opt = std::make_unique(optionName, optionType, static_cast(std::stoul(optionDefault, nullptr)), HelpString{optionHelp}, optionKind); + break; + case VariantType::UInt64: + opt = std::make_unique(optionName, optionType, std::stoul(optionDefault, nullptr), HelpString{optionHelp}, optionKind); + break; case VariantType::Int64: opt = std::make_unique(optionName, optionType, std::stol(optionDefault, nullptr), HelpString{optionHelp}, optionKind); break; diff --git a/Framework/Core/test/test_BoostOptionsRetriever.cxx b/Framework/Core/test/test_BoostOptionsRetriever.cxx index 6da8b2d871a78..812e184a54354 100644 --- a/Framework/Core/test/test_BoostOptionsRetriever.cxx +++ b/Framework/Core/test/test_BoostOptionsRetriever.cxx @@ -29,6 +29,10 @@ BOOST_AUTO_TEST_CASE(TrivialBoostOptionsRetrieverTest) auto specs = std::vector{ {"someInt", VariantType::Int, 2, {"some int option"}}, + {"someUInt8", VariantType::UInt8, static_cast(2u), {"some uint8 option"}}, + {"someUInt16", VariantType::UInt16, static_cast(2u), {"some uint16 option"}}, + {"someUInt32", VariantType::UInt32, 2u, {"some uint32 option"}}, + {"someUInt64", VariantType::UInt64, static_cast(2ul), {"some uint64 option"}}, {"someInt64", VariantType::Int64, 4ll, {"some int64 option"}}, {"someBool", VariantType::Bool, false, {"some bool option"}}, {"someFloat", VariantType::Float, 2.0f, {"some float option"}}, @@ -38,6 +42,10 @@ BOOST_AUTO_TEST_CASE(TrivialBoostOptionsRetrieverTest) "test", "--someBool", "--someInt", "1", + "--someUInt8", "1", + "--someUInt16", "1", + "--someUInt32", "1", + "--someUInt64", "1", "--someInt64", "50000000000000", "--someFloat", "0.5", "--someDouble", "0.5", @@ -50,6 +58,10 @@ BOOST_AUTO_TEST_CASE(TrivialBoostOptionsRetrieverTest) bpo::store(parse_command_line(sizeof(args) / sizeof(char*), args, opts), vm); bpo::notify(vm); BOOST_CHECK(vm["someInt"].as() == 1); + BOOST_CHECK(vm["someUInt8"].as() == '1'); + BOOST_CHECK(vm["someUInt16"].as() == 1); + BOOST_CHECK(vm["someUInt32"].as() == 1); + BOOST_CHECK(vm["someUInt64"].as() == 1); BOOST_CHECK(vm["someInt64"].as() == 50000000000000ll); BOOST_CHECK(vm["someBool"].as() == true); BOOST_CHECK(vm["someString"].as() == "foobar"); diff --git a/Framework/Core/test/test_ConfigParamRegistry.cxx b/Framework/Core/test/test_ConfigParamRegistry.cxx index 61ffa2c8edd5f..5f00986529344 100644 --- a/Framework/Core/test/test_ConfigParamRegistry.cxx +++ b/Framework/Core/test/test_ConfigParamRegistry.cxx @@ -41,6 +41,10 @@ BOOST_AUTO_TEST_CASE(TestConfigParamRegistry) ("aFloat", bpo::value()->default_value(10.f)) // ("aDouble", bpo::value()->default_value(20.)) // ("anInt", bpo::value()->default_value(1)) // + ("anUInt8", bpo::value()->default_value(1)) // + ("anUInt16", bpo::value()->default_value(1)) // + ("anUInt32", bpo::value()->default_value(1)) // + ("anUInt64", bpo::value()->default_value(1)) // ("anInt64", bpo::value()->default_value(1ll)) // ("aBoolean", bpo::value()->zero_tokens()->default_value(false)) // ("aString,s", bpo::value()->default_value("something")) // @@ -52,6 +56,10 @@ BOOST_AUTO_TEST_CASE(TestConfigParamRegistry) options->ParseAll({"cmd", "--aFloat", "1.0", "--aDouble", "2.0", "--anInt", "10", + "--anUInt8", "2", + "--anUInt16", "10", + "--anUInt32", "10", + "--anUInt64", "10", "--anInt64", "50000000000000", "--aBoolean", "-s", "somethingelse", @@ -60,6 +68,10 @@ BOOST_AUTO_TEST_CASE(TestConfigParamRegistry) true); std::vector specs{ ConfigParamSpec{"anInt", VariantType::Int, 1, {"an int option"}}, + ConfigParamSpec{"anUInt8", VariantType::UInt8, static_cast(1u), {"an uint8 option"}}, + ConfigParamSpec{"anUInt16", VariantType::UInt16, static_cast(1u), {"an uint16 option"}}, + ConfigParamSpec{"anUInt32", VariantType::UInt32, 1u, {"an uint32 option"}}, + ConfigParamSpec{"anUInt64", VariantType::UInt64, static_cast(1ul), {"an uint64 option"}}, ConfigParamSpec{"anInt64", VariantType::Int64, 1ll, {"an int64_t option"}}, ConfigParamSpec{"aFloat", VariantType::Float, 2.0f, {"a float option"}}, ConfigParamSpec{"aDouble", VariantType::Double, 3., {"a double option"}}, @@ -82,6 +94,10 @@ BOOST_AUTO_TEST_CASE(TestConfigParamRegistry) BOOST_CHECK_EQUAL(registry.get("aFloat"), 1.0); BOOST_CHECK_EQUAL(registry.get("aDouble"), 2.0); BOOST_CHECK_EQUAL(registry.get("anInt"), 10); + BOOST_CHECK_EQUAL(registry.get("anUInt8"), '2'); + BOOST_CHECK_EQUAL(registry.get("anUInt16"), 10); + BOOST_CHECK_EQUAL(registry.get("anUInt32"), 10); + BOOST_CHECK_EQUAL(registry.get("anUInt64"), 10); BOOST_CHECK_EQUAL(registry.get("anInt64"), 50000000000000ll); BOOST_CHECK_EQUAL(registry.get("aBoolean"), true); BOOST_CHECK_EQUAL(registry.get("aString"), "somethingelse"); diff --git a/Framework/Core/test/test_ConfigParamStore.cxx b/Framework/Core/test/test_ConfigParamStore.cxx index fa51ed35caae6..df56fdf8a0e18 100644 --- a/Framework/Core/test/test_ConfigParamStore.cxx +++ b/Framework/Core/test/test_ConfigParamStore.cxx @@ -31,6 +31,10 @@ BOOST_AUTO_TEST_CASE(TestConfigParamStore) ("aFloat", bpo::value()->default_value(10.f)) // ("aDouble", bpo::value()->default_value(20.)) // ("anInt", bpo::value()->default_value(1)) // + ("anUInt8", bpo::value()->default_value(1)) // + ("anUInt16", bpo::value()->default_value(1)) // + ("anUInt32", bpo::value()->default_value(1)) // + ("anUInt64", bpo::value()->default_value(1)) // ("anInt64", bpo::value()->default_value(1ll)) // ("aBoolean", bpo::value()->zero_tokens()->default_value(false)) // ("aString,s", bpo::value()->default_value("something")) // @@ -42,6 +46,10 @@ BOOST_AUTO_TEST_CASE(TestConfigParamStore) options->ParseAll({"cmd", "--aFloat", "1.0", "--aDouble", "2.0", "--anInt", "10", + "--anUInt8", "2", + "--anUInt16", "10", + "--anUInt32", "10", + "--anUInt64", "10", "--anInt64", "50000000000000", "--aBoolean", "-s", "somethingelse", @@ -50,6 +58,10 @@ BOOST_AUTO_TEST_CASE(TestConfigParamStore) true); std::vector specs{ ConfigParamSpec{"anInt", VariantType::Int, 1, {"an int option"}}, + ConfigParamSpec{"anUInt8", VariantType::UInt8, static_cast(1u), {"an int option"}}, + ConfigParamSpec{"anUInt16", VariantType::UInt16, static_cast(1u), {"an int option"}}, + ConfigParamSpec{"anUInt32", VariantType::UInt32, 1u, {"an int option"}}, + ConfigParamSpec{"anUInt64", VariantType::UInt64, static_cast(1ul), {"an int option"}}, ConfigParamSpec{"anInt64", VariantType::Int64, 1ll, {"an int64_t option"}}, ConfigParamSpec{"aFloat", VariantType::Float, 2.0f, {"a float option"}}, ConfigParamSpec{"aDouble", VariantType::Double, 3., {"a double option"}}, @@ -71,6 +83,10 @@ BOOST_AUTO_TEST_CASE(TestConfigParamStore) BOOST_CHECK_EQUAL(store.store().get("aFloat"), 1.0); BOOST_CHECK_EQUAL(store.store().get("aDouble"), 2.0); BOOST_CHECK_EQUAL(store.store().get("anInt"), 10); + BOOST_CHECK_EQUAL(store.store().get("anUInt8"), '2'); + BOOST_CHECK_EQUAL(store.store().get("anUInt16"), 10); + BOOST_CHECK_EQUAL(store.store().get("anUInt32"), 10); + BOOST_CHECK_EQUAL(store.store().get("anUInt64"), 10); BOOST_CHECK_EQUAL(store.store().get("anInt64"), 50000000000000ll); BOOST_CHECK_EQUAL(store.store().get("aBoolean"), true); BOOST_CHECK_EQUAL(store.store().get("aString"), "somethingelse"); @@ -87,6 +103,10 @@ BOOST_AUTO_TEST_CASE(TestConfigParamStore) BOOST_CHECK_EQUAL(store.provenance("aFloat"), "fairmq"); BOOST_CHECK_EQUAL(store.provenance("aDouble"), "fairmq"); BOOST_CHECK_EQUAL(store.provenance("anInt"), "fairmq"); + BOOST_CHECK_EQUAL(store.provenance("anUInt8"), "fairmq"); + BOOST_CHECK_EQUAL(store.provenance("anUInt16"), "fairmq"); + BOOST_CHECK_EQUAL(store.provenance("anUInt32"), "fairmq"); + BOOST_CHECK_EQUAL(store.provenance("anUInt64"), "fairmq"); BOOST_CHECK_EQUAL(store.provenance("anInt64"), "fairmq"); BOOST_CHECK_EQUAL(store.provenance("aBoolean"), "fairmq"); BOOST_CHECK_EQUAL(store.provenance("aString"), "fairmq"); diff --git a/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx b/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx index cc74f3d9f3855..8630dc2cbb178 100644 --- a/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx +++ b/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx @@ -122,6 +122,21 @@ void optionsTable(const char* label, std::vector const& options case VariantType::Int: ImGui::Text("%d (default)", option.defaultValue.get()); break; + case VariantType::Int64: + ImGui::Text("%lld (default)", option.defaultValue.get()); + break; + case VariantType::UInt8: + ImGui::Text("%d (default)", option.defaultValue.get()); + break; + case VariantType::UInt16: + ImGui::Text("%d (default)", option.defaultValue.get()); + break; + case VariantType::UInt32: + ImGui::Text("%d (default)", option.defaultValue.get()); + break; + case VariantType::UInt64: + ImGui::Text("%lld (default)", option.defaultValue.get()); + break; case VariantType::Float: ImGui::Text("%f (default)", option.defaultValue.get()); break; From 246d14f90815062fb4166518b346af5a7172c9fe Mon Sep 17 00:00:00 2001 From: Ole Schmidt Date: Fri, 9 Jul 2021 10:05:39 +0200 Subject: [PATCH 135/314] Fix unused variable warning --- GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx index 5b9b334e58d13..142705c0cab15 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx @@ -561,7 +561,7 @@ GPUd() bool GPUTRDTracker_t::FollowProlongation(PROP* prop, TRDTRK float zShiftTrk = 0.f; if (mProcessPerTimeFrame) { zShiftTrk = (mTrackAttribs[iTrk].mTime - GetConstantMem()->ioPtrs.trdTriggerTimes[collisionId]) * mTPCVdrift * mTrackAttribs[iTrk].mSide; - float addZerr = (mTrackAttribs[iTrk].mTimeAddMax + mTrackAttribs[iTrk].mTimeSubMax) * .5f * mTPCVdrift; + //float addZerr = (mTrackAttribs[iTrk].mTimeAddMax + mTrackAttribs[iTrk].mTimeSubMax) * .5f * mTPCVdrift; // increase Z error based on time window // -> this is here since it was done before, but the efficiency seems to be better if the covariance is not updated (more tracklets are attached) //t->updateCovZ2(addZerr * addZerr); // TODO check again once detailed performance study tools are available, maybe this can be tuned From 2fc1634029621ee00147ac27d730b52a6a3c19a5 Mon Sep 17 00:00:00 2001 From: Nazar Burmasov Date: Mon, 12 Jul 2021 13:51:14 +0300 Subject: [PATCH 136/314] Add more information to TrackExtra table (#6596) * Add TPC information (tpcNClsFindableMinusFound) * add TOFsignal in TOF matched info * Fix tofExpMom calculation * Get expSig via getTOF() --- .../ReconstructionDataFormats/MatchInfoTOF.h | 7 +- .../MatchInfoTOFReco.h | 4 +- .../AODProducerWorkflowSpec.h | 54 +- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 463 +++++++----------- Detectors/AOD/src/aod-producer-workflow.cxx | 8 +- Detectors/GlobalTracking/src/MatchTOF.cxx | 4 +- 6 files changed, 242 insertions(+), 298 deletions(-) diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOF.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOF.h index ea0ba1e1f94d9..f1222d179304a 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOF.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOF.h @@ -29,7 +29,7 @@ class MatchInfoTOF using evIdx = o2::dataformats::EvIndex; public: - MatchInfoTOF(evIdx evIdxTOFCl, float chi2, o2::track::TrackLTIntegral trkIntLT, evGIdx evIdxTrack, float dt = 0, float z = 0) : mEvIdxTOFCl(evIdxTOFCl), mChi2(chi2), mIntLT(trkIntLT), mEvIdxTrack(evIdxTrack), mDeltaT(dt), mZatTOF(z){}; + MatchInfoTOF(evIdx evIdxTOFCl, double time, float chi2, o2::track::TrackLTIntegral trkIntLT, evGIdx evIdxTrack, float dt = 0, float z = 0) : mEvIdxTOFCl(evIdxTOFCl), mSignal(time), mChi2(chi2), mIntLT(trkIntLT), mEvIdxTrack(evIdxTrack), mDeltaT(dt), mZatTOF(z){}; MatchInfoTOF() = default; void setEvIdxTOFCl(evIdx index) { mEvIdxTOFCl = index; } void setEvIdxTrack(evGIdx index) { mEvIdxTrack = index; } @@ -51,6 +51,8 @@ class MatchInfoTOF float getDeltaT() const { return mDeltaT; } void setZatTOF(float val) { mZatTOF = val; } float getZatTOF() const { return mZatTOF; } + void setSignal(double time) { mSignal = time; } + double getSignal() const { return mSignal; } private: float mChi2; // chi2 of the pair track-TOFcluster @@ -59,8 +61,9 @@ class MatchInfoTOF evGIdx mEvIdxTrack; ///< EvIdx for track (first: ev index; second: track global index) float mZatTOF = 0.0; ///< Z position at TOF float mDeltaT = 0.0; ///< tTOF - TPC (microsec) + double mSignal = 0.0; ///< TOF time in ps - ClassDefNV(MatchInfoTOF, 2); + ClassDefNV(MatchInfoTOF, 3); }; } // namespace dataformats } // namespace o2 diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOFReco.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOFReco.h index 35ab341e46ee0..29b5067470b2a 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOFReco.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/MatchInfoTOFReco.h @@ -36,7 +36,7 @@ class MatchInfoTOFReco : public MatchInfoTOF ITSTPCTRD, SIZEALL }; - MatchInfoTOFReco(evIdx evIdxTOFCl, float chi2, o2::track::TrackLTIntegral trkIntLT, evGIdx evIdxTrack, TrackType trkType, float dt = 0, float z = 0) : MatchInfoTOF(evIdxTOFCl, chi2, trkIntLT, evIdxTrack, dt, z), mTrackType(trkType){}; + MatchInfoTOFReco(evIdx evIdxTOFCl, double time, float chi2, o2::track::TrackLTIntegral trkIntLT, evGIdx evIdxTrack, TrackType trkType, float dt = 0, float z = 0) : MatchInfoTOF(evIdxTOFCl, time, chi2, trkIntLT, evIdxTrack, dt, z), mTrackType(trkType){}; MatchInfoTOFReco() = default; @@ -45,7 +45,7 @@ class MatchInfoTOFReco : public MatchInfoTOF private: TrackType mTrackType; ///< track type (TPC, ITSTPC, TPCTRD, ITSTPCTRD) - ClassDefNV(MatchInfoTOFReco, 1); + ClassDefNV(MatchInfoTOFReco, 2); }; } // namespace dataformats } // namespace o2 diff --git a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h index 6e38c9593727f..10c259db0d933 100644 --- a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h +++ b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h @@ -29,6 +29,7 @@ #include "DataFormatsITS/TrackITS.h" #include "DataFormatsMFT/TrackMFT.h" #include "DataFormatsTPC/TrackTPC.h" +#include "DataFormatsTRD/TrackTRD.h" #include "ReconstructionDataFormats/TrackTPCITS.h" #include @@ -39,6 +40,7 @@ using namespace o2::framework; using GID = o2::dataformats::GlobalTrackID; +using GIndex = o2::dataformats::VtxTrackIndex; using DataRequest = o2::globaltracking::DataRequest; namespace o2::aodproducer @@ -145,17 +147,16 @@ typedef boost::unordered_map Triple class AODProducerWorkflowDPL : public Task { public: - AODProducerWorkflowDPL(std::shared_ptr dataRequest, bool fillSVertices) : mDataRequest(dataRequest), mFillSVertices(fillSVertices) {} + AODProducerWorkflowDPL(GID::mask_t src, std::shared_ptr dataRequest, bool fillSVertices) : mInputSources(src), mDataRequest(dataRequest), mFillSVertices(fillSVertices) {} ~AODProducerWorkflowDPL() override = default; void init(InitContext& ic) final; void run(ProcessingContext& pc) final; void endOfStream(framework::EndOfStreamContext& ec) final; private: - int mFillTracksITS{1}; - int mFillTracksMFT{1}; - int mFillTracksTPC{0}; - int mFillTracksITSTPC{1}; + const float cSpeed = 0.029979246f; // speed of light in TOF units + + GID::mask_t mInputSources; int64_t mTFNumber{-1}; int mTruncate{1}; int mRecoOnly{0}; @@ -198,6 +199,7 @@ class AODProducerWorkflowDPL : public Task uint32_t mFDDAmplitude = 0xFFFFF000; // 11 bits uint32_t mT0Amplitude = 0xFFFFF000; // 11 bits + // helper struct for extra info in fillTrackTablesPerCollision() struct TrackExtraInfo { float tpcInnerParam = 0.f; uint32_t flags = 0; @@ -220,6 +222,15 @@ class AODProducerWorkflowDPL : public Task float trackPhiEMCAL = -999.f; }; + // helper struct for mc track labels + struct MCLabels { + uint32_t labelID = std::numeric_limits::max(); + uint32_t labelITS = std::numeric_limits::max(); + uint32_t labelTPC = std::numeric_limits::max(); + uint16_t labelMask = 0; + uint8_t mftLabelMask = 0; + }; + void collectBCs(gsl::span& ft0RecPoints, gsl::span& primVertices, const std::vector& mcRecords, @@ -237,12 +248,37 @@ class AODProducerWorkflowDPL : public Task template void addToMFTTracksTable(mftTracksCursorType& mftTracksCursor, const o2::mft::TrackMFT& track, int collisionID); + // helper for track tables + // fills tables collision by collision + // interaction time is for TOF information + template + void fillTrackTablesPerCollision(int collisionID, + double interactionTime, + const o2::dataformats::VtxTrackRef& trackRef, + gsl::span& GIndices, + o2::globaltracking::RecoContainer& data, + TracksCursorType& tracksCursor, + TracksCovCursorType& tracksCovCursor, + TracksExtraCursorType& tracksExtraCursor, + mftTracksCursorType& mftTracksCursor); + template void fillMCParticlesTable(o2::steer::MCKinematicsReader& mcReader, const MCParticlesCursorType& mcParticlesCursor, - gsl::span& mcTruthITS, std::vector& isStoredITS, - gsl::span& mcTruthMFT, std::vector& isStoredMFT, - gsl::span& mcTruthTPC, std::vector& isStoredTPC, - TripletsMap_t& toStore, std::vector> const& mccolidtoeventsource); + gsl::span& mcTruthITS, + gsl::span& mcTruthMFT, + gsl::span& mcTruthTPC, + TripletsMap_t& toStore, + std::vector> const& mccolidtoeventsource); + + // helper for tpc clusters + void countTPCClusters(const o2::tpc::TrackTPC& track, + const gsl::span& tpcClusRefs, + const gsl::span& tpcClusShMap, + const o2::tpc::ClusterNativeAccess& tpcClusAcc, + uint8_t& shared, uint8_t& found, uint8_t& crossed); + + // helper for trd pattern + uint8_t getTRDPattern(const o2::trd::TrackTRD& track); }; /// create a processor spec diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index 2151a2b4f4209..6687fe925abfb 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -12,12 +12,15 @@ /// @file AODProducerWorkflowSpec.cxx #include "AODProducerWorkflow/AODProducerWorkflowSpec.h" +#include "AnalysisDataModel/PID/PIDTOF.h" #include "DataFormatsFT0/RecPoints.h" #include "DataFormatsITS/TrackITS.h" #include "DataFormatsMFT/TrackMFT.h" #include "DataFormatsTPC/TrackTPC.h" #include "CCDB/BasicCCDBManager.h" +#include "CommonConstants/PhysicsConstants.h" #include "CommonDataFormat/InteractionRecord.h" +#include "DataFormatsTRD/TrackTRD.h" #include "DataFormatsGlobalTracking/RecoContainer.h" #include "Framework/AnalysisDataModel.h" #include "Framework/ConfigParamRegistry.h" @@ -47,7 +50,6 @@ using namespace o2::framework; using namespace o2::math_utils::detail; using PVertex = o2::dataformats::PrimaryVertex; -using V2TRef = o2::dataformats::VtxTrackRef; using GIndex = o2::dataformats::VtxTrackIndex; using DataRequest = o2::globaltracking::DataRequest; using GID = o2::dataformats::GlobalTrackID; @@ -194,12 +196,88 @@ void AODProducerWorkflowDPL::addToMFTTracksTable(mftTracksCursorType& mftTracksC track.getTrackChi2()); } +template +void AODProducerWorkflowDPL::fillTrackTablesPerCollision(int collisionID, + double interactionTime, + const o2::dataformats::VtxTrackRef& trackRef, + gsl::span& GIndices, + o2::globaltracking::RecoContainer& data, + TracksCursorType& tracksCursor, + TracksCovCursorType& tracksCovCursor, + TracksExtraCursorType& tracksExtraCursor, + mftTracksCursorType& mftTracksCursor) +{ + const auto& tpcClusRefs = data.getTPCTracksClusterRefs(); + const auto& tpcClusShMap = data.clusterShMapTPC; + const auto& tpcClusAcc = data.getTPCClusters(); + + for (int src = GIndex::NSources; src--;) { + int start = trackRef.getFirstEntryOfSource(src); + int end = start + trackRef.getEntriesOfSource(src); + LOG(DEBUG) << "Unassigned tracks: src = " << src << ", start = " << start << ", end = " << end; + for (int ti = start; ti < end; ti++) { + TrackExtraInfo extraInfoHolder; + auto& trackIndex = GIndices[ti]; + if (GIndex::includesSource(src, mInputSources)) { + if (src == GIndex::Source::MFT) { // MFT tracks are treated separately since they are stored in a different table + const auto& track = data.getMFTTrack(trackIndex.getIndex()); + addToMFTTracksTable(mftTracksCursor, track, collisionID); + } else { + auto contributorsGID = data.getSingleDetectorRefs(trackIndex); + const auto& trackPar = data.getTrackParam(trackIndex); + if (contributorsGID[GIndex::Source::ITS].isIndexSet()) { + const auto& itsOrig = data.getITSTrack(contributorsGID[GIndex::ITS]); + extraInfoHolder.itsClusterMap = itsOrig.getPattern(); + } + if (contributorsGID[GIndex::Source::TPC].isIndexSet()) { + const auto& tpcOrig = data.getTPCTrack(contributorsGID[GIndex::TPC]); + extraInfoHolder.tpcInnerParam = tpcOrig.getP(); + extraInfoHolder.tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; + extraInfoHolder.tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; + uint8_t shared, found, crossed; // fixme: need to switch from these placeholders to something more reasonable + countTPCClusters(tpcOrig, tpcClusRefs, tpcClusShMap, tpcClusAcc, shared, found, crossed); + extraInfoHolder.tpcNClsFindable = tpcOrig.getNClusters(); + extraInfoHolder.tpcNClsFindableMinusFound = tpcOrig.getNClusters() - found; + extraInfoHolder.tpcNClsFindableMinusCrossedRows = tpcOrig.getNClusters() - crossed; + extraInfoHolder.tpcNClsShared = shared; + } + if (contributorsGID[GIndex::Source::ITSTPCTOF].isIndexSet()) { + const auto& tofMatch = data.getTOFMatch(contributorsGID[GIndex::Source::ITSTPCTOF]); + extraInfoHolder.tofChi2 = tofMatch.getChi2(); + const auto& tofInt = tofMatch.getLTIntegralOut(); + float intLen = tofInt.getL(); + extraInfoHolder.length = intLen; + extraInfoHolder.tofSignal = tofMatch.getSignal(); + float mass = o2::constants::physics::MassPionCharged; // default pid = pion + float expSig = tofInt.getTOF(o2::track::PID::Pion); + float expMom = 0.f; + if (expSig > 0 && interactionTime > 0) { + float tof = expSig - interactionTime; + float expBeta = (intLen / tof / cSpeed); + expMom = mass * expBeta / std::sqrt(1.f - expBeta * expBeta); + } + extraInfoHolder.tofExpMom = expMom; + } + if (src == GIndex::Source::TPCTRD || src == GIndex::Source::ITSTPCTRD) { + const auto& trdOrig = data.getTrack(src, contributorsGID[src].getIndex()); + extraInfoHolder.trdChi2 = trdOrig.getChi2(); + extraInfoHolder.trdPattern = getTRDPattern(trdOrig); + } + addToTracksTable(tracksCursor, tracksCovCursor, trackPar, collisionID, src); + addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); + } + } + } + } +} + template void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& mcReader, const MCParticlesCursorType& mcParticlesCursor, - gsl::span& mcTruthITS, std::vector& isStoredITS, - gsl::span& mcTruthMFT, std::vector& isStoredMFT, - gsl::span& mcTruthTPC, std::vector& isStoredTPC, - TripletsMap_t& toStore, std::vector> const& mccolid_to_eventandsource) + gsl::span& mcTruthITS, + gsl::span& mcTruthMFT, + gsl::span& mcTruthTPC, + TripletsMap_t& toStore, + std::vector> const& mccolid_to_eventandsource) { // mark reconstructed MC particles to store them into the table for (int i = 0; i < mcTruthITS.size(); i++) { @@ -335,14 +413,66 @@ void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& } } +void AODProducerWorkflowDPL::countTPCClusters(const o2::tpc::TrackTPC& track, + const gsl::span& tpcClusRefs, + const gsl::span& tpcClusShMap, + const o2::tpc::ClusterNativeAccess& tpcClusAcc, + uint8_t& shared, uint8_t& found, uint8_t& crossed) +{ + constexpr int maxRows = 152; + constexpr int neighbour = 2; + std::array clMap{}, shMap{}; + uint8_t sectorIndex; + uint8_t rowIndex; + uint32_t clusterIndex; + shared = 0; + for (int i = 0; i < track.getNClusterReferences(); i++) { + o2::tpc::TrackTPC::getClusterReference(tpcClusRefs, i, sectorIndex, rowIndex, clusterIndex, track.getClusterRef()); + unsigned int absoluteIndex = tpcClusAcc.clusterOffset[sectorIndex][rowIndex] + clusterIndex; + clMap[rowIndex] = true; + if (tpcClusShMap[absoluteIndex] > 1) { + if (!shMap[rowIndex]) { + shared++; + } + shMap[rowIndex] = true; + } + } + + crossed = 0; + found = 0; + int last = -1; + for (int i = 0; i < maxRows; i++) { + if (clMap[i]) { + crossed++; + found++; + last = i; + } else if ((i - last) <= neighbour) { + crossed++; + } else { + int lim = std::min(i + 1 + neighbour, maxRows); + for (int j = i + 1; j < lim; j++) { + if (clMap[j]) { + crossed++; + } + } + } + } +} + +uint8_t AODProducerWorkflowDPL::getTRDPattern(const o2::trd::TrackTRD& track) +{ + uint8_t pattern = 0; + for (int il = o2::trd::TrackTRD::EGPUTRDTrack::kNLayers; il >= 0; il--) { + if (track.getTrackletIndex(il) != -1) { + pattern |= 0x1 << il; + } + } + return pattern; +} + void AODProducerWorkflowDPL::init(InitContext& ic) { mTimer.Stop(); - - mFillTracksITS = ic.options().get("fill-tracks-its"); - mFillTracksMFT = ic.options().get("fill-tracks-mft"); - mFillTracksTPC = ic.options().get("fill-tracks-tpc"); - mFillTracksITSTPC = ic.options().get("fill-tracks-its-tpc"); mTFNumber = ic.options().get("aod-timeframe-id"); mRecoOnly = ic.options().get("reco-mctracks-only"); mTruncate = ic.options().get("enable-truncation"); @@ -351,12 +481,8 @@ void AODProducerWorkflowDPL::init(InitContext& ic) LOG(INFO) << "TFNumber will be obtained from CCDB"; } - LOG(INFO) << "Track filling flags are set to: " - << "\n ITS = " << mFillTracksITS << "\n MFT = " << mFillTracksMFT << "\n TPC = " << mFillTracksTPC << "\n ITSTPC = " << mFillTracksITSTPC; - if (mTruncate != 1) { LOG(INFO) << "Truncation is not used!"; - mCollisionPosition = 0xFFFFFFFF; mCollisionPositionCov = 0xFFFFFFFF; mTrackX = 0xFFFFFFFF; @@ -398,9 +524,6 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) { mTimer.Start(false); - // initialize track extra holder structure - TrackExtraInfo extraInfoHolder; - o2::globaltracking::RecoContainer recoData; recoData.collectData(pc, *mDataRequest); @@ -418,29 +541,14 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto ft0ChData = recoData.getFT0ChannelsData(); auto ft0RecPoints = recoData.getFT0RecPoints(); - auto tracksITS = recoData.getITSTracks(); - auto tracksMFT = recoData.getMFTTracks(); - auto tracksTPC = recoData.getTPCTracks(); - auto tracksITSTPC = recoData.getTPCITSTracks(); - auto tracksTPCMCTruth = recoData.getTPCTracksMCLabels(); auto tracksITSMCTruth = recoData.getITSTracksMCLabels(); auto tracksMFTMCTruth = recoData.getMFTTracksMCLabels(); - // using vectors to mark referenced tracks - // todo: should not use these (?), to be removed, when all track types are processed - std::vector isStoredTPC(tracksTPC.size(), false); - std::vector isStoredITS(tracksITS.size(), false); - std::vector isStoredMFT(tracksMFT.size(), false); - LOG(DEBUG) << "FOUND " << primVertices.size() << " primary vertices"; - LOG(DEBUG) << "FOUND " << tracksTPC.size() << " TPC tracks"; LOG(DEBUG) << "FOUND " << tracksTPCMCTruth.size() << " TPC labels"; - LOG(DEBUG) << "FOUND " << tracksMFT.size() << " MFT tracks"; LOG(DEBUG) << "FOUND " << tracksMFTMCTruth.size() << " MFT labels"; - LOG(DEBUG) << "FOUND " << tracksITS.size() << " ITS tracks"; LOG(DEBUG) << "FOUND " << tracksITSMCTruth.size() << " ITS labels"; - LOG(DEBUG) << "FOUND " << tracksITSTPC.size() << " ITSTPC tracks"; LOG(DEBUG) << "FOUND " << ft0RecPoints.size() << " FT0 rec. points"; auto& bcBuilder = pc.outputs().make(Output{"AOD", "BC"}); @@ -643,104 +751,11 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) // filling unassigned tracks first // so that all unassigned tracks are stored in the beginning of the table together - auto& trackRefU = primVer2TRefs.back(); // references to unassigned tracks are at the end - for (int src = GIndex::NSources; src--;) { - int start = trackRefU.getFirstEntryOfSource(src); - int end = start + trackRefU.getEntriesOfSource(src); - LOG(DEBUG) << "Unassigned tracks: src = " << src << ", start = " << start << ", end = " << end; - for (int ti = start; ti < end; ti++) { - extraInfoHolder.tpcInnerParam = 0.f; - extraInfoHolder.flags = 0; - extraInfoHolder.itsClusterMap = 0; - extraInfoHolder.tpcNClsFindable = 0; - extraInfoHolder.tpcNClsFindableMinusFound = 0; - extraInfoHolder.tpcNClsFindableMinusCrossedRows = 0; - extraInfoHolder.tpcNClsShared = 0; - extraInfoHolder.trdPattern = 0; - extraInfoHolder.itsChi2NCl = -999.f; - extraInfoHolder.tpcChi2NCl = -999.f; - extraInfoHolder.trdChi2 = -999.f; - extraInfoHolder.tofChi2 = -999.f; - extraInfoHolder.tpcSignal = -999.f; - extraInfoHolder.trdSignal = -999.f; - extraInfoHolder.tofSignal = -999.f; - extraInfoHolder.length = -999.f; - extraInfoHolder.tofExpMom = -999.f; - extraInfoHolder.trackEtaEMCAL = -999.f; - extraInfoHolder.trackPhiEMCAL = -999.f; - auto& trackIndex = primVerGIs[ti]; - if (src == GIndex::Source::ITS && mFillTracksITS) { - const auto& track = tracksITS[trackIndex.getIndex()]; - isStoredITS[trackIndex.getIndex()] = true; - // extra info - extraInfoHolder.itsClusterMap = track.getPattern(); - // track - addToTracksTable(tracksCursor, tracksCovCursor, track, -1, src); - addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); - } - if (src == GIndex::Source::TPC && mFillTracksTPC) { - const auto& track = tracksTPC[trackIndex.getIndex()]; - isStoredTPC[trackIndex.getIndex()] = true; - // extra info - extraInfoHolder.tpcChi2NCl = track.getNClusters() ? track.getChi2() / track.getNClusters() : 0; - extraInfoHolder.tpcSignal = track.getdEdx().dEdxTotTPC; - extraInfoHolder.tpcNClsFindable = track.getNClusters(); - // track - addToTracksTable(tracksCursor, tracksCovCursor, track, -1, src); - addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); - } - if (src == GIndex::Source::ITSTPC && mFillTracksITSTPC) { - const auto& track = tracksITSTPC[trackIndex.getIndex()]; - auto contributorsGID = recoData.getSingleDetectorRefs(trackIndex); - // extra info from sub-tracks - if (contributorsGID[GIndex::Source::ITS].isIndexSet()) { - isStoredITS[track.getRefITS()] = true; - const auto& itsOrig = recoData.getITSTrack(contributorsGID[GIndex::ITS]); - extraInfoHolder.itsClusterMap = itsOrig.getPattern(); - } - if (contributorsGID[GIndex::Source::TPC].isIndexSet()) { - isStoredTPC[track.getRefTPC()] = true; - const auto& tpcOrig = recoData.getTPCTrack(contributorsGID[GIndex::TPC]); - extraInfoHolder.tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; - extraInfoHolder.tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; - extraInfoHolder.tpcNClsFindable = tpcOrig.getNClusters(); - } - addToTracksTable(tracksCursor, tracksCovCursor, track, -1, src); - addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); - } - if (src == GIndex::Source::ITSTPCTOF && mFillTracksITSTPC) { - auto contributorsGID = recoData.getSingleDetectorRefs(trackIndex); - const auto& track = recoData.getITSTPCTOFTrack(contributorsGID[GIndex::Source::ITSTPCTOF]); - const auto& tofMatch = recoData.getTOFMatch(contributorsGID[GIndex::Source::ITSTPCTOF]); - extraInfoHolder.tofChi2 = tofMatch.getChi2(); - const auto& tofInt = tofMatch.getLTIntegralOut(); - extraInfoHolder.tofSignal = tofInt.getTOF(0); // fixme: what id should be used here? - extraInfoHolder.length = tofInt.getL(); - // extra info from sub-tracks - if (contributorsGID[GIndex::Source::ITS].isIndexSet()) { - isStoredITS[track.getRefITS()] = true; - const auto& itsOrig = recoData.getITSTrack(contributorsGID[GIndex::ITS]); - extraInfoHolder.itsClusterMap = itsOrig.getPattern(); - } - if (contributorsGID[GIndex::Source::TPC].isIndexSet()) { - isStoredTPC[track.getRefTPC()] = true; - const auto& tpcOrig = recoData.getTPCTrack(contributorsGID[GIndex::TPC]); - extraInfoHolder.tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; - extraInfoHolder.tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; - extraInfoHolder.tpcNClsFindable = tpcOrig.getNClusters(); - } - addToTracksTable(tracksCursor, tracksCovCursor, track, -1, src); - addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); - } - if (src == GIndex::Source::MFT && mFillTracksMFT) { - const auto& track = tracksMFT[trackIndex.getIndex()]; - isStoredMFT[trackIndex.getIndex()] = true; - addToMFTTracksTable(mftTracksCursor, track, -1); - } - } - } + auto& trackRef = primVer2TRefs.back(); // references to unassigned tracks are at the end + // fixme: interaction time is undefined for unassigned tracks (?) + fillTrackTablesPerCollision(-1, -1, trackRef, primVerGIs, recoData, tracksCursor, tracksCovCursor, tracksExtraCursor, mftTracksCursor); - // filling collisions table + // filling collisions and tracks into tables int collisionID = 0; for (auto& vertex : primVertices) { auto& cov = vertex.getCov(); @@ -777,102 +792,8 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) truncateFloatFraction(timeStamp.getTimeStampError() * 1E3, mCollisionPositionCov), collisionTimeMask); auto& trackRef = primVer2TRefs[collisionID]; - for (int src = GIndex::NSources; src--;) { - int start = trackRef.getFirstEntryOfSource(src); - int end = start + trackRef.getEntriesOfSource(src); - LOG(DEBUG) << " ====> Collision " << collisionID << " ; src = " << src << " : ntracks = " << end - start; - LOG(DEBUG) << "start = " << start << ", end = " << end; - for (int ti = start; ti < end; ti++) { - extraInfoHolder.tpcInnerParam = 0.f; - extraInfoHolder.flags = 0; - extraInfoHolder.itsClusterMap = 0; - extraInfoHolder.tpcNClsFindable = 0; - extraInfoHolder.tpcNClsFindableMinusFound = 0; - extraInfoHolder.tpcNClsFindableMinusCrossedRows = 0; - extraInfoHolder.tpcNClsShared = 0; - extraInfoHolder.trdPattern = 0; - extraInfoHolder.itsChi2NCl = -999.f; - extraInfoHolder.tpcChi2NCl = -999.f; - extraInfoHolder.trdChi2 = -999.f; - extraInfoHolder.tofChi2 = -999.f; - extraInfoHolder.tpcSignal = -999.f; - extraInfoHolder.trdSignal = -999.f; - extraInfoHolder.tofSignal = -999.f; - extraInfoHolder.length = -999.f; - extraInfoHolder.tofExpMom = -999.f; - extraInfoHolder.trackEtaEMCAL = -999.f; - extraInfoHolder.trackPhiEMCAL = -999.f; - auto& trackIndex = primVerGIs[ti]; - if (src == GIndex::Source::ITS && mFillTracksITS) { - const auto& track = tracksITS[trackIndex.getIndex()]; - isStoredITS[trackIndex.getIndex()] = true; - // extra info - extraInfoHolder.itsClusterMap = track.getPattern(); - // track - addToTracksTable(tracksCursor, tracksCovCursor, track, collisionID, src); - addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); - } - if (src == GIndex::Source::TPC && mFillTracksTPC) { - const auto& track = tracksTPC[trackIndex.getIndex()]; - isStoredTPC[trackIndex.getIndex()] = true; - // extra info - extraInfoHolder.tpcChi2NCl = track.getNClusters() ? track.getChi2() / track.getNClusters() : 0; - extraInfoHolder.tpcSignal = track.getdEdx().dEdxTotTPC; - extraInfoHolder.tpcNClsFindable = track.getNClusters(); - // track - addToTracksTable(tracksCursor, tracksCovCursor, track, collisionID, src); - addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); - } - if (src == GIndex::Source::ITSTPC && mFillTracksITSTPC) { - const auto& track = tracksITSTPC[trackIndex.getIndex()]; - auto contributorsGID = recoData.getSingleDetectorRefs(trackIndex); - // extra info from sub-tracks - if (contributorsGID[GIndex::Source::ITS].isIndexSet()) { - isStoredITS[track.getRefITS()] = true; - const auto& itsOrig = recoData.getITSTrack(contributorsGID[GIndex::ITS]); - extraInfoHolder.itsClusterMap = itsOrig.getPattern(); - } - if (contributorsGID[GIndex::Source::TPC].isIndexSet()) { - isStoredTPC[track.getRefTPC()] = true; - const auto& tpcOrig = recoData.getTPCTrack(contributorsGID[GIndex::TPC]); - extraInfoHolder.tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; - extraInfoHolder.tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; - extraInfoHolder.tpcNClsFindable = tpcOrig.getNClusters(); - } - addToTracksTable(tracksCursor, tracksCovCursor, track, collisionID, src); - addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); - } - if (src == GIndex::Source::ITSTPCTOF && mFillTracksITSTPC) { - auto contributorsGID = recoData.getSingleDetectorRefs(trackIndex); - const auto& track = recoData.getITSTPCTOFTrack(contributorsGID[GIndex::Source::ITSTPCTOF]); - const auto& tofMatch = recoData.getTOFMatch(contributorsGID[GIndex::Source::ITSTPCTOF]); - extraInfoHolder.tofChi2 = tofMatch.getChi2(); - const auto& tofInt = tofMatch.getLTIntegralOut(); - extraInfoHolder.tofSignal = tofInt.getTOF(0); // fixme: what id should be used here? - extraInfoHolder.length = tofInt.getL(); - // extra info from sub-tracks - if (contributorsGID[GIndex::Source::ITS].isIndexSet()) { - isStoredITS[track.getRefITS()] = true; - const auto& itsOrig = recoData.getITSTrack(contributorsGID[GIndex::ITS]); - extraInfoHolder.itsClusterMap = itsOrig.getPattern(); - } - if (contributorsGID[GIndex::Source::TPC].isIndexSet()) { - isStoredTPC[track.getRefTPC()] = true; - const auto& tpcOrig = recoData.getTPCTrack(contributorsGID[GIndex::TPC]); - extraInfoHolder.tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; - extraInfoHolder.tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; - extraInfoHolder.tpcNClsFindable = tpcOrig.getNClusters(); - } - addToTracksTable(tracksCursor, tracksCovCursor, track, collisionID, src); - addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); - } - if (src == GIndex::Source::MFT && mFillTracksMFT) { - const auto& track = tracksMFT[trackIndex.getIndex()]; - isStoredMFT[trackIndex.getIndex()] = true; - addToMFTTracksTable(mftTracksCursor, track, collisionID); - } - } - } + // passing interaction time in [ps] + fillTrackTablesPerCollision(collisionID, tsTimeStamp * 1E3, trackRef, primVerGIs, recoData, tracksCursor, tracksCovCursor, tracksExtraCursor, mftTracksCursor); collisionID++; } @@ -892,14 +813,11 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) // filling mc particles table TripletsMap_t toStore; fillMCParticlesTable(mcReader, mcParticlesCursor, - tracksITSMCTruth, isStoredITS, - tracksMFTMCTruth, isStoredMFT, - tracksTPCMCTruth, isStoredTPC, - toStore, mccolid_to_eventandsource); - - isStoredITS.clear(); - isStoredMFT.clear(); - isStoredTPC.clear(); + tracksITSMCTruth, + tracksMFTMCTruth, + tracksTPCMCTruth, + toStore, + mccolid_to_eventandsource); // ------------------------------------------------------ // filling track labels @@ -910,106 +828,96 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) // bit 15 -- isFake() == true // labelID = std::numeric_limits::max() -- label is not set - uint32_t labelID; - uint32_t labelITS; - uint32_t labelTPC; - uint16_t labelMask; - uint8_t mftLabelMask; - // need to go through labels in the same order as for tracks + // todo: fill labels in the same way as tracks, using reco container for (auto& trackRef : primVer2TRefs) { for (int src = GIndex::NSources; src--;) { int start = trackRef.getFirstEntryOfSource(src); int end = start + trackRef.getEntriesOfSource(src); for (int ti = start; ti < end; ti++) { auto& trackIndex = primVerGIs[ti]; - labelID = std::numeric_limits::max(); - labelITS = labelID; - labelTPC = labelID; - labelMask = 0; - mftLabelMask = 0; + MCLabels labelHolder; // its labels - if (src == GIndex::Source::ITS && mFillTracksITS) { + if (src == GIndex::Source::ITS) { auto& mcTruthITS = tracksITSMCTruth[trackIndex.getIndex()]; if (mcTruthITS.isValid()) { - labelID = toStore.at(Triplet_t(mcTruthITS.getSourceID(), mcTruthITS.getEventID(), mcTruthITS.getTrackID())); + labelHolder.labelID = toStore.at(Triplet_t(mcTruthITS.getSourceID(), mcTruthITS.getEventID(), mcTruthITS.getTrackID())); } if (mcTruthITS.isFake()) { - labelMask |= (0x1 << 15); + labelHolder.labelMask |= (0x1 << 15); } if (mcTruthITS.isNoise()) { - labelMask |= (0x1 << 14); + labelHolder.labelMask |= (0x1 << 14); } mcTrackLabelCursor(0, - labelID, - labelMask); + labelHolder.labelID, + labelHolder.labelMask); } // tpc labels - if (src == GIndex::Source::TPC && mFillTracksTPC) { + if (src == GIndex::Source::TPC) { auto& mcTruthTPC = tracksTPCMCTruth[trackIndex.getIndex()]; if (mcTruthTPC.isValid()) { - labelID = toStore.at(Triplet_t(mcTruthTPC.getSourceID(), mcTruthTPC.getEventID(), mcTruthTPC.getTrackID())); + labelHolder.labelID = toStore.at(Triplet_t(mcTruthTPC.getSourceID(), mcTruthTPC.getEventID(), mcTruthTPC.getTrackID())); } if (mcTruthTPC.isFake()) { - labelMask |= (0x1 << 15); + labelHolder.labelMask |= (0x1 << 15); } if (mcTruthTPC.isNoise()) { - labelMask |= (0x1 << 14); + labelHolder.labelMask |= (0x1 << 14); } mcTrackLabelCursor(0, - labelID, - labelMask); + labelHolder.labelID, + labelHolder.labelMask); } - // its-tpc labels and its-tpc-tof labels + // its-tpc and its-tpc-tof labels // todo: // probably need to store both its and tpc labels // for now filling only TPC label - if ((src == GIndex::Source::ITSTPC || src == GIndex::Source::ITSTPCTOF) && mFillTracksITSTPC) { + if ((src == GIndex::Source::ITSTPC || src == GIndex::Source::ITSTPCTOF)) { auto contributorsGID = recoData.getSingleDetectorRefs(trackIndex); auto& mcTruthITS = tracksITSMCTruth[contributorsGID[GIndex::Source::ITS].getIndex()]; auto& mcTruthTPC = tracksTPCMCTruth[contributorsGID[GIndex::Source::TPC].getIndex()]; // its-contributor label if (contributorsGID[GIndex::Source::ITS].isIndexSet()) { if (mcTruthITS.isValid()) { - labelITS = toStore.at(Triplet_t(mcTruthITS.getSourceID(), mcTruthITS.getEventID(), mcTruthITS.getTrackID())); + labelHolder.labelITS = toStore.at(Triplet_t(mcTruthITS.getSourceID(), mcTruthITS.getEventID(), mcTruthITS.getTrackID())); } } if (contributorsGID[GIndex::Source::TPC].isIndexSet()) { if (mcTruthTPC.isValid()) { - labelTPC = toStore.at(Triplet_t(mcTruthTPC.getSourceID(), mcTruthTPC.getEventID(), mcTruthTPC.getTrackID())); + labelHolder.labelTPC = toStore.at(Triplet_t(mcTruthTPC.getSourceID(), mcTruthTPC.getEventID(), mcTruthTPC.getTrackID())); } } - labelID = labelTPC; + labelHolder.labelID = labelHolder.labelTPC; if (mcTruthITS.isFake() || mcTruthTPC.isFake()) { - labelMask |= (0x1 << 15); + labelHolder.labelMask |= (0x1 << 15); } if (mcTruthITS.isNoise() || mcTruthTPC.isNoise()) { - labelMask |= (0x1 << 14); + labelHolder.labelMask |= (0x1 << 14); } - if (labelITS != labelTPC) { + if (labelHolder.labelITS != labelHolder.labelTPC) { LOG(DEBUG) << "ITS-TPC MCTruth: labelIDs do not match at " << trackIndex.getIndex(); - labelMask |= (0x1 << 13); + labelHolder.labelMask |= (0x1 << 13); } mcTrackLabelCursor(0, - labelID, - labelMask); + labelHolder.labelID, + labelHolder.labelMask); } // mft labels - // todo: move to a separate table - if (src == GIndex::Source::MFT && mFillTracksMFT) { + if (src == GIndex::Source::MFT) { auto& mcTruthMFT = tracksMFTMCTruth[trackIndex.getIndex()]; if (mcTruthMFT.isValid()) { - labelID = toStore.at(Triplet_t(mcTruthMFT.getSourceID(), mcTruthMFT.getEventID(), mcTruthMFT.getTrackID())); + labelHolder.labelID = toStore.at(Triplet_t(mcTruthMFT.getSourceID(), mcTruthMFT.getEventID(), mcTruthMFT.getTrackID())); } if (mcTruthMFT.isFake()) { - mftLabelMask |= (0x1 << 7); + labelHolder.mftLabelMask |= (0x1 << 7); } if (mcTruthMFT.isNoise()) { - mftLabelMask |= (0x1 << 6); + labelHolder.mftLabelMask |= (0x1 << 6); } mcMFTTrackLabelCursor(0, - labelID, - mftLabelMask); + labelHolder.labelID, + labelHolder.mftLabelMask); } } } @@ -1039,6 +947,7 @@ DataProcessorSpec getAODProducerWorkflowSpec(GID::mask_t src, bool useMC, bool f dataRequest->requestSecondaryVertertices(useMC); } dataRequest->requestFT0RecPoints(false); + dataRequest->requestClusters(GIndex::getSourcesMask("TPC"), false); outputs.emplace_back(OutputLabel{"O2bc"}, "AOD", "BC", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2collision"}, "AOD", "COLLISION", 0, Lifetime::Timeframe); @@ -1062,12 +971,8 @@ DataProcessorSpec getAODProducerWorkflowSpec(GID::mask_t src, bool useMC, bool f "aod-producer-workflow", dataRequest->inputs, outputs, - AlgorithmSpec{adaptFromTask(dataRequest, fillSVertices)}, + AlgorithmSpec{adaptFromTask(src, dataRequest, fillSVertices)}, Options{ - ConfigParamSpec{"fill-tracks-its", VariantType::Int, 1, {"Fill ITS tracks into tracks table"}}, - ConfigParamSpec{"fill-tracks-mft", VariantType::Int, 1, {"Fill MFT tracks into mfttracks table"}}, - ConfigParamSpec{"fill-tracks-tpc", VariantType::Int, 0, {"Fill TPC tracks into tracks table"}}, - ConfigParamSpec{"fill-tracks-its-tpc", VariantType::Int, 1, {"Fill ITS-TPC tracks into tracks table"}}, ConfigParamSpec{"aod-timeframe-id", VariantType::Int64, -1L, {"Set timeframe number"}}, ConfigParamSpec{"enable-truncation", VariantType::Int, 1, {"Truncation parameter: 1 -- on, != 1 -- off"}}, ConfigParamSpec{"reco-mctracks-only", VariantType::Int, 0, {"Store only reconstructed MC tracks and their mothers/daughters. 0 -- off, != 0 -- on"}}}}; diff --git a/Detectors/AOD/src/aod-producer-workflow.cxx b/Detectors/AOD/src/aod-producer-workflow.cxx index b5514f5f8c4db..a7639580b8645 100644 --- a/Detectors/AOD/src/aod-producer-workflow.cxx +++ b/Detectors/AOD/src/aod-producer-workflow.cxx @@ -27,6 +27,7 @@ void customize(std::vector& workflowOptions) {"disable-root-input", o2::framework::VariantType::Bool, false, {"disable root-files input reader"}}, {"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writer"}}, {"disable-mc", o2::framework::VariantType::Bool, false, {"disable MC propagation"}}, + {"info-sources", VariantType::String, std::string{GID::ALL}, {"comma-separated list of sources to use"}}, {"fill-svertices", o2::framework::VariantType::Bool, false, {"fill V0 table"}}, {"configKeyValues", VariantType::String, "", {"Semicolon separated key=value strings ..."}}}; @@ -41,14 +42,13 @@ WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) auto fillSVertices = configcontext.options().get("fill-svertices"); auto useMC = !configcontext.options().get("disable-mc"); - GID::mask_t src = GID::getSourcesMask("ITS,MFT,TPC,ITS-TPC,ITS-TPC-TOF,TPC-TOF,FT0"); // asking only for currently processed sources - GID::mask_t dummy, srcClus = GID::includesDet(DetID::TOF, src) ? GID::getSourceMask(GID::TOF) : dummy; + GID::mask_t allowedSrc = GID::getSourcesMask("ITS,MFT,TPC,ITS-TPC,ITS-TPC-TOF,TPC-TOF,FT0,TPC-TRD,ITS-TPC-TRD"); + GID::mask_t src = allowedSrc & GID::getSourcesMask(configcontext.options().get("info-sources")); WorkflowSpec specs; - specs.emplace_back(o2::aodproducer::getAODProducerWorkflowSpec(src, useMC, fillSVertices)); - o2::globaltracking::InputHelper::addInputSpecs(configcontext, specs, srcClus, src, src, useMC, srcClus); + o2::globaltracking::InputHelper::addInputSpecs(configcontext, specs, src, src, src, useMC, src); o2::globaltracking::InputHelper::addInputSpecsPVertex(configcontext, specs, useMC); if (fillSVertices) { o2::globaltracking::InputHelper::addInputSpecsSVertex(configcontext, specs); diff --git a/Detectors/GlobalTracking/src/MatchTOF.cxx b/Detectors/GlobalTracking/src/MatchTOF.cxx index c3fe595cec87e..6bca22b92a799 100644 --- a/Detectors/GlobalTracking/src/MatchTOF.cxx +++ b/Detectors/GlobalTracking/src/MatchTOF.cxx @@ -626,7 +626,7 @@ void MatchTOF::doMatching(int sec) // set event indexes (to be checked) evIdx eventIndexTOFCluster(trefTOF.getEntryInTree(), mTOFClusSectIndexCache[indices[0]][itof]); evGIdx eventIndexTracks(mCurrTracksTreeEntry, {uint32_t(mTracksSectIndexCache[type][indices[0]][itrk]), o2::dataformats::GlobalTrackID::ITSTPC}); - mMatchedTracksPairs.emplace_back(eventIndexTOFCluster, chi2, trkLTInt[iPropagation], eventIndexTracks, type); // TODO: check if this is correct! + mMatchedTracksPairs.emplace_back(eventIndexTOFCluster, mTOFClusWork[cacheTOF[itof]].getTime(), chi2, trkLTInt[iPropagation], eventIndexTracks, type); // TODO: check if this is correct! } } } @@ -939,7 +939,7 @@ void MatchTOF::doMatchingForTPC(int sec) // set event indexes (to be checked) evIdx eventIndexTOFCluster(trefTOF.getEntryInTree(), mTOFClusSectIndexCache[indices[0]][itof]); evGIdx eventIndexTracks(mCurrTracksTreeEntry, {uint32_t(mTracksSectIndexCache[trkType::UNCONS][indices[0]][itrk]), o2::dataformats::GlobalTrackID::TPC}); - mMatchedTracksPairs.emplace_back(eventIndexTOFCluster, chi2, trkLTInt[ibc][iPropagation], eventIndexTracks, trkType::UNCONS, resZ / vdrift * side, trefTOF.getZ()); // TODO: check if this is correct! + mMatchedTracksPairs.emplace_back(eventIndexTOFCluster, mTOFClusWork[cacheTOF[itof]].getTime(), chi2, trkLTInt[ibc][iPropagation], eventIndexTracks, trkType::UNCONS, resZ / vdrift * side, trefTOF.getZ()); // TODO: check if this is correct! } } } From c087814914c89d740df4fa709f073bd458bb4950 Mon Sep 17 00:00:00 2001 From: shahoian Date: Sun, 11 Jul 2021 20:43:36 +0200 Subject: [PATCH 137/314] Dont disable FillEmptyHBF for CRU det. in triggered mode --- Detectors/Raw/include/DetectorsRaw/RawFileWriter.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/Raw/include/DetectorsRaw/RawFileWriter.h b/Detectors/Raw/include/DetectorsRaw/RawFileWriter.h index 0e5f74b568019..4617a77696d71 100644 --- a/Detectors/Raw/include/DetectorsRaw/RawFileWriter.h +++ b/Detectors/Raw/include/DetectorsRaw/RawFileWriter.h @@ -218,7 +218,7 @@ class RawFileWriter void setTriggeredReadout() { mROMode = Triggered; - setDontFillEmptyHBF(true); + setDontFillEmptyHBF(!mCRUDetector); } void setContinuousReadout(bool v) { From d61b26f264260b8b230efb9a3b6182fc550e02ff Mon Sep 17 00:00:00 2001 From: David Rohr Date: Sun, 4 Jul 2021 12:00:26 +0200 Subject: [PATCH 138/314] FST: Add multiplicities for TRD components to be fast enough --- prodtests/full-system-test/dpl-workflow.sh | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/prodtests/full-system-test/dpl-workflow.sh b/prodtests/full-system-test/dpl-workflow.sh index 4efe4d1ef88b9..c1b97b01216f6 100755 --- a/prodtests/full-system-test/dpl-workflow.sh +++ b/prodtests/full-system-test/dpl-workflow.sh @@ -89,12 +89,16 @@ if [ $EPNPIPELINES != 0 ]; then N_TPCENT=$(($(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) > 0 ? $(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) : 1)) N_TPCITS=$(($(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) > 0 ? $(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) : 1)) N_ITSDEC=$(($(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) > 0 ? $(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) : 1)) - N_EMC=$(($(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) > 0 ? $(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) : 1)) + N_EMC=$(($(expr 7 \* $EPNPIPELINES \* $NGPUS / 4) > 0 ? $(expr 7 \* $EPNPIPELINES \* $NGPUS / 4) : 1)) + N_TRDENT=$(($(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) > 0 ? $(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) : 1)) + N_TRDTRK=$(($(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) > 0 ? $(expr 3 \* $EPNPIPELINES \* $NGPUS / 4) : 1)) else N_TPCENT=1 N_TPCITS=1 N_ITSDEC=1 N_EMC=1 + N_TRDENT=1 + N_TRDTRK=1 fi # Input workflow @@ -130,7 +134,7 @@ WORKFLOW+="o2-gpu-reco-workflow ${ARGS_ALL/--severity $SEVERITY/--severity $SEVE WORKFLOW+="o2-tpcits-match-workflow $ARGS_ALL --disable-root-input --disable-root-output $DISABLE_MC --pipeline itstpc-track-matcher:$N_TPCITS | " WORKFLOW+="o2-ft0-reco-workflow $ARGS_ALL --disable-root-input --disable-root-output $DISABLE_MC | " WORKFLOW+="o2-tof-reco-workflow $ARGS_ALL --input-type $TOF_INPUT --output-type $TOF_OUTPUT --disable-root-input --disable-root-output $DISABLE_MC | " -WORKFLOW+="o2-trd-tracklet-transformer $ARGS_ALL --disable-root-input --disable-root-output $TRD_TRANSFORMER_CONFIG | " +WORKFLOW+="o2-trd-tracklet-transformer $ARGS_ALL --disable-root-input --disable-root-output $TRD_TRANSFORMER_CONFIG --pipeline TRDTRACKLETTRANSFORMER:$N_TRDTRK | " WORKFLOW+="o2-trd-global-tracking $ARGS_ALL --disable-root-input --disable-root-output $TRD_CONFIG | " # Workflows disabled in sync mode @@ -168,7 +172,7 @@ if [ $CTFINPUT == 0 ]; then WORKFLOW+="o2-zdc-entropy-encoder-workflow $ARGS_ALL | " WORKFLOW+="o2-fdd-entropy-encoder-workflow $ARGS_ALL | " WORKFLOW+="o2-hmpid-entropy-encoder-workflow $ARGS_ALL | " - WORKFLOW+="o2-trd-entropy-encoder-workflow $ARGS_ALL | " + WORKFLOW+="o2-trd-entropy-encoder-workflow $ARGS_ALL --pipeline trd-entropy-encoder:$N_TRDENT | " WORKFLOW+="o2-tpc-reco-workflow --input-type compressed-clusters-flat --output-type encoded-clusters,disable-writer --pipeline tpc-entropy-encoder:$N_TPCENT $ARGS_ALL | " WORKFLOW+="o2-tpc-scdcalib-interpolation-workflow $ARGS_ALL --disable-root-output --disable-root-input | " From bc3c70873ea55c30f2208542f566787399e3f81e Mon Sep 17 00:00:00 2001 From: David Rohr Date: Sun, 4 Jul 2021 12:00:46 +0200 Subject: [PATCH 139/314] FST: Increase sleeps during memory allocation to avoid wrong NUMA pinning --- prodtests/full-system-test/start_tmux.sh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/prodtests/full-system-test/start_tmux.sh b/prodtests/full-system-test/start_tmux.sh index 7a12a09c9f867..470cca7e79050 100755 --- a/prodtests/full-system-test/start_tmux.sh +++ b/prodtests/full-system-test/start_tmux.sh @@ -37,6 +37,6 @@ rm -f /dev/shm/*fmq* tmux \ new-session "NUMAID=0 $MYDIR/dpl-workflow.sh; echo END; sleep 1000" \; \ - split-window "sleep 30; NUMAID=1 $MYDIR/dpl-workflow.sh; echo END; sleep 1000" \; \ - split-window "sleep 60; SEVERITY=debug numactl --interleave=all $MYDIR/$CMD; echo END; sleep 1000" \; \ + split-window "sleep 45; NUMAID=1 $MYDIR/dpl-workflow.sh; echo END; sleep 1000" \; \ + split-window "sleep 90; SEVERITY=debug numactl --interleave=all $MYDIR/$CMD; echo END; sleep 1000" \; \ select-layout even-vertical From eff98773c42a68100ace4aff24cc904bd66ad8c0 Mon Sep 17 00:00:00 2001 From: David Rohr Date: Thu, 8 Jul 2021 11:16:54 +0200 Subject: [PATCH 140/314] GPU: Add tpcIncreasedMinClustersPerRow option --- GPU/GPUTracking/Definitions/GPUSettingsList.h | 1 + GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.cxx | 3 +++ 2 files changed, 4 insertions(+) diff --git a/GPU/GPUTracking/Definitions/GPUSettingsList.h b/GPU/GPUTracking/Definitions/GPUSettingsList.h index 821a272099c99..aef176f6a7be6 100644 --- a/GPU/GPUTracking/Definitions/GPUSettingsList.h +++ b/GPU/GPUTracking/Definitions/GPUSettingsList.h @@ -163,6 +163,7 @@ AddOption(disableTPCNoisyPadFilter, bool, false, "", 0, "Disables all TPC noisy AddOption(createO2Output, char, 2, "", 0, "Create Track output in O2 format (2 = skip non-O2 output in GPU track format (reverts to =1 if QA is requested))") AddOption(clearO2OutputFromGPU, bool, false, "", 0, "Free the GPU memory used for O2 output after copying to host, prevents further O2 processing on the GPU") AddOption(ignoreNonFatalGPUErrors, bool, false, "", 0, "Continue running after having received non fatal GPU errors, e.g. abort due to overflow") +AddOption(tpcIncreasedMinClustersPerRow, unsigned int, 0, "", 0, "Impose a minimum buffer size for the clustersPerRow during TPC clusterization") AddVariable(eventDisplay, GPUCA_NAMESPACE::gpu::GPUDisplayBackend*, nullptr) AddSubConfig(GPUSettingsProcessingRTC, rtc) AddHelp("help", 'h') diff --git a/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.cxx b/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.cxx index 298b007a880f1..1f5d290348782 100644 --- a/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.cxx +++ b/GPU/GPUTracking/TPCClusterFinder/GPUTPCClusterFinder.cxx @@ -120,6 +120,9 @@ void GPUTPCClusterFinder::SetMaxData(const GPUTrackingInOutPointers& io) mNMaxClusterPerRow = std::max(mNMaxClusterPerRow, std::min(threshold, mNMaxClusterPerRow * 10)); // Relative increased value up until a threshold, for noisy pads mNMaxClusterPerRow = std::max(mNMaxClusterPerRow, io.settingsTF->nHBFPerTF * 20000 / 256); // Absolute increased value, to have a minimum for noisy pads } + if (mRec->GetProcessingSettings().tpcIncreasedMinClustersPerRow) { + mNMaxClusterPerRow = std::max(mNMaxClusterPerRow, mRec->GetProcessingSettings().tpcIncreasedMinClustersPerRow); + } mBufSize = nextMultipleOf(GPUCA_MEMALIGN, mScanWorkGroupSize)>(mNMaxDigitsFragment); mNBufs = getNSteps(mBufSize); From 0c70cd3952ae2dfb3a2d909b456014256bd9f548 Mon Sep 17 00:00:00 2001 From: David Rohr Date: Thu, 8 Jul 2021 11:17:30 +0200 Subject: [PATCH 141/314] GPU: Bugfix: buffer size corrections must be performed before clusterization, to affect also buffers of clusterizer --- .../Global/GPUChainTrackingClusterizer.cxx | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx b/GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx index a7522e886f309..1e22b2d72dfd1 100644 --- a/GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx +++ b/GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx @@ -378,6 +378,16 @@ int GPUChainTracking::RunTPCClusterizer(bool synchronizeOutput) mRec->SetNOMPThreads(mRec->MemoryScalers()->nTPCdigits / 20000); } + mRec->MemoryScalers()->nTPCHits = mRec->MemoryScalers()->NTPCClusters(mRec->MemoryScalers()->nTPCdigits); + if (mIOPtrs.settingsTF && mIOPtrs.settingsTF->hasNHBFPerTF) { + unsigned int nHitsBase = mRec->MemoryScalers()->nTPCHits; + unsigned int threshold = 30000000 * mIOPtrs.settingsTF->nHBFPerTF / 256; + mRec->MemoryScalers()->nTPCHits = std::max(nHitsBase, std::min(threshold, nHitsBase * 3)); // Increase the buffer size for low occupancy data to compensate for noisy pads creating exceiive clusters + if (nHitsBase < threshold) { + float maxFactor = mRec->MemoryScalers()->nTPCHits < threshold ? 2.0 : 1.5; + mRec->MemoryScalers()->temporaryFactor *= std::min(maxFactor, (float)threshold / nHitsBase); + } + } for (unsigned int iSlice = 0; iSlice < NSLICES; iSlice++) { processors()->tpcClusterer[iSlice].SetMaxData(mIOPtrs); // First iteration to set data sizes } @@ -411,14 +421,6 @@ int GPUChainTracking::RunTPCClusterizer(bool synchronizeOutput) } bool buildNativeGPU = (mRec->GetRecoStepsGPU() & GPUDataTypes::RecoStep::TPCConversion) || (mRec->GetRecoStepsGPU() & GPUDataTypes::RecoStep::TPCSliceTracking) || (mRec->GetRecoStepsGPU() & GPUDataTypes::RecoStep::TPCMerging) || (mRec->GetRecoStepsGPU() & GPUDataTypes::RecoStep::TPCCompression); bool buildNativeHost = mRec->GetRecoStepsOutputs() & GPUDataTypes::InOutType::TPCClusters; // TODO: Should do this also when clusters are needed for later steps on the host but not requested as output - mRec->MemoryScalers()->nTPCHits = mRec->MemoryScalers()->NTPCClusters(mRec->MemoryScalers()->nTPCdigits); - if (mIOPtrs.settingsTF && mIOPtrs.settingsTF->hasNHBFPerTF) { - unsigned int threshold = 20000000 * mIOPtrs.settingsTF->nHBFPerTF / 256; - mRec->MemoryScalers()->nTPCHits = std::max(mRec->MemoryScalers()->nTPCHits, std::min(threshold, mRec->MemoryScalers()->nTPCHits * 3)); // Increase the buffer size for low occupancy data to compensate for noisy pads creating exceiive clusters - if (mRec->MemoryScalers()->nTPCHits < threshold) { - mRec->MemoryScalers()->temporaryFactor *= std::min(1.5, (double)threshold / mRec->MemoryScalers()->nTPCHits); - } - } mInputsHost->mNClusterNative = mInputsShadow->mNClusterNative = mRec->MemoryScalers()->nTPCHits; if (buildNativeGPU) { From 5324fccff37c81c44510b218c21deaa880a51682 Mon Sep 17 00:00:00 2001 From: David Rohr Date: Fri, 9 Jul 2021 10:26:26 +0200 Subject: [PATCH 142/314] GPU: Fix integer overflow in buffer size estimation --- GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx b/GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx index 1e22b2d72dfd1..aa503776edef7 100644 --- a/GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx +++ b/GPU/GPUTracking/Global/GPUChainTrackingClusterizer.cxx @@ -381,7 +381,7 @@ int GPUChainTracking::RunTPCClusterizer(bool synchronizeOutput) mRec->MemoryScalers()->nTPCHits = mRec->MemoryScalers()->NTPCClusters(mRec->MemoryScalers()->nTPCdigits); if (mIOPtrs.settingsTF && mIOPtrs.settingsTF->hasNHBFPerTF) { unsigned int nHitsBase = mRec->MemoryScalers()->nTPCHits; - unsigned int threshold = 30000000 * mIOPtrs.settingsTF->nHBFPerTF / 256; + unsigned int threshold = 30000000 / 256 * mIOPtrs.settingsTF->nHBFPerTF; mRec->MemoryScalers()->nTPCHits = std::max(nHitsBase, std::min(threshold, nHitsBase * 3)); // Increase the buffer size for low occupancy data to compensate for noisy pads creating exceiive clusters if (nHitsBase < threshold) { float maxFactor = mRec->MemoryScalers()->nTPCHits < threshold ? 2.0 : 1.5; From 17f6a6a2bd5464401592b99ed453b760cb312032 Mon Sep 17 00:00:00 2001 From: Sean Murray Date: Thu, 1 Jul 2021 17:14:48 +0200 Subject: [PATCH 143/314] move tracklet HCH to beginning of tracklets and always present --- .../TRD/reconstruction/src/DigitsParser.cxx | 16 +- .../reconstruction/src/TrackletsParser.cxx | 64 +----- .../include/TRDSimulation/Trap2CRU.h | 3 +- Detectors/TRD/simulation/src/Trap2CRU.cxx | 202 +++++++++--------- 4 files changed, 117 insertions(+), 168 deletions(-) diff --git a/Detectors/TRD/reconstruction/src/DigitsParser.cxx b/Detectors/TRD/reconstruction/src/DigitsParser.cxx index 98ad1175bbd80..8d133215b6a9c 100644 --- a/Detectors/TRD/reconstruction/src/DigitsParser.cxx +++ b/Detectors/TRD/reconstruction/src/DigitsParser.cxx @@ -82,7 +82,7 @@ int DigitsParser::Parse(bool verbose) } LOG(info) << "digitdata to parse end"; if (datacopy.size() > 1024) { - LOG(fatal) << "some very wrong with digit parsing >1024"; + LOG(error) << "something likely very wrong with digit parsing >1024"; } } int mcmdatacount = 0; @@ -139,7 +139,7 @@ int DigitsParser::Parse(bool verbose) if (mState == StateDigitMCMData || mState == StateDigitEndMarker || mState == StateDigitHCHeader || mState == StateDigitMCMHeader) { } else { - LOG(fatal) << "Digit end marker found but state is not StateDigitMCMData(" << StateDigitMCMData << ") or StateDigit but rather " << mState; + LOG(error) << "Digit end marker found but state is not StateDigitMCMData(" << StateDigitMCMData << ") or StateDigit but rather " << mState; } //only thing that can remain is the padding. //now read padding words till end. @@ -236,9 +236,9 @@ int DigitsParser::Parse(bool verbose) } // we dont care about the year flag, we are >2007 already. } else { - if (mState == StateDigitMCMHeader) { - LOG(warn) << " state is MCMHeader but we have just bypassed it as the bitmask is wrong :" << std::hex << *word; - } + //if (mState == StateDigitMCMHeader && *word!=o2::trd::constants::CRUPADDING32) { + // LOG(warn) << " state is MCMHeader but we have just bypassed it as the bitmask is wrong :" << std::hex << *word; + //} if (*word == o2::trd::constants::CRUPADDING32) { if (mVerbose) { LOG(info) << "state padding and word : 0x" << std::hex << *word << " state is:" << mState; @@ -261,9 +261,9 @@ int DigitsParser::Parse(bool verbose) LOG(info) << " digit end marker state ..."; } } else { - if (mState != StateDigitMCMData) { - LOG(warn) << "something is wrong we are in the statement for MCMdata, but the state is : " << mState << " and MCMData state is:" << StateDigitMCMData; - } + //if (mState != StateDigitMCMData) { + // LOG(warn) << "something is wrong we are in the statement for MCMdata, but the state is : " << mState << " and MCMData state is:" << StateDigitMCMData; + //} if (mVerbose || mDataVerbose) { //LOG(info) << "mDigitMCMData with state=" << mState << " is at " << mBufferLocation << " had value 0x" << std::hex << *word << " mcmdatacount of : " << mcmdatacount << " adc#" << mcmadccount; } diff --git a/Detectors/TRD/reconstruction/src/TrackletsParser.cxx b/Detectors/TRD/reconstruction/src/TrackletsParser.cxx index 65bab2bf6b2a4..203375384a169 100644 --- a/Detectors/TRD/reconstruction/src/TrackletsParser.cxx +++ b/Detectors/TRD/reconstruction/src/TrackletsParser.cxx @@ -77,7 +77,7 @@ int TrackletsParser::Parse() mCurrentLink = 0; mWordsRead = 0; mTrackletsFound = 0; - mState = StateTrackletMCMHeader; // we start with a trackletMCMHeader + mState = StateTrackletHCHeader; // we start with a trackletMCMHeader int currentLinkStart = 0; int mcmtrackletcount = 0; @@ -95,17 +95,10 @@ int TrackletsParser::Parse() //check for tracklet end marker 0x1000 0x1000 int index = std::distance(mStartParse, word); //mData->begin()); int indexend = std::distance(word, mEndParse); //mData->begin()); - if (mVerbose) { - LOG(info) << "====== Tracklet Loop WordsRead = " << mWordsRead << " count : " << trackletloopcount << " and index " << index << " words till end : " << indexend << " word is :" << word << " start is : " << mStartParse << " endis : " << mEndParse; - } - std::array::iterator nextword = word; std::advance(nextword, 1); uint32_t nextwordcopy = *nextword; - if (mDataVerbose) { - LOG(info) << "Before byteswapping " << index << " word is : " << std::hex << word << " next word is : " << nextwordcopy << " and raw nextword is :" << std::hex << (*mData)[index + 1]; - } if (mByteOrderFix) { swapByteOrder(*word); swapByteOrder(nextwordcopy); @@ -122,11 +115,6 @@ int TrackletsParser::Parse() if (!StateTrackletEndMarker && !StateTrackletHCHeader) { LOG(warn) << "State should be trackletend marker current ?= end marker ?? " << mState << " ?=" << StateTrackletEndMarker; } - if (mVerbose) { - LOG(info) << "found tracklet end marker bailing out of trackletparsing index is : " << index << " data size is : " << (mData)->size(); - LOG(info) << "=!=!=!=!=!=! loop distance to end of loop defined end : " << std::distance(mEndParse, word) << " should be 2 for the currently read end marker still to account for"; - LOG(info) << "=!=!=!=!=!=! loop around for Tracklet Loop WordsRead = " << mWordsRead + 2 << " count : " << trackletloopcount << " and index " << index << " words till end :" << indexend << " word is :" << word << " start is : " << mStartParse << " endis : " << mEndParse; - } mWordsRead += 2; //we should now have a tracklet half chamber header. mState = StateTrackletHCHeader; @@ -134,15 +122,11 @@ int TrackletsParser::Parse() std::advance(hchword, 2); uint32_t halfchamberheaderint = *hchword; if ((((*hchword) & (0x1 << 11)) != 0) && !mIgnoreTrackletHCHeader) { //TrackletHCHeader has bit 11 set to 1 always. Check for state because raw data can have bit 11 set! - if (mHeaderVerbose) { - LOG(info) << "after tracklet end marker mTrackletHCHeader is has value 0x" << std::hex << *word; - } //read the header //we actually have an header word. mTrackletHCHeader = (TrackletHCHeader*)&word; if (mHeaderVerbose) { LOG(info) << "state mcmheader and word : 0x" << std::hex << *word << " sanity check : " << trackletHCHeaderSanityCheck(*mTrackletHCHeader); - //printTrackletMCMHeader(*word); } mWordsRead++; mState = StateTrackletEndMarker; @@ -151,9 +135,6 @@ int TrackletsParser::Parse() // return mWordsRead; } - //if (mState == StateTrackletHCHeader && (mWordsRead != 0)) { - // LOG(warn) << " Parsing state is StateTrackletHCHeader, yet according to the lengths we are not at the beginning of a half chamber. " << mWordsRead << " != 0 "; - //} if (*word == o2::trd::constants::CRUPADDING32) { //padding word first as it clashes with the hcheader. mState = StatePadding; @@ -172,9 +153,9 @@ int TrackletsParser::Parse() //we actually have an header word. mTrackletHCHeader = (TrackletHCHeader*)&word; //sanity check of trackletheader ?? - if (!trackletHCHeaderSanityCheck(*mTrackletHCHeader)) { - LOG(warn) << "Sanity check Failure HCHeader : " << mTrackletHCHeader; - } + //if (!trackletHCHeaderSanityCheck(*mTrackletHCHeader)) { + // LOG(warn) << "Sanity check Failure HCHeader : " << std::hex << *word; + //} mWordsRead++; mState = StateTrackletMCMHeader; // now we should read a MCMHeader next time through loop @@ -182,23 +163,12 @@ int TrackletsParser::Parse() } else { //not TrackletMCMHeader if ((*word) & 0x80000001 && mState == StateTrackletMCMHeader) { //TrackletMCMHeader has the bits on either end always 1 //mcmheader - // LOG(debug) << "changing state from padding to mcmheader as next datais 0x" << std::hex << mDataPointer[0]; - // int a=1; - // int d=0; - // while(d==0){ - // a=sin(rand()); - // } mTrackletMCMHeader = (TrackletMCMHeader*)&(*word); if (mHeaderVerbose) { LOG(info) << "state mcmheader and word : 0x" << std::hex << *word; - } - if (mHeaderVerbose) { - // LOG(info) << "state mcmheader and word : 0x" << std::hex << *word << " sanity check : " << trackletMCMHeaderSanityCheck(*mTrackletMCMHeader); TrackletMCMHeader a; a.word = *word; - LOG(info) << "about to try print"; printTrackletMCMHeader(a); - LOG(info) << "have printed "; } headertrackletcount = getNumberofTracklets(*mTrackletMCMHeader); mState = StateTrackletMCMData; // afrter reading a header we should then have data for next round through the loop @@ -206,24 +176,14 @@ int TrackletsParser::Parse() mWordsRead++; } else { mState = StateTrackletMCMData; - if (mDataVerbose) { - LOG(info) << "mTrackletMCMData is at " << mWordsRead << " had value 0x" << std::hex << *word; - } //tracklet data; // build tracklet. //for the case of on flp build a vector of tracklets, then pack them into a data stream with a header. //for dpl build a vector and connect it with a triggerrecord. mTrackletMCMData = (TrackletMCMData*)&(*word); if (mDataVerbose) { - LOG(info) << "TTT+TTT read a raw tracklet from the raw stream mcmheader "; - //>> .. int a=1; - // int d=0; - // while(d==0){ - // a=sin(rand()); - // } - LOG(info) << std::hex << *word << " TTT+TTT"; + LOG(info) << std::hex << *word << " read a raw tracklet from the raw stream mcmheader "; printTrackletMCMData(*mTrackletMCMData); - LOG(info) << ""; } mWordsRead++; // take the header and this data word and build the underlying 64bit tracklet. @@ -250,22 +210,13 @@ int TrackletsParser::Parse() int col = mTrackletMCMHeader->col; int pos = mTrackletMCMData->pos; int slope = mTrackletMCMData->slope; - - // int layer = mTrackletHCHeader->layer; //TODO we dont know this YET! derive it from fibre ori - // int stack = mTrackletHCHeader->stack; - //jh int sector = mTrackletHCHeader->supermodule; - // int detector = mLayer + mStack * constants::NLAYER + mSector * constants::NLAYER * constants::NSTACK; int hcid = mDetector * 2 + mRobSide; mTracklets.emplace_back(4, hcid, padrow, col, pos, slope, q0, q1, q2); // our format is always 4 if (mDataVerbose) { - LOG(info) << "TTT Tracklet :" << 4 << "-" << hcid << "-" << padrow << "-" << col << "-" << pos << "-" << slope << "-" << q0 << ":" << q1 << ":" << q2; - LOG(info) << "emplace tracklet"; + LOG(info) << "Tracklet added:" << 4 << "-" << hcid << "-" << padrow << "-" << col << "-" << pos << "-" << slope << "-" << q0 << ":" << q1 << ":" << q2; } mTrackletsFound++; mcmtrackletcount++; - if (mDataVerbose) { - LOG(info) << " mcmtracklet count:" << mcmtrackletcount << " headertrackletcount :" << headertrackletcount; - } if (mcmtrackletcount == headertrackletcount) { // headertrackletcount and mcmtrackletcount are not zero based counting // at the end of the tracklet output of this mcm // next to come can either be an mcmheaderword or a trackletendmarker. @@ -292,9 +243,6 @@ int TrackletsParser::Parse() // mCurrentHalfCRUDataPosition256++; // mTotalHalfCRUDataLength++; } // else - if (mVerbose) { - LOG(info) << "=!=!=!=!=!=! loop around for Tracklet Loop count : " << trackletloopcount << " and index " << index << " word is :" << word << " start is : " << mStartParse << " endis : " << mEndParse; - } trackletloopcount++; } //end of for loop //sanity check, we should now see a digit Half Chamber Header in the following 2 32bit words. diff --git a/Detectors/TRD/simulation/include/TRDSimulation/Trap2CRU.h b/Detectors/TRD/simulation/include/TRDSimulation/Trap2CRU.h index e30013d965721..89cb13549d77a 100644 --- a/Detectors/TRD/simulation/include/TRDSimulation/Trap2CRU.h +++ b/Detectors/TRD/simulation/include/TRDSimulation/Trap2CRU.h @@ -62,7 +62,8 @@ class Trap2CRU int buildTrackletRawData(const int trackletindex, const int linkid); // from the current position in the tracklet vector, build the outgoing data for the current mcm the tracklet is on. int writeDigitEndMarker(); // write the digit end marker 0x0 0x0 int writeTrackletEndMarker(); // write the tracklet end maker 0x10001000 0x10001000 - int writeHCHeader(const int eventcount, uint32_t linkid); // write the HalfChamberHeader into the stream, after the tracklet endmarker and before the digits. + int writeDigitHCHeader(const int eventcount, uint32_t linkid); // write the Digit HalfChamberHeader into the stream, after the tracklet endmarker and before the digits. + int writeTrackletHCHeader(const int eventcount, uint32_t linkid); // write the Tracklet HalfChamberHeader into the stream, at the beginning of data iff there is tracklet data. bool digitindexcompare(const o2::trd::Digit& A, const o2::trd::Digit& B); //boohhl digitindexcompare(const unsigned int A, const unsigned int B); diff --git a/Detectors/TRD/simulation/src/Trap2CRU.cxx b/Detectors/TRD/simulation/src/Trap2CRU.cxx index f0d8501578448..96035d167f027 100644 --- a/Detectors/TRD/simulation/src/Trap2CRU.cxx +++ b/Detectors/TRD/simulation/src/Trap2CRU.cxx @@ -440,8 +440,6 @@ int Trap2CRU::buildDigitRawData(const int digitstartindex, const int digitendind if (digitswritten != digitendindex - digitstartindex) { LOG(error) << " something wrong the number of digitswritten does not correspond to the the loop count"; } - //LOG(info) << "raw pointer at end : " << (void*)mRawDataPtr; - //LOG(info) << __func__ << " leaving with digitswritten of: " << digitwordswritten << " for det:rob:mcm of " << startdet << ":" << startrob << ":" << startmcm; if (digitwordswritten != (digitswritten * 10 + 2)) { LOG(error) << "something wrong with writing the digits the following should be equal " << digitwordswritten << "==" << (digitswritten * 10 + 2) << " with digitswritten=" << digitswritten; LOG(error) << "digit start index distance to digit end index :" << digitendindex - digitstartindex; @@ -555,10 +553,8 @@ int Trap2CRU::writeTrackletEndMarker() return wordswritten; } -int Trap2CRU::writeHCHeader(const int eventcount, const uint32_t linkid) -{ // we have 2 HCHeaders defined Tracklet and Digit in Rawdata.h - //TODO is it a case of run2 and run3 ? for digithcheader and tracklethcheader? - //The parsing I am doing of CRU raw data only has a DigitHCHeader in it after the TrackletEndMarker ... confusion? +int Trap2CRU::writeTrackletHCHeader(const int eventcount, const uint32_t linkid) +{ int wordswritten = 0; //from linkid we can get supermodule, stack, layer, side int detector = linkid / 2; @@ -570,6 +566,22 @@ int Trap2CRU::writeHCHeader(const int eventcount, const uint32_t linkid) trackletheader.side = (linkid % 2) ? 1 : 0; trackletheader.MCLK = eventcount * 42; // just has to be a consistant increasing number per event. trackletheader.format = 12; + if (mUseTrackletHCHeader) { // run 3 we also have a TrackletHalfChamber, that comes after thetracklet endmarker. + memcpy(mRawDataPtr, (char*)&trackletheader, sizeof(TrackletHCHeader)); + //LOG(info) << "Wrote tracklet HC : 0x" << std::hex << trackletheader.word; + mRawDataPtr += 4; + wordswritten++; + } + return wordswritten; +} + +int Trap2CRU::writeDigitHCHeader(const int eventcount, const uint32_t linkid) +{ // we have 2 HCHeaders defined Tracklet and Digit in Rawdata.h + //TODO is it a case of run2 and run3 ? for digithcheader and tracklethcheader? + //The parsing I am doing of CRU raw data only has a DigitHCHeader in it after the TrackletEndMarker ... confusion? + int wordswritten = 0; + //from linkid we can get supermodule, stack, layer, side + int detector = linkid / 2; DigitHCHeader digitheader; digitheader.res0 = 1; @@ -586,12 +598,6 @@ int Trap2CRU::writeHCHeader(const int eventcount, const uint32_t linkid) digitheader.ptrigphase = 1; //TODO put something more real in here? digitheader.bunchcrossing = eventcount; //NB this is not the same as the bunchcrossing the rdh. digitheader.numtimebins = 30; - if (mUseTrackletHCHeader) { // run 3 we also have a TrackletHalfChamber, that comes after thetracklet endmarker. - memcpy(mRawDataPtr, (char*)&trackletheader, sizeof(TrackletHCHeader)); - //LOG(info) << "Wrote tracklet HC : 0x" << std::hex << trackletheader.word; - mRawDataPtr += 4; - wordswritten++; - } memcpy(mRawDataPtr, (char*)&digitheader, 8); // 8 because we are only using the first 2 32bit words of the header, the rest are optional. //LOG(info) << "Wrote tracklet HC : 0x" << std::hex << digitheader.word0 << " 0x" << digitheader.word1; mRawDataPtr += 8; @@ -601,7 +607,6 @@ int Trap2CRU::writeHCHeader(const int eventcount, const uint32_t linkid) void Trap2CRU::convertTrapData(o2::trd::TriggerRecord const& triggerrecord, const int& triggercount) { - //LOG(info) << "starting :" << __func__; //<< //build a HalfCRUHeader for this event/cru/endpoint //loop over cru's // loop over all half chambers, thankfully they data is sorted. @@ -659,7 +664,7 @@ void Trap2CRU::convertTrapData(o2::trd::TriggerRecord const& triggerrecord, cons //links run from 0 to 14, so linkid offset is halfcru*15; int linkid = halfcrulink + halfcru * o2::trd::constants::NLINKSPERHALFCRU; if (mVerbosity) { - LOG(info) << __func__ << " " << __LINE__ << " linkid : " << linkid << " with link " << halfcrulink << " of halfcru " << halfcru << " tracklet is on link for linkid : " << linkid << " and tracklet index of : " << mCurrentTracklet << " with current digit index : " << mCurrentDigit; + LOG(info) << " linkid : " << linkid << " with link " << halfcrulink << " of halfcru " << halfcru << " tracklet is on link for linkid : " << linkid << " and tracklet index of : " << mCurrentTracklet << " with current digit index : " << mCurrentDigit; } int linkwordswritten = 0; int errors = 0; // put no errors in for now. @@ -668,92 +673,87 @@ void Trap2CRU::convertTrapData(o2::trd::TriggerRecord const& triggerrecord, cons uint32_t crudatasize = 0; // in 256 bit words. //loop over tracklets for mcm's that match //we have some data on this link + int tracklets = 0; + int trackletendmarker = 0; + int adccounter = 0; + int rawwordsbefore = 0; + bool isFirstDigit = true; int trackletcounter = 0; - // if (mCurrentTracklet < endtrackletindex && mCurrentTracklet >= starttrackletindex && mCurrentDigit >= startdigitindex && mCurrentDigit < enddigitindex) { - //if (mCurrentTracklet < endtrackletindex && mCurrentTracklet>=starttrackletindex mTracklets.size() || mCurrentDigit < mDigits.size()) { - while (isTrackletOnLink(linkid, mCurrentTracklet) && mCurrentTracklet < endtrackletindex) { //}&& triggerrecord.getNumberOfTracklets()>0) { - // still on an mcm on this link - int tracklets = buildTrackletRawData(mCurrentTracklet, linkid); //returns # of 32 bits, header plus trackletdata words that would have come from the mcm. - mCurrentTracklet += tracklets; - trackletcounter += tracklets; - linkwordswritten += tracklets + 1; - rawwords += tracklets + 1; //1 to include the header - } - if (mCurrentTracklet >= mTracklets.size()) { - LOG(debug) << " finished with tracklets"; + if (mVerbosity) { + LOG(info) << __func__ << " " << __LINE__ << " is tracklet on link : " << linkid << " mcurrentdigit:" << mCurrentTracklet << " endtrackletindex:" << endtrackletindex << " is on link: " << isTrackletOnLink(linkid, mCurrentTracklet) << " and digits current digit:" << mCurrentDigit << " enddigitindex:" << enddigitindex << "is digit on link:" << isDigitOnLink(linkid, mCurrentDigit); } - if (trackletcounter > 0) { // TOOD this if statement givent the lower if statement is to keep the ability to write tracklets with nothing of the digits. - //write tracklet end marker - int trackletendmarker = writeTrackletEndMarker(); - linkwordswritten += trackletendmarker; - rawwords += trackletendmarker; - int hcheaderwords = writeHCHeader(triggercount, linkid); + if (isTrackletOnLink(linkid, mCurrentTracklet) || isDigitOnLink(linkid, mCurrentDigit)) { + // we have some data somewhere for this link + //write tracklet half chamber header irrespective of there being tracklet data + int hcheaderwords = writeTrackletHCHeader(triggercount, linkid); linkwordswritten += hcheaderwords; rawwords += hcheaderwords; - } - int adccounter = 0; - int rawwordsbefore = rawwords; - //LOG(info) << "Checking digit : " << linkid << " m"; - bool HaveNotAlreadyWrittenThis = true; - //LOG(info) << "Checking digit : " << linkid << " mCurrentDigit" << mCurrentDigit << " digit size:" << mDigits.size(); - //LOG(info) << "Is curernt digit on this link: " << isDigitOnLink(linkid, mCurrentDigit); - //LOG(info) << "calc linkid : " << mDigits[mDigitsIndex[mCurrentDigit]].getDetector() * 2 + mDigits[mDigitsIndex[mCurrentDigit]].getROB() % 2 << " actual link=" << linkid; - if (mCurrentDigit < mDigits.size()) { - while (isDigitOnLink(linkid, mCurrentDigit) && mCurrentDigit < enddigitindex && mEventDigitCount % mDigitRate == 0) { - if (mVerbosity) { - LOG(info) << "at top of digit while loop calc linkid :" << linkid << " : " << mDigits[mDigitsIndex[mCurrentDigit]].getDetector() * 2 + mDigits[mDigitsIndex[mCurrentDigit]].getROB() % 2 << " actual link=" << linkid; - } - // LOG(info) << "digit is on link for linkid : " << linkid << " and digit index of : " << mCurrentDigit; - if (trackletcounter == 0 && HaveNotAlreadyWrittenThis) { - // we have no tracklets, but we still need the trackletendmarker and the half chamber headers. - // - int trackletendmarker = writeTrackletEndMarker(); - linkwordswritten += trackletendmarker; - rawwords += trackletendmarker; - int hcheaderwords = writeHCHeader(triggercount, linkid); - linkwordswritten += hcheaderwords; - rawwords += hcheaderwords; - HaveNotAlreadyWrittenThis = false; - } - //while we are on a single mcm, copy the digits timebins to the array. - int digitcounter = 0; - int currentROB = mDigits[mDigitsIndex[mCurrentDigit]].getROB(); - int currentMCM = mDigits[mDigitsIndex[mCurrentDigit]].getMCM(); - int currentDetector = mDigits[mDigitsIndex[mCurrentDigit]].getDetector(); - int startmCurrentDigit = mCurrentDigit; - while (mDigits[mDigitsIndex[mCurrentDigit]].getMCM() == currentMCM && - mDigits[mDigitsIndex[mCurrentDigit]].getROB() == currentROB && - mDigits[mDigitsIndex[mCurrentDigit]].getDetector() == currentDetector) { - LOG(debug) << " on index of : " << mDigitsIndex[mCurrentDigit] << " wuf channel=" << mDigits[mDigitsIndex[mCurrentDigit]].getChannel(); - mCurrentDigit++; - digitcounter++; - adccounter++; - if (digitcounter > 22) { - LOG(error) << " we are on the 22nd digit of an mcm ?? This is not possible"; + + while (isTrackletOnLink(linkid, mCurrentTracklet) && mCurrentTracklet < endtrackletindex) { + LOG(info) << __func__ << " " << __LINE__; + // still on an mcm on this link + tracklets = buildTrackletRawData(mCurrentTracklet, linkid); //returns # of 32 bits, header plus trackletdata words that would have come from the mcm. + mCurrentTracklet += tracklets; + trackletcounter += tracklets; + linkwordswritten += tracklets + 1; + rawwords += tracklets + 1; //1 to include the header + } + if (mCurrentTracklet >= mTracklets.size()) { + LOG(debug) << " finished with tracklets"; + } + //write tracklet end marker irrespective of their being tracklet data. + trackletendmarker = writeTrackletEndMarker(); + linkwordswritten += trackletendmarker; + rawwords += trackletendmarker; + adccounter = 0; + rawwordsbefore = rawwords; + //TODO VERIFY THIS !!! I have been through the assembler and as far as I can tell ... DigitHCHeader is always written so long as there is some data on the link. + //although if there are trackelts there better be some digits unless the digits are switched off. + if (mCurrentDigit < mDigits.size()) { + LOG(info) << __func__ << " " << __LINE__; + while (isDigitOnLink(linkid, mCurrentDigit) && mCurrentDigit < enddigitindex && mEventDigitCount % mDigitRate == 0) { + LOG(info) << __func__ << " " << __LINE__; + if (mVerbosity) { + LOG(info) << "at top of digit while loop calc linkid :" << linkid << " : " << mDigits[mDigitsIndex[mCurrentDigit]].getDetector() * 2 + mDigits[mDigitsIndex[mCurrentDigit]].getROB() % 2 << " actual link=" << linkid; + } + if (isFirstDigit) { // TODO do we always write the digit half chamber header or only if there is 1 or more digits? + //TODO the query above holds for the digitendmarker as well. + int hcheaderwords = writeDigitHCHeader(triggercount, linkid); + linkwordswritten += hcheaderwords; + rawwords += hcheaderwords; + isFirstDigit = false; } - if (mCurrentDigit >= mDigits.size()) { - LOG(debug) << " finished with digits"; + //while we are on a single mcm, copy the digits timebins to the array. + int digitcounter = 0; + int currentROB = mDigits[mDigitsIndex[mCurrentDigit]].getROB(); + int currentMCM = mDigits[mDigitsIndex[mCurrentDigit]].getMCM(); + int currentDetector = mDigits[mDigitsIndex[mCurrentDigit]].getDetector(); + int startmCurrentDigit = mCurrentDigit; + while (mDigits[mDigitsIndex[mCurrentDigit]].getMCM() == currentMCM && + mDigits[mDigitsIndex[mCurrentDigit]].getROB() == currentROB && + mDigits[mDigitsIndex[mCurrentDigit]].getDetector() == currentDetector) { + LOG(debug) << " on index of : " << mDigitsIndex[mCurrentDigit] << " wuf channel=" << mDigits[mDigitsIndex[mCurrentDigit]].getChannel(); + mCurrentDigit++; + digitcounter++; + adccounter++; + if (digitcounter > 22) { + LOG(error) << " we are on the 22nd digit of an mcm ?? This is not possible"; + } } + // mcm digits are full, now write it out. + char* preptr; + preptr = mRawDataPtr; + int digitwordswritten = 0; + digitwordswritten = buildDigitRawData(startmCurrentDigit, mCurrentDigit, currentMCM, currentROB, triggercount); + linkwordswritten += digitwordswritten; } - // mcm digits are full, now write it out. - char* preptr; - preptr = mRawDataPtr; - int digitwordswritten = 0; - digitwordswritten = buildDigitRawData(startmCurrentDigit, mCurrentDigit, currentMCM, currentROB, triggercount); - //due to not being zero suppressed, digits returned from buildDigitRawData should *always* be 21. - ///rawwords += digits * 10 + 1; //10 for the tiembins and 1 for the header. - linkwordswritten += digitwordswritten; - //LOG(info) << "at bottom of while loop loop to continue if calc linkid : " << mDigits[mDigitsIndex[mCurrentDigit]].getDetector() * 2 + mDigits[mDigitsIndex[mCurrentDigit]].getROB() % 2 << " actual link=" << linkid; } } + LOG(info) << __func__ << " " << __LINE__; if (mVerbosity) { LOG(info) << "link:" << linkid << " trackletcounter: " << trackletcounter << " currenttracklet: " << mCurrentTracklet << " adccounter :" << adccounter << " current digit : " << mCurrentDigit; } - // LOG(info) << "we have a rawwords written for digits of: " << rawwords - rawwordsbefore << " calced at : " << ((float)rawwords - (float)rawwordsbefore - 1.0) / 10.0; int counter = 0; - //if (trackletcounter > 0 && adccounter == 0 && mEventDigitCount%mDigitRate==0) { //}&& triggerrecord.getNumberOfTracklets()!=0) { - // LOG(fatal) << " we have tracklets but no digits, this is not possible"; - //} if (adccounter > 0 || trackletcounter > 0) { //write the tracklet end marker so long as we have any data (digits or tracklets). int digitendmarkerwritten = writeDigitEndMarker(); @@ -762,9 +762,7 @@ void Trap2CRU::convertTrapData(o2::trd::TriggerRecord const& triggerrecord, cons } //pad up to a whole 256 bit word size if (linkwordswritten != 0) { - if (mVerbosity) { - LOG(info) << "linkwordswritten is non zero : " << linkwordswritten; - } + LOG(info) << __func__ << " " << __LINE__; crudatasize = linkwordswritten / 8; linkSizePadding(linkwordswritten, crudatasize, paddingsize); @@ -796,25 +794,31 @@ void Trap2CRU::convertTrapData(o2::trd::TriggerRecord const& triggerrecord, cons bytescopied = mRawDataPtr - rawdataptratstart; if (mVerbosity) { LOG(info) << "something wrong with data size in cruheader writing" - << "linkwordswriten:" << linkwordswritten << " rawwords:" << rawwords << "bytestocopy : " << bytescopied << " crudatasize:" << crudatasize << " sum of links up to now : " << totallinklengths << " mRawDataPtr:0x" << std::hex << (void*)mRawDataPtr << " start ptr:" << std::hex << (void*)rawdataptratstart; + << "linkwordswriten:" + << linkwordswritten << " rawwords:" << rawwords << "bytestocopy : " + << bytescopied << " crudatasize:" << crudatasize << " sum of links up to now : " + << totallinklengths << " mRawDataPtr:0x" << std::hex << (void*)mRawDataPtr + << " start ptr:" << std::hex << (void*)rawdataptratstart; } - //something wrong with data size writing padbytes:81 bytestocopy : 3488 crudatasize:81 mRawDataPtr:0x0x7f669acdedf0 start ptr:0x7f669acde050 - } else { if (mVerbosity) { - LOG(debug) << "all fine with data size writing padbytes:" << paddingsize << " linkwordswriten:" << linkwordswritten << " bytestocopy : " << bytescopied << " crudatasize:" << crudatasize << " mRawDataPtr:0x" << std::hex << (void*)mRawDataPtr << " start ptr:" << std::hex << (void*)rawdataptratstart; + LOG(debug) << "all fine with data size writing padbytes:" << paddingsize + << " linkwordswriten:" << linkwordswritten << " bytestocopy : " << bytescopied + << " crudatasize:" << crudatasize << " mRawDataPtr:0x" << std::hex + << (void*)mRawDataPtr << " start ptr:" << std::hex << (void*)rawdataptratstart; } } //sanity check for now: if (crudatasize != o2::trd::getlinkdatasize(halfcruheader, halfcrulink)) { // we have written the wrong amount of data .... - LOG(debug) << "crudata is ! = get link data size " << crudatasize << "!=" << o2::trd::getlinkdatasize(halfcruheader, halfcrulink); + LOG(warn) << "crudata is ! = get link data size " << crudatasize << "!=" << o2::trd::getlinkdatasize(halfcruheader, halfcrulink); } - LOG(debug) << "Link words to be written : " << linkwordswritten * 4; } // if we have data on link else { setHalfCRUHeaderLinkData(halfcruheader, halfcrulink, 0, 0); - LOG(debug) << "linkwordswritten is zero : " << linkwordswritten; + if (mVerbosity) { + LOG(info) << "linkwordswritten is zero : " << linkwordswritten; + } if (crudatasize != 0) { LOG(warn) << " we should not be here with a crudatasize of " << crudatasize << " as the linkwordswritten is " << linkwordswritten << " with a halfcrulink of : " << halfcrulink; LOG(debug) << " ### setting halfcrulink " << halfcrulink << " linksize to : " << crudatasize << " with a linkwordswrittern=" << linkwordswritten; @@ -825,7 +829,6 @@ void Trap2CRU::convertTrapData(o2::trd::TriggerRecord const& triggerrecord, cons } // if tracklets.size >0 //write the cruhalfheader now that we know the lengths. memcpy((char*)halfcruheaderptr, (char*)&halfcruheader, sizeof(halfcruheader)); - //} //write halfcru data here. std::vector feeidpayload(halfcruwordswritten * 4); memcpy(feeidpayload.data(), &rawdatavector[0], halfcruwordswritten * 4); @@ -835,9 +838,6 @@ void Trap2CRU::convertTrapData(o2::trd::TriggerRecord const& triggerrecord, cons LOG(info) << "written file for trigger : " << triggercount << " feeid of 0x" << std::hex << mFeeID << " cruid : " << mCruID << " and linkid: " << mLinkID << " and EndPoint: " << mEndPointID << " orbit :0x" << std::hex << triggerrecord.getBCData().orbit << " bc:0x" << std::hex << triggerrecord.getBCData().bc << " and payload size of : " << halfcruwordswritten << " with a half cru of: "; printHalfCRUHeader(halfcruheader); } - //for (int a = 0; a < halfcruwordswritten; ++a) { - // LOG(info) << std::hex << " 0x" << (unsigned int)feeidpayload[a * 4] << " 0x" << (unsigned int)feeidpayload[a * 4 + 1] << " 0x" << (unsigned int)feeidpayload[a * 4 + 2] << " 0x" << (unsigned int)feeidpayload[a * 4 + 3]; - //} if (mVerbosity) { HalfCRUHeader* h; h = (HalfCRUHeader*)feeidpayload.data(); From 28a94cdbae7b0e5e20b1c0757fa14115a5955c9b Mon Sep 17 00:00:00 2001 From: Hadi Hassan Date: Thu, 8 Jul 2021 17:35:44 +0200 Subject: [PATCH 144/314] [EMCAL-694] Summing all digits within one tower using SDigitizer --- Detectors/EMCAL/simulation/src/SDigitizer.cxx | 35 +++++-------------- Detectors/EMCAL/workflow/CMakeLists.txt | 6 ++-- .../EMCALWorkflow}/EMCALDigitWriterSpec.h | 0 .../EMCALWorkflow}/EMCALDigitizerSpec.h | 0 .../workflow}/src/EMCALDigitWriterSpec.cxx | 2 +- .../workflow}/src/EMCALDigitizerSpec.cxx | 5 +-- Steer/DigitizerWorkflow/CMakeLists.txt | 10 +++--- .../src/SimpleDigitizerWorkflow.cxx | 4 +-- 8 files changed, 23 insertions(+), 39 deletions(-) rename {Steer/DigitizerWorkflow/src => Detectors/EMCAL/workflow/include/EMCALWorkflow}/EMCALDigitWriterSpec.h (100%) rename {Steer/DigitizerWorkflow/src => Detectors/EMCAL/workflow/include/EMCALWorkflow}/EMCALDigitizerSpec.h (100%) rename {Steer/DigitizerWorkflow => Detectors/EMCAL/workflow}/src/EMCALDigitWriterSpec.cxx (97%) rename {Steer/DigitizerWorkflow => Detectors/EMCAL/workflow}/src/EMCALDigitizerSpec.cxx (97%) diff --git a/Detectors/EMCAL/simulation/src/SDigitizer.cxx b/Detectors/EMCAL/simulation/src/SDigitizer.cxx index d9584576364e0..1315dc4997c72 100644 --- a/Detectors/EMCAL/simulation/src/SDigitizer.cxx +++ b/Detectors/EMCAL/simulation/src/SDigitizer.cxx @@ -71,13 +71,6 @@ std::vector SDigitizer::process(const std::vector& label.setAmplitudeFraction(0); } - // Check whether the digit is high gain or low gain - if (digit.getAmplitude() > constants::EMCAL_HGLGTRANSITION * constants::EMCAL_ADCENERGY) { - digit.setLowGain(); - } else { - digit.setHighGain(); - } - LabeledDigit d(digit, label); digitsPerTower[tower].push_back(d); @@ -88,29 +81,19 @@ std::vector SDigitizer::process(const std::vector& std::vector digitsVector; - // Assigning a channel type LG or HG - for (auto t : digitsPerTower) { - std::vector digitsList = t.second; + // Sum all digits in one tower + for (auto [towerID, labeledDigits] : digitsPerTower) { - bool channelLowGain = false; + o2::emcal::LabeledDigit Sdigit = std::accumulate(std::next(labeledDigits.begin()), labeledDigits.end(), labeledDigits.front()); - // If the channel type is LG only keep low gain digits and discard the rest - for (auto digit : digitsList) { - if (digit.getLowGain()) { - channelLowGain = true; - break; - } + // Check whether the Sdigit is high gain or low gain + if (Sdigit.getAmplitude() > constants::EMCAL_HGLGTRANSITION * constants::EMCAL_ADCENERGY) { + Sdigit.setLowGain(); + } else { + Sdigit.setHighGain(); } - for (auto digit : digitsList) { - if (digit.getAmplitude() < 0) { - continue; - } - - if (digit.getLowGain() == channelLowGain) { - digitsVector.push_back(digit); - } - } + digitsVector.push_back(Sdigit); } digitsPerTower.clear(); diff --git a/Detectors/EMCAL/workflow/CMakeLists.txt b/Detectors/EMCAL/workflow/CMakeLists.txt index b19ccfd5a6765..966df50b905ab 100644 --- a/Detectors/EMCAL/workflow/CMakeLists.txt +++ b/Detectors/EMCAL/workflow/CMakeLists.txt @@ -10,7 +10,9 @@ # or submit itself to any jurisdiction. o2_add_library(EMCALWorkflow - SOURCES src/RecoWorkflow.cxx + SOURCES src/EMCALDigitWriterSpec.cxx + src/EMCALDigitizerSpec.cxx + src/RecoWorkflow.cxx src/PublisherSpec.cxx src/CellConverterSpec.cxx src/ClusterizerSpec.cxx @@ -19,7 +21,7 @@ o2_add_library(EMCALWorkflow src/RawToCellConverterSpec.cxx src/EntropyEncoderSpec.cxx src/EntropyDecoderSpec.cxx - PUBLIC_LINK_LIBRARIES O2::Framework O2::DataFormatsEMCAL + PUBLIC_LINK_LIBRARIES O2::Framework O2::DataFormatsEMCAL O2::EMCALSimulation O2::Steer O2::DPLUtils O2::EMCALBase O2::EMCALReconstruction O2::Algorithm) o2_add_executable(reco-workflow diff --git a/Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/EMCALDigitWriterSpec.h similarity index 100% rename from Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.h rename to Detectors/EMCAL/workflow/include/EMCALWorkflow/EMCALDigitWriterSpec.h diff --git a/Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/EMCALDigitizerSpec.h similarity index 100% rename from Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.h rename to Detectors/EMCAL/workflow/include/EMCALWorkflow/EMCALDigitizerSpec.h diff --git a/Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.cxx b/Detectors/EMCAL/workflow/src/EMCALDigitWriterSpec.cxx similarity index 97% rename from Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.cxx rename to Detectors/EMCAL/workflow/src/EMCALDigitWriterSpec.cxx index 640e346529090..63a06c8340db8 100644 --- a/Steer/DigitizerWorkflow/src/EMCALDigitWriterSpec.cxx +++ b/Detectors/EMCAL/workflow/src/EMCALDigitWriterSpec.cxx @@ -11,7 +11,7 @@ /// @brief Processor spec for a ROOT file writer for EMCAL digits -#include "EMCALDigitWriterSpec.h" +#include "EMCALWorkflow/EMCALDigitWriterSpec.h" #include "DPLUtils/MakeRootTreeWriterSpec.h" #include #include "DataFormatsEMCAL/Digit.h" diff --git a/Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.cxx b/Detectors/EMCAL/workflow/src/EMCALDigitizerSpec.cxx similarity index 97% rename from Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.cxx rename to Detectors/EMCAL/workflow/src/EMCALDigitizerSpec.cxx index bda8705d1e95d..722c38810ffe9 100644 --- a/Steer/DigitizerWorkflow/src/EMCALDigitizerSpec.cxx +++ b/Detectors/EMCAL/workflow/src/EMCALDigitizerSpec.cxx @@ -9,7 +9,7 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#include "EMCALDigitizerSpec.h" +#include "EMCALWorkflow/EMCALDigitizerSpec.h" #include "CommonConstants/Triggers.h" #include "Framework/ConfigParamRegistry.h" #include "Framework/ControlService.h" @@ -20,6 +20,7 @@ #include "TStopwatch.h" #include "Steer/HitProcessingManager.h" // for DigitizationContext #include "TChain.h" +#include #include "CommonDataFormat/EvIndex.h" #include "DataFormatsParameters/GRPObject.h" @@ -161,7 +162,7 @@ void DigitizerSpec::run(framework::ProcessingContext& ctx) mFinished = true; } -DataProcessorSpec getEMCALDigitizerSpec(int channel, bool mctruth) +o2::framework::DataProcessorSpec getEMCALDigitizerSpec(int channel, bool mctruth) { // create the full data processor spec using // a name identifier diff --git a/Steer/DigitizerWorkflow/CMakeLists.txt b/Steer/DigitizerWorkflow/CMakeLists.txt index a216b9726cc22..eab4a24e23504 100644 --- a/Steer/DigitizerWorkflow/CMakeLists.txt +++ b/Steer/DigitizerWorkflow/CMakeLists.txt @@ -12,9 +12,7 @@ if (ENABLE_UPGRADES) o2_add_executable(digitizer-workflow COMPONENT_NAME sim - SOURCES src/EMCALDigitWriterSpec.cxx - src/EMCALDigitizerSpec.cxx - src/CTPDigitizerSpec.cxx + SOURCES src/CTPDigitizerSpec.cxx src/FT0DigitizerSpec.cxx src/FV0DigitizerSpec.cxx src/FDDDigitizerSpec.cxx @@ -36,6 +34,7 @@ o2_add_executable(digitizer-workflow O2::Steer O2::CommonConstants O2::EMCALSimulation + O2::EMCALWorkflow O2::FT0Simulation O2::FV0Simulation O2::FDDSimulation @@ -71,9 +70,7 @@ o2_add_executable(digitizer-workflow else() o2_add_executable(digitizer-workflow COMPONENT_NAME sim - SOURCES src/EMCALDigitWriterSpec.cxx - src/EMCALDigitizerSpec.cxx - src/CTPDigitizerSpec.cxx + SOURCES src/CTPDigitizerSpec.cxx src/FT0DigitizerSpec.cxx src/FV0DigitizerSpec.cxx src/FDDDigitizerSpec.cxx @@ -94,6 +91,7 @@ o2_add_executable(digitizer-workflow O2::Steer O2::CommonConstants O2::EMCALSimulation + O2::EMCALWorkflow O2::FT0Simulation O2::FV0Simulation O2::FDDSimulation diff --git a/Steer/DigitizerWorkflow/src/SimpleDigitizerWorkflow.cxx b/Steer/DigitizerWorkflow/src/SimpleDigitizerWorkflow.cxx index 0681dc9ab16f9..8695ba6083e3b 100644 --- a/Steer/DigitizerWorkflow/src/SimpleDigitizerWorkflow.cxx +++ b/Steer/DigitizerWorkflow/src/SimpleDigitizerWorkflow.cxx @@ -63,8 +63,8 @@ #include "FDDWorkflow/DigitWriterSpec.h" // for EMCal -#include "EMCALDigitizerSpec.h" -#include "EMCALDigitWriterSpec.h" +#include "EMCALWorkflow/EMCALDigitizerSpec.h" +#include "EMCALWorkflow/EMCALDigitWriterSpec.h" // for HMPID #include "HMPIDDigitizerSpec.h" From c0f64b452e858f1af3d631dd318916a552bfb31d Mon Sep 17 00:00:00 2001 From: arvindkhuntia <31609955+arvindkhuntia@users.noreply.github.com> Date: Mon, 12 Jul 2021 23:27:25 +0200 Subject: [PATCH 145/314] [FV0] (1) Add separate waveforms for ring 1-4 and ring 5 and (2) take care of adc overflow (#6611) * [FV0] (1) Add separate waveform for ring 1-4 and ring 5 and take care of adc overflow --- .../include/FV0Simulation/Digitizer.h | 6 +- .../include/FV0Simulation/FV0DigParam.h | 30 ++++--- .../FIT/FV0/simulation/src/Digitizer.cxx | 89 +++++++++++++------ 3 files changed, 86 insertions(+), 39 deletions(-) diff --git a/Detectors/FIT/FV0/simulation/include/FV0Simulation/Digitizer.h b/Detectors/FIT/FV0/simulation/include/FV0Simulation/Digitizer.h index 1e528a6d453da..00fdeefecca1d 100644 --- a/Detectors/FIT/FV0/simulation/include/FV0Simulation/Digitizer.h +++ b/Detectors/FIT/FV0/simulation/include/FV0Simulation/Digitizer.h @@ -36,7 +36,7 @@ class Digitizer public: Digitizer() - : mTimeStamp(0), mIntRecord(), mEventId(-1), mSrcId(-1), mMCLabels(), mCache(), mPmtChargeVsTime(), mNBins(), mNTimeBinsPerBC(), mPmtResponseGlobal(), mPmtResponseTemp(), mLastBCCache(), mCfdStartIndex() + : mTimeStamp(0), mIntRecord(), mEventId(-1), mSrcId(-1), mMCLabels(), mCache(), mPmtChargeVsTime(), mNBins(), mNTimeBinsPerBC(), mPmtResponseGlobalRing5(), mPmtResponseGlobalRingA1ToA4(), mPmtResponseTemp(), mLastBCCache(), mCfdStartIndex() { } @@ -110,6 +110,7 @@ class Digitizer std::vector& digitsCh, std::vector& digitsTrig, o2::dataformats::MCTruthContainer& labels); + bool isRing5(int detID); std::array, Constants::nFv0Channels> mPmtChargeVsTime; // Charge time series aka analogue signal pulse from PM UInt_t mNBins; // @@ -117,7 +118,8 @@ class Digitizer Float_t mBinSize; // Time width of the pulse bin - HPTDC resolution /// vectors to store the PMT signal from cosmic muons - std::vector mPmtResponseGlobal; + std::vector mPmtResponseGlobalRing5; + std::vector mPmtResponseGlobalRingA1ToA4; std::vector mPmtResponseTemp; /// for CFD diff --git a/Detectors/FIT/FV0/simulation/include/FV0Simulation/FV0DigParam.h b/Detectors/FIT/FV0/simulation/include/FV0Simulation/FV0DigParam.h index e3f2390ecfab0..0b0338613138e 100644 --- a/Detectors/FIT/FV0/simulation/include/FV0Simulation/FV0DigParam.h +++ b/Detectors/FIT/FV0/simulation/include/FV0Simulation/FV0DigParam.h @@ -28,27 +28,37 @@ struct FV0DigParam : public o2::conf::ConfigurableParamHelper { // NOTUSED float pmtGain = 5e4; // value for PMT R5924-70 at default FV0 gain // NOTUSED float pmtTransitTime = 9.5; // PMT response time (corresponds to 1.9 ns rise time) // NOTUSED float pmtTransparency = 0.25; // Transparency of the first dynode of the PMT - float shapeConst = 1.18059e-14; // Crystal ball const parameter - float shapeMean = 9.5; // Crystal ball mean parameter - float shapeAlpha = -6.56586e-01; // Crystal ball alpha parameter - float shapeN = 2.36408e+00; // Crystal ball N parameter - float shapeSigma = 3.55445; // Crystal ball sigma parameter - //float timeShiftCfd = 3.3; // From the cosmic measurements of FV0 [keep it for reference] + /// Parameter for the FV0 waveform [Conv. of expo. with Landau] + // For ring 1-4 + float offsetRingA1ToA4 = 15.87e-09; + float normRingA1ToA4 = 7.9061033e-13; + float constRingA1ToA4 = -25.6165; + float slopeRingA1ToA4 = 4.7942e+08; + float mpvRingA1ToA4 = -6.38203e-08; + float sigmaRingA1ToA4 = 2.12167e-09; + // For ring 5 + float offsetRing5 = 16.38e-09; + float normRing5 = 8.0303587e-13; + float constRing5 = -66.76; + float slopeRing5 = 9.43117e+08; + float mpvRing5 = -6.44167e-08; + float sigmaRing5 = 2.3621e-09; float timeShiftCfd = 5.3; // TODO: adjust after FV0 with FEE measurements are done float singleMipThreshold = 3.0; // in [MeV] of deposited energy float singleHitTimeThreshold = 120.0; // in [ns] to skip very slow particles UInt_t waveformNbins = 10000; // number of bins for the analog pulse waveform float waveformBinWidth = 0.01302; // bin width [ns] for analog pulse waveform - float avgCfdTimeForMip = 8.63; // in ns to shift the CFD time to zero TODO do ring wise + float avgCfdTimeForMip = 8.63; // in ns to shift the CFD time to zero TODO [do ring wise] bool isIntegrateFull = false; // Full charge integration widow in 25 ns float cfdCheckWindow = 2.5; // time window for the cfd in ns to trigger the charge integration int avgNumberPhElectronPerMip = 201; // avg number of photo-electrons per MIP - float globalTimeOfFlight = 315.0 / o2::constants::physics::LightSpeedCm2NS; //TODO check the correct value for distance of FV0 to IP + float globalTimeOfFlight = 315.0 / o2::constants::physics::LightSpeedCm2NS; // TODO [check the correct value for distance of FV0 to IP] float mCFDdeadTime = 15.6; // ns float mCFD_trsh = 3.; // [mV] ///Parameters for trigger simulation - int adcChargeHighMultTh = 3 * 498; //threshold value of ADC charge for high multiplicity trigger - + bool useMaxChInAdc = true; // default = true + int adcChargeHighMultTh = 3 * 498; // threshold value of ADC charge for high multiplicity trigger + int maxCountInAdc = 4095; // to take care adc ADC overflow O2ParamDef(FV0DigParam, "FV0DigParam"); }; } // namespace fv0 diff --git a/Detectors/FIT/FV0/simulation/src/Digitizer.cxx b/Detectors/FIT/FV0/simulation/src/Digitizer.cxx index 4e3fc70c3f5e6..17b008db00799 100644 --- a/Detectors/FIT/FV0/simulation/src/Digitizer.cxx +++ b/Detectors/FIT/FV0/simulation/src/Digitizer.cxx @@ -12,6 +12,7 @@ #include "FV0Simulation/Digitizer.h" #include "FV0Base/Geometry.h" #include "FV0Base/Constants.h" +#include "TF1Convolution.h" #include #include @@ -39,7 +40,6 @@ void Digitizer::init() LOG(INFO) << "V0Digitizer::init -> start = "; mNBins = FV0DigParam::Instance().waveformNbins; //Will be computed using detector set-up from CDB mBinSize = FV0DigParam::Instance().waveformBinWidth; //Will be set-up from CDB - mNTimeBinsPerBC = std::lround(o2::constants::lhc::LHCBunchSpacingNS / mBinSize); // 1920 bins/BC for (Int_t detID = 0; detID < Constants::nFv0Channels; detID++) { @@ -47,26 +47,36 @@ void Digitizer::init() mLastBCCache.mPmtChargeVsTime[detID].resize(mNBins); } - // set up PMT response function [avg] - TF1 signalShapeFn("signalShape", "crystalball", 0, 200); - signalShapeFn.SetParameters(FV0DigParam::Instance().shapeConst, - FV0DigParam::Instance().shapeMean, - FV0DigParam::Instance().shapeSigma, - FV0DigParam::Instance().shapeAlpha, - FV0DigParam::Instance().shapeN); - - // PMT response per hit [Global] - double x = mBinSize / 2.0; /// Calculate at BinCenter - mPmtResponseGlobal.resize(mNBins); - for (auto& y : mPmtResponseGlobal) { - y = signalShapeFn.Eval(x); - //LOG(INFO)< finished"; } @@ -155,11 +165,22 @@ void Digitizer::createPulse(float mipFraction, int parID, const double hitTime, if (NBinShift >= 0 && NBinShift < FV0DigParam::Instance().waveformNbins) { mPmtResponseTemp.resize(FV0DigParam::Instance().waveformNbins, 0.); - std::memcpy(&mPmtResponseTemp[NBinShift], &mPmtResponseGlobal[0], - sizeof(double) * (FV0DigParam::Instance().waveformNbins - NBinShift)); + if (isRing5(detId)) { + std::memcpy(&mPmtResponseTemp[NBinShift], &mPmtResponseGlobalRing5[0], + sizeof(double) * (FV0DigParam::Instance().waveformNbins - NBinShift)); + } else { + std::memcpy(&mPmtResponseTemp[NBinShift], &mPmtResponseGlobalRingA1ToA4[0], + sizeof(double) * (FV0DigParam::Instance().waveformNbins - NBinShift)); + } } else { - mPmtResponseTemp = mPmtResponseGlobal; - mPmtResponseTemp.erase(mPmtResponseTemp.begin(), mPmtResponseTemp.begin() + abs(NBinShift)); + if (isRing5(detId)) { + mPmtResponseTemp = mPmtResponseGlobalRing5; + mPmtResponseTemp.erase(mPmtResponseTemp.begin(), mPmtResponseTemp.begin() + abs(NBinShift)); + } else { + mPmtResponseTemp = mPmtResponseGlobalRingA1ToA4; + mPmtResponseTemp.erase(mPmtResponseTemp.begin(), mPmtResponseTemp.begin() + abs(NBinShift)); + } + mPmtResponseTemp.resize(FV0DigParam::Instance().waveformNbins); } @@ -223,14 +244,21 @@ void Digitizer::storeBC(const BCCache& bc, continue; } float totalCharge = IntegrateCharge(bc.mPmtChargeVsTime[iPmt]); - totalChargeAllRing += totalCharge; - totalCharge *= DP::INV_CHARGE_PER_ADC; + if (totalCharge > (FV0DigParam::Instance().maxCountInAdc * (1. / DP::INV_CHARGE_PER_ADC)) && FV0DigParam::Instance().useMaxChInAdc) { + totalChargeAllRing += FV0DigParam::Instance().maxCountInAdc * (1. / DP::INV_CHARGE_PER_ADC); + } else { + totalChargeAllRing += totalCharge; + } + totalCharge *= DP::INV_CHARGE_PER_ADC; //convert coulomb to adc + if (totalCharge > FV0DigParam::Instance().maxCountInAdc && FV0DigParam::Instance().useMaxChInAdc) { + totalCharge = FV0DigParam::Instance().maxCountInAdc; //max adc channel for one PMT + } cfdZero *= DP::INV_TIME_PER_TDCCHANNEL; digitsCh.emplace_back(iPmt, std::lround(cfdZero), std::lround(totalCharge)); ++nStored; //---trigger--- - if (iPmt < 25) { + if (iPmt < 24) { nSignalInner++; } else { nSignalOuter++; @@ -284,7 +312,6 @@ Float_t Digitizer::IntegrateCharge(const ChannelBCDataF& pulse) const if (chargeIntMin < 0 || chargeIntMin > mNTimeBinsPerBC || chargeIntMax > mNTimeBinsPerBC) { LOG(FATAL) << "invalid indicess: chargeInMin=" << chargeIntMin << " chargeIntMax=" << chargeIntMax; } - Float_t totalCharge = 0.0f; for (int iTimeBin = chargeIntMin; iTimeBin < chargeIntMax; iTimeBin++) { totalCharge += pulse[iTimeBin]; @@ -367,7 +394,6 @@ o2::fv0::Digitizer::BCCache& Digitizer::setBCCache(const o2::InteractionRecord& cb = ir; return cb; } - for (auto cb = mCache.begin(); cb != mCache.end(); cb++) { if ((*cb) == ir) { return *cb; @@ -391,3 +417,12 @@ o2::fv0::Digitizer::BCCache* Digitizer::getBCCache(const o2::InteractionRecord& } return nullptr; } + +bool Digitizer::isRing5(int detID) +{ + if (detID > 31) { + return true; + } else { + return false; + } +} From f33279cb9d1b38c58dce10cad51d1d907ced74d5 Mon Sep 17 00:00:00 2001 From: Laurent Aphecetche Date: Mon, 12 Jul 2021 23:28:25 +0200 Subject: [PATCH 146/314] MCH: Include CH6L in electronic mapping (#6605) * MCH: Include CH6L in electronic mapping * remove tabs --- Detectors/MUON/MCH/Raw/ElecMap/README.md | 24 +- Detectors/MUON/MCH/Raw/ElecMap/src/CH6L.cxx | 651 +++++++++++++++++- Detectors/MUON/MCH/Raw/ElecMap/src/elecmap.py | 5 +- .../MUON/MCH/Raw/ElecMap/src/environment.yml | 9 + .../Raw/ElecMap/src/testElectronicMapper.cxx | 22 +- 5 files changed, 685 insertions(+), 26 deletions(-) create mode 100644 Detectors/MUON/MCH/Raw/ElecMap/src/environment.yml diff --git a/Detectors/MUON/MCH/Raw/ElecMap/README.md b/Detectors/MUON/MCH/Raw/ElecMap/README.md index cf6f3ad05b2b0..b1cababd6ab90 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/README.md +++ b/Detectors/MUON/MCH/Raw/ElecMap/README.md @@ -23,8 +23,8 @@ the 24 of a CRU). As the time of this writing the electronic mapping is still a bit in flux, as : -- the detector electronic is still being (re)installed -- the FeeId,LinkId to Solar part is still to be implemented at Pt2 +- the detector electronic is still being (re)installed +- the FeeId,LinkId to Solar part is still to be implemented at Pt2 so things might evolve... @@ -36,7 +36,7 @@ The API is to be found in [Mapper.h](include/MCHRawElecMap/Mapper.h) file. ## Generation of electronic mapping -The code generation uses the [gen.sh](src/gen.sh) script which basically loops +The code generation uses the [gen.sh](src/gen.sh) script which basically loops on all chambers and call `elecmap.py` for each one, e.g. ```bash @@ -46,12 +46,24 @@ on all chambers and call `elecmap.py` for each one, e.g. (for the moment a credential JSON file is required, we'll try to remove that constraint as soon as possible) -The `elecmap.py` python script requires a number of python modules to be -installed to be able to run : +The `elecmap.py` python script requires a number of python modules to be +installed to be able to run : -``` +```shell pip install oauth2client pip install gspread pip install numpy pip install pandas ``` + +Or, if you use `conda` (e.g. + [miniforge](https://github.com/conda-forge/miniforge)), +a [environment.yml](src/environment.yml) is provided so that : + +```shell +conda env create +conda env activate mch-elecmap +``` + +should bring you all you need to execute the script. + diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/CH6L.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/CH6L.cxx index e3e92e2569627..7afd178780e6d 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/CH6L.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/CH6L.cxx @@ -13,13 +13,650 @@ /// GENERATED CODE ! DO NOT EDIT ! /// -#include -#include -#include "MCHRawElecMap/DsElecId.h" -#include "MCHRawElecMap/DsDetId.h" -using namespace o2::mch::raw; - +#include "CH.cxx" void fillElec2DetCH6L(std::map& e2d) { + add(e2d, 605, 16, 312, 0, 0); + add(e2d, 605, 15, 312, 0, 1); + add(e2d, 605, 14, 312, 0, 2); + add(e2d, 605, 13, 312, 0, 3); + add(e2d, 605, 12, 312, 0, 4); + add(e2d, 605, 8, 312, 2, 0); + add(e2d, 605, 7, 312, 2, 1); + add(e2d, 605, 6, 312, 2, 2); + add(e2d, 605, 5, 312, 2, 3); + add(e2d, 605, 4, 312, 2, 4); + add(e2d, 605, 1033, 312, 4, 0); + add(e2d, 605, 1034, 312, 4, 1); + add(e2d, 605, 1035, 312, 4, 2); + add(e2d, 605, 1025, 312, 6, 0); + add(e2d, 605, 1026, 312, 6, 1); + add(e2d, 605, 1027, 312, 6, 2); + add(e2d, 605, 110, 312, 1, 0); + add(e2d, 605, 111, 312, 1, 1); + add(e2d, 605, 112, 312, 1, 2); + add(e2d, 605, 113, 312, 1, 3); + add(e2d, 605, 114, 312, 1, 4); + add(e2d, 605, 101, 312, 3, 0); + add(e2d, 605, 102, 312, 3, 1); + add(e2d, 605, 103, 312, 3, 2); + add(e2d, 605, 104, 312, 3, 3); + add(e2d, 605, 105, 312, 3, 4); + add(e2d, 605, 1142, 312, 5, 0); + add(e2d, 605, 1141, 312, 5, 1); + add(e2d, 605, 1140, 312, 5, 2); + add(e2d, 605, 1139, 312, 5, 3); + add(e2d, 605, 1133, 312, 7, 0); + add(e2d, 605, 1132, 312, 7, 1); + add(e2d, 605, 1131, 312, 7, 2); + add(e2d, 605, 1130, 312, 7, 3); + add(e2d, 606, 119, 313, 1, 0); + add(e2d, 606, 120, 313, 1, 1); + add(e2d, 606, 121, 313, 1, 2); + add(e2d, 606, 122, 313, 1, 3); + add(e2d, 606, 123, 313, 1, 4); + add(e2d, 606, 110, 313, 3, 0); + add(e2d, 606, 111, 313, 3, 1); + add(e2d, 606, 112, 313, 3, 2); + add(e2d, 606, 113, 313, 3, 3); + add(e2d, 606, 114, 313, 3, 4); + add(e2d, 606, 101, 313, 5, 0); + add(e2d, 606, 102, 313, 5, 1); + add(e2d, 606, 103, 313, 5, 2); + add(e2d, 606, 104, 313, 5, 3); + add(e2d, 606, 105, 313, 5, 4); + add(e2d, 606, 1151, 313, 0, 0); + add(e2d, 606, 1150, 313, 0, 1); + add(e2d, 606, 1149, 313, 0, 2); + add(e2d, 606, 1148, 313, 0, 3); + add(e2d, 606, 1142, 313, 2, 0); + add(e2d, 606, 1141, 313, 2, 1); + add(e2d, 606, 1140, 313, 2, 2); + add(e2d, 606, 1139, 313, 2, 3); + add(e2d, 606, 1133, 313, 4, 0); + add(e2d, 606, 1132, 313, 4, 1); + add(e2d, 606, 1131, 313, 4, 2); + add(e2d, 606, 1130, 313, 4, 3); + add(e2d, 606, 24, 314, 1, 0); + add(e2d, 606, 23, 314, 1, 1); + add(e2d, 606, 22, 314, 1, 2); + add(e2d, 606, 21, 314, 1, 3); + add(e2d, 606, 20, 314, 1, 4); + add(e2d, 606, 16, 314, 3, 0); + add(e2d, 606, 15, 314, 3, 1); + add(e2d, 606, 14, 314, 3, 2); + add(e2d, 606, 13, 314, 3, 3); + add(e2d, 606, 12, 314, 3, 4); + add(e2d, 606, 8, 314, 5, 0); + add(e2d, 606, 7, 314, 5, 1); + add(e2d, 606, 6, 314, 5, 2); + add(e2d, 606, 5, 314, 5, 3); + add(e2d, 606, 4, 314, 5, 4); + add(e2d, 606, 1041, 314, 0, 0); + add(e2d, 606, 1042, 314, 0, 1); + add(e2d, 606, 1043, 314, 0, 2); + add(e2d, 606, 1033, 314, 2, 0); + add(e2d, 606, 1034, 314, 2, 1); + add(e2d, 606, 1035, 314, 2, 2); + add(e2d, 606, 1025, 314, 4, 0); + add(e2d, 606, 1026, 314, 4, 1); + add(e2d, 606, 1027, 314, 4, 2); + add(e2d, 607, 1039, 8, 0, 0); + add(e2d, 607, 1040, 8, 0, 1); + add(e2d, 607, 1041, 8, 0, 2); + add(e2d, 607, 1035, 8, 2, 0); + add(e2d, 607, 1036, 8, 2, 1); + add(e2d, 607, 1037, 8, 2, 2); + add(e2d, 607, 1038, 8, 2, 3); + add(e2d, 607, 1141, 8, 4, 0); + add(e2d, 607, 1142, 8, 4, 1); + add(e2d, 607, 1143, 8, 4, 2); + add(e2d, 607, 1133, 8, 1, 0); + add(e2d, 607, 1134, 8, 1, 1); + add(e2d, 607, 1135, 8, 1, 2); + add(e2d, 607, 1125, 8, 3, 0); + add(e2d, 607, 1126, 8, 3, 1); + add(e2d, 607, 1127, 8, 3, 2); + add(e2d, 607, 5, 9, 0, 0); + add(e2d, 607, 4, 9, 0, 1); + add(e2d, 607, 3, 9, 0, 2); + add(e2d, 607, 2, 9, 0, 3); + add(e2d, 607, 1, 9, 0, 4); + add(e2d, 607, 10, 9, 2, 0); + add(e2d, 607, 9, 9, 2, 1); + add(e2d, 607, 8, 9, 2, 2); + add(e2d, 607, 7, 9, 2, 3); + add(e2d, 607, 6, 9, 2, 4); + add(e2d, 607, 124, 9, 4, 0); + add(e2d, 607, 123, 9, 4, 1); + add(e2d, 607, 122, 9, 4, 2); + add(e2d, 607, 121, 9, 4, 3); + add(e2d, 607, 120, 9, 4, 4); + add(e2d, 607, 116, 9, 1, 0); + add(e2d, 607, 115, 9, 1, 1); + add(e2d, 607, 114, 9, 1, 2); + add(e2d, 607, 113, 9, 1, 3); + add(e2d, 607, 112, 9, 1, 4); + add(e2d, 607, 108, 9, 3, 0); + add(e2d, 607, 107, 9, 3, 1); + add(e2d, 607, 106, 9, 3, 2); + add(e2d, 607, 105, 9, 3, 3); + add(e2d, 607, 104, 9, 3, 4); + add(e2d, 607, 1327, 10, 0, 0); + add(e2d, 607, 1326, 10, 0, 1); + add(e2d, 607, 1325, 10, 0, 2); + add(e2d, 607, 1331, 10, 2, 0); + add(e2d, 607, 1330, 10, 2, 1); + add(e2d, 607, 1329, 10, 2, 2); + add(e2d, 607, 1328, 10, 2, 3); + add(e2d, 607, 1251, 10, 4, 0); + add(e2d, 607, 1250, 10, 4, 1); + add(e2d, 607, 1249, 10, 4, 2); + add(e2d, 607, 1248, 10, 4, 3); + add(e2d, 607, 1242, 10, 1, 0); + add(e2d, 607, 1241, 10, 1, 1); + add(e2d, 607, 1240, 10, 1, 2); + add(e2d, 607, 1239, 10, 1, 3); + add(e2d, 607, 1233, 10, 3, 0); + add(e2d, 607, 1232, 10, 3, 1); + add(e2d, 607, 1231, 10, 3, 2); + add(e2d, 607, 1230, 10, 3, 3); + add(e2d, 607, 313, 11, 0, 0); + add(e2d, 607, 314, 11, 0, 1); + add(e2d, 607, 315, 11, 0, 2); + add(e2d, 607, 316, 11, 0, 3); + add(e2d, 607, 317, 11, 0, 4); + add(e2d, 607, 308, 11, 2, 0); + add(e2d, 607, 309, 11, 2, 1); + add(e2d, 607, 310, 11, 2, 2); + add(e2d, 607, 311, 11, 2, 3); + add(e2d, 607, 312, 11, 2, 4); + add(e2d, 607, 219, 11, 4, 0); + add(e2d, 607, 220, 11, 4, 1); + add(e2d, 607, 221, 11, 4, 2); + add(e2d, 607, 222, 11, 4, 3); + add(e2d, 607, 223, 11, 4, 4); + add(e2d, 607, 210, 11, 1, 0); + add(e2d, 607, 211, 11, 1, 1); + add(e2d, 607, 212, 11, 1, 2); + add(e2d, 607, 213, 11, 1, 3); + add(e2d, 607, 214, 11, 1, 4); + add(e2d, 607, 201, 11, 3, 0); + add(e2d, 607, 202, 11, 3, 1); + add(e2d, 607, 203, 11, 3, 2); + add(e2d, 607, 204, 11, 3, 3); + add(e2d, 607, 205, 11, 3, 4); + add(e2d, 608, 405, 12, 0, 0); + add(e2d, 608, 404, 12, 0, 1); + add(e2d, 608, 403, 12, 0, 2); + add(e2d, 608, 402, 12, 0, 3); + add(e2d, 608, 401, 12, 0, 4); + add(e2d, 608, 410, 12, 2, 0); + add(e2d, 608, 409, 12, 2, 1); + add(e2d, 608, 408, 12, 2, 2); + add(e2d, 608, 407, 12, 2, 3); + add(e2d, 608, 406, 12, 2, 4); + add(e2d, 608, 413, 12, 4, 0); + add(e2d, 608, 412, 12, 4, 1); + add(e2d, 608, 411, 12, 4, 2); + add(e2d, 608, 228, 12, 6, 0); + add(e2d, 608, 227, 12, 6, 1); + add(e2d, 608, 226, 12, 6, 2); + add(e2d, 608, 225, 12, 6, 3); + add(e2d, 608, 224, 12, 6, 4); + add(e2d, 608, 233, 12, 1, 0); + add(e2d, 608, 232, 12, 1, 1); + add(e2d, 608, 231, 12, 1, 2); + add(e2d, 608, 230, 12, 1, 3); + add(e2d, 608, 229, 12, 1, 4); + add(e2d, 608, 216, 12, 3, 0); + add(e2d, 608, 215, 12, 3, 1); + add(e2d, 608, 214, 12, 3, 2); + add(e2d, 608, 213, 12, 3, 3); + add(e2d, 608, 212, 12, 3, 4); + add(e2d, 608, 208, 12, 5, 0); + add(e2d, 608, 207, 12, 5, 1); + add(e2d, 608, 206, 12, 5, 2); + add(e2d, 608, 205, 12, 5, 3); + add(e2d, 608, 204, 12, 5, 4); + add(e2d, 608, 1329, 13, 0, 0); + add(e2d, 608, 1330, 13, 0, 1); + add(e2d, 608, 1331, 13, 0, 2); + add(e2d, 608, 1332, 13, 0, 3); + add(e2d, 608, 1333, 13, 0, 4); + add(e2d, 608, 1325, 13, 2, 0); + add(e2d, 608, 1326, 13, 2, 1); + add(e2d, 608, 1327, 13, 2, 2); + add(e2d, 608, 1328, 13, 2, 3); + add(e2d, 608, 1245, 13, 4, 0); + add(e2d, 608, 1246, 13, 4, 1); + add(e2d, 608, 1247, 13, 4, 2); + add(e2d, 608, 1241, 13, 1, 0); + add(e2d, 608, 1242, 13, 1, 1); + add(e2d, 608, 1243, 13, 1, 2); + add(e2d, 608, 1244, 13, 1, 3); + add(e2d, 608, 1233, 13, 3, 0); + add(e2d, 608, 1234, 13, 3, 1); + add(e2d, 608, 1235, 13, 3, 2); + add(e2d, 608, 1225, 13, 5, 0); + add(e2d, 608, 1226, 13, 5, 1); + add(e2d, 608, 1227, 13, 5, 2); + add(e2d, 608, 4, 56, 0, 0); + add(e2d, 608, 5, 56, 0, 1); + add(e2d, 608, 6, 56, 0, 2); + add(e2d, 608, 7, 56, 0, 3); + add(e2d, 608, 124, 56, 2, 0); + add(e2d, 608, 125, 56, 2, 1); + add(e2d, 608, 126, 56, 2, 2); + add(e2d, 608, 127, 56, 2, 3); + add(e2d, 608, 128, 56, 2, 4); + add(e2d, 608, 119, 56, 4, 0); + add(e2d, 608, 120, 56, 4, 1); + add(e2d, 608, 121, 56, 4, 2); + add(e2d, 608, 122, 56, 4, 3); + add(e2d, 608, 123, 56, 4, 4); + add(e2d, 608, 110, 56, 1, 0); + add(e2d, 608, 111, 56, 1, 1); + add(e2d, 608, 112, 56, 1, 2); + add(e2d, 608, 113, 56, 1, 3); + add(e2d, 608, 114, 56, 1, 4); + add(e2d, 608, 101, 56, 3, 0); + add(e2d, 608, 102, 56, 3, 1); + add(e2d, 608, 103, 56, 3, 2); + add(e2d, 608, 104, 56, 3, 3); + add(e2d, 608, 105, 56, 3, 4); + add(e2d, 608, 1027, 57, 0, 0); + add(e2d, 608, 1026, 57, 0, 1); + add(e2d, 608, 1025, 57, 0, 2); + add(e2d, 608, 1155, 57, 2, 0); + add(e2d, 608, 1154, 57, 2, 1); + add(e2d, 608, 1153, 57, 2, 2); + add(e2d, 608, 1159, 57, 4, 0); + add(e2d, 608, 1158, 57, 4, 1); + add(e2d, 608, 1157, 57, 4, 2); + add(e2d, 608, 1156, 57, 4, 3); + add(e2d, 608, 1142, 57, 1, 0); + add(e2d, 608, 1141, 57, 1, 1); + add(e2d, 608, 1140, 57, 1, 2); + add(e2d, 608, 1139, 57, 1, 3); + add(e2d, 608, 1133, 57, 3, 0); + add(e2d, 608, 1132, 57, 3, 1); + add(e2d, 608, 1131, 57, 3, 2); + add(e2d, 608, 1130, 57, 3, 3); + add(e2d, 609, 3, 58, 0, 0); + add(e2d, 609, 2, 58, 0, 1); + add(e2d, 609, 1, 58, 0, 2); + add(e2d, 609, 10, 58, 2, 0); + add(e2d, 609, 9, 58, 2, 1); + add(e2d, 609, 8, 58, 2, 2); + add(e2d, 609, 7, 58, 2, 3); + add(e2d, 609, 6, 58, 2, 4); + add(e2d, 609, 15, 58, 4, 0); + add(e2d, 609, 14, 58, 4, 1); + add(e2d, 609, 13, 58, 4, 2); + add(e2d, 609, 12, 58, 4, 3); + add(e2d, 609, 11, 58, 4, 4); + add(e2d, 609, 116, 58, 1, 0); + add(e2d, 609, 115, 58, 1, 1); + add(e2d, 609, 114, 58, 1, 2); + add(e2d, 609, 113, 58, 1, 3); + add(e2d, 609, 112, 58, 1, 4); + add(e2d, 609, 108, 58, 3, 0); + add(e2d, 609, 107, 58, 3, 1); + add(e2d, 609, 106, 58, 3, 2); + add(e2d, 609, 105, 58, 3, 3); + add(e2d, 609, 104, 58, 3, 4); + add(e2d, 609, 1028, 59, 0, 0); + add(e2d, 609, 1029, 59, 0, 1); + add(e2d, 609, 1044, 59, 2, 0); + add(e2d, 609, 1045, 59, 2, 1); + add(e2d, 609, 1046, 59, 2, 2); + add(e2d, 609, 1040, 59, 4, 0); + add(e2d, 609, 1041, 59, 4, 1); + add(e2d, 609, 1042, 59, 4, 2); + add(e2d, 609, 1043, 59, 4, 3); + add(e2d, 609, 1133, 59, 1, 0); + add(e2d, 609, 1134, 59, 1, 1); + add(e2d, 609, 1135, 59, 1, 2); + add(e2d, 609, 1125, 59, 3, 0); + add(e2d, 609, 1126, 59, 3, 1); + add(e2d, 609, 1127, 59, 3, 2); + add(e2d, 609, 304, 60, 0, 0); + add(e2d, 609, 305, 60, 0, 1); + add(e2d, 609, 306, 60, 0, 2); + add(e2d, 609, 307, 60, 0, 3); + add(e2d, 609, 320, 60, 2, 0); + add(e2d, 609, 321, 60, 2, 1); + add(e2d, 609, 322, 60, 2, 2); + add(e2d, 609, 323, 60, 2, 3); + add(e2d, 609, 324, 60, 2, 4); + add(e2d, 609, 315, 60, 4, 0); + add(e2d, 609, 316, 60, 4, 1); + add(e2d, 609, 317, 60, 4, 2); + add(e2d, 609, 318, 60, 4, 3); + add(e2d, 609, 319, 60, 4, 4); + add(e2d, 609, 210, 60, 1, 0); + add(e2d, 609, 211, 60, 1, 1); + add(e2d, 609, 212, 60, 1, 2); + add(e2d, 609, 213, 60, 1, 3); + add(e2d, 609, 214, 60, 1, 4); + add(e2d, 609, 201, 60, 3, 0); + add(e2d, 609, 202, 60, 3, 1); + add(e2d, 609, 203, 60, 3, 2); + add(e2d, 609, 204, 60, 3, 3); + add(e2d, 609, 205, 60, 3, 4); + add(e2d, 609, 1327, 61, 0, 0); + add(e2d, 609, 1326, 61, 0, 1); + add(e2d, 609, 1325, 61, 0, 2); + add(e2d, 609, 1334, 61, 2, 0); + add(e2d, 609, 1333, 61, 2, 1); + add(e2d, 609, 1332, 61, 2, 2); + add(e2d, 609, 1338, 61, 4, 0); + add(e2d, 609, 1337, 61, 4, 1); + add(e2d, 609, 1336, 61, 4, 2); + add(e2d, 609, 1335, 61, 4, 3); + add(e2d, 609, 1242, 61, 1, 0); + add(e2d, 609, 1241, 61, 1, 1); + add(e2d, 609, 1240, 61, 1, 2); + add(e2d, 609, 1239, 61, 1, 3); + add(e2d, 609, 1233, 61, 3, 0); + add(e2d, 609, 1232, 61, 3, 1); + add(e2d, 609, 1231, 61, 3, 2); + add(e2d, 609, 1230, 61, 3, 3); + add(e2d, 610, 4, 32, 0, 0); + add(e2d, 610, 5, 32, 0, 1); + add(e2d, 610, 6, 32, 0, 2); + add(e2d, 610, 7, 32, 0, 3); + add(e2d, 610, 124, 32, 2, 0); + add(e2d, 610, 125, 32, 2, 1); + add(e2d, 610, 126, 32, 2, 2); + add(e2d, 610, 127, 32, 2, 3); + add(e2d, 610, 128, 32, 2, 4); + add(e2d, 610, 119, 32, 4, 0); + add(e2d, 610, 120, 32, 4, 1); + add(e2d, 610, 121, 32, 4, 2); + add(e2d, 610, 122, 32, 4, 3); + add(e2d, 610, 123, 32, 4, 4); + add(e2d, 610, 110, 32, 1, 0); + add(e2d, 610, 111, 32, 1, 1); + add(e2d, 610, 112, 32, 1, 2); + add(e2d, 610, 113, 32, 1, 3); + add(e2d, 610, 114, 32, 1, 4); + add(e2d, 610, 101, 32, 3, 0); + add(e2d, 610, 102, 32, 3, 1); + add(e2d, 610, 103, 32, 3, 2); + add(e2d, 610, 104, 32, 3, 3); + add(e2d, 610, 105, 32, 3, 4); + add(e2d, 610, 1027, 33, 0, 0); + add(e2d, 610, 1026, 33, 0, 1); + add(e2d, 610, 1025, 33, 0, 2); + add(e2d, 610, 1155, 33, 2, 0); + add(e2d, 610, 1154, 33, 2, 1); + add(e2d, 610, 1153, 33, 2, 2); + add(e2d, 610, 1159, 33, 4, 0); + add(e2d, 610, 1158, 33, 4, 1); + add(e2d, 610, 1157, 33, 4, 2); + add(e2d, 610, 1156, 33, 4, 3); + add(e2d, 610, 1142, 33, 1, 0); + add(e2d, 610, 1141, 33, 1, 1); + add(e2d, 610, 1140, 33, 1, 2); + add(e2d, 610, 1139, 33, 1, 3); + add(e2d, 610, 1133, 33, 3, 0); + add(e2d, 610, 1132, 33, 3, 1); + add(e2d, 610, 1131, 33, 3, 2); + add(e2d, 610, 1130, 33, 3, 3); + add(e2d, 610, 405, 34, 0, 0); + add(e2d, 610, 404, 34, 0, 1); + add(e2d, 610, 403, 34, 0, 2); + add(e2d, 610, 402, 34, 0, 3); + add(e2d, 610, 401, 34, 0, 4); + add(e2d, 610, 410, 34, 2, 0); + add(e2d, 610, 409, 34, 2, 1); + add(e2d, 610, 408, 34, 2, 2); + add(e2d, 610, 407, 34, 2, 3); + add(e2d, 610, 406, 34, 2, 4); + add(e2d, 610, 413, 34, 4, 0); + add(e2d, 610, 412, 34, 4, 1); + add(e2d, 610, 411, 34, 4, 2); + add(e2d, 610, 228, 34, 6, 0); + add(e2d, 610, 227, 34, 6, 1); + add(e2d, 610, 226, 34, 6, 2); + add(e2d, 610, 225, 34, 6, 3); + add(e2d, 610, 224, 34, 6, 4); + add(e2d, 610, 233, 34, 1, 0); + add(e2d, 610, 232, 34, 1, 1); + add(e2d, 610, 231, 34, 1, 2); + add(e2d, 610, 230, 34, 1, 3); + add(e2d, 610, 229, 34, 1, 4); + add(e2d, 610, 216, 34, 3, 0); + add(e2d, 610, 215, 34, 3, 1); + add(e2d, 610, 214, 34, 3, 2); + add(e2d, 610, 213, 34, 3, 3); + add(e2d, 610, 212, 34, 3, 4); + add(e2d, 610, 208, 34, 5, 0); + add(e2d, 610, 207, 34, 5, 1); + add(e2d, 610, 206, 34, 5, 2); + add(e2d, 610, 205, 34, 5, 3); + add(e2d, 610, 204, 34, 5, 4); + add(e2d, 610, 1329, 35, 0, 0); + add(e2d, 610, 1330, 35, 0, 1); + add(e2d, 610, 1331, 35, 0, 2); + add(e2d, 610, 1332, 35, 0, 3); + add(e2d, 610, 1333, 35, 0, 4); + add(e2d, 610, 1325, 35, 2, 0); + add(e2d, 610, 1326, 35, 2, 1); + add(e2d, 610, 1327, 35, 2, 2); + add(e2d, 610, 1328, 35, 2, 3); + add(e2d, 610, 1245, 35, 4, 0); + add(e2d, 610, 1246, 35, 4, 1); + add(e2d, 610, 1247, 35, 4, 2); + add(e2d, 610, 1241, 35, 1, 0); + add(e2d, 610, 1242, 35, 1, 1); + add(e2d, 610, 1243, 35, 1, 2); + add(e2d, 610, 1244, 35, 1, 3); + add(e2d, 610, 1233, 35, 3, 0); + add(e2d, 610, 1234, 35, 3, 1); + add(e2d, 610, 1235, 35, 3, 2); + add(e2d, 610, 1225, 35, 5, 0); + add(e2d, 610, 1226, 35, 5, 1); + add(e2d, 610, 1227, 35, 5, 2); + add(e2d, 611, 5, 36, 0, 0); + add(e2d, 611, 4, 36, 0, 1); + add(e2d, 611, 3, 36, 0, 2); + add(e2d, 611, 2, 36, 0, 3); + add(e2d, 611, 1, 36, 0, 4); + add(e2d, 611, 10, 36, 2, 0); + add(e2d, 611, 9, 36, 2, 1); + add(e2d, 611, 8, 36, 2, 2); + add(e2d, 611, 7, 36, 2, 3); + add(e2d, 611, 6, 36, 2, 4); + add(e2d, 611, 124, 36, 4, 0); + add(e2d, 611, 123, 36, 4, 1); + add(e2d, 611, 122, 36, 4, 2); + add(e2d, 611, 121, 36, 4, 3); + add(e2d, 611, 120, 36, 4, 4); + add(e2d, 611, 116, 36, 1, 0); + add(e2d, 611, 115, 36, 1, 1); + add(e2d, 611, 114, 36, 1, 2); + add(e2d, 611, 113, 36, 1, 3); + add(e2d, 611, 112, 36, 1, 4); + add(e2d, 611, 108, 36, 3, 0); + add(e2d, 611, 107, 36, 3, 1); + add(e2d, 611, 106, 36, 3, 2); + add(e2d, 611, 105, 36, 3, 3); + add(e2d, 611, 104, 36, 3, 4); + add(e2d, 611, 1039, 37, 0, 0); + add(e2d, 611, 1040, 37, 0, 1); + add(e2d, 611, 1041, 37, 0, 2); + add(e2d, 611, 1035, 37, 2, 0); + add(e2d, 611, 1036, 37, 2, 1); + add(e2d, 611, 1037, 37, 2, 2); + add(e2d, 611, 1038, 37, 2, 3); + add(e2d, 611, 1141, 37, 4, 0); + add(e2d, 611, 1142, 37, 4, 1); + add(e2d, 611, 1143, 37, 4, 2); + add(e2d, 611, 1133, 37, 1, 0); + add(e2d, 611, 1134, 37, 1, 1); + add(e2d, 611, 1135, 37, 1, 2); + add(e2d, 611, 1125, 37, 3, 0); + add(e2d, 611, 1126, 37, 3, 1); + add(e2d, 611, 1127, 37, 3, 2); + add(e2d, 611, 313, 24, 0, 0); + add(e2d, 611, 314, 24, 0, 1); + add(e2d, 611, 315, 24, 0, 2); + add(e2d, 611, 316, 24, 0, 3); + add(e2d, 611, 317, 24, 0, 4); + add(e2d, 611, 308, 24, 2, 0); + add(e2d, 611, 309, 24, 2, 1); + add(e2d, 611, 310, 24, 2, 2); + add(e2d, 611, 311, 24, 2, 3); + add(e2d, 611, 312, 24, 2, 4); + add(e2d, 611, 219, 24, 4, 0); + add(e2d, 611, 220, 24, 4, 1); + add(e2d, 611, 221, 24, 4, 2); + add(e2d, 611, 222, 24, 4, 3); + add(e2d, 611, 223, 24, 4, 4); + add(e2d, 611, 210, 24, 1, 0); + add(e2d, 611, 211, 24, 1, 1); + add(e2d, 611, 212, 24, 1, 2); + add(e2d, 611, 213, 24, 1, 3); + add(e2d, 611, 214, 24, 1, 4); + add(e2d, 611, 201, 24, 3, 0); + add(e2d, 611, 202, 24, 3, 1); + add(e2d, 611, 203, 24, 3, 2); + add(e2d, 611, 204, 24, 3, 3); + add(e2d, 611, 205, 24, 3, 4); + add(e2d, 611, 1327, 25, 0, 0); + add(e2d, 611, 1326, 25, 0, 1); + add(e2d, 611, 1325, 25, 0, 2); + add(e2d, 611, 1331, 25, 2, 0); + add(e2d, 611, 1330, 25, 2, 1); + add(e2d, 611, 1329, 25, 2, 2); + add(e2d, 611, 1328, 25, 2, 3); + add(e2d, 611, 1251, 25, 4, 0); + add(e2d, 611, 1250, 25, 4, 1); + add(e2d, 611, 1249, 25, 4, 2); + add(e2d, 611, 1248, 25, 4, 3); + add(e2d, 611, 1242, 25, 1, 0); + add(e2d, 611, 1241, 25, 1, 1); + add(e2d, 611, 1240, 25, 1, 2); + add(e2d, 611, 1239, 25, 1, 3); + add(e2d, 611, 1233, 25, 3, 0); + add(e2d, 611, 1232, 25, 3, 1); + add(e2d, 611, 1231, 25, 3, 2); + add(e2d, 611, 1230, 25, 3, 3); + add(e2d, 612, 119, 26, 1, 0); + add(e2d, 612, 120, 26, 1, 1); + add(e2d, 612, 121, 26, 1, 2); + add(e2d, 612, 122, 26, 1, 3); + add(e2d, 612, 123, 26, 1, 4); + add(e2d, 612, 110, 26, 3, 0); + add(e2d, 612, 111, 26, 3, 1); + add(e2d, 612, 112, 26, 3, 2); + add(e2d, 612, 113, 26, 3, 3); + add(e2d, 612, 114, 26, 3, 4); + add(e2d, 612, 101, 26, 5, 0); + add(e2d, 612, 102, 26, 5, 1); + add(e2d, 612, 103, 26, 5, 2); + add(e2d, 612, 104, 26, 5, 3); + add(e2d, 612, 105, 26, 5, 4); + add(e2d, 612, 1151, 26, 0, 0); + add(e2d, 612, 1150, 26, 0, 1); + add(e2d, 612, 1149, 26, 0, 2); + add(e2d, 612, 1148, 26, 0, 3); + add(e2d, 612, 1142, 26, 2, 0); + add(e2d, 612, 1141, 26, 2, 1); + add(e2d, 612, 1140, 26, 2, 2); + add(e2d, 612, 1139, 26, 2, 3); + add(e2d, 612, 1133, 26, 4, 0); + add(e2d, 612, 1132, 26, 4, 1); + add(e2d, 612, 1131, 26, 4, 2); + add(e2d, 612, 1130, 26, 4, 3); + add(e2d, 612, 24, 27, 1, 0); + add(e2d, 612, 23, 27, 1, 1); + add(e2d, 612, 22, 27, 1, 2); + add(e2d, 612, 21, 27, 1, 3); + add(e2d, 612, 20, 27, 1, 4); + add(e2d, 612, 16, 27, 3, 0); + add(e2d, 612, 15, 27, 3, 1); + add(e2d, 612, 14, 27, 3, 2); + add(e2d, 612, 13, 27, 3, 3); + add(e2d, 612, 12, 27, 3, 4); + add(e2d, 612, 8, 27, 5, 0); + add(e2d, 612, 7, 27, 5, 1); + add(e2d, 612, 6, 27, 5, 2); + add(e2d, 612, 5, 27, 5, 3); + add(e2d, 612, 4, 27, 5, 4); + add(e2d, 612, 1041, 27, 0, 0); + add(e2d, 612, 1042, 27, 0, 1); + add(e2d, 612, 1043, 27, 0, 2); + add(e2d, 612, 1033, 27, 2, 0); + add(e2d, 612, 1034, 27, 2, 1); + add(e2d, 612, 1035, 27, 2, 2); + add(e2d, 612, 1025, 27, 4, 0); + add(e2d, 612, 1026, 27, 4, 1); + add(e2d, 612, 1027, 27, 4, 2); + add(e2d, 613, 16, 28, 0, 0); + add(e2d, 613, 15, 28, 0, 1); + add(e2d, 613, 14, 28, 0, 2); + add(e2d, 613, 13, 28, 0, 3); + add(e2d, 613, 12, 28, 0, 4); + add(e2d, 613, 8, 28, 2, 0); + add(e2d, 613, 7, 28, 2, 1); + add(e2d, 613, 6, 28, 2, 2); + add(e2d, 613, 5, 28, 2, 3); + add(e2d, 613, 4, 28, 2, 4); + add(e2d, 613, 1033, 28, 4, 0); + add(e2d, 613, 1034, 28, 4, 1); + add(e2d, 613, 1035, 28, 4, 2); + add(e2d, 613, 1025, 28, 6, 0); + add(e2d, 613, 1026, 28, 6, 1); + add(e2d, 613, 1027, 28, 6, 2); + add(e2d, 613, 110, 28, 1, 0); + add(e2d, 613, 111, 28, 1, 1); + add(e2d, 613, 112, 28, 1, 2); + add(e2d, 613, 113, 28, 1, 3); + add(e2d, 613, 114, 28, 1, 4); + add(e2d, 613, 101, 28, 3, 0); + add(e2d, 613, 102, 28, 3, 1); + add(e2d, 613, 103, 28, 3, 2); + add(e2d, 613, 104, 28, 3, 3); + add(e2d, 613, 105, 28, 3, 4); + add(e2d, 613, 1142, 28, 5, 0); + add(e2d, 613, 1141, 28, 5, 1); + add(e2d, 613, 1140, 28, 5, 2); + add(e2d, 613, 1139, 28, 5, 3); + add(e2d, 613, 1133, 28, 7, 0); + add(e2d, 613, 1132, 28, 7, 1); + add(e2d, 613, 1131, 28, 7, 2); + add(e2d, 613, 1130, 28, 7, 3); } -void fillSolar2FeeLinkCH6L(std::map& s2c) {} +void fillSolar2FeeLinkCH6L(std::map& s2f) +{ + add_cru(s2f, 24, 0, 312); + add_cru(s2f, 24, 1, 313); + add_cru(s2f, 24, 2, 314); + add_cru(s2f, 24, 6, 8); + add_cru(s2f, 24, 7, 9); + add_cru(s2f, 24, 8, 10); + add_cru(s2f, 24, 9, 11); + add_cru(s2f, 24, 10, 12); + add_cru(s2f, 24, 11, 13); + add_cru(s2f, 25, 0, 56); + add_cru(s2f, 25, 1, 57); + add_cru(s2f, 25, 2, 58); + add_cru(s2f, 25, 3, 59); + add_cru(s2f, 25, 4, 60); + add_cru(s2f, 25, 5, 61); + add_cru(s2f, 26, 0, 32); + add_cru(s2f, 26, 1, 33); + add_cru(s2f, 26, 2, 34); + add_cru(s2f, 26, 3, 35); + add_cru(s2f, 26, 4, 36); + add_cru(s2f, 26, 5, 37); + add_cru(s2f, 26, 6, 24); + add_cru(s2f, 26, 7, 25); + add_cru(s2f, 26, 8, 26); + add_cru(s2f, 26, 9, 27); + add_cru(s2f, 26, 10, 28); +} \ No newline at end of file diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/elecmap.py b/Detectors/MUON/MCH/Raw/ElecMap/src/elecmap.py index 221133858d224..203d7ff04989f 100755 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/elecmap.py +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/elecmap.py @@ -136,7 +136,7 @@ def gs_read_sheet_cru(credential_file, workbook, sheet_name): data = wks.get_all_values() -# LINK ID CRU ID CRU LINK DWP CRU ADDR DW ADDR FEE ID +# LINK ID CRU ID CRU LINK DWP CRU ADDR DW ADDR FEE ID cols = np.array([0, 1, 2, 3, 4, 5,6,7]) df = pd.DataFrame(np.asarray(data)[:, cols], @@ -182,7 +182,7 @@ def _simplify_dataframe(df): solar_map = {} for row in df.itertuples(): - # print(row) + #print(row) crate = int(str(row.crate).strip('C ')) solar_pos = int(row.solar.split('-')[2].strip('S '))-1 group_id = int(row.solar.split('-')[3].strip('J '))-1 @@ -254,6 +254,7 @@ def _simplify_dataframe(df): if args.gs_name: df = df.append(gs_read_sheet(args.credentials, args.gs_name, args.sheet)) + print(df) df, solar_map = _simplify_dataframe(df) df_cru = df_cru.append(gs_read_sheet_cru(args.credentials, args.gs_name, args.sheet+" CRU map")) diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/environment.yml b/Detectors/MUON/MCH/Raw/ElecMap/src/environment.yml new file mode 100644 index 0000000000000..d9b93d2c16d6d --- /dev/null +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/environment.yml @@ -0,0 +1,9 @@ +name: mch-elecmap +channels: + - conda-forge +dependencies: + - oauth2client + - gspread + - numpy + - pandas + - clang-tools diff --git a/Detectors/MUON/MCH/Raw/ElecMap/src/testElectronicMapper.cxx b/Detectors/MUON/MCH/Raw/ElecMap/src/testElectronicMapper.cxx index 4edaf16138fe5..00af5af55ecfa 100644 --- a/Detectors/MUON/MCH/Raw/ElecMap/src/testElectronicMapper.cxx +++ b/Detectors/MUON/MCH/Raw/ElecMap/src/testElectronicMapper.cxx @@ -249,15 +249,15 @@ BOOST_AUTO_TEST_CASE_TEMPLATE(CheckNumberOfSolarsPerDetectionElement, T, realTyp BOOST_CHECK_EQUAL(getSolarUIDs(616).size(), 4); BOOST_CHECK_EQUAL(getSolarUIDs(617).size(), 4); // 6L = 6O - BOOST_CHECK_EQUAL(getSolarUIDs(605).size(), 0); - BOOST_CHECK_EQUAL(getSolarUIDs(606).size(), 0); - BOOST_CHECK_EQUAL(getSolarUIDs(607).size(), 0); - BOOST_CHECK_EQUAL(getSolarUIDs(608).size(), 0); - BOOST_CHECK_EQUAL(getSolarUIDs(609).size(), 0); - BOOST_CHECK_EQUAL(getSolarUIDs(610).size(), 0); - BOOST_CHECK_EQUAL(getSolarUIDs(611).size(), 0); - BOOST_CHECK_EQUAL(getSolarUIDs(612).size(), 0); - BOOST_CHECK_EQUAL(getSolarUIDs(613).size(), 0); + BOOST_CHECK_EQUAL(getSolarUIDs(605).size(), 1); + BOOST_CHECK_EQUAL(getSolarUIDs(606).size(), 2); + BOOST_CHECK_EQUAL(getSolarUIDs(607).size(), 4); + BOOST_CHECK_EQUAL(getSolarUIDs(608).size(), 4); + BOOST_CHECK_EQUAL(getSolarUIDs(609).size(), 4); + BOOST_CHECK_EQUAL(getSolarUIDs(610).size(), 4); + BOOST_CHECK_EQUAL(getSolarUIDs(611).size(), 4); + BOOST_CHECK_EQUAL(getSolarUIDs(612).size(), 2); + BOOST_CHECK_EQUAL(getSolarUIDs(613).size(), 1); // Chamber 7 // 7R = 7I @@ -391,7 +391,7 @@ int expectedNumberOfSolars() template <> int expectedNumberOfSolars() { - return 362; + return 388; } template @@ -406,7 +406,7 @@ int expectedNumberOfDs() template <> int expectedNumberOfDs() { - return 8112; + return 8726; } BOOST_AUTO_TEST_CASE_TEMPLATE(AllSolarsMustGetAFeeLinkAndTheReverse, T, testTypes) From c175aa0a16e6584e42bfc0907f2c5d82c090aaa6 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Mon, 12 Jul 2021 23:31:15 +0200 Subject: [PATCH 147/314] DPL: force processing of region callback without waiting for data (#6621) Without this, it is possible that a late arriving event will not be processed until some data actually arrives on one of the channels, unblocking the event loop. This should obviate to the problem by triggering an aync libuv event which will unblock the event loop without the need for data. --- Framework/Core/include/Framework/DeviceState.h | 4 ++++ Framework/Core/src/DataProcessingDevice.cxx | 16 ++++++++++++++++ 2 files changed, 20 insertions(+) diff --git a/Framework/Core/include/Framework/DeviceState.h b/Framework/Core/include/Framework/DeviceState.h index 7e9ac3772f426..b87eae6e620c3 100644 --- a/Framework/Core/include/Framework/DeviceState.h +++ b/Framework/Core/include/Framework/DeviceState.h @@ -23,6 +23,7 @@ typedef struct uv_loop_s uv_loop_t; typedef struct uv_timer_s uv_timer_t; typedef struct uv_poll_s uv_poll_t; typedef struct uv_signal_s uv_signal_t; +typedef struct uv_async_s uv_async_t; namespace o2::framework { @@ -78,6 +79,9 @@ struct DeviceState { std::vector activeOutputPollers; /// The list of active signal handlers std::vector activeSignals; + + uv_async_t* awakeMainThread = nullptr; + int loopReason = 0; }; diff --git a/Framework/Core/src/DataProcessingDevice.cxx b/Framework/Core/src/DataProcessingDevice.cxx index f3dea6416d523..b8c3d1ac8c60d 100644 --- a/Framework/Core/src/DataProcessingDevice.cxx +++ b/Framework/Core/src/DataProcessingDevice.cxx @@ -355,8 +355,22 @@ void handleRegionCallbacks(ServiceRegistry& registry, std::vectordata; + state->loopReason |= DeviceState::ASYNC_NOTIFICATION; +} +} // namespace void DataProcessingDevice::InitTask() { + if (mState.awakeMainThread == nullptr) { + mState.awakeMainThread = (uv_async_t*)malloc(sizeof(uv_async_t)); + mState.awakeMainThread->data = &mState; + uv_async_init(mState.loop, mState.awakeMainThread, on_awake_main_thread); + } + for (auto& channel : fChannels) { channel.second.at(0).Transport()->SubscribeToRegionEvents([this, ®istry = mServiceRegistry, @@ -372,6 +386,8 @@ void DataProcessingDevice::InitTask() // When not running we can handle the callbacks synchronously. if (this->GetCurrentState() != fair::mq::State::Running) { handleRegionCallbacks(registry, pendingRegionInfos); + } else { + uv_async_send(registry.get().awakeMainThread); } }); } From 695c985b1b1ee0b9e9349acc7f76f13492ad9845 Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Mon, 12 Jul 2021 20:12:00 +0200 Subject: [PATCH 148/314] Option to scale global material density for systematic studies Use `--configKeyValues SimMaterialParams.globalDensityFactor=xx` renaming SimCutParams.h -> SimParams.h; This header now hosts more than one parameter for transport simulation. --- Common/SimConfig/CMakeLists.txt | 10 +++++----- .../SimConfig/{SimCutParams.h => SimParams.h} | 14 ++++++++++++-- Common/SimConfig/src/SimConfigLinkDef.h | 2 ++ .../src/{SimCutParams.cxx => SimParams.cxx} | 5 +++-- Common/SimConfig/test/testSimCutParam.cxx | 2 +- DataFormats/simulation/src/Stack.cxx | 2 +- .../Base/include/DetectorsBase/MaterialManager.h | 5 +++++ Detectors/Base/src/MaterialManager.cxx | 1 - Detectors/Passive/src/Cave.cxx | 2 +- Steer/include/Steer/O2MCApplicationBase.h | 2 +- macro/o2sim.C | 6 +++++- 11 files changed, 36 insertions(+), 15 deletions(-) rename Common/SimConfig/include/SimConfig/{SimCutParams.h => SimParams.h} (82%) rename Common/SimConfig/src/{SimCutParams.cxx => SimParams.cxx} (85%) diff --git a/Common/SimConfig/CMakeLists.txt b/Common/SimConfig/CMakeLists.txt index 3b7071f728603..97f015023d230 100644 --- a/Common/SimConfig/CMakeLists.txt +++ b/Common/SimConfig/CMakeLists.txt @@ -10,9 +10,9 @@ # or submit itself to any jurisdiction. o2_add_library(SimConfig - SOURCES src/SimConfig.cxx - src/SimCutParams.cxx - src/SimUserDecay.cxx + SOURCES src/SimConfig.cxx + src/SimParams.cxx + src/SimUserDecay.cxx src/DigiParams.cxx src/G4Params.cxx PUBLIC_LINK_LIBRARIES O2::CommonUtils O2::DetectorsCommonDataFormats @@ -21,9 +21,9 @@ o2_add_library(SimConfig o2_target_root_dictionary(SimConfig HEADERS include/SimConfig/SimConfig.h - include/SimConfig/SimCutParams.h + include/SimConfig/SimParams.h include/SimConfig/SimUserDecay.h - include/SimConfig/DigiParams.h + include/SimConfig/DigiParams.h include/SimConfig/G4Params.h) o2_add_test(Config diff --git a/Common/SimConfig/include/SimConfig/SimCutParams.h b/Common/SimConfig/include/SimConfig/SimParams.h similarity index 82% rename from Common/SimConfig/include/SimConfig/SimCutParams.h rename to Common/SimConfig/include/SimConfig/SimParams.h index 10a3b06ee23e4..291e121ea149a 100644 --- a/Common/SimConfig/include/SimConfig/SimCutParams.h +++ b/Common/SimConfig/include/SimConfig/SimParams.h @@ -9,8 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#ifndef O2_SIMCONFIG_SIMCUTPARAM_H_ -#define O2_SIMCONFIG_SIMCUTPARAM_H_ +#ifndef O2_SIMCONFIG_SIMPARAM_H_ +#define O2_SIMCONFIG_SIMPARAM_H_ #include "CommonUtils/ConfigurableParam.h" #include "CommonUtils/ConfigurableParamHelper.h" @@ -33,8 +33,18 @@ struct SimCutParams : public o2::conf::ConfigurableParamHelper { float maxRTrackingZDC = 50; // R-cut applied in the tunnel leading to ZDC when z > beampipeZ (custom stepping function) float tunnelZ = 1900; // Z-value from where we apply maxRTrackingZDC (default value taken from standard "hall" dimensions) + float globalDensityFactor = 1.f; // global factor that scales all material densities for systematic studies + O2ParamDef(SimCutParams, "SimCutParams"); }; + +// parameter influencing material manager +struct SimMaterialParams : public o2::conf::ConfigurableParamHelper { + float globalDensityFactor = 1.f; + + O2ParamDef(SimMaterialParams, "SimMaterialParams"); +}; + } // namespace conf } // namespace o2 diff --git a/Common/SimConfig/src/SimConfigLinkDef.h b/Common/SimConfig/src/SimConfigLinkDef.h index 4bc4f4a7483b0..a850c57a3a21f 100644 --- a/Common/SimConfig/src/SimConfigLinkDef.h +++ b/Common/SimConfig/src/SimConfigLinkDef.h @@ -19,6 +19,8 @@ #pragma link C++ class o2::conf::SimCutParams + ; #pragma link C++ class o2::conf::ConfigurableParamHelper < o2::conf::SimCutParams> + ; +#pragma link C++ class o2::conf::SimMaterialParams + ; +#pragma link C++ class o2::conf::ConfigurableParamHelper < o2::conf::SimMaterialParams> + ; #pragma link C++ class o2::conf::SimUserDecay + ; #pragma link C++ class o2::conf::ConfigurableParamHelper < o2::conf::SimUserDecay> + ; diff --git a/Common/SimConfig/src/SimCutParams.cxx b/Common/SimConfig/src/SimParams.cxx similarity index 85% rename from Common/SimConfig/src/SimCutParams.cxx rename to Common/SimConfig/src/SimParams.cxx index 7729186af70b8..11459a70144ad 100644 --- a/Common/SimConfig/src/SimCutParams.cxx +++ b/Common/SimConfig/src/SimParams.cxx @@ -13,8 +13,9 @@ * SimCutParams.cxx * * Created on: Feb 18, 2019 - * Author: sandro + * Author: Sandro Wenzel */ -#include "SimConfig/SimCutParams.h" +#include "SimConfig/SimParams.h" O2ParamImpl(o2::conf::SimCutParams); +O2ParamImpl(o2::conf::SimMaterialParams); diff --git a/Common/SimConfig/test/testSimCutParam.cxx b/Common/SimConfig/test/testSimCutParam.cxx index 6b850414e6ed9..7a17ae9d1f2cf 100644 --- a/Common/SimConfig/test/testSimCutParam.cxx +++ b/Common/SimConfig/test/testSimCutParam.cxx @@ -13,7 +13,7 @@ #define BOOST_TEST_MAIN #define BOOST_TEST_DYN_LINK #include -#include "SimConfig/SimCutParams.h" +#include "SimConfig/SimParams.h" #include "CommonUtils/ConfigurableParam.h" using namespace o2::conf; diff --git a/DataFormats/simulation/src/Stack.cxx b/DataFormats/simulation/src/Stack.cxx index 9238fa0d8dce1..715047b8b311c 100644 --- a/DataFormats/simulation/src/Stack.cxx +++ b/DataFormats/simulation/src/Stack.cxx @@ -17,7 +17,7 @@ #include "DetectorsBase/Detector.h" #include "DetectorsCommonDataFormats/DetID.h" #include "SimulationDataFormat/MCTrack.h" -#include "SimConfig/SimCutParams.h" +#include "SimConfig/SimParams.h" #include "FairDetector.h" // for FairDetector #include "FairLogger.h" // for FairLogger diff --git a/Detectors/Base/include/DetectorsBase/MaterialManager.h b/Detectors/Base/include/DetectorsBase/MaterialManager.h index 8a6f8ee819c87..4faab82067bb8 100644 --- a/Detectors/Base/include/DetectorsBase/MaterialManager.h +++ b/Detectors/Base/include/DetectorsBase/MaterialManager.h @@ -202,6 +202,11 @@ class MaterialManager // print out all registered media void printMedia() const; + /// set the density scaling factor + void setDensityScalingFactor(float f) { mDensityFactor = f; } + /// set the density scaling factor + float getDensityScalingFactor() const { return mDensityFactor; } + /// print all tracking media inside a logical volume (specified by name) /// and all of its daughters static void printContainingMedia(std::string const& volumename); diff --git a/Detectors/Base/src/MaterialManager.cxx b/Detectors/Base/src/MaterialManager.cxx index 34aa0769050f8..48878f2626d88 100644 --- a/Detectors/Base/src/MaterialManager.cxx +++ b/Detectors/Base/src/MaterialManager.cxx @@ -65,7 +65,6 @@ void MaterialManager::Material(const char* modname, Int_t imat, const char* name TString uniquename = modname; uniquename.Append("_"); uniquename.Append(name); - if (TVirtualMC::GetMC()) { // Check this!!! int kmat = -1; diff --git a/Detectors/Passive/src/Cave.cxx b/Detectors/Passive/src/Cave.cxx index 774657f01b31e..fa6850ed0565f 100644 --- a/Detectors/Passive/src/Cave.cxx +++ b/Detectors/Passive/src/Cave.cxx @@ -25,7 +25,7 @@ #include "DetectorsBase/Detector.h" #include "DetectorsPassive/Cave.h" #include "SimConfig/SimConfig.h" -#include "SimConfig/SimCutParams.h" +#include "SimConfig/SimParams.h" #include #include "FairLogger.h" #include "TGeoManager.h" diff --git a/Steer/include/Steer/O2MCApplicationBase.h b/Steer/include/Steer/O2MCApplicationBase.h index 6d84c3acbaf4c..56f42d1b65903 100644 --- a/Steer/include/Steer/O2MCApplicationBase.h +++ b/Steer/include/Steer/O2MCApplicationBase.h @@ -22,7 +22,7 @@ #include #include "Rtypes.h" // for Int_t, Bool_t, Double_t, etc #include -#include "SimConfig/SimCutParams.h" +#include "SimConfig/SimParams.h" namespace o2 { diff --git a/macro/o2sim.C b/macro/o2sim.C index fa5e9bad093f2..a537b44e5ba2a 100644 --- a/macro/o2sim.C +++ b/macro/o2sim.C @@ -16,6 +16,7 @@ #include #include "SimulationDataFormat/MCEventHeader.h" #include +#include #include #include #include @@ -126,6 +127,10 @@ FairRunSim* o2sim_init(bool asservice) } } + // set global density scaling factor + auto& matmgr = o2::base::MaterialManager::Instance(); + matmgr.setDensityScalingFactor(o2::conf::SimMaterialParams::Instance().globalDensityFactor); + // run init run->Init(); @@ -181,7 +186,6 @@ FairRunSim* o2sim_init(bool asservice) // print summary about cuts and processes used std::ofstream cutfile(o2::base::NameConf::getCutProcFileName(confref.getOutPrefix())); - auto& matmgr = o2::base::MaterialManager::Instance(); matmgr.printCuts(cutfile); matmgr.printProcesses(cutfile); From f2ff0c469c6467fc0fb8fddf69c6991fe3fb6a0b Mon Sep 17 00:00:00 2001 From: Michael Lettrich Date: Mon, 12 Jul 2021 16:52:06 +0200 Subject: [PATCH 149/314] [CTF] Bugfix swaped entries in literals metadata The Metadata of the encoded CTF data in EncodedBlocks was set wrongly during the encoding process, causing erronious decoding of incompressible symbols. This fix swaps the values for `nLiterals` and `nLiteralWords` to ensure decoding is correct again. --- .../include/DetectorsCommonDataFormats/EncodedBlocks.h | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h index c6fd9a11b5817..3a7d229f0fd54 100644 --- a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h @@ -871,8 +871,8 @@ void EncodedBlocks::encode(const input_IT srcBegin, // iterator be const size_t nSymbols = literals.size(); if (!literals.empty()) { // introduce padding in case literals don't align; - const size_t nSourceElemsPadded = calculatePaddedSize(literals.size()); - literals.resize(nSourceElemsPadded, {}); + const size_t nLiteralSymbolsPadded = calculatePaddedSize(nSymbols); + literals.resize(nLiteralSymbolsPadded, {}); const size_t nLiteralStorageElems = calculateNDestTElements(nSymbols); expandStorage(nLiteralStorageElems); @@ -882,7 +882,7 @@ void EncodedBlocks::encode(const input_IT srcBegin, // iterator be }(); *thisMetadata = Metadata{messageLength, - literals.size(), + nLiteralSymbols, sizeof(ransState_t), sizeof(ransStream_t), static_cast(encoder->getSymbolTablePrecision()), @@ -891,7 +891,7 @@ void EncodedBlocks::encode(const input_IT srcBegin, // iterator be encoder->getMaxSymbol(), static_cast(frequencyTable.size()), dataSize, - static_cast(nLiteralSymbols)}; + static_cast(literals.size())}; } else { // store original data w/o EEncoding //FIXME(milettri): we should be able to do without an intermediate vector; // provided iterator is not necessarily pointer, need to use intermediate vector!!! From fdd982c3b588248c15ddd85f1dba3bf709567062 Mon Sep 17 00:00:00 2001 From: jgrosseo Date: Tue, 13 Jul 2021 12:58:12 +0200 Subject: [PATCH 150/314] Fix order to align with hyperloop (#6633) --- Framework/Core/include/Framework/Variant.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/Framework/Core/include/Framework/Variant.h b/Framework/Core/include/Framework/Variant.h index dd03aa8a6521f..cff20ab6bb752 100644 --- a/Framework/Core/include/Framework/Variant.h +++ b/Framework/Core/include/Framework/Variant.h @@ -26,12 +26,9 @@ namespace o2::framework { +// Do NOT insert entries in this enum, only append at the end (before "Empty"). Hyperloop depends on the order. enum class VariantType : int { Int = 0, Int64, - UInt8, - UInt16, - UInt32, - UInt64, Float, Double, String, @@ -47,6 +44,10 @@ enum class VariantType : int { Int = 0, LabeledArrayInt, LabeledArrayFloat, LabeledArrayDouble, + UInt8, + UInt16, + UInt32, + UInt64, Empty, Unknown }; From 4180e38352a00b525e568a98e40cfcc565f1330b Mon Sep 17 00:00:00 2001 From: cortesep <57937610+cortesep@users.noreply.github.com> Date: Tue, 13 Jul 2021 15:01:15 +0200 Subject: [PATCH 151/314] ZDC Adding protection for missing STF (#6529) * Fix Digits2Raw missing addData * Fix compilation error * Fix problem with linkid * Fix problem with linkid * Fix problem with linkid * Handling missing STF * Small printout improvements * Make data members private in RawReaderZDC.h * Make data members private in RawReaderZDC.h * Selecting only ZDC raw data stream --- .../ZDC/raw/include/ZDCRaw/RawReaderZDC.h | 23 +++++++-------- Detectors/ZDC/raw/src/RawReaderZDC.cxx | 4 +-- .../ZDCWorkflow/ZDCDataReaderDPLSpec.h | 3 +- .../ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx | 28 ++++++++++++++++--- .../ZDC/workflow/src/o2-zdc-raw2digits.cxx | 9 +++++- 5 files changed, 48 insertions(+), 19 deletions(-) diff --git a/Detectors/ZDC/raw/include/ZDCRaw/RawReaderZDC.h b/Detectors/ZDC/raw/include/ZDCRaw/RawReaderZDC.h index dbcb829e99574..b0d411688b4d8 100644 --- a/Detectors/ZDC/raw/include/ZDCRaw/RawReaderZDC.h +++ b/Detectors/ZDC/raw/include/ZDCRaw/RawReaderZDC.h @@ -37,6 +37,16 @@ namespace zdc { class RawReaderZDC { + const ModuleConfig* mModuleConfig = nullptr; // Trigger/readout configuration object + bool mVerifyTrigger = true; // Verify trigger condition during conversion to digits + uint32_t mTriggerMask = 0; // Trigger mask from ModuleConfig + std::map mMapData; // Raw data cache + EventChData mCh; // Channel data to be decoded + std::vector mDigitsBC; // Digitized bunch crossing data + std::vector mDigitsCh; // Digitized channel data + std::vector mOrbitData; // Digitized orbit data + bool mDumpData; // Enable printout of all data + public: RawReaderZDC(bool dumpData) : mDumpData(dumpData) {} RawReaderZDC(const RawReaderZDC&) = default; @@ -44,25 +54,17 @@ class RawReaderZDC RawReaderZDC() = default; ~RawReaderZDC() = default; - std::map mMapData; /// Raw data cache - const ModuleConfig* mModuleConfig = nullptr; /// Trigger/readout configuration object void setModuleConfig(const ModuleConfig* moduleConfig) { mModuleConfig = moduleConfig; }; const ModuleConfig* getModuleConfig() { return mModuleConfig; }; - uint32_t mTriggerMask = 0; // Trigger mask from ModuleConfig void setTriggerMask(); - - bool mVerifyTrigger = true; // Verify trigger condition during conversion to digits - - std::vector mDigitsBC; - std::vector mDigitsCh; - std::vector mOrbitData; + void setVerifyTrigger(const bool verifyTrigger) { mVerifyTrigger = verifyTrigger; }; + bool getVerifyTrigger() { return mVerifyTrigger; }; void clear(); //decoding binary data into data blocks void processBinaryData(gsl::span payload, int linkID); //processing data blocks into digits int processWord(const uint32_t* word); - EventChData mCh; // Channel data to be decoded void process(const EventChData& ch); void accumulateDigits() @@ -87,7 +89,6 @@ class RawReaderZDC pc.outputs().snapshot(o2::framework::Output{o2::header::gDataOriginZDC, "DIGITSCH", 0, o2::framework::Lifetime::Timeframe}, mDigitsCh); pc.outputs().snapshot(o2::framework::Output{o2::header::gDataOriginZDC, "DIGITSPD", 0, o2::framework::Lifetime::Timeframe}, mOrbitData); } - bool mDumpData; }; } // namespace zdc } // namespace o2 diff --git a/Detectors/ZDC/raw/src/RawReaderZDC.cxx b/Detectors/ZDC/raw/src/RawReaderZDC.cxx index 29b96cf5e1d7b..e2bf02885da6b 100644 --- a/Detectors/ZDC/raw/src/RawReaderZDC.cxx +++ b/Detectors/ZDC/raw/src/RawReaderZDC.cxx @@ -266,10 +266,10 @@ void RawReaderZDC::setTriggerMask() } printTriggerMask += "]"; uint32_t mytmask = mTriggerMask >> (im * NChPerModule); - LOGF(INFO, "Trigger mask for module %d 0123 %c%c%c%c\n", im, + LOGF(INFO, "Trigger mask for module %d 0123 %c%c%c%c", im, mytmask & 0x1 ? 'T' : 'N', mytmask & 0x2 ? 'T' : 'N', mytmask & 0x4 ? 'T' : 'N', mytmask & 0x8 ? 'T' : 'N'); } - LOGF(INFO, "trigger_mask=0x%08x %s\n", mTriggerMask, printTriggerMask.c_str()); + LOGF(INFO, "trigger_mask=0x%08x %s", mTriggerMask, printTriggerMask.c_str()); } } // namespace zdc } // namespace o2 diff --git a/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDataReaderDPLSpec.h b/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDataReaderDPLSpec.h index 40913613e6e91..91306aa73a566 100644 --- a/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDataReaderDPLSpec.h +++ b/Detectors/ZDC/workflow/include/ZDCWorkflow/ZDCDataReaderDPLSpec.h @@ -25,6 +25,7 @@ #include "Framework/Output.h" #include "Framework/WorkflowSpec.h" #include "Framework/SerializationMethods.h" +#include "Framework/InputRecordWalker.h" #include "DPLUtils/DPLRawParser.h" #include "DPLUtils/MakeRootTreeWriterSpec.h" #include "Framework/InputSpec.h" @@ -57,7 +58,7 @@ class ZDCDataReaderDPLSpec : public Task RawReaderZDC mRawReader; }; -framework::DataProcessorSpec getZDCDataReaderDPLSpec(const RawReaderZDC& rawReader, const bool verifyTrigger); +framework::DataProcessorSpec getZDCDataReaderDPLSpec(const RawReaderZDC& rawReader, const bool verifyTrigger, const bool askSTFDist); } // namespace zdc } // namespace o2 diff --git a/Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx b/Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx index f0fd5039e5fe9..058b2f7c2d474 100644 --- a/Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx +++ b/Detectors/ZDC/workflow/src/ZDCDataReaderDPLSpec.cxx @@ -33,9 +33,25 @@ void ZDCDataReaderDPLSpec::init(InitContext& ic) void ZDCDataReaderDPLSpec::run(ProcessingContext& pc) { - DPLRawParser parser(pc.inputs()); mRawReader.clear(); + // if we see requested data type input with 0xDEADBEEF subspec and 0 payload this means that the "delayed message" + // mechanism created it in absence of real data from upstream. Processor should send empty output to not block the workflow + { + std::vector dummy{InputSpec{"dummy", ConcreteDataMatcher{o2::header::gDataOriginZDC, o2::header::gDataDescriptionRawData, 0xDEADBEEF}}}; + for (const auto& ref : InputRecordWalker(pc.inputs(), dummy)) { + const auto dh = o2::framework::DataRefUtils::getHeader(ref); + if (dh->payloadSize == 0) { + LOGP(WARNING, "Found input [{}/{}/{:#x}] TF#{} 1st_orbit:{} Payload {} : assuming no payload for all links in this TF", + dh->dataOrigin.str, dh->dataDescription.str, dh->subSpecification, dh->tfCounter, dh->firstTForbit, dh->payloadSize); + mRawReader.makeSnapshot(pc); // send empty output + return; + } + } + } + + DPLRawParser parser(pc.inputs(), o2::framework::select("zdc:ZDC/RAWDATA")); + //>> update Time-dependent CCDB stuff, at the moment set the moduleconfig only once if (!mRawReader.getModuleConfig()) { long timeStamp = 0; @@ -50,7 +66,7 @@ void ZDCDataReaderDPLSpec::run(ProcessingContext& pc) } mRawReader.setModuleConfig(moduleConfig); mRawReader.setTriggerMask(); - mRawReader.mVerifyTrigger = mVerifyTrigger; + mRawReader.setVerifyTrigger(mVerifyTrigger); LOG(INFO) << "Check of trigger condition during conversion is " << (mVerifyTrigger ? "ON" : "OFF"); } uint64_t count = 0; @@ -66,14 +82,18 @@ void ZDCDataReaderDPLSpec::run(ProcessingContext& pc) mRawReader.makeSnapshot(pc); } -framework::DataProcessorSpec getZDCDataReaderDPLSpec(const RawReaderZDC& rawReader, const bool verifyTrigger) +framework::DataProcessorSpec getZDCDataReaderDPLSpec(const RawReaderZDC& rawReader, const bool verifyTrigger, const bool askSTFDist) { LOG(INFO) << "DataProcessorSpec initDataProcSpec() for RawReaderZDC"; std::vector outputSpec; RawReaderZDC::prepareOutputSpec(outputSpec); + std::vector inputSpec{{"STF", ConcreteDataTypeMatcher{o2::header::gDataOriginZDC, "RAWDATA"}, Lifetime::Optional}}; + if (askSTFDist) { + inputSpec.emplace_back("STFDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe); + } return DataProcessorSpec{ "zdc-datareader-dpl", - o2::framework::select("TF:ZDC/RAWDATA"), + inputSpec, outputSpec, adaptFromTask(rawReader, verifyTrigger), Options{{"ccdb-url", o2::framework::VariantType::String, "http://ccdb-test.cern.ch:8080", {"CCDB Url"}}}}; diff --git a/Detectors/ZDC/workflow/src/o2-zdc-raw2digits.cxx b/Detectors/ZDC/workflow/src/o2-zdc-raw2digits.cxx index 42f42e6f2abf8..a312f19238152 100644 --- a/Detectors/ZDC/workflow/src/o2-zdc-raw2digits.cxx +++ b/Detectors/ZDC/workflow/src/o2-zdc-raw2digits.cxx @@ -25,6 +25,7 @@ void customize(std::vector& workflowOptions) {"dump-blocks-reader", VariantType::Bool, false, {"enable dumping of event blocks at reader side"}}, {"disable-root-output", VariantType::Bool, false, {"disable root-files output writers"}}, {"not-check-trigger", VariantType::Bool, false, {"avoid to check trigger condition during conversion"}}, + {"ignore-dist-stf", VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}, {"configKeyValues", VariantType::String, "", {"Semicolon separated key=value strings ..."}}}; std::swap(workflowOptions, options); } @@ -47,10 +48,16 @@ WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) LOG(INFO) << "Not checking trigger condition during conversion"; checkTrigger = false; } + auto askSTFDist = true; + auto notaskSTFDist = configcontext.options().get("ignore-dist-stf"); + if (notaskSTFDist) { + LOG(INFO) << "Not subscribing to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"; + askSTFDist = false; + } o2::conf::ConfigurableParam::updateFromString(configcontext.options().get("configKeyValues")); WorkflowSpec specs; - specs.emplace_back(o2::zdc::getZDCDataReaderDPLSpec(o2::zdc::RawReaderZDC{dumpReader}, checkTrigger)); + specs.emplace_back(o2::zdc::getZDCDataReaderDPLSpec(o2::zdc::RawReaderZDC{dumpReader}, checkTrigger, askSTFDist)); // if (useProcess) { // specs.emplace_back(o2::zdc::getZDCDataProcessDPLSpec(dumpProcessor)); // } From 950ae12e19cb42bb772a1ea9dd707274a79761b1 Mon Sep 17 00:00:00 2001 From: Roberto Preghenella Date: Thu, 17 Jun 2021 15:04:29 +0200 Subject: [PATCH 152/314] Add Pythia8 process name and code to MC event header --- Generators/src/GeneratorPythia8.cxx | 6 +++-- .../read_event_info_pythia8.macro | 27 +++++++++++++++++++ 2 files changed, 31 insertions(+), 2 deletions(-) create mode 100644 run/SimExamples/Custom_EventInfo/read_event_info_pythia8.macro diff --git a/Generators/src/GeneratorPythia8.cxx b/Generators/src/GeneratorPythia8.cxx index 4329957c4ab8a..c901aa05d014c 100644 --- a/Generators/src/GeneratorPythia8.cxx +++ b/Generators/src/GeneratorPythia8.cxx @@ -92,7 +92,7 @@ Bool_t GeneratorPythia8::Init() } #if PYTHIA_VERSION_INTEGER < 8300 - /** [NOTE] The issue with large particle production vertex when running + /** [NOTE] The issue with large particle production vertex when running Pythia8 heavy-ion model (Angantyr) is solved in Pythia 8.3 series. For discussions about this issue, please refer to this JIRA ticket https://alice.its.cern.ch/jira/browse/O2-1382. @@ -126,7 +126,7 @@ Bool_t } #if PYTHIA_VERSION_INTEGER < 8300 - /** [NOTE] The issue with large particle production vertex when running + /** [NOTE] The issue with large particle production vertex when running Pythia8 heavy-ion model (Angantyr) is solved in Pythia 8.3 series. For discussions about this issue, please refer to this JIRA ticket https://alice.its.cern.ch/jira/browse/O2-1382. @@ -199,6 +199,8 @@ void GeneratorPythia8::updateHeader(o2::dataformats::MCEventHeader* eventHeader) eventHeader->putInfo("generator", "pythia8"); eventHeader->putInfo("version", PYTHIA_VERSION_INTEGER); + eventHeader->putInfo("processName", mPythia.info.name()); + eventHeader->putInfo("processCode", mPythia.info.code()); #if PYTHIA_VERSION_INTEGER < 8300 auto hiinfo = mPythia.info.hiinfo; diff --git a/run/SimExamples/Custom_EventInfo/read_event_info_pythia8.macro b/run/SimExamples/Custom_EventInfo/read_event_info_pythia8.macro new file mode 100644 index 0000000000000..77e164f8d4e13 --- /dev/null +++ b/run/SimExamples/Custom_EventInfo/read_event_info_pythia8.macro @@ -0,0 +1,27 @@ +void +read_event_info(const char *fname) +{ + + auto fin = TFile::Open(fname); + auto tin = (TTree*)fin->Get("o2sim"); + auto head = new o2::dataformats::MCEventHeader; + tin->SetBranchAddress("MCEventHeader.", &head); + + bool isvalid; + + for (int iev = 0; iev < tin->GetEntries(); ++iev) { + + tin->GetEntry(iev); + + std::cout << " ---------------" << std::endl; + auto name = head->getInfo("generator", isvalid); + if (isvalid) std::cout << " generator = " << name << std::endl; + auto version = head->getInfo("version", isvalid); + if (isvalid) std::cout << " version = " << version << std::endl; + auto pname = head->getInfo("processName", isvalid); + if (isvalid) std::cout << "process name = " << pname << std::endl; + auto pcode = head->getInfo("processCode", isvalid); + if (isvalid) std::cout << "process code = " << pcode << std::endl; + } + +} From b6f246d9023de812f70d28ee072c108c63fb33c6 Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Tue, 13 Jul 2021 10:47:24 +0200 Subject: [PATCH 153/314] Catch arrow Check failed/assert to prevent DPL workflow hangs --- Utilities/Tools/jobutils.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/Utilities/Tools/jobutils.sh b/Utilities/Tools/jobutils.sh index 79f81fef0073b..3dcc685683240 100644 --- a/Utilities/Tools/jobutils.sh +++ b/Utilities/Tools/jobutils.sh @@ -183,6 +183,7 @@ taskwrapper() { -e \"Fatal in\" \ -e \"libc++abi.*terminating\" \ -e \"There was a crash.\" \ + -e \"arrow.*Check failed\" \ -e \"\*\*\* Error in\"" # <--- LIBC fatal error messages grepcommand="grep -a -H ${pattern} $logfile ${JOBUTILS_JOB_SUPERVISEDFILES} >> encountered_exceptions_list 2>/dev/null" From b3f6ce41fe8baa7f81dcf41a5377773b7ec4ba5a Mon Sep 17 00:00:00 2001 From: shahoian Date: Tue, 13 Jul 2021 18:24:06 +0200 Subject: [PATCH 154/314] Do not LOG(INFO) from device configuration as it pollutes the xml topology preparation --- Detectors/CTF/workflow/src/CTFWriterSpec.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Detectors/CTF/workflow/src/CTFWriterSpec.cxx b/Detectors/CTF/workflow/src/CTFWriterSpec.cxx index 48a933694631f..dc828eae5e564 100644 --- a/Detectors/CTF/workflow/src/CTFWriterSpec.cxx +++ b/Detectors/CTF/workflow/src/CTFWriterSpec.cxx @@ -429,11 +429,11 @@ void CTFWriterSpec::closeDictionaryTreeAndFile(CTFHeader& header) DataProcessorSpec getCTFWriterSpec(DetID::mask_t dets, uint64_t run, bool doCTF, bool doDict, bool dictPerDet, size_t szmn, size_t szmx) { std::vector inputs; - LOG(INFO) << "Detectors list:"; + LOG(DEBUG) << "Detectors list:"; for (auto id = DetID::First; id <= DetID::Last; id++) { if (dets[id]) { inputs.emplace_back(DetID::getName(id), DetID::getDataOrigin(id), "CTFDATA", 0, Lifetime::Timeframe); - LOG(INFO) << "Det " << DetID::getName(id) << " added"; + LOG(DEBUG) << "Det " << DetID::getName(id) << " added"; } } return DataProcessorSpec{ From bd97dee815595caf943993d972d960f8a61e8141 Mon Sep 17 00:00:00 2001 From: Sean Murray Date: Fri, 9 Jul 2021 12:39:05 +0200 Subject: [PATCH 155/314] fix sending whole messages --- .../TRDReconstruction/DataReaderTask.h | 1 + .../TRD/reconstruction/src/DataReader.cxx | 4 -- .../TRD/reconstruction/src/DataReaderTask.cxx | 67 +++++++++---------- 3 files changed, 33 insertions(+), 39 deletions(-) diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h index e2fd3c2d9e75c..224eb26c55887 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h @@ -40,6 +40,7 @@ class DataReaderTask : public Task void init(InitContext& ic) final; void sendData(ProcessingContext& pc, bool blankframe = false); void run(ProcessingContext& pc) final; + bool isTimeFrameEmpty(ProcessingContext& pc); private: CruRawReader mReader; // this will do the parsing, of raw data passed directly through the flp(no compression) diff --git a/Detectors/TRD/reconstruction/src/DataReader.cxx b/Detectors/TRD/reconstruction/src/DataReader.cxx index 14cfa6a637976..a8ffc4e68af0f 100644 --- a/Detectors/TRD/reconstruction/src/DataReader.cxx +++ b/Detectors/TRD/reconstruction/src/DataReader.cxx @@ -50,10 +50,6 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) { // auto config = cfgc.options().get("trd-datareader-config"); - // - // - // o2::conf::ConfigurableParam::updateFromString(cfgc.options().get("configKeyValues")); - // o2::conf::ConfigurableParam::writeINI("o2trdrawreader-workflow_configuration.ini"); //auto outputspec = cfgc.options().get("trd-datareader-outputspec"); auto verbose = cfgc.options().get("trd-datareader-verbose"); diff --git a/Detectors/TRD/reconstruction/src/DataReaderTask.cxx b/Detectors/TRD/reconstruction/src/DataReaderTask.cxx index 4ae1b256fe2e2..fb2e8eb9429dd 100644 --- a/Detectors/TRD/reconstruction/src/DataReaderTask.cxx +++ b/Detectors/TRD/reconstruction/src/DataReaderTask.cxx @@ -46,9 +46,8 @@ void DataReaderTask::init(InitContext& ic) void DataReaderTask::sendData(ProcessingContext& pc, bool blankframe) { - // mReader.getParsedObjects(mTracklets,mDigits,mTriggers); if (!blankframe) { - mReader.buildDPLOutputs(pc); //getParsedObjectsandClear(mTracklets, mDigits, mTriggers); + mReader.buildDPLOutputs(pc); } else { //ensure the objects we are sending back are indeed blank. //TODO maybe put this in buildDPLOutputs so sending all done in 1 place, not now though. @@ -62,31 +61,42 @@ void DataReaderTask::sendData(ProcessingContext& pc, bool blankframe) } } +bool DataReaderTask::isTimeFrameEmpty(ProcessingContext& pc) +{ + constexpr auto origin = header::gDataOriginTRD; + o2::framework::InputSpec dummy{"dummy", + framework::ConcreteDataMatcher{origin, + header::gDataDescriptionRawData, + 0xDEADBEEF}}; + // if we see requested data type input with 0xDEADBEEF subspec and 0 payload. + // frame detected we have no data and send this instead + // send empty output so as to not block workflow + for (const auto& ref : o2::framework::InputRecordWalker(pc.inputs(), {dummy})) { + const auto dh = o2::framework::DataRefUtils::getHeader(ref); + if (dh->payloadSize == 0) { + LOGP(INFO, "Found blank input input [{}/{}/{:#x}] TF#{} 1st_orbit:{} Payload {} : ", + dh->dataOrigin.str, dh->dataDescription.str, dh->subSpecification, dh->tfCounter, dh->firstTForbit, dh->payloadSize); + return true; + } + } + return false; +} + void DataReaderTask::run(ProcessingContext& pc) { LOG(info) << "TRD Translator Task run"; auto dataReadStart = std::chrono::high_resolution_clock::now(); + + if (isTimeFrameEmpty(pc)) { + sendData(pc, true); //send the empty tf data. + return; + } /* set encoder output buffer */ char bufferOut[o2::trd::constants::HBFBUFFERMAX]; int loopcounter = 0; auto device = pc.services().get().device(); auto outputRoutes = pc.services().get().spec().outputs; auto fairMQChannel = outputRoutes.at(0).channel; - std::vector dummy{InputSpec{"dummy", ConcreteDataMatcher{o2::header::gDataOriginTRD, o2::header::gDataDescriptionRawData, 0xDEADBEEF}}}; - // if we see requested data type input with 0xDEADBEEF subspec and 0 payload this mecans that the "delayed message" - // mechanism created it in absence of real data from upstream. Processor should send empty output to not block the workflow - - for (const auto& ref : InputRecordWalker(pc.inputs(), dummy)) { - const auto dh = o2::framework::DataRefUtils::getHeader(ref); - if (dh->payloadSize == 0) { //}|| dh->payloadSize==16) { - LOGP(WARNING, "Found blank input input [{}/{}/{:#x}] TF#{} 1st_orbit:{} Payload {} : ", - dh->dataOrigin.str, dh->dataDescription.str, dh->subSpecification, dh->tfCounter, dh->firstTForbit, dh->payloadSize); - sendData(pc, true); //send the empty tf data. - return; - } - LOG(info) << " matched DEADBEEF"; - } - //TODO combine the previous and subsequent loops. /* loop over inputs routes */ for (auto iit = pc.inputs().begin(), iend = pc.inputs().end(); iit != iend; ++iit) { if (!iit.isValid()) { @@ -94,6 +104,7 @@ void DataReaderTask::run(ProcessingContext& pc) } /* loop over input parts */ int inputpartscount = 0; + int emptyframe = 0; for (auto const& ref : iit) { if (mVerbose) { const auto dh = DataRefUtils::getHeader(ref); @@ -103,6 +114,7 @@ void DataReaderTask::run(ProcessingContext& pc) const auto* headerIn = DataRefUtils::getHeader(ref); auto payloadIn = ref.payload; auto payloadInSize = headerIn->payloadSize; + const auto dh = DataRefUtils::getHeader(ref); if (std::string(headerIn->dataDescription.str) != std::string("DISTSUBTIMEFRAMEFLP")) { if (!mCompressedData) { //we have raw data coming in from flp if (mVerbose) { @@ -111,42 +123,27 @@ void DataReaderTask::run(ProcessingContext& pc) mReader.setDataBuffer(payloadIn); mReader.setDataBufferSize(payloadInSize); mReader.configure(mByteSwap, mVerbose, mHeaderVerbose, mDataVerbose); - if (mVerbose) { - LOG(info) << "%%% about to run " << loopcounter << " %%%"; - } mReader.run(); - if (mVerbose) { - LOG(info) << "%%% finished running " << loopcounter << " %%%"; - } - loopcounter++; - // mTracklets.insert(std::end(mTracklets), std::begin(mReader.getTracklets()), std::end(mReader.getTracklets())); - // mCompressedDigits.insert(std::end(mCompressedDigits), std::begin(mReader.getCompressedDigits()), std::end(mReader.getCompressedDigits())); - //mReader.clearall(); if (mVerbose) { LOG(info) << "relevant vectors to read : " << mReader.sumTrackletsFound() << " tracklets and " << mReader.sumDigitsFound() << " compressed digits"; } // mTriggers = mReader.getIR(); - //get the payload of trigger and digits out. } else { // we have compressed data coming in from flp. mCompressedReader.setDataBuffer(payloadIn); mCompressedReader.setDataBufferSize(payloadInSize); mCompressedReader.configure(mByteSwap, mVerbose, mHeaderVerbose, mDataVerbose); mCompressedReader.run(); - //get the payload of trigger and digits out. } - /* output */ - sendData(pc, false); //TODO do we ever have to not post the data. i.e. can we get here mid event? I dont think so. - } else { - sendData(pc, true); - } + } // ignore the input of DISTSUBTIMEFRAMEFLP } + /* output */ + sendData(pc, false); } auto dataReadTime = std::chrono::high_resolution_clock::now() - dataReadStart; LOG(info) << "Processing time for Data reading " << std::chrono::duration_cast(dataReadTime).count() << "ms"; if (!mCompressedData) { LOG(info) << "Digits found : " << mReader.getDigitsFound(); - LOG(info) << "Tracklets found : " << mReader.getTrackletsFound(); } } From a088e5da7fda3005e498922bc3e3b38090d5333a Mon Sep 17 00:00:00 2001 From: Francesco Noferini Date: Tue, 13 Jul 2021 23:50:56 +0200 Subject: [PATCH 156/314] add DistStf as mandatory input for TOF decoder (#6625) * add DistStf as mandatory input for TOF decoder * filtering distStf input in TOF decoder loop * add dist stf in tof compressor as input --- .../tofworkflow/src/tof-reco-workflow.cxx | 5 ++- .../TOF/compression/src/CompressorTask.cxx | 33 ++++++++++-------- .../TOF/compression/src/tof-compressor.cxx | 10 +++++- .../TOFWorkflowUtils/CompressedDecodingTask.h | 2 +- .../workflow/src/CompressedDecodingTask.cxx | 34 +++++++++++-------- 5 files changed, 52 insertions(+), 32 deletions(-) diff --git a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-reco-workflow.cxx b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-reco-workflow.cxx index a70432dd8b9d7..013584ca9b669 100644 --- a/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-reco-workflow.cxx +++ b/Detectors/GlobalTrackingWorkflow/tofworkflow/src/tof-reco-workflow.cxx @@ -53,6 +53,7 @@ void customize(std::vector& workflowOptions) {"configKeyValues", o2::framework::VariantType::String, "", {"Semicolon separated key=value strings ..."}}, {"disable-row-writing", o2::framework::VariantType::Bool, false, {"disable ROW in Digit writing"}}, {"write-decoding-errors", o2::framework::VariantType::Bool, false, {"trace errors in digits output when decoding"}}, + {"ignore-dist-stf", VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}, {"calib-cluster", VariantType::Bool, false, {"to enable calib info production from clusters"}}, {"cosmics", VariantType::Bool, false, {"to enable cosmics utils"}}}; @@ -131,6 +132,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) bool disableROWwriting = cfgc.options().get("disable-row-writing"); auto isCalibFromCluster = cfgc.options().get("calib-cluster"); auto isCosmics = cfgc.options().get("cosmics"); + auto ignoreDistStf = cfgc.options().get("ignore-dist-stf"); LOG(INFO) << "TOF RECO WORKFLOW configuration"; LOG(INFO) << "TOF input = " << cfgc.options().get("input-type"); @@ -142,6 +144,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) LOG(INFO) << "TOF disable-root-input = " << disableRootInput; LOG(INFO) << "TOF disable-root-output = " << disableRootOutput; LOG(INFO) << "TOF conet-mode = " << conetmode; + LOG(INFO) << "TOF ignore Dist Stf = " << ignoreDistStf; LOG(INFO) << "TOF disable-row-writing = " << disableROWwriting; LOG(INFO) << "TOF write-decoding-errors = " << writeerr; @@ -161,7 +164,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) } else if (rawinput) { LOG(INFO) << "Insert TOF Compressed Raw Decoder"; auto inputDesc = cfgc.options().get("input-desc"); - specs.emplace_back(o2::tof::getCompressedDecodingSpec(inputDesc, conetmode)); + specs.emplace_back(o2::tof::getCompressedDecodingSpec(inputDesc, conetmode, !ignoreDistStf)); useMC = 0; if (writedigit && !disableRootOutput) { diff --git a/Detectors/TOF/compression/src/CompressorTask.cxx b/Detectors/TOF/compression/src/CompressorTask.cxx index a87b7f18be325..8ef0834b36609 100644 --- a/Detectors/TOF/compression/src/CompressorTask.cxx +++ b/Detectors/TOF/compression/src/CompressorTask.cxx @@ -20,6 +20,7 @@ #include "Framework/RawDeviceService.h" #include "Framework/DeviceSpec.h" #include "Framework/DataSpecUtils.h" +#include "Framework/InputRecordWalker.h" #include @@ -68,25 +69,27 @@ void CompressorTask::run(ProcessingContext& pc) std::map subspecBufferSize; /** loop over inputs routes **/ - for (auto iit = pc.inputs().begin(), iend = pc.inputs().end(); iit != iend; ++iit) { - if (!iit.isValid()) { - continue; - } + std::vector sel{InputSpec{"filter", ConcreteDataTypeMatcher{"TOF", "RAWDATA"}}}; + for (const auto& ref : InputRecordWalker(pc.inputs(), sel)) { + // for (auto iit = pc.inputs().begin(), iend = pc.inputs().end(); iit != iend; ++iit) { + // if (!iit.isValid()) { + // continue; + // } /** loop over input parts **/ - for (auto const& ref : iit) { + // for (auto const& ref : iit) { - /** store parts in map **/ - auto headerIn = DataRefUtils::getHeader(ref); - auto subspec = headerIn->subSpecification; - subspecPartMap[subspec].push_back(ref); - - /** increase subspec buffer size **/ - if (!subspecBufferSize.count(subspec)) { - subspecBufferSize[subspec] = 0; - } - subspecBufferSize[subspec] += headerIn->payloadSize; + /** store parts in map **/ + auto headerIn = DataRefUtils::getHeader(ref); + auto subspec = headerIn->subSpecification; + subspecPartMap[subspec].push_back(ref); + + /** increase subspec buffer size **/ + if (!subspecBufferSize.count(subspec)) { + subspecBufferSize[subspec] = 0; } + subspecBufferSize[subspec] += headerIn->payloadSize; + // } } /** loop over subspecs **/ diff --git a/Detectors/TOF/compression/src/tof-compressor.cxx b/Detectors/TOF/compression/src/tof-compressor.cxx index 0c466c63bbe74..f93357b8a49ae 100644 --- a/Detectors/TOF/compression/src/tof-compressor.cxx +++ b/Detectors/TOF/compression/src/tof-compressor.cxx @@ -34,12 +34,14 @@ void customize(std::vector& workflowOptions) auto rdhVersion = ConfigParamSpec{"tof-compressor-rdh-version", VariantType::Int, o2::raw::RDHUtils::getVersion(), {"Raw Data Header version"}}; auto verbose = ConfigParamSpec{"tof-compressor-verbose", VariantType::Bool, false, {"Enable verbose compressor"}}; auto paranoid = ConfigParamSpec{"tof-compressor-paranoid", VariantType::Bool, false, {"Enable paranoid compressor"}}; + auto ignoreStf = ConfigParamSpec{"ignore-dist-stf", VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}; workflowOptions.push_back(config); workflowOptions.push_back(outputDesc); workflowOptions.push_back(rdhVersion); workflowOptions.push_back(verbose); workflowOptions.push_back(paranoid); + workflowOptions.push_back(ignoreStf); workflowOptions.push_back(ConfigParamSpec{"configKeyValues", VariantType::String, "", {"Semicolon separated key=value strings"}}); } @@ -54,6 +56,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) auto rdhVersion = cfgc.options().get("tof-compressor-rdh-version"); auto verbose = cfgc.options().get("tof-compressor-verbose"); auto paranoid = cfgc.options().get("tof-compressor-paranoid"); + auto ignoreStf = cfgc.options().get("ignore-dist-stf"); std::vector outputs; outputs.emplace_back(OutputSpec(ConcreteDataTypeMatcher{"TOF", "CRAWDATA"})); @@ -95,9 +98,14 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) int idevice = 0; while (getline(ssconfig, iconfig, ',')) { + std::vector inputs = select(iconfig.c_str()); + if (!ignoreStf) { + inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe); + } workflow.emplace_back(DataProcessorSpec{ std::string("tof-compressor-") + std::to_string(idevice), - select(iconfig.c_str()), + // select(iconfig.c_str()), + inputs, outputs, algoSpec, Options{ diff --git a/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedDecodingTask.h b/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedDecodingTask.h index 562df639e132e..e64a1869e9350 100644 --- a/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedDecodingTask.h +++ b/Detectors/TOF/workflow/include/TOFWorkflowUtils/CompressedDecodingTask.h @@ -77,7 +77,7 @@ class CompressedDecodingTask : public DecoderBase, public Task TStopwatch mTimer; }; -framework::DataProcessorSpec getCompressedDecodingSpec(const std::string& inputDesc, bool conet = false); +framework::DataProcessorSpec getCompressedDecodingSpec(const std::string& inputDesc, bool conet = false, bool askDISTSTF = true); } // namespace tof } // namespace o2 diff --git a/Detectors/TOF/workflow/src/CompressedDecodingTask.cxx b/Detectors/TOF/workflow/src/CompressedDecodingTask.cxx index 7b6649ff5112b..735cbd817397c 100644 --- a/Detectors/TOF/workflow/src/CompressedDecodingTask.cxx +++ b/Detectors/TOF/workflow/src/CompressedDecodingTask.cxx @@ -168,21 +168,23 @@ void CompressedDecodingTask::decodeTF(ProcessingContext& pc) } /** loop over inputs routes **/ - for (auto iit = pc.inputs().begin(), iend = pc.inputs().end(); iit != iend; ++iit) { - if (!iit.isValid()) { - continue; - } + std::vector sel{InputSpec{"filter", ConcreteDataTypeMatcher{"TOF", "CRAWDATA"}}}; + for (const auto& ref : InputRecordWalker(pc.inputs(), sel)) { + // for (auto iit = pc.inputs().begin(), iend = pc.inputs().end(); iit != iend; ++iit) { + // if (!iit.isValid()) { + // continue; + // } /** loop over input parts **/ - for (auto const& ref : iit) { - const auto* headerIn = DataRefUtils::getHeader(ref); - auto payloadIn = ref.payload; - auto payloadInSize = headerIn->payloadSize; - - DecoderBase::setDecoderBuffer(payloadIn); - DecoderBase::setDecoderBufferSize(payloadInSize); - DecoderBase::run(); - } + // for (auto const& ref : iit) { + const auto* headerIn = DataRefUtils::getHeader(ref); + auto payloadIn = ref.payload; + auto payloadInSize = headerIn->payloadSize; + + DecoderBase::setDecoderBuffer(payloadIn); + DecoderBase::setDecoderBufferSize(payloadInSize); + DecoderBase::run(); + // } } } @@ -383,9 +385,13 @@ void CompressedDecodingTask::frameHandler(const CrateHeader_t* crateHeader, cons } }; -DataProcessorSpec getCompressedDecodingSpec(const std::string& inputDesc, bool conet) +DataProcessorSpec getCompressedDecodingSpec(const std::string& inputDesc, bool conet, bool askDISTSTF) { std::vector inputs; + if (askDISTSTF) { + inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, Lifetime::Timeframe); + } + // inputs.emplace_back(std::string("x:TOF/" + inputDesc).c_str(), 0, Lifetime::Optional); o2::header::DataDescription dataDesc; dataDesc.runtimeInit(inputDesc.c_str()); From 4c8b50a7e1268aa82b6605979da90dc88fc66f1c Mon Sep 17 00:00:00 2001 From: Sean Murray Date: Wed, 30 Jun 2021 19:19:15 +0200 Subject: [PATCH 157/314] trd fix corrupt data at end of digits --- .../include/TRDReconstruction/CruRawReader.h | 12 ++++++------ .../include/TRDReconstruction/DataReaderTask.h | 3 ++- Detectors/TRD/reconstruction/src/CruRawReader.cxx | 8 ++++++++ Detectors/TRD/reconstruction/src/DataReader.cxx | 4 +++- Detectors/TRD/reconstruction/src/DataReaderTask.cxx | 2 +- 5 files changed, 20 insertions(+), 9 deletions(-) diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h index 672ce436ae583..65de98c3d1145 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h @@ -9,11 +9,9 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -/// @file CruRawReader.h -/// @author Sean Murray -/// @brief Cru raw data reader, this is the part that parses the raw data -// it runs on the flp(pre compression) or on the epn(pre tracklet64 array generation) -// it hands off blocks of cru pay load to the parsers. +// Cru raw data reader, this is the part that parses the raw data +// it runs on the flp(pre compression) or on the epn(pre tracklet64 array generation) +// it hands off blocks of cru pay load to the parsers. #ifndef O2_TRD_CRURAWREADER #define O2_TRD_CRURAWREADER @@ -60,12 +58,13 @@ class CruRawReader void checkSummary(); void resetCounters(); - void configure(bool byteswap, bool verbose, bool headerverbose, bool dataverbose) + void configure(bool byteswap, bool fixdigitcorruption, bool verbose, bool headerverbose, bool dataverbose) { mByteSwap = byteswap; mVerbose = verbose; mHeaderVerbose = headerverbose; mDataVerbose = dataverbose; + mFixDigitEndCorruption = fixdigitcorruption; } void setBlob(bool returnblob) { mReturnBlob = returnblob; }; //set class to produce blobs and not vectors. (compress vs pass through)` void setDataBuffer(const char* val) @@ -130,6 +129,7 @@ class CruRawReader bool mHeaderVerbose{false}; bool mDataVerbose{false}; bool mByteSwap{false}; + bool mFixDigitEndCorruption{false}; const char* mDataBuffer = nullptr; static const uint32_t mMaxHBFBufferSize = o2::trd::constants::HBFBUFFERMAX; std::array mHBFPayload; //this holds the O2 payload held with in the HBFs to pass to parsing. diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h index 224eb26c55887..c10e3b3596a3e 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h @@ -35,7 +35,7 @@ namespace o2::trd class DataReaderTask : public Task { public: - DataReaderTask(bool compresseddata, bool byteswap, bool verbose, bool headerverbose, bool dataverbose) : mCompressedData(compresseddata), mByteSwap(byteswap), mVerbose(verbose), mHeaderVerbose(headerverbose), mDataVerbose(dataverbose) {} + DataReaderTask(bool compresseddata, bool byteswap, bool fixdigitendcorruption, bool verbose, bool headerverbose, bool dataverbose) : mCompressedData(compresseddata), mByteSwap(byteswap), mFixDigitEndCorruption(fixdigitendcorruption), mVerbose(verbose), mHeaderVerbose(headerverbose), mDataVerbose(dataverbose) {} ~DataReaderTask() override = default; void init(InitContext& ic) final; void sendData(ProcessingContext& pc, bool blankframe = false); @@ -57,6 +57,7 @@ class DataReaderTask : public Task // o2::header::DataDescription mDataDesc; // Data description of the incoming data std::string mDataDesc; o2::header::DataDescription mUserDataDescription = o2::header::gDataDescriptionInvalid; // alternative user-provided description to pick + bool mFixDigitEndCorruption{false}; // fix the parsing of corrupt end of digit data. bounce over it. }; } // namespace o2::trd diff --git a/Detectors/TRD/reconstruction/src/CruRawReader.cxx b/Detectors/TRD/reconstruction/src/CruRawReader.cxx index a3db93731e15f..266f759082902 100644 --- a/Detectors/TRD/reconstruction/src/CruRawReader.cxx +++ b/Detectors/TRD/reconstruction/src/CruRawReader.cxx @@ -292,6 +292,14 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) LOG(info) << "mem copy with offset of : " << cruhbfstartoffset << " parsing digits with linkstart: " << linkstart << " ending at : " << linkend; } digitwordsread = mDigitsParser.Parse(&mHBFPayload, linkstart, linkend, currentdetector, cleardigits, mByteSwap, mVerbose, mHeaderVerbose, mDataVerbose); + if (digitwordsread != std::distance(linkstart, linkend)) { + //we have the data corruption problem of a pile of stuff at the end of a link, jump over it. + if (mFixDigitEndCorruption) { + digitwordsread = std::distance(linkstart, linkend); + } else { + LOG(warn) << "read digits but data still left on the link digitwordsread:" << digitwordsread << " and link length:" << std::distance(linkstart, linkend); + } + } mTotalDigitsFound += mDigitsParser.getDigitsFound(); if (mVerbose) { LOG(info) << "digitwordsread : " << digitwordsread << " mem copy with offset of : " << cruhbfstartoffset << " parsing digits with linkstart: " << linkstart << " ending at : " << linkend; diff --git a/Detectors/TRD/reconstruction/src/DataReader.cxx b/Detectors/TRD/reconstruction/src/DataReader.cxx index a8ffc4e68af0f..4ad80a8f96da1 100644 --- a/Detectors/TRD/reconstruction/src/DataReader.cxx +++ b/Detectors/TRD/reconstruction/src/DataReader.cxx @@ -35,6 +35,7 @@ void customize(std::vector& workflowOptions) {"trd-datareader-dataverbose", VariantType::Bool, false, {"Enable verbose data info"}}, {"trd-datareader-compresseddata", VariantType::Bool, false, {"The incoming data is compressed or not"}}, {"ignore-dist-stf", VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}, + {"trd-datareader-fixdigitcorruptdata", VariantType::Bool, false, {"Fix the erroneous data at the end of digits"}}, {"trd-datareader-enablebyteswapdata", VariantType::Bool, false, {"byteswap the incoming data, raw data needs it and simulation does not."}}}; o2::raw::HBFUtilsInitializer::addConfigOption(options); @@ -58,6 +59,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) auto headerverbose = cfgc.options().get("trd-datareader-headerverbose"); auto dataverbose = cfgc.options().get("trd-datareader-dataverbose"); auto askSTFDist = !cfgc.options().get("ignore-dist-stf"); + auto fixdigitcorruption = cfgc.options().get("trd-datareader-fixdigitcorruptdata"); std::vector outputs; outputs.emplace_back("TRD", "TRACKLETS", 0, Lifetime::Timeframe); outputs.emplace_back("TRD", "DIGITS", 0, Lifetime::Timeframe); @@ -65,7 +67,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) //outputs.emplace_back("TRD", "FLPSTAT", 0, Lifetime::Timeframe); LOG(info) << "enablebyteswap :" << byteswap; AlgorithmSpec algoSpec; - algoSpec = AlgorithmSpec{adaptFromTask(compresseddata, byteswap, verbose, headerverbose, dataverbose)}; + algoSpec = AlgorithmSpec{adaptFromTask(compresseddata, byteswap, fixdigitcorruption, verbose, headerverbose, dataverbose)}; WorkflowSpec workflow; diff --git a/Detectors/TRD/reconstruction/src/DataReaderTask.cxx b/Detectors/TRD/reconstruction/src/DataReaderTask.cxx index fb2e8eb9429dd..cb0eafb161a48 100644 --- a/Detectors/TRD/reconstruction/src/DataReaderTask.cxx +++ b/Detectors/TRD/reconstruction/src/DataReaderTask.cxx @@ -122,7 +122,7 @@ void DataReaderTask::run(ProcessingContext& pc) } mReader.setDataBuffer(payloadIn); mReader.setDataBufferSize(payloadInSize); - mReader.configure(mByteSwap, mVerbose, mHeaderVerbose, mDataVerbose); + mReader.configure(mByteSwap, mFixDigitEndCorruption, mVerbose, mHeaderVerbose, mDataVerbose); mReader.run(); if (mVerbose) { LOG(info) << "relevant vectors to read : " << mReader.sumTrackletsFound() << " tracklets and " << mReader.sumDigitsFound() << " compressed digits"; From 966ab8759e36735d241f8b118c93919f84f23ed5 Mon Sep 17 00:00:00 2001 From: Markus Fasel Date: Tue, 13 Jul 2021 18:50:46 +0200 Subject: [PATCH 158/314] [EMCAL-630] Move to gamma2 raw fitter by default --- Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx b/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx index 8b738c8e77397..21c659452f66c 100644 --- a/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx +++ b/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx @@ -264,6 +264,6 @@ o2::framework::DataProcessorSpec o2::emcal::reco_workflow::getRawToCellConverter outputs, o2::framework::adaptFromTask(), o2::framework::Options{ - {"fitmethod", o2::framework::VariantType::String, "standard", {"Fit method (standard or gamma2)"}}, + {"fitmethod", o2::framework::VariantType::String, "gamma2", {"Fit method (standard or gamma2)"}}, {"maxmessage", o2::framework::VariantType::Int, 100, {"Max. amout of error messages to be displayed"}}}}; } From b069a75051062269d8049be416d5c5c184502882 Mon Sep 17 00:00:00 2001 From: Jorge Lopez Date: Sun, 4 Jul 2021 20:16:12 +0200 Subject: [PATCH 159/314] remove TRDBase/Digit.h --- Detectors/TRD/base/CMakeLists.txt | 1 - Detectors/TRD/base/include/TRDBase/Digit.h | 17 ----------------- .../base/macros/ConvertRun2DigitsAndTracklets.C | 2 +- Detectors/TRD/macros/convertRun2ToRun3Digits.C | 2 +- .../TRDReconstruction/CompressedRawReader.h | 4 ++-- .../include/TRDReconstruction/CruRawReader.h | 2 +- .../include/TRDReconstruction/DataReaderTask.h | 2 +- .../TRD/reconstruction/src/DigitsParser.cxx | 2 +- 8 files changed, 7 insertions(+), 25 deletions(-) delete mode 100644 Detectors/TRD/base/include/TRDBase/Digit.h diff --git a/Detectors/TRD/base/CMakeLists.txt b/Detectors/TRD/base/CMakeLists.txt index 7106d172e365e..5cf0518b3d450 100644 --- a/Detectors/TRD/base/CMakeLists.txt +++ b/Detectors/TRD/base/CMakeLists.txt @@ -63,7 +63,6 @@ o2_target_root_dictionary(TRDBase include/TRDBase/Calibrations.h include/TRDBase/ChamberNoise.h include/TRDBase/CalOnlineGainTables.h - include/TRDBase/Digit.h include/TRDBase/Tracklet.h include/TRDBase/TrackletTransformer.h) diff --git a/Detectors/TRD/base/include/TRDBase/Digit.h b/Detectors/TRD/base/include/TRDBase/Digit.h deleted file mode 100644 index ff154e6208e05..0000000000000 --- a/Detectors/TRD/base/include/TRDBase/Digit.h +++ /dev/null @@ -1,17 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -#ifndef ALICEO2_TRD_DIGIT_BACKCOMPAT_H_ -#define ALICEO2_TRD_DIGIT_BACKCOMPAT_H_ - -#include "DataFormatsTRD/Digit.h" - -#endif diff --git a/Detectors/TRD/base/macros/ConvertRun2DigitsAndTracklets.C b/Detectors/TRD/base/macros/ConvertRun2DigitsAndTracklets.C index 987e98b1d1674..95f82017fd777 100644 --- a/Detectors/TRD/base/macros/ConvertRun2DigitsAndTracklets.C +++ b/Detectors/TRD/base/macros/ConvertRun2DigitsAndTracklets.C @@ -17,7 +17,7 @@ #include "TH1F.h" #include "AliTRDtrackletMCM.h" //#include "TRDDataFormat/TriggerRecord.h" -#include "TRDBase/Digit.h" +#include "DataFormatsTRD/Digit.h" #include "TRDBase/Tracklet.h" #endif diff --git a/Detectors/TRD/macros/convertRun2ToRun3Digits.C b/Detectors/TRD/macros/convertRun2ToRun3Digits.C index 17a41cb27c88d..da1808845cdd2 100644 --- a/Detectors/TRD/macros/convertRun2ToRun3Digits.C +++ b/Detectors/TRD/macros/convertRun2ToRun3Digits.C @@ -22,7 +22,7 @@ #include // O2 -#include "TRDBase/Digit.h" +#include "DataFormatsTRD/Digit.h" #include "DataFormatsTRD/TriggerRecord.h" #include "DataFormatsTRD/Constants.h" #include "SimulationDataFormat/MCCompLabel.h" diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CompressedRawReader.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CompressedRawReader.h index 233335a5192d2..b37f4bcdad716 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CompressedRawReader.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CompressedRawReader.h @@ -26,11 +26,11 @@ #include "Headers/RAWDataHeader.h" #include "Headers/RDHAny.h" #include "DetectorsRaw/RDHUtils.h" +#include "DataFormatsTRD/CompressedDigit.h" #include "DataFormatsTRD/RawData.h" #include "DataFormatsTRD/Tracklet64.h" #include "DataFormatsTRD/TriggerRecord.h" -#include "DataFormatsTRD/CompressedDigit.h" -#include "TRDBase/Digit.h" +#include "DataFormatsTRD/Digit.h" namespace o2 { diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h index 65de98c3d1145..37ddb3378bc18 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h @@ -29,7 +29,7 @@ #include "TRDReconstruction/DigitsParser.h" #include "TRDReconstruction/TrackletsParser.h" #include "DataFormatsTRD/Constants.h" -#include "TRDBase/Digit.h" +#include "DataFormatsTRD/Digit.h" #include "CommonDataFormat/InteractionRecord.h" #include "TRDReconstruction/EventRecord.h" diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h index c10e3b3596a3e..104c3cc448c3b 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h @@ -22,7 +22,7 @@ #include "TRDReconstruction/CompressedRawReader.h" #include "DataFormatsTRD/Tracklet64.h" #include "DataFormatsTRD/TriggerRecord.h" -#include "TRDBase/Digit.h" +#include "DataFormatsTRD/Digit.h" //#include "DataFormatsTRD/FlpStats.h" #include diff --git a/Detectors/TRD/reconstruction/src/DigitsParser.cxx b/Detectors/TRD/reconstruction/src/DigitsParser.cxx index 8d133215b6a9c..cd9fa5bc37f7c 100644 --- a/Detectors/TRD/reconstruction/src/DigitsParser.cxx +++ b/Detectors/TRD/reconstruction/src/DigitsParser.cxx @@ -16,7 +16,7 @@ #include "DataFormatsTRD/RawData.h" #include "DataFormatsTRD/Constants.h" #include "DataFormatsTRD/CompressedDigit.h" -#include "TRDBase/Digit.h" +#include "DataFormatsTRD/Digit.h" #include "fairlogger/Logger.h" From bc294424d9073a8e77883c98c331903736aa0e94 Mon Sep 17 00:00:00 2001 From: Laurent Aphecetche Date: Mon, 12 Apr 2021 17:10:24 +0200 Subject: [PATCH 160/314] [O2-2132] CMake: Get rid of custom test wrapper script In favor of using native cmake/ctest facilities as much as possible. It's important to note that a couple of things should be changed on the calling side (o2.sh in the alibuild case) as well _if_ we want to have a 1-to-1 matching with the current behavior : - if more that one attempt per test use `ctest --repeat until-pass:3` - no default timeout is set. If that's not adequate use `ctest --timeout 100` The (cmake) rationale for the timeout is most probably dependent on the machine the test is ran on, so it's hard to put a default timeout value in any CMakeLists.txt --- .cmake-format.py | 9 +- .../MUON/MCH/Mapping/test/CMakeLists.txt | 3 - Framework/Core/CMakeLists.txt | 2 - cmake/O2AddTest.cmake | 74 +++++---- cmake/O2AddTestCommand.cmake | 90 +++++++++++ cmake/O2AddTestRootMacro.cmake | 9 +- cmake/O2AddTestWrapper.cmake | 147 ------------------ run/CMakeLists.txt | 59 +++---- tests/O2SetupTesting.cmake | 3 - tests/tests-wrapper.sh.in | 122 --------------- 10 files changed, 166 insertions(+), 352 deletions(-) create mode 100644 cmake/O2AddTestCommand.cmake delete mode 100644 cmake/O2AddTestWrapper.cmake delete mode 100755 tests/tests-wrapper.sh.in diff --git a/.cmake-format.py b/.cmake-format.py index d96aedb9d93db..9827eecd329c4 100644 --- a/.cmake-format.py +++ b/.cmake-format.py @@ -85,12 +85,9 @@ "DESTINATION": '*', } }, - "o2_add_test_wrapper": { - "flags": ["DONT_FAIL_ON_TIMEOUT"], + "o2_add_test_command": { "kwargs": { "COMMAND": '*', - "NO_BOOST_TEST": '*', - "MAX_ATTEMPTS": '*', "TIMEOUT": '*', "NAME": '*', "WORKING_DIRECTORY": '*', @@ -105,7 +102,6 @@ "INSTALL": '*', "NO_BOOST_TEST": '*', "COMPONENT_NAME": '*', - "MAX_ATTEMPTS": '*', "TIMEOUT": '*', "WORKING_DIRECTORY": '*', "SOURCES": '*', @@ -116,10 +112,11 @@ } }, "o2_add_test_root_macro": { - "flags": ["LOAD_ONLY"], + "flags": ["COMPILE","COMPILE_ONLY"], "kwargs": { "ENVIRONMENT": '*', "PUBLIC_LINK_LIBRARIES": '*', + "PUBLIC_INCLUDE_DIRECTORIES": '*', "LABELS": '*', } }, diff --git a/Detectors/MUON/MCH/Mapping/test/CMakeLists.txt b/Detectors/MUON/MCH/Mapping/test/CMakeLists.txt index 0037b12f62e95..a6e121dcdf39c 100644 --- a/Detectors/MUON/MCH/Mapping/test/CMakeLists.txt +++ b/Detectors/MUON/MCH/Mapping/test/CMakeLists.txt @@ -21,7 +21,6 @@ foreach(impl RANGE 3 4) NAME o2-test-mchmapping-pad-indices-impl${impl} SOURCES src/testPadIndices.cxx COMPONENT_NAME mchmapping - MAX_ATTEMPTS 1 COMMAND_LINE_ARGS --filepattern ${CMAKE_CURRENT_LIST_DIR}/data/test_pad_indices_de{}.json --de 100 --de 300 @@ -56,7 +55,6 @@ o2_add_test(StressTest3 SOURCES src/CathodeSegmentation.cxx src/CathodeSegmentationLong.cxx src/Segmentation.cxx src/TestParameters.cxx COMPONENT_NAME mchmapping - MAX_ATTEMPTS 1 COMMAND_LINE_ARGS --testpos ${CMAKE_CURRENT_LIST_DIR}/data/test_random_pos.json --run2 --manunumbering PUBLIC_LINK_LIBRARIES O2::MCHMappingImpl3 O2::MCHMappingSegContour RapidJSON::RapidJSON @@ -68,7 +66,6 @@ o2_add_test(StressTest4 SOURCES src/CathodeSegmentation.cxx src/CathodeSegmentationLong.cxx src/Segmentation.cxx src/TestParameters.cxx COMPONENT_NAME mchmapping - MAX_ATTEMPTS 1 COMMAND_LINE_ARGS --testpos ${CMAKE_CURRENT_LIST_DIR}/data/test_random_pos.json --manunumbering PUBLIC_LINK_LIBRARIES O2::MCHMappingImpl4 O2::MCHMappingSegContour RapidJSON::RapidJSON diff --git a/Framework/Core/CMakeLists.txt b/Framework/Core/CMakeLists.txt index e8a0699089337..07582b035fa21 100644 --- a/Framework/Core/CMakeLists.txt +++ b/Framework/Core/CMakeLists.txt @@ -298,7 +298,6 @@ foreach(w o2_add_test(${w} NAME test_Framework_test_${w} SOURCES test/test_${w}.cxx COMPONENT_NAME Framework - MAX_ATTEMPTS 1 LABELS framework workflow PUBLIC_LINK_LIBRARIES O2::Framework TIMEOUT 30 @@ -319,7 +318,6 @@ o2_add_test( ProcessorOptions NAME test_Framework_test_ProcessorOptions SOURCES test/test_ProcessorOptions.cxx COMPONENT_NAME Framework - MAX_ATTEMPTS 1 LABELS framework workflow TIMEOUT 60 PUBLIC_LINK_LIBRARIES O2::Framework diff --git a/cmake/O2AddTest.cmake b/cmake/O2AddTest.cmake index d887a7bf6ed9b..d1cadcde091f8 100644 --- a/cmake/O2AddTest.cmake +++ b/cmake/O2AddTest.cmake @@ -12,22 +12,43 @@ include_guard() include(O2AddExecutable) -include(O2AddTestWrapper) # -# o2_add_test(testName SOURCES ...) adds a test. The test itself (in the CTest -# sense) is a wrapper around an executable. Both the test wrapper and the -# executable are setup by this function. +# o2_add_test(testName SOURCES) adds an executable that is also a test. +# +# It is a convenience function that groups the actions of cmake intrinsics +# add_executable and add_test. # # If BUILD_TESTING if not set this function does nothing at all. # # The test name is the name of the first source file in SOURCES, unless the NAME # parameter is given (see below). # -# This function accepts two sets of parameters : one for the executable and one -# for the test wrapper. +# o2_add_test accept the following parameters : +# +# required +# +# * SOURCES : same meaning as for o2_add_executable +# +# recommended/often needed : +# +# * PUBLIC_LINK_LIBRARIES : same meaning as for +# o2_add_executable +# * COMMAND_LINE_ARGS : the arguments to pass to the executable, if any +# * COMPONENT_NAME : a short name that will be used to create the +# executable name (if not provided with NAME) : o2-test-[COMPONENT_NAME]-... +# * LABELS : labels attached to the test, that can then be used to filter +# which tests are executed with the `ctest -L` command +# +# optional/less frequently used : +# +# * NAME: if given, will be used verbatim as the test name +# * ENVIRONMENT: extra environment needed by the test to run properly +# * TIMEOUT : the number of seconds allowed for the test to run. Past this time +# failure is assumed. +# * WORKING_DIRECTORY: the directory in which the test will be ran # -# Parameters of the test executable : +# rarely needed/for special cases : # # * NO_BOOST_TEST : we assume most of the tests are using the Boost::Test # framework and thus link the test with the Boost::unit_test_framework target. @@ -36,16 +57,10 @@ include(O2AddTestWrapper) # * INSTALL : by default tests are _not_ installed. If that option is present # then the test is installed (under ${CMAKE_INSTALL_PREFIX}/tests, not in # ${CMAKE_INSTALL_PREFIX}/bin like other binaries) +# * CONFIGURATIONS : the test will only be ran for those named configurations +# * TARGETVARNAME : same meaning as for o2_add_executable # -# Parameters of the test wrapper : -# -# * NAME: if given, will be used verbatim as the test name -# * MAX_ATTEMPTS : the number of time the test will be tried (upon failures) -# before it is actually considered as failed -# * TIMEOUT : the number of seconds allowed for the test to run. Past this time -# failure is assumed. -# * ENVIRONMENT: extra environment needed by the test to run properly -# + function(o2_add_test) if(NOT BUILD_TESTING) @@ -57,13 +72,12 @@ function(o2_add_test) 1 A "INSTALL;NO_BOOST_TEST" - "COMPONENT_NAME;MAX_ATTEMPTS;TIMEOUT;WORKING_DIRECTORY;NAME" + "COMPONENT_NAME;TIMEOUT;WORKING_DIRECTORY;NAME" "SOURCES;PUBLIC_LINK_LIBRARIES;COMMAND_LINE_ARGS;LABELS;CONFIGURATIONS;ENVIRONMENT" ) if(A_UNPARSED_ARGUMENTS) - message( - FATAL_ERROR "Unexpected unparsed arguments: ${A_UNPARSED_ARGUMENTS}") + message(FATAL_ERROR "Unexpected unparsed arguments: ${A_UNPARSED_ARGUMENTS}") endif() set(testName ${ARGV0}) @@ -95,7 +109,7 @@ function(o2_add_test) COMPONENT_NAME ${A_COMPONENT_NAME} IS_TEST ${noInstall} TARGETVARNAME targetName) - # create a test with a script wrapping the executable above + # create a test for the executable above set(name "") if(A_NAME) set(name ${A_NAME}) @@ -105,14 +119,14 @@ function(o2_add_test) file(RELATIVE_PATH name ${CMAKE_SOURCE_DIR} ${src}) endif() - o2_add_test_wrapper(TARGET ${targetName} - NAME ${name} - DONT_FAIL_ON_TIMEOUT - MAX_ATTEMPTS ${A_MAX_ATTEMPTS} - TIMEOUT ${A_TIMEOUT} - WORKING_DIRECTORY ${A_WORKING_DIRECTORY} - COMMAND_LINE_ARGS ${A_COMMAND_LINE_ARGS} - LABELS ${A_LABELS} - CONFIGURATIONS ${A_CONFIGURATIONS} - ENVIRONMENT "${A_ENVIRONMENT}") + add_test(NAME ${name} + COMMAND ${targetName} ${A_COMMAND_LINE_ARGS} + WORKING_DIRECTORY ${A_WORKING_DIRECTORY} + CONFIGURATIONS ${A_CONFIGURATIONS} + ) + + set_property(TEST ${name} PROPERTY LABELS ${A_LABELS}) + set_property(TEST ${name} PROPERTY ENVIRONMENT "${A_ENVIRONMENT}") + set_property(TEST ${name} PROPERTY TIMEOUT ${A_TIMEOUT}) + endfunction() diff --git a/cmake/O2AddTestCommand.cmake b/cmake/O2AddTestCommand.cmake new file mode 100644 index 0000000000000..6e99b2bb61616 --- /dev/null +++ b/cmake/O2AddTestCommand.cmake @@ -0,0 +1,90 @@ +# Copyright CERN and copyright holders of ALICE O2. This software is distributed +# under the terms of the GNU General Public License v3 (GPL Version 3), copied +# verbatim in the file "COPYING". +# +# See http://alice-o2.web.cern.ch/license for full licensing information. +# +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization or +# submit itself to any jurisdiction. + +include_guard() + +include(O2AddExecutable) + +# +# o2_add_test_command(COMMAND) adds a test which uses a command as executable. +# +# Compared to o2_add_test, this function does _not_ add a new executable, +# but uses an already declared executable (or even a script that is +# not build by cmake at all) +# +# If BUILD_TESTING if not set this function does nothing at all. +# +# o2_add_test_command accept the following parameters : +# +# required +# +# * COMMAND : command to be executed as a test +# * NAME : name of the test +# +# recommended/often needed : +# +# * COMMAND_LINE_ARGS : the arguments to pass to the test, if any +# * COMPONENT_NAME : a short name that will be used to create the +# executable name (if not provided with NAME) : o2-test-[COMPONENT_NAME]-... +# * LABELS : labels attached to the test, that can then be used to filter +# which tests are executed with the `ctest -L` command +# +# optional/less frequently used : +# +# * ENVIRONMENT: extra environment needed by the test to run properly +# * TIMEOUT : the number of seconds allowed for the test to run. Past this time +# failure is assumed. +# * WORKING_DIRECTORY: the directory in which the test will be ran +# +# rarely needed/for special cases : +# +# * CONFIGURATIONS : the test will only be ran for those named configurations +# + +function(o2_add_test_command) + + if(NOT BUILD_TESTING) + return() + endif() + + cmake_parse_arguments( + PARSE_ARGV + 0 + A + "" + "COMMAND;COMPONENT_NAME;TIMEOUT;WORKING_DIRECTORY;NAME" + "COMMAND_LINE_ARGS;LABELS;CONFIGURATIONS;ENVIRONMENT" + ) + + if(A_UNPARSED_ARGUMENTS) + message(FATAL_ERROR "Unexpected unparsed arguments: ${A_UNPARSED_ARGUMENTS}") + endif() + + set(noInstall NO_INSTALL) + + if(NOT A_NAME) + message(FATAL_ERROR "Must give a name to the test") + endif() + + if(NOT A_COMMAND) + message(FATAL_ERROR "Must give a command for the test") + endif() + + add_test(NAME ${A_NAME} + COMMAND ${A_COMMAND} ${A_COMMAND_LINE_ARGS} + WORKING_DIRECTORY ${A_WORKING_DIRECTORY} + CONFIGURATIONS ${A_CONFIGURATIONS} + ) + + set_property(TEST ${A_NAME} PROPERTY LABELS ${A_LABELS}) + set_property(TEST ${A_NAME} PROPERTY ENVIRONMENT ${A_ENVIRONMENT}) + set_property(TEST ${A_NAME} PROPERTY TIMEOUT ${A_TIMEOUT}) + +endfunction() diff --git a/cmake/O2AddTestRootMacro.cmake b/cmake/O2AddTestRootMacro.cmake index 10f53ad6094ed..3e68556538b74 100644 --- a/cmake/O2AddTestRootMacro.cmake +++ b/cmake/O2AddTestRootMacro.cmake @@ -11,10 +11,12 @@ include_guard() +include(O2AddTestCommand) + # # o2_add_test_root_macro generate a test for a Root macro. # -# That test is trying to load the macro within a root.exe session using +# That test is trying to load the macro within a root.exe session using # ".L macro.C" # # * arg COMPILE: if present we generate, in addition to the baseline "load @@ -95,7 +97,7 @@ function(o2_add_test_root_macro macro) # baseline test is to try and load the macro if (NOT A_COMPILE_ONLY) - o2_add_test_wrapper(COMMAND ${CMAKE_BINARY_DIR}/test-root-macro.sh + o2_add_test_command(COMMAND ${CMAKE_BINARY_DIR}/test-root-macro.sh NAME ${testName} WORKING_DIRECTORY ${CMAKE_BINARY_DIR} ${nonFatal} COMMAND_LINE_ARGS ${macroFileName} 0 "${includePath}" "${libraryPath}" @@ -110,8 +112,7 @@ function(o2_add_test_root_macro macro) # if (and only if) requested, try also to compile the macro if(A_COMPILE OR A_COMPILE_ONLY) - - o2_add_test_wrapper(COMMAND ${CMAKE_BINARY_DIR}/test-root-macro.sh + o2_add_test_command(COMMAND ${CMAKE_BINARY_DIR}/test-root-macro.sh NAME ${testName}_compiled WORKING_DIRECTORY ${CMAKE_BINARY_DIR} ${nonFatal} COMMAND_LINE_ARGS ${macroFileName} 1 "${includePath}" "${libraryPath}" diff --git a/cmake/O2AddTestWrapper.cmake b/cmake/O2AddTestWrapper.cmake deleted file mode 100644 index cfdb8d2cda005..0000000000000 --- a/cmake/O2AddTestWrapper.cmake +++ /dev/null @@ -1,147 +0,0 @@ -# Copyright 2019-2020 CERN and copyright holders of ALICE O2. -# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -# All rights not expressly granted are reserved. -# -# This software is distributed under the terms of the GNU General Public -# License v3 (GPL Version 3), copied verbatim in the file "COPYING". -# -# In applying this license CERN does not waive the privileges and immunities -# granted to it by virtue of its status as an Intergovernmental Organization -# or submit itself to any jurisdiction. - -include_guard() - -# -# o2_add_test_wrapper -# -# Same as o2_add_test() but optionally retry up to MAX_ATTEMPTS times upon -# failure. This is achieved by using a shell script wrapper. -# -# * TARGET or COMMAND (required) is either a target name or the full path to the -# executable to be wrapped -# -# * NAME (optional): the test name. If not present it is derived from the -# target name (if TARGET was used) or from the executable name (if COMMAND was -# given) -# -# * WORKING_DIRECTORY (optional) the wrapper will cd into this directory before -# running the executable -# * DONT_FAIL_ON_TIMEOUT (optional) indicate the test will not fail on timeouts -# * MAX_ATTEMPTS (optional) the maximum number of attempts -# * TIMEOUT (optional) the test timeout (for each attempt) -# * COMMAND_LINE_ARGS (optional) extra arguments to the test executable, if -# needed -# * ENVIRONMENT: extra environment needed by the test to run properly -# -function(o2_add_test_wrapper) - - if(NOT BUILD_TESTING) - return() - endif() - - cmake_parse_arguments( - PARSE_ARGV - 0 - "A" - "DONT_FAIL_ON_TIMEOUT" - "TARGET;COMMAND;WORKING_DIRECTORY;MAX_ATTEMPTS;TIMEOUT;NAME" - "COMMAND_LINE_ARGS;LABELS;CONFIGURATIONS;ENVIRONMENT") - - if(A_UNPARSED_ARGUMENTS) - message( - FATAL_ERROR "Unexpected unparsed arguments: ${A_UNPARSED_ARGUMENTS}") - endif() - - if(A_TARGET AND A_COMMAND) - message(FATAL_ERROR "Should only use one of COMMAND or TARGET") - endif() - - if(NOT A_TARGET AND NOT A_COMMAND) - message(FATAL_ERROR "Must give at least one of COMMAND or TARGET") - endif() - - if(A_TARGET) - if(NOT TARGET ${A_TARGET}) - message(FATAL_ERROR "${A_TARGET} is not a target") - endif() - set(testExe $) - endif() - - if(A_COMMAND) - set(testExe ${A_COMMAND}) - endif() - - if(A_NAME) - set(testName "${A_NAME}") - else() - if(A_COMMAND) - get_filename_component(testName ${testExe} NAME_WE) - else() - set(testName ${A_TARGET}) - endif() - endif() - -# if("${A_MAX_ATTEMPTS}" GREATER 1) -# # Warn only for tests where retry has been requested -# message( -# WARNING "Test ${testName} will be retried max ${A_MAX_ATTEMPTS} times") -# endif() - - if(NOT A_TIMEOUT) - set(A_TIMEOUT 100) # default timeout (seconds) - endif() - if(NOT A_MAX_ATTEMPTS) - set(A_MAX_ATTEMPTS 1) # default number of attempts - endif() - if(A_DONT_FAIL_ON_TIMEOUT) - set(A_DONT_FAIL_ON_TIMEOUT "--dont-fail-on-timeout") - else() - set(A_DONT_FAIL_ON_TIMEOUT "") - endif() - - # For now, we enforce 3 max attempts for all tests. - # No need to ignore time out, since we have 3 attempts - # PH The line below should be removed - no need to force three attempts - set(A_MAX_ATTEMPTS 3) - set(A_DONT_FAIL_ON_TIMEOUT "") - - math(EXPR ctestTimeout "(20 + ${A_TIMEOUT}) * ${A_MAX_ATTEMPTS}") - - if(NOT A_WORKING_DIRECTORY) - if(DEFINED DEFAULT_TEST_OUTPUT_DIRECTORY) - string(REPLACE "${CMAKE_BINARY_DIR}" "" reldir "${CMAKE_CURRENT_BINARY_DIR}") - get_filename_component(wdir ${DEFAULT_TEST_OUTPUT_DIRECTORY}/${reldir} REALPATH) - file(MAKE_DIRECTORY ${wdir}) - message( - STATUS - "test ${testName} will output in ${wdir}" - ) - set(A_WORKING_DIRECTORY ${wdir}) - endif() - endif() - - add_test(NAME "${testName}" - COMMAND "${CMAKE_BINARY_DIR}/tests-wrapper.sh" - "--name" - "${testName}" - "--max-attempts" - "${A_MAX_ATTEMPTS}" - "--timeout" - "${A_TIMEOUT}" - ${A_DONT_FAIA_ON_TIMEOUT} - "--" - ${testExe} - ${A_COMMAND_LINE_ARGS} - WORKING_DIRECTORY "${A_WORKING_DIRECTORY}" - CONFIGURATIONS ${A_CONFIGURATIONS}) - - set_tests_properties(${testName} PROPERTIES TIMEOUT ${ctestTimeout}) - if(A_LABELS) - foreach(A IN LISTS A_LABELS) - set_property(TEST ${testName} APPEND PROPERTY LABELS ${A}) - endforeach() - endif() - if(A_ENVIRONMENT) - set_tests_properties(${testName} PROPERTIES ENVIRONMENT ${A_ENVIRONMENT}) - endif() -endfunction() diff --git a/run/CMakeLists.txt b/run/CMakeLists.txt index 01075a75e3c1d..7d0440a81b5c9 100644 --- a/run/CMakeLists.txt +++ b/run/CMakeLists.txt @@ -27,7 +27,6 @@ target_link_libraries(allsim O2::Field O2::HMPIDSimulation O2::ITSSimulation - O2::MCHBase O2::MCHSimulation O2::MFTSimulation O2::MIDSimulation @@ -95,10 +94,8 @@ message(STATUS "SIMENV = ${SIMENV}") o2_name_target(sim NAME o2simExecutable IS_EXE) o2_name_target(sim-serial NAME o2simSerialExecutable IS_EXE) -o2_add_test_wrapper(NAME o2sim_G4 +o2_add_test_command(NAME o2sim_G4 WORKING_DIRECTORY ${SIMTESTDIR} - DONT_FAIL_ON_TIMEOUT - MAX_ATTEMPTS 2 TIMEOUT 400 COMMAND $ COMMAND_LINE_ARGS -n @@ -119,22 +116,20 @@ set_tests_properties(o2sim_G4 set_property(TEST o2sim_G4 APPEND PROPERTY ENVIRONMENT ${G4ENV}) # # note that the MT is currently only supported in the non FairMQ version -o2_add_test_wrapper(NAME o2sim_G4_mt +o2_add_test_command(NAME o2sim_G4_mt WORKING_DIRECTORY ${SIMTESTDIR} - DONT_FAIL_ON_TIMEOUT - MAX_ATTEMPTS 2 TIMEOUT 400 COMMAND $ COMMAND_LINE_ARGS -n - 1 - -e - TGeant4 - --isMT - on - -o - o2simG4MT - ENVIRONMENT "${SIMENV}" - LABELS "g4;sim;long") + 1 + -e + TGeant4 + --isMT + on + -o + o2simG4MT + ENVIRONMENT "${SIMENV}" + LABELS "g4;sim;long") set_tests_properties(o2sim_G4_mt PROPERTIES PASS_REGULAR_EXPRESSION "Macro finished succesfully") @@ -153,10 +148,8 @@ o2_add_test(CheckStackG4 set_tests_properties(o2sim_checksimkinematics_G4 PROPERTIES FIXTURES_REQUIRED G4) -o2_add_test_wrapper(NAME o2sim_G3 +o2_add_test_command(NAME o2sim_G3 WORKING_DIRECTORY ${SIMTESTDIR} - DONT_FAIL_ON_TIMEOUT - MAX_ATTEMPTS 3 COMMAND $ COMMAND_LINE_ARGS -n 2 @@ -194,22 +187,20 @@ set_tests_properties(o2sim_checksimkinematics_G3 PROPERTIES FIXTURES_REQUIRED G3) -o2_add_test_wrapper(NAME o2sim_hepmc +o2_add_test_command(NAME o2sim_hepmc WORKING_DIRECTORY ${SIMTESTDIR} - DONT_FAIL_ON_TIMEOUT - MAX_ATTEMPTS 2 TIMEOUT 400 COMMAND $ COMMAND_LINE_ARGS -n - 2 - -j - 2 - -g - hepmc - --configKeyValues - "HepMC.fileName=${CMAKE_SOURCE_DIR}/Generators/share/data/pythia.hepmc;HepMC.version=2" + 2 + -j + 2 + -g + hepmc + --configKeyValues +"HepMC.fileName=${CMAKE_SOURCE_DIR}/Generators/share/data/pythia.hepmc;HepMC.version=2" -o - o2simhepmc + o2simhepmc LABELS long sim hepmc3 ENVIRONMENT "${SIMENV}") @@ -218,9 +209,8 @@ set_tests_properties(o2sim_hepmc "SIMULATION RETURNED SUCCESFULLY") # somewhat analyse the logfiles as another means to detect problems -o2_add_test_wrapper(NAME o2sim_G3_checklogs +o2_add_test_command(NAME o2sim_G3_checklogs WORKING_DIRECTORY ${SIMTESTDIR} - DONT_FAIL_ON_TIMEOUT COMMAND ${CMAKE_SOURCE_DIR}/run/simlogcheck.sh COMMAND_LINE_ARGS o2simG3_serverlog o2simG3_mergerlog o2simG3_workerlog0 LABELS long sim hepmc3) @@ -229,12 +219,11 @@ set_tests_properties(o2sim_G3_checklogs PROPERTIES FIXTURES_REQUIRED G3) # somewhat analyse the logfiles as another means to detect problems -o2_add_test_wrapper(NAME o2sim_G4_checklogs +o2_add_test_command(NAME o2sim_G4_checklogs WORKING_DIRECTORY ${SIMTESTDIR} - DONT_FAIL_ON_TIMEOUT COMMAND ${CMAKE_SOURCE_DIR}/run/simlogcheck.sh COMMAND_LINE_ARGS o2simG4_serverlog o2simG4_mergerlog o2simG4_workerlog0 - LABELS long sim + LABELS long sim ) set_tests_properties(o2sim_G3_checklogs diff --git a/tests/O2SetupTesting.cmake b/tests/O2SetupTesting.cmake index ed3944616f9fe..c1d548e297433 100644 --- a/tests/O2SetupTesting.cmake +++ b/tests/O2SetupTesting.cmake @@ -24,9 +24,6 @@ function(o2_setup_testing) configure_file(test-root-macro.sh.in ${CMAKE_BINARY_DIR}/test-root-macro.sh @ONLY) - # Create tests wrapper (and make it executable) - configure_file(tests-wrapper.sh.in ${CMAKE_BINARY_DIR}/tests-wrapper.sh @ONLY) - # Create test for executable naming convention configure_file(ensure-executable-naming-convention.sh.in ${CMAKE_BINARY_DIR}/ensure-executable-naming-convention.sh diff --git a/tests/tests-wrapper.sh.in b/tests/tests-wrapper.sh.in deleted file mode 100755 index a76cab297898b..0000000000000 --- a/tests/tests-wrapper.sh.in +++ /dev/null @@ -1,122 +0,0 @@ -#!/bin/bash -e - -# tests-wrapper.sh -- wrap execution of CTest scripts by adding retry -# -# Usage (through CMake): -# -# tests-wrapper.sh --name [--max-attempts N] [--timeout T] \ -# --dont-fail-on-timeout] -- prog [arg1 [arg2...]] - -MAX_ATTEMPTS=1 -TIMEOUT= # default: no timeout -DONT_FAIL_ON_TIMEOUT= # default: if it times out, it fails -ARGS=("$@") - -while [[ $# -gt 0 ]]; do - case "$1" in - --) - shift - break - ;; - --name) - TEST_NAME="$2" - shift 2 - ;; - --max-attempts) - MAX_ATTEMPTS="$2" - shift 2 - ;; - --timeout) - TIMEOUT="$2" - shift 2 - ;; - --dont-fail-on-timeout) - DONT_FAIL_ON_TIMEOUT=1 - shift - ;; - *) - echo "Parameter unknown: $1" >&2 - exit 1 - ;; - esac -done - -# Check mandatory parmeters -if [[ ! $TEST_NAME ]]; then - echo "Test name is mandatory" >&2 - exit 1 -fi - -LOG="@CMAKE_BINARY_DIR@/test_logs/${TEST_NAME//\//_}.log" -mkdir -p "$(dirname "$LOG")" -rm -f "$LOG"* &>/dev/null -# exec >(tee ...) creates zombies. -touch "$LOG" -#exec &> >(tee "$LOG") - -function banner() { - echo "=== $TEST_NAME - $1 ===" >&2 -} - -banner "Starting test. Max attempts: $MAX_ATTEMPTS.${TIMEOUT:+" Timeout per attempt: $TIMEOUT."}${DONT_FAIL_ON_TIMEOUT:+" Timeouts are not fatal."}" - -for A in "${ARGS[@]}"; do - banner "Argument: $A" -done -banner "Current working directory: $PWD" -echo "PATH=$PATH" -echo "ROOT_INCLUDE_PATH=$ROOT_INCLUDE_PATH" -echo "LD_LIBRARY_PATH=$LD_LIBRARY_PATH" -banner "/Environment" - -# Do we have timeout? -TIMEOUT_EXEC=timeout -TIMEOUT_CMD= -type $TIMEOUT_EXEC &>/dev/null || TIMEOUT_EXEC=gtimeout -type $TIMEOUT_EXEC &>/dev/null || TIMEOUT_EXEC= -if [[ $TIMEOUT_EXEC && $TIMEOUT ]]; then - # Kill with 15; if after 10 seconds it's still alive, send 9 - TIMEOUT_CMD="$TIMEOUT_EXEC --signal=SIGABRT --kill-after=10s ${TIMEOUT}s" - # Get a stack trace, if possible, shortly before sending the first SIGTERM -fi - -banner "Timeout prefix: $TIMEOUT_CMD" - -CMD="$1" -shift -type "$CMD" &>/dev/null || CMD="@CMAKE_BINARY_DIR@/bin/$CMD" - -for ATTEMPT in `seq 1 $MAX_ATTEMPTS`; do - DARGS=("$@") - # Deduping args that contain a ":" - N=${#DARGS[@]} - i=1 - while [[ $i -lt $N ]]; do - A=${DARGS[$i]} - if [[ $A =~ : ]]; then - DARGS[$i]=$(echo $A | tr ":" "\n" | sort | uniq | tr "\n" ":") - fi - i=$(($i + 1)) - done - - banner "Running $CMD with args ${DARGS[*]} (attempt $ATTEMPT/$MAX_ATTEMPTS)" - ERR=0 - SEGFAULT_SIGNALS=all LD_PRELOAD=libSegFault.so $TIMEOUT_CMD "$CMD" "${DARGS[@]}" || ERR=$? - if [[ $ERR == 0 ]]; then - banner "Test finished with success after $ATTEMPT attempts, exiting" - mv "$LOG" "${LOG}.0" - exit 0 - else - banner "Test attempt $ATTEMPT/$MAX_ATTEMPTS failed with exit code $ERR" - fi -done - -mv "$LOG" "${LOG}.${ERR}" # log file will contain exitcode in name -banner "Test failed after $MAX_ATTEMPTS attempts with $ERR" -if [[ $DONT_FAIL_ON_TIMEOUT && $ERR == 124 ]]; then - # man timeout --> 124 is for "timed out" - banner "Reason for failure: timeout, explicitly set as not fatal. Exiting with 0" - cp "${LOG}.${ERR}" "${LOG}.${ERR}.nonfatal" - exit 0 -fi -exit 1 From 4c52d2d3246b81a3650559f702598ec527481eae Mon Sep 17 00:00:00 2001 From: Matteo Concas Date: Wed, 14 Jul 2021 10:40:22 +0200 Subject: [PATCH 161/314] [GPU/Full System Test] GPU standalone benchmarking (#6484) * Add CUDA backbone * HIP breaks * Make two separate libraries * Re-arrange directories * Add missing header * Meta library does not compile * Port hipInfo example to test gpu specs * Fix compilation to test build on EPN * Produce two separate executables * Flatten dir tree a bit * Cleanup * Add CMake forced re-configuration * HIP can't find symbols * Checkpoint before radical change * Create single executable * Update * Add first dummy benchmark * Assign a block to each scratch segment * Fix copyright * Please consider the following formatting changes (#16) * Set configurable iterations * Improve busy fucntion + streaming results on file * Fix bug in CLI params * Add configurable number of tests * Fix undefined behaviour insetting nLaunches * Please consider the following formatting changes (#17) * Streamline ker benchmarking w/ events * Tidy up kernels and improve output * Update read test * Please consider the following formatting changes (#18) * CP * Add last read test * Add last read test * Fix result dump on file * add reading kernel * Add write tests * Add copy benchmark * Remove CommonUtils dependency * Remove GPUCommon dependency * Fix fullCI errors * Revise result saving * Ready to test on EPN Co-authored-by: ALICE Builder --- GPU/CMakeLists.txt | 1 + GPU/GPUbenchmark/CMakeLists.txt | 58 ++ GPU/GPUbenchmark/Shared/Kernels.h | 86 +++ GPU/GPUbenchmark/Shared/Utils.h | 180 +++++++ GPU/GPUbenchmark/benchmark.cxx | 78 +++ GPU/GPUbenchmark/cuda/Kernels.cu | 845 ++++++++++++++++++++++++++++++ GPU/GPUbenchmark/hip/.gitignore | 1 + 7 files changed, 1249 insertions(+) create mode 100644 GPU/GPUbenchmark/CMakeLists.txt create mode 100644 GPU/GPUbenchmark/Shared/Kernels.h create mode 100644 GPU/GPUbenchmark/Shared/Utils.h create mode 100644 GPU/GPUbenchmark/benchmark.cxx create mode 100644 GPU/GPUbenchmark/cuda/Kernels.cu create mode 100644 GPU/GPUbenchmark/hip/.gitignore diff --git a/GPU/CMakeLists.txt b/GPU/CMakeLists.txt index f8f1931f35547..7019f951b25fb 100644 --- a/GPU/CMakeLists.txt +++ b/GPU/CMakeLists.txt @@ -22,6 +22,7 @@ add_subdirectory(Common) add_subdirectory(Utils) add_subdirectory(TPCFastTransformation) add_subdirectory(GPUTracking) +add_subdirectory(GPUbenchmark) if(ALIGPU_BUILD_TYPE STREQUAL "O2") add_subdirectory(Workflow) endif() diff --git a/GPU/GPUbenchmark/CMakeLists.txt b/GPU/GPUbenchmark/CMakeLists.txt new file mode 100644 index 0000000000000..e008ab4cc0f41 --- /dev/null +++ b/GPU/GPUbenchmark/CMakeLists.txt @@ -0,0 +1,58 @@ +# Copyright 2019-2020 CERN and copyright holders of ALICE O2. +# See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +# All rights not expressly granted are reserved. +# +# This software is distributed under the terms of the GNU General Public +# License v3 (GPL Version 3), copied verbatim in the file "COPYING". +# +# In applying this license CERN does not waive the privileges and immunities +# granted to it by virtue of its status as an Intergovernmental Organization +# or submit itself to any jurisdiction. + +set(HDRS_INSTALL ../Shared/Kernels.h) + +if(CUDA_ENABLED) + # add_subdirectory(cuda) + o2_add_executable(gpu-memory-benchmark-cuda + SOURCES benchmark.cxx + cuda/Kernels.cu + PUBLIC_LINK_LIBRARIES Boost::program_options + ROOT::Tree + TARGETVARNAME targetName) +endif() + +if(HIP_ENABLED) + # Hipify-perl + set(HIPIFY_EXECUTABLE "/opt/rocm/bin/hipify-perl") + + set(HIP_KERNEL "Kernels.hip.cxx") + set(CU_KERNEL ${CMAKE_CURRENT_SOURCE_DIR}/cuda/Kernels.cu) + set(HIP_KERNEL_PATH "${CMAKE_CURRENT_SOURCE_DIR}/hip/${HIP_KERNEL}") + + if(EXISTS ${HIPIFY_EXECUTABLE}) + set_property(DIRECTORY APPEND PROPERTY CMAKE_CONFIGURE_DEPENDS ${CU_KERNEL}) + message("Generating HIP kernel code ...") + execute_process(COMMAND /bin/sh -c "${HIPIFY_EXECUTABLE} --quiet-warnings ${CU_KERNEL} | sed '1{/\\#include \"hip\\/hip_runtime.h\"/d}' > ${HIP_KERNEL_PATH}") + elseif() + message(STATUS "Could not generate ${HIP_KERNEL} HIP kernel, skipping...") + endif() + + set(CMAKE_CXX_COMPILER ${HIP_HIPCC_EXECUTABLE}) + set(CMAKE_CXX_LINKER ${HIP_HIPCC_EXECUTABLE}) + + set(CMAKE_CXX_EXTENSIONS OFF) + set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${O2_HIP_CMAKE_CXX_FLAGS} -fgpu-rdc") + + o2_add_executable(gpu-memory-benchmark-hip + SOURCES benchmark.cxx + hip/Kernels.hip.cxx + PUBLIC_LINK_LIBRARIES hip::host + Boost::program_options + ROOT::Tree + TARGETVARNAME targetName) + + if(HIP_AMDGPUTARGET) + # Need to add gpu target also to link flags due to gpu-rdc option + target_link_options(${targetName} PUBLIC --amdgpu-target=${HIP_AMDGPUTARGET}) + endif() +endif() \ No newline at end of file diff --git a/GPU/GPUbenchmark/Shared/Kernels.h b/GPU/GPUbenchmark/Shared/Kernels.h new file mode 100644 index 0000000000000..a4e7f71440347 --- /dev/null +++ b/GPU/GPUbenchmark/Shared/Kernels.h @@ -0,0 +1,86 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. +/// +/// \file Kernels.h +/// \author: mconcas@cern.ch + +#ifndef GPU_BENCHMARK_KERNELS_H +#define GPU_BENCHMARK_KERNELS_H + +#include "Utils.h" +#include +#include +#include +#include +#include + +namespace o2 +{ +namespace benchmark +{ + +template +class GPUbenchmark final +{ + public: + GPUbenchmark() = delete; // need for a configuration + GPUbenchmark(benchmarkOpts& opts, std::shared_ptr rWriter) : mResultWriter{rWriter}, mOptions{opts} + { + } + virtual ~GPUbenchmark() = default; + template + float measure(void (GPUbenchmark::*)(T...), const char*, T&&... args); + + // Single stream synchronous (sequential kernels) execution + template + float benchmarkSync(void (*kernel)(T...), + int nLaunches, int blocks, int threads, T&... args); + + // Multi-streams asynchronous executions on whole memory + template + std::vector benchmarkAsync(void (*kernel)(int, T...), + int nStreams, int nLaunches, int blocks, int threads, T&... args); + + // Main interface + void globalInit(const int deviceId); // Allocate scratch buffers and compute runtime parameters + void run(); // Execute all specified callbacks + void globalFinalize(); // Cleanup + void printDevices(); // Dump info + + // Initializations/Finalizations of tests. Not to be measured, in principle used for report + void readInit(); + void readFinalize(); + + void writeInit(); + void writeFinalize(); + + void copyInit(); + void copyFinalize(); + + // Kernel calling wrappers + void readSequential(SplitLevel sl); + void readConcurrent(SplitLevel sl, int nRegions = 2); + + void writeSequential(SplitLevel sl); + void writeConcurrent(SplitLevel sl, int nRegions = 2); + + void copySequential(SplitLevel sl); + void copyConcurrent(SplitLevel sl, int nRegions = 2); + + private: + gpuState mState; + std::shared_ptr mResultWriter; + benchmarkOpts mOptions; +}; + +} // namespace benchmark +} // namespace o2 +#endif \ No newline at end of file diff --git a/GPU/GPUbenchmark/Shared/Utils.h b/GPU/GPUbenchmark/Shared/Utils.h new file mode 100644 index 0000000000000..6d3400aa9a6ec --- /dev/null +++ b/GPU/GPUbenchmark/Shared/Utils.h @@ -0,0 +1,180 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. +/// +/// \file Common.h +/// \author: mconcas@cern.ch + +#ifndef GPU_BENCHMARK_UTILS_H +#define GPU_BENCHMARK_UTILS_H + +#include +#include +#include +#include +#include +#include +#include + +#define KNRM "\x1B[0m" +#define KRED "\x1B[31m" +#define KGRN "\x1B[32m" +#define KYEL "\x1B[33m" +#define KBLU "\x1B[34m" +#define KMAG "\x1B[35m" +#define KCYN "\x1B[36m" +#define KWHT "\x1B[37m" + +#define GB (1024 * 1024 * 1024) + +namespace o2 +{ +namespace benchmark +{ + +enum class SplitLevel { + Blocks, + Threads +}; + +struct benchmarkOpts { + benchmarkOpts() = default; + + float chunkReservedGB = 1.f; + int nRegions = 2; + float freeMemoryFractionToAllocate = 0.95f; + int kernelLaunches = 1; + int nTests = 1; +}; + +template +struct gpuState { + int getMaxChunks() + { + return (double)scratchSize / (chunkReservedGB * GB); + } + + void computeScratchPtrs() + { + partAddrOnHost.resize(getMaxChunks()); + for (size_t iBuffAddress{0}; iBuffAddress < getMaxChunks(); ++iBuffAddress) { + partAddrOnHost[iBuffAddress] = reinterpret_cast(reinterpret_cast(scratchPtr) + static_cast(GB * chunkReservedGB) * iBuffAddress); + } + } + + size_t getPartitionCapacity() + { + return static_cast(GB * chunkReservedGB / sizeof(T)); + } + + std::vector getScratchPtrs() + { + return partAddrOnHost; + } + + std::vector>& getHostBuffers() + { + return gpuBuffersHost; + } + + int getNKernelLaunches() { return iterations; } + + // Configuration + size_t nMaxThreadsPerDimension; + int iterations; + + float chunkReservedGB; // Size of each partition (GB) + + // General containers and state + T* scratchPtr; // Pointer to scratch buffer + size_t scratchSize; // Size of scratch area (B) + std::vector partAddrOnHost; // Pointers to scratch partitions on host vector + std::vector> gpuBuffersHost; // Host-based vector-ized data + T* deviceReadResultsPtr; // Results of the read test (single variable) on GPU + std::vector hostReadResultsVector; // Results of the read test (single variable) on host + T* deviceWriteResultsPtr; // Results of the write test (single variable) on GPU + std::vector hostWriteResultsVector; // Results of the write test (single variable) on host + T* deviceCopyInputsPtr; // Inputs of the copy test (single variable) on GPU + std::vector hostCopyInputsVector; // Inputs of the copy test (single variable) on host + + // Static info + size_t totalMemory; + size_t nMultiprocessors; + size_t nMaxThreadsPerBlock; +}; + +// Interface class to stream results to root file +class ResultWriter +{ + public: + explicit ResultWriter(const std::string resultsTreeFilename = "benchmark_results.root"); + ~ResultWriter() = default; + void storeBenchmarkEntry(int chunk, float entry); + void storeEntryForRegion(std::string benchmarkName, std::string region, std::string type, float entry); + void addBenchmarkEntry(const std::string bName, const std::string type, const int nChunks); + void snapshotBenchmark(); + void saveToFile(); + + private: + std::vector mBenchmarkResults; + std::vector mBenchmarkTrees; + TFile* mOutfile; +}; + +inline ResultWriter::ResultWriter(const std::string resultsTreeFilename) +{ + mOutfile = TFile::Open(resultsTreeFilename.data(), "recreate"); +} + +inline void ResultWriter::addBenchmarkEntry(const std::string bName, const std::string type, const int nChunks) +{ + mBenchmarkTrees.emplace_back(new TTree((bName + "_" + type).data(), (bName + "_" + type).data())); + mBenchmarkResults.clear(); + mBenchmarkResults.resize(nChunks); + mBenchmarkTrees.back()->Branch("elapsed", &mBenchmarkResults); +} + +inline void ResultWriter::storeBenchmarkEntry(int chunk, float entry) +{ + mBenchmarkResults[chunk] = entry; +} + +inline void ResultWriter::snapshotBenchmark() +{ + mBenchmarkTrees.back()->Fill(); +} + +inline void ResultWriter::saveToFile() +{ + mOutfile->cd(); + for (auto t : mBenchmarkTrees) { + t->Write(); + } + mOutfile->Close(); +} + +inline void ResultWriter::storeEntryForRegion(std::string benchmarkName, std::string region, std::string type, float entry) +{ + // (*mTree) + // << (benchmarkName + "_" + type + "_region_" + region).data() + // << "elapsed=" << entry + // << "\n"; +} + +} // namespace benchmark +} // namespace o2 + +#define failed(...) \ + printf("%serror: ", KRED); \ + printf(__VA_ARGS__); \ + printf("\n"); \ + printf("error: TEST FAILED\n%s", KNRM); \ + exit(EXIT_FAILURE); +#endif \ No newline at end of file diff --git a/GPU/GPUbenchmark/benchmark.cxx b/GPU/GPUbenchmark/benchmark.cxx new file mode 100644 index 0000000000000..7ee638594f9e3 --- /dev/null +++ b/GPU/GPUbenchmark/benchmark.cxx @@ -0,0 +1,78 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. +/// +/// \file benchmark.cxx +/// \author mconcas@cern.ch +/// \brief configuration widely inspired/copied by SimConfig +#include "Shared/Kernels.h" + +bool parseArgs(o2::benchmark::benchmarkOpts& conf, int argc, const char* argv[]) +{ + namespace bpo = boost::program_options; + bpo::variables_map vm; + bpo::options_description options("Benchmark options"); + options.add_options()( + "help,h", "Print help message.")( + "chunkSize,c", bpo::value()->default_value(1.f), "Size of scratch partitions (GB).")( + "regions,r", bpo::value()->default_value(2), "Number of memory regions to partition RAM in.")( + "freeMemFraction,f", bpo::value()->default_value(0.95f), "Fraction of free memory to be allocated (min: 0.f, max: 1.f).")( + "launches,l", bpo::value()->default_value(10), "Number of iterations in reading kernels.")( + "ntests,n", bpo::value()->default_value(1), "Number of times each test is run."); + try { + bpo::store(parse_command_line(argc, argv, options), vm); + if (vm.count("help")) { + std::cout << options << std::endl; + return false; + } + + bpo::notify(vm); + } catch (const bpo::error& e) { + std::cerr << e.what() << "\n\n"; + std::cerr << "Error parsing command line arguments. Available options:\n"; + + std::cerr << options << std::endl; + return false; + } + + conf.freeMemoryFractionToAllocate = vm["freeMemFraction"].as(); + conf.chunkReservedGB = vm["chunkSize"].as(); + conf.nRegions = vm["regions"].as(); + conf.kernelLaunches = vm["launches"].as(); + conf.nTests = vm["ntests"].as(); + + return true; +} + +using o2::benchmark::ResultWriter; + +int main(int argc, const char* argv[]) +{ + + o2::benchmark::benchmarkOpts opts; + + if (!parseArgs(opts, argc, argv)) { + return -1; + } + + std::shared_ptr writer = std::make_shared(); + + o2::benchmark::GPUbenchmark bm_char{opts, writer}; + bm_char.run(); + o2::benchmark::GPUbenchmark bm_int{opts, writer}; + bm_int.run(); + o2::benchmark::GPUbenchmark bm_size_t{opts, writer}; + bm_size_t.run(); + + // save results + writer.get()->saveToFile(); + + return 0; +} diff --git a/GPU/GPUbenchmark/cuda/Kernels.cu b/GPU/GPUbenchmark/cuda/Kernels.cu new file mode 100644 index 0000000000000..8af91423c12e5 --- /dev/null +++ b/GPU/GPUbenchmark/cuda/Kernels.cu @@ -0,0 +1,845 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. +/// +/// \file Kernels.{cu, hip.cxx} +/// \author: mconcas@cern.ch + +#include "../Shared/Kernels.h" +#if defined(__HIPCC__) +#include "hip/hip_runtime.h" +#endif +#include + +// Memory partitioning legend +// +// |----------------------region 0-----------------|----------------------region 1-----------------| regions -> deafult: 2, to test lower and upper RAM +// |--chunk 0--|--chunk 1--|--chunk 2--| *** |--chunk n--| chunks -> default size: 1GB (sing block pins) +// |__________________________________________scratch______________________________________________| scratch -> default size: 95% free GPU RAM + +#define GPUCHECK(error) \ + if (error != cudaSuccess) { \ + printf("%serror: '%s'(%d) at %s:%d%s\n", KRED, cudaGetErrorString(error), error, __FILE__, \ + __LINE__, KNRM); \ + failed("API returned error code."); \ + } + +double bytesToKB(size_t s) { return (double)s / (1024.0); } +double bytesToGB(size_t s) { return (double)s / GB; } + +int getCorrespondingRegionId(int Id, int nChunks, int nRegions = 1) +{ + return Id * nRegions / nChunks; +} + +template +std::string getType() +{ + if (typeid(T).name() == typeid(char).name()) { + return std::string{"char"}; + } + if (typeid(T).name() == typeid(size_t).name()) { + return std::string{"unsigned_long"}; + } + if (typeid(T).name() == typeid(int).name()) { + return std::string{"int"}; + } + if (typeid(T).name() == typeid(int4).name()) { + return std::string{"int4"}; + } + return std::string{"unknown"}; +} + +namespace o2 +{ +namespace benchmark +{ +namespace gpu +{ + +/////////////////////////// +// Device functions go here +template +__host__ __device__ inline chunk_type* getPartPtrOnScratch(chunk_type* scratchPtr, float chunkReservedGB, size_t partNumber) +{ + return reinterpret_cast(reinterpret_cast(scratchPtr) + static_cast(GB * chunkReservedGB) * partNumber); +} + +////////////////// +// Kernels go here +// Reading +template +__global__ void readChunkSBKernel( + int chunkId, + chunk_type* results, + chunk_type* scratch, + size_t chunkSize, + float chunkReservedGB = 1.f) +{ + if (chunkId == blockIdx.x) { // runs only if blockIdx.x is allowed in given split + chunk_type sink{0}; + chunk_type* ptr = getPartPtrOnScratch(scratch, chunkReservedGB, chunkId); + for (size_t i = threadIdx.x; i < chunkSize; i += blockDim.x) { + sink += ptr[i]; + } + if (sink == static_cast(1)) { + results[chunkId] = sink; + } + } +} + +template +__global__ void readChunkMBKernel( + int chunkId, + chunk_type* results, + chunk_type* scratch, + size_t chunkSize, + float chunkReservedGB = 1.f) +{ + for (int i = blockIdx.x * blockDim.x + threadIdx.x; i < chunkSize; i += blockDim.x * gridDim.x) { + if (getPartPtrOnScratch(scratch, chunkReservedGB, chunkId)[i] == static_cast(1)) { // actual read operation is performed here + results[chunkId] += getPartPtrOnScratch(scratch, chunkReservedGB, chunkId)[i]; // this case should never happen and waves should be always in sync + } + } +} + +// Writing +template +__global__ void writeChunkSBKernel( + int chunkId, + chunk_type* results, + chunk_type* scratch, + size_t chunkSize, + float chunkReservedGB = 1.f) +{ + if (chunkId == blockIdx.x) { // runs only if blockIdx.x is allowed in given split + for (size_t i = threadIdx.x; i < chunkSize; i += blockDim.x) { + getPartPtrOnScratch(scratch, chunkReservedGB, chunkId)[i] = 1; + } + } +} + +template +__global__ void writeChunkMBKernel( + int chunkId, + chunk_type* results, + chunk_type* scratch, + size_t chunkSize, + float chunkReservedGB = 1.f) +{ + for (int i = blockIdx.x * blockDim.x + threadIdx.x; i < chunkSize; i += blockDim.x * gridDim.x) { + getPartPtrOnScratch(scratch, chunkReservedGB, chunkId)[i] = 1; + } +} + +// Copying +template +__global__ void copyChunkSBKernel( + int chunkId, + chunk_type* inputs, + chunk_type* scratch, + size_t chunkSize, + float chunkReservedGB = 1.f) +{ + if (chunkId == blockIdx.x) { // runs only if blockIdx.x is allowed in given split + for (size_t i = threadIdx.x; i < chunkSize; i += blockDim.x) { + getPartPtrOnScratch(scratch, chunkReservedGB, chunkId)[i] = inputs[chunkId]; + } + } +} + +template +__global__ void copyChunkMBKernel( + int chunkId, + chunk_type* inputs, + chunk_type* scratch, + size_t chunkSize, + float chunkReservedGB = 1.f) +{ + for (int i = blockIdx.x * blockDim.x + threadIdx.x; i < chunkSize; i += blockDim.x * gridDim.x) { + getPartPtrOnScratch(scratch, chunkReservedGB, chunkId)[i] = inputs[chunkId]; + } +} + +} // namespace gpu + +void printDeviceProp(int deviceId) +{ + const int w1 = 34; + std::cout << std::left; + std::cout << std::setw(w1) + << "--------------------------------------------------------------------------------" + << std::endl; + std::cout << std::setw(w1) << "device#" << deviceId << std::endl; + + cudaDeviceProp props; + GPUCHECK(cudaGetDeviceProperties(&props, deviceId)); + + std::cout << std::setw(w1) << "Name: " << props.name << std::endl; + std::cout << std::setw(w1) << "pciBusID: " << props.pciBusID << std::endl; + std::cout << std::setw(w1) << "pciDeviceID: " << props.pciDeviceID << std::endl; + std::cout << std::setw(w1) << "pciDomainID: " << props.pciDomainID << std::endl; + std::cout << std::setw(w1) << "multiProcessorCount: " << props.multiProcessorCount << std::endl; + std::cout << std::setw(w1) << "maxThreadsPerMultiProcessor: " << props.maxThreadsPerMultiProcessor + << std::endl; + std::cout << std::setw(w1) << "isMultiGpuBoard: " << props.isMultiGpuBoard << std::endl; + std::cout << std::setw(w1) << "clockRate: " << (float)props.clockRate / 1000.0 << " Mhz" << std::endl; + std::cout << std::setw(w1) << "memoryClockRate: " << (float)props.memoryClockRate / 1000.0 << " Mhz" + << std::endl; + std::cout << std::setw(w1) << "memoryBusWidth: " << props.memoryBusWidth << std::endl; + std::cout << std::setw(w1) << "clockInstructionRate: " << (float)props.clockRate / 1000.0 + << " Mhz" << std::endl; + std::cout << std::setw(w1) << "totalGlobalMem: " << std::fixed << std::setprecision(2) + << bytesToGB(props.totalGlobalMem) << " GB" << std::endl; +#if !defined(__CUDACC__) + std::cout << std::setw(w1) << "maxSharedMemoryPerMultiProcessor: " << std::fixed << std::setprecision(2) + << bytesToKB(props.sharedMemPerMultiprocessor) << " KB" << std::endl; +#endif +#if defined(__HIPCC__) + std::cout << std::setw(w1) << "maxSharedMemoryPerMultiProcessor: " << std::fixed << std::setprecision(2) + << bytesToKB(props.maxSharedMemoryPerMultiProcessor) << " KB" << std::endl; +#endif + std::cout << std::setw(w1) << "totalConstMem: " << props.totalConstMem << std::endl; + std::cout << std::setw(w1) << "sharedMemPerBlock: " << (float)props.sharedMemPerBlock / 1024.0 << " KB" + << std::endl; + std::cout << std::setw(w1) << "canMapHostMemory: " << props.canMapHostMemory << std::endl; + std::cout << std::setw(w1) << "regsPerBlock: " << props.regsPerBlock << std::endl; + std::cout << std::setw(w1) << "warpSize: " << props.warpSize << std::endl; + std::cout << std::setw(w1) << "l2CacheSize: " << props.l2CacheSize << std::endl; + std::cout << std::setw(w1) << "computeMode: " << props.computeMode << std::endl; + std::cout << std::setw(w1) << "maxThreadsPerBlock: " << props.maxThreadsPerBlock << std::endl; + std::cout << std::setw(w1) << "maxThreadsDim.x: " << props.maxThreadsDim[0] << std::endl; + std::cout << std::setw(w1) << "maxThreadsDim.y: " << props.maxThreadsDim[1] << std::endl; + std::cout << std::setw(w1) << "maxThreadsDim.z: " << props.maxThreadsDim[2] << std::endl; + std::cout << std::setw(w1) << "maxGridSize.x: " << props.maxGridSize[0] << std::endl; + std::cout << std::setw(w1) << "maxGridSize.y: " << props.maxGridSize[1] << std::endl; + std::cout << std::setw(w1) << "maxGridSize.z: " << props.maxGridSize[2] << std::endl; + std::cout << std::setw(w1) << "major: " << props.major << std::endl; + std::cout << std::setw(w1) << "minor: " << props.minor << std::endl; + std::cout << std::setw(w1) << "concurrentKernels: " << props.concurrentKernels << std::endl; + std::cout << std::setw(w1) << "cooperativeLaunch: " << props.cooperativeLaunch << std::endl; + std::cout << std::setw(w1) << "cooperativeMultiDeviceLaunch: " << props.cooperativeMultiDeviceLaunch << std::endl; +#if defined(__HIPCC__) + std::cout << std::setw(w1) << "arch.hasGlobalInt32Atomics: " << props.arch.hasGlobalInt32Atomics << std::endl; + std::cout << std::setw(w1) << "arch.hasGlobalFloatAtomicExch: " << props.arch.hasGlobalFloatAtomicExch + << std::endl; + std::cout << std::setw(w1) << "arch.hasSharedInt32Atomics: " << props.arch.hasSharedInt32Atomics << std::endl; + std::cout << std::setw(w1) << "arch.hasSharedFloatAtomicExch: " << props.arch.hasSharedFloatAtomicExch + << std::endl; + std::cout << std::setw(w1) << "arch.hasFloatAtomicAdd: " << props.arch.hasFloatAtomicAdd << std::endl; + std::cout << std::setw(w1) << "arch.hasGlobalInt64Atomics: " << props.arch.hasGlobalInt64Atomics << std::endl; + std::cout << std::setw(w1) << "arch.hasSharedInt64Atomics: " << props.arch.hasSharedInt64Atomics << std::endl; + std::cout << std::setw(w1) << "arch.hasDoubles: " << props.arch.hasDoubles << std::endl; + std::cout << std::setw(w1) << "arch.hasWarpVote: " << props.arch.hasWarpVote << std::endl; + std::cout << std::setw(w1) << "arch.hasWarpBallot: " << props.arch.hasWarpBallot << std::endl; + std::cout << std::setw(w1) << "arch.hasWarpShuffle: " << props.arch.hasWarpShuffle << std::endl; + std::cout << std::setw(w1) << "arch.hasFunnelShift: " << props.arch.hasFunnelShift << std::endl; + std::cout << std::setw(w1) << "arch.hasThreadFenceSystem: " << props.arch.hasThreadFenceSystem << std::endl; + std::cout << std::setw(w1) << "arch.hasSyncThreadsExt: " << props.arch.hasSyncThreadsExt << std::endl; + std::cout << std::setw(w1) << "arch.hasSurfaceFuncs: " << props.arch.hasSurfaceFuncs << std::endl; + std::cout << std::setw(w1) << "arch.has3dGrid: " << props.arch.has3dGrid << std::endl; + std::cout << std::setw(w1) << "arch.hasDynamicParallelism: " << props.arch.hasDynamicParallelism << std::endl; + std::cout << std::setw(w1) << "gcnArchName: " << props.gcnArchName << std::endl; +#endif + std::cout << std::setw(w1) << "isIntegrated: " << props.integrated << std::endl; + std::cout << std::setw(w1) << "maxTexture1D: " << props.maxTexture1D << std::endl; + std::cout << std::setw(w1) << "maxTexture2D.width: " << props.maxTexture2D[0] << std::endl; + std::cout << std::setw(w1) << "maxTexture2D.height: " << props.maxTexture2D[1] << std::endl; + std::cout << std::setw(w1) << "maxTexture3D.width: " << props.maxTexture3D[0] << std::endl; + std::cout << std::setw(w1) << "maxTexture3D.height: " << props.maxTexture3D[1] << std::endl; + std::cout << std::setw(w1) << "maxTexture3D.depth: " << props.maxTexture3D[2] << std::endl; +#if defined(__HIPCC__) + std::cout << std::setw(w1) << "isLargeBar: " << props.isLargeBar << std::endl; + std::cout << std::setw(w1) << "asicRevision: " << props.asicRevision << std::endl; +#endif + + int deviceCnt; + GPUCHECK(cudaGetDeviceCount(&deviceCnt)); + std::cout << std::setw(w1) << "peers: "; + for (int i = 0; i < deviceCnt; i++) { + int isPeer; + GPUCHECK(cudaDeviceCanAccessPeer(&isPeer, i, deviceId)); + if (isPeer) { + std::cout << "device#" << i << " "; + } + } + std::cout << std::endl; + std::cout << std::setw(w1) << "non-peers: "; + for (int i = 0; i < deviceCnt; i++) { + int isPeer; + GPUCHECK(cudaDeviceCanAccessPeer(&isPeer, i, deviceId)); + if (!isPeer) { + std::cout << "device#" << i << " "; + } + } + std::cout << std::endl; + + size_t free, total; + GPUCHECK(cudaMemGetInfo(&free, &total)); + + std::cout << std::fixed << std::setprecision(2); + std::cout << std::setw(w1) << "memInfo.total: " << bytesToGB(total) << " GB" << std::endl; + std::cout << std::setw(w1) << "memInfo.free: " << bytesToGB(free) << " GB (" << std::setprecision(0) + << (float)free / total * 100.0 << "%)" << std::endl; +} + +template +template +float GPUbenchmark::benchmarkSync(void (*kernel)(T...), + int nLaunches, int blocks, int threads, T&... args) // run for each chunk (id is passed in variadic args) +{ + cudaEvent_t start, stop; + GPUCHECK(cudaEventCreate(&start)); + GPUCHECK(cudaEventCreate(&stop)); + + GPUCHECK(cudaEventRecord(start)); + for (auto iLaunch{0}; iLaunch < nLaunches; ++iLaunch) { // Schedule all the requested kernel launches + (*kernel)<<>>(args...); + } + GPUCHECK(cudaEventRecord(stop)); // record checkpoint + + GPUCHECK(cudaEventSynchronize(stop)); // synchronize executions + float milliseconds{0.f}; + GPUCHECK(cudaEventElapsedTime(&milliseconds, start, stop)); + + return milliseconds; +} + +template +template +std::vector GPUbenchmark::benchmarkAsync(void (*kernel)(int, T...), + int nStreams, int nLaunches, int blocks, int threads, T&... args) +{ + std::vector starts(nStreams), stops(nStreams); + std::vector streams(nStreams); + std::vector results(nStreams); + + for (auto iStream{0}; iStream < nStreams; ++iStream) { // one stream per chunk + GPUCHECK(cudaStreamCreate(&(streams.at(iStream)))); + GPUCHECK(cudaEventCreate(&(starts[iStream]))); + GPUCHECK(cudaEventCreate(&(stops[iStream]))); + } + + for (auto iStream{0}; iStream < nStreams; ++iStream) { + GPUCHECK(cudaEventRecord(starts[iStream], streams[iStream])); + + for (auto iLaunch{0}; iLaunch < nLaunches; ++iLaunch) { // consecutive launches on the same stream + (*kernel)<<>>(iStream, args...); + } + GPUCHECK(cudaEventRecord(stops[iStream], streams[iStream])); + } + + for (auto iStream{0}; iStream < nStreams; ++iStream) { + GPUCHECK(cudaEventSynchronize(stops[iStream])); + GPUCHECK(cudaEventElapsedTime(&(results.at(iStream)), starts[iStream], stops[iStream])); + } + + return results; +} + +template +void GPUbenchmark::printDevices() +{ + int deviceCnt; + GPUCHECK(cudaGetDeviceCount(&deviceCnt)); + + for (int i = 0; i < deviceCnt; i++) { + GPUCHECK(cudaSetDevice(i)); + printDeviceProp(i); + } +} + +template +void GPUbenchmark::globalInit(const int deviceId) +{ + cudaDeviceProp props; + size_t free; + + // Fetch and store features + GPUCHECK(cudaGetDeviceProperties(&props, deviceId)); + GPUCHECK(cudaMemGetInfo(&free, &mState.totalMemory)); + + mState.chunkReservedGB = mOptions.chunkReservedGB; + mState.iterations = mOptions.kernelLaunches; + mState.nMultiprocessors = props.multiProcessorCount; + mState.nMaxThreadsPerBlock = props.maxThreadsPerMultiProcessor; + mState.nMaxThreadsPerDimension = props.maxThreadsDim[0]; + mState.scratchSize = static_cast(mOptions.freeMemoryFractionToAllocate * free); + std::cout << ">>> Running on: \033[1;31m" << props.name << "\e[0m" << std::endl; + + // Allocate scratch on GPU + GPUCHECK(cudaMalloc(reinterpret_cast(&mState.scratchPtr), mState.scratchSize)); + + mState.computeScratchPtrs(); + GPUCHECK(cudaMemset(mState.scratchPtr, 0, mState.scratchSize)) + + std::cout << " ├ Buffer type: \e[1m" << getType() << "\e[0m" << std::endl + << " ├ Allocated: " << std::setprecision(2) << bytesToGB(mState.scratchSize) << "/" << std::setprecision(2) << bytesToGB(mState.totalMemory) + << "(GB) [" << std::setprecision(3) << (100.f) * (mState.scratchSize / (float)mState.totalMemory) << "%]\n" + << " ├ Number of scratch chunks: " << mState.getMaxChunks() << " of " << mOptions.chunkReservedGB << "GB each\n" + << " â”” Each chunk can store up to: " << mState.getPartitionCapacity() << " elements" << std::endl + << std::endl; +} + +/// Read +template +void GPUbenchmark::readInit() +{ + std::cout << ">>> Initializing read benchmarks with \e[1m" << mOptions.nTests << "\e[0m runs and \e[1m" << mOptions.kernelLaunches << "\e[0m kernel launches" << std::endl; + mState.hostReadResultsVector.resize(mState.getMaxChunks()); + GPUCHECK(cudaMalloc(reinterpret_cast(&(mState.deviceReadResultsPtr)), mState.getMaxChunks() * sizeof(chunk_type))); +} + +template +void GPUbenchmark::readSequential(SplitLevel sl) +{ + switch (sl) { + case SplitLevel::Blocks: { + mResultWriter.get()->addBenchmarkEntry("seq_read_SB", getType(), mState.getMaxChunks()); + auto nBlocks{mState.nMultiprocessors}; + auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; + auto capacity{mState.getPartitionCapacity()}; + + for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { // loop on the number of times we perform same measurement + std::cout << std::setw(2) << " ├ Sequential read, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + for (auto iChunk{0}; iChunk < mState.getMaxChunks(); ++iChunk) { // loop over single chunks separately + auto result = benchmarkSync(&gpu::readChunkSBKernel, + mState.getNKernelLaunches(), + nBlocks, + nThreads, + iChunk, + mState.deviceReadResultsPtr, + mState.scratchPtr, + capacity, + mState.chunkReservedGB); + mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + } + mResultWriter.get()->snapshotBenchmark(); + std::cout << "\033[1;32m complete\033[0m" << std::endl; + } + break; + } + + case SplitLevel::Threads: { + mResultWriter.get()->addBenchmarkEntry("seq_read_MB", getType(), mState.getMaxChunks()); + auto nBlocks{mState.nMultiprocessors}; + auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; + auto capacity{mState.getPartitionCapacity()}; + + for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { // loop on the number of times we perform same measurement + std::cout << std::setw(2) << " ├ Sequential read, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + for (auto iChunk{0}; iChunk < mState.getMaxChunks(); ++iChunk) { // loop over single chunks separately + auto result = benchmarkSync(&gpu::readChunkMBKernel, + mState.getNKernelLaunches(), + nBlocks, + nThreads, + iChunk, + mState.deviceReadResultsPtr, + mState.scratchPtr, + capacity, + mState.chunkReservedGB); + mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + } + mResultWriter.get()->snapshotBenchmark(); + std::cout << "\033[1;32m complete\033[0m" << std::endl; + } + break; + } + } +} + +template +void GPUbenchmark::readConcurrent(SplitLevel sl, int nRegions) +{ + switch (sl) { + case SplitLevel::Blocks: { + mResultWriter.get()->addBenchmarkEntry("conc_read_SB", getType(), mState.getMaxChunks()); + auto nBlocks{mState.nMultiprocessors}; + auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; + auto chunks{mState.getMaxChunks()}; + auto capacity{mState.getPartitionCapacity()}; + + for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { + std::cout << " ├ Concurrent read, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + auto results = benchmarkAsync(&gpu::readChunkSBKernel, + mState.getMaxChunks(), // nStreams + mState.getNKernelLaunches(), + nBlocks, + nThreads, + mState.deviceReadResultsPtr, // kernel arguments (chunkId is passed by wrapper) + mState.scratchPtr, + capacity, + mState.chunkReservedGB); + for (auto iResult{0}; iResult < results.size(); ++iResult) { + mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + } + mResultWriter.get()->snapshotBenchmark(); + std::cout << "\033[1;32m complete\033[0m" << std::endl; + } + break; + } + case SplitLevel::Threads: { + mResultWriter.get()->addBenchmarkEntry("conc_read_MB", getType(), mState.getMaxChunks()); + auto nBlocks{mState.nMultiprocessors}; + auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; + auto chunks{mState.getMaxChunks()}; + auto capacity{mState.getPartitionCapacity()}; + + for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { + std::cout << " ├ Concurrent read, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + auto results = benchmarkAsync(&gpu::readChunkMBKernel, + mState.getMaxChunks(), // nStreams + mState.getNKernelLaunches(), + nBlocks, + nThreads, + mState.deviceReadResultsPtr, // kernel arguments (chunkId is passed by wrapper) + mState.scratchPtr, + capacity, + mState.chunkReservedGB); + for (auto iResult{0}; iResult < results.size(); ++iResult) { + mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + } + mResultWriter.get()->snapshotBenchmark(); + std::cout << "\033[1;32m complete\033[0m" << std::endl; + } + break; + } + } +} + +template +void GPUbenchmark::readFinalize() +{ + GPUCHECK(cudaMemcpy(mState.hostReadResultsVector.data(), mState.deviceReadResultsPtr, mState.getMaxChunks() * sizeof(chunk_type), cudaMemcpyDeviceToHost)); + GPUCHECK(cudaFree(mState.deviceReadResultsPtr)); + std::cout << " â”” done." << std::endl; +} + +/// Write +template +void GPUbenchmark::writeInit() +{ + std::cout << ">>> Initializing write benchmarks with \e[1m" << mOptions.nTests << "\e[0m runs and \e[1m" << mOptions.kernelLaunches << "\e[0m kernel launches" << std::endl; + mState.hostWriteResultsVector.resize(mState.getMaxChunks()); + GPUCHECK(cudaMalloc(reinterpret_cast(&(mState.deviceWriteResultsPtr)), mState.getMaxChunks() * sizeof(chunk_type))); +} + +template +void GPUbenchmark::writeSequential(SplitLevel sl) +{ + switch (sl) { + case SplitLevel::Blocks: { + mResultWriter.get()->addBenchmarkEntry("seq_write_SB", getType(), mState.getMaxChunks()); + auto nBlocks{mState.nMultiprocessors}; + auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; + auto capacity{mState.getPartitionCapacity()}; + + for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { // loop on the number of times we perform same measurement + std::cout << std::setw(2) << " ├ Sequential write, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + for (auto iChunk{0}; iChunk < mState.getMaxChunks(); ++iChunk) { // loop over single chunks separately + auto result = benchmarkSync(&gpu::writeChunkSBKernel, + mState.getNKernelLaunches(), + nBlocks, + nThreads, + iChunk, + mState.deviceWriteResultsPtr, + mState.scratchPtr, + capacity, + mState.chunkReservedGB); + mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + } + mResultWriter.get()->snapshotBenchmark(); + std::cout << "\033[1;32m complete\033[0m" << std::endl; + } + break; + } + + case SplitLevel::Threads: { + mResultWriter.get()->addBenchmarkEntry("seq_write_MB", getType(), mState.getMaxChunks()); + auto nBlocks{mState.nMultiprocessors}; + auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; + auto capacity{mState.getPartitionCapacity()}; + + for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { // loop on the number of times we perform same measurement + std::cout << std::setw(2) << " ├ Sequential write, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + for (auto iChunk{0}; iChunk < mState.getMaxChunks(); ++iChunk) { // loop over single chunks separately + auto result = benchmarkSync(&gpu::writeChunkMBKernel, + mState.getNKernelLaunches(), + nBlocks, + nThreads, + iChunk, + mState.deviceWriteResultsPtr, + mState.scratchPtr, + capacity, + mState.chunkReservedGB); + mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + } + mResultWriter.get()->snapshotBenchmark(); + std::cout << "\033[1;32m complete\033[0m" << std::endl; + } + break; + } + } +} + +template +void GPUbenchmark::writeConcurrent(SplitLevel sl, int nRegions) +{ + switch (sl) { + case SplitLevel::Blocks: { + mResultWriter.get()->addBenchmarkEntry("conc_write_SB", getType(), mState.getMaxChunks()); + auto nBlocks{mState.nMultiprocessors}; + auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; + auto chunks{mState.getMaxChunks()}; + auto capacity{mState.getPartitionCapacity()}; + + for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { + std::cout << " ├ Concurrent write, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + auto results = benchmarkAsync(&gpu::writeChunkSBKernel, + mState.getMaxChunks(), // nStreams + mState.getNKernelLaunches(), + nBlocks, + nThreads, + mState.deviceWriteResultsPtr, // kernel arguments (chunkId is passed by wrapper) + mState.scratchPtr, + capacity, + mState.chunkReservedGB); + for (auto iResult{0}; iResult < results.size(); ++iResult) { + mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + } + mResultWriter.get()->snapshotBenchmark(); + std::cout << "\033[1;32m complete\033[0m" << std::endl; + } + break; + } + case SplitLevel::Threads: { + mResultWriter.get()->addBenchmarkEntry("conc_write_MB", getType(), mState.getMaxChunks()); + auto nBlocks{mState.nMultiprocessors}; + auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; + auto chunks{mState.getMaxChunks()}; + auto capacity{mState.getPartitionCapacity()}; + + for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { + std::cout << " ├ Concurrent write, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + auto results = benchmarkAsync(&gpu::writeChunkMBKernel, + mState.getMaxChunks(), // nStreams + mState.getNKernelLaunches(), + nBlocks, + nThreads, + mState.deviceWriteResultsPtr, // kernel arguments (chunkId is passed by wrapper) + mState.scratchPtr, + capacity, + mState.chunkReservedGB); + for (auto iResult{0}; iResult < results.size(); ++iResult) { + mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + } + mResultWriter.get()->snapshotBenchmark(); + std::cout << "\033[1;32m complete\033[0m" << std::endl; + } + break; + } + } +} + +template +void GPUbenchmark::writeFinalize() +{ + GPUCHECK(cudaMemcpy(mState.hostWriteResultsVector.data(), mState.deviceWriteResultsPtr, mState.getMaxChunks() * sizeof(chunk_type), cudaMemcpyDeviceToHost)); + GPUCHECK(cudaFree(mState.deviceWriteResultsPtr)); + std::cout << " â”” done." << std::endl; +} + +/// Copy +template +void GPUbenchmark::copyInit() +{ + std::cout << ">>> Initializing copy benchmarks with \e[1m" << mOptions.nTests << "\e[0m runs and \e[1m" << mOptions.kernelLaunches << "\e[0m kernel launches" << std::endl; + mState.hostCopyInputsVector.resize(mState.getMaxChunks()); + GPUCHECK(cudaMalloc(reinterpret_cast(&(mState.deviceCopyInputsPtr)), mState.getMaxChunks() * sizeof(chunk_type))); + GPUCHECK(cudaMemset(mState.deviceCopyInputsPtr, 1, mState.getMaxChunks() * sizeof(chunk_type))); +} + +template +void GPUbenchmark::copySequential(SplitLevel sl) +{ + switch (sl) { + case SplitLevel::Blocks: { + mResultWriter.get()->addBenchmarkEntry("seq_copy_SB", getType(), mState.getMaxChunks()); + auto nBlocks{mState.nMultiprocessors}; + auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; + auto capacity{mState.getPartitionCapacity()}; + + for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { // loop on the number of times we perform same measurement + std::cout << std::setw(2) << " ├ Sequential copy, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + for (auto iChunk{0}; iChunk < mState.getMaxChunks(); ++iChunk) { // loop over single chunks separately + auto result = benchmarkSync(&gpu::copyChunkSBKernel, + mState.getNKernelLaunches(), + nBlocks, + nThreads, + iChunk, + mState.deviceCopyInputsPtr, + mState.scratchPtr, + capacity, + mState.chunkReservedGB); + mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + } + mResultWriter.get()->snapshotBenchmark(); + std::cout << "\033[1;32m complete\033[0m" << std::endl; + } + break; + } + + case SplitLevel::Threads: { + mResultWriter.get()->addBenchmarkEntry("seq_copy_MB", getType(), mState.getMaxChunks()); + auto nBlocks{mState.nMultiprocessors}; + auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; + auto capacity{mState.getPartitionCapacity()}; + + for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { // loop on the number of times we perform same measurement + std::cout << std::setw(2) << " ├ Sequential copy, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + for (auto iChunk{0}; iChunk < mState.getMaxChunks(); ++iChunk) { // loop over single chunks separately + auto result = benchmarkSync(&gpu::copyChunkMBKernel, + mState.getNKernelLaunches(), + nBlocks, + nThreads, + iChunk, + mState.deviceCopyInputsPtr, + mState.scratchPtr, + capacity, + mState.chunkReservedGB); + mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + } + mResultWriter.get()->snapshotBenchmark(); + std::cout << "\033[1;32m complete\033[0m" << std::endl; + } + break; + } + } +} + +template +void GPUbenchmark::copyConcurrent(SplitLevel sl, int nRegions) +{ + switch (sl) { + case SplitLevel::Blocks: { + mResultWriter.get()->addBenchmarkEntry("conc_copy_SB", getType(), mState.getMaxChunks()); + auto nBlocks{mState.nMultiprocessors}; + auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; + auto chunks{mState.getMaxChunks()}; + auto capacity{mState.getPartitionCapacity()}; + + for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { + std::cout << " ├ Concurrent copy, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + auto results = benchmarkAsync(&gpu::copyChunkSBKernel, + mState.getMaxChunks(), // nStreams + mState.getNKernelLaunches(), + nBlocks, + nThreads, + mState.deviceCopyInputsPtr, // kernel arguments (chunkId is passed by wrapper) + mState.scratchPtr, + capacity, + mState.chunkReservedGB); + for (auto iResult{0}; iResult < results.size(); ++iResult) { + mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + } + mResultWriter.get()->snapshotBenchmark(); + std::cout << "\033[1;32m complete\033[0m" << std::endl; + } + break; + } + case SplitLevel::Threads: { + mResultWriter.get()->addBenchmarkEntry("conc_copy_MB", getType(), mState.getMaxChunks()); + auto nBlocks{mState.nMultiprocessors}; + auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; + auto chunks{mState.getMaxChunks()}; + auto capacity{mState.getPartitionCapacity()}; + + for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { + std::cout << " ├ Concurrent copy, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + auto results = benchmarkAsync(&gpu::copyChunkMBKernel, + mState.getMaxChunks(), // nStreams + mState.getNKernelLaunches(), + nBlocks, + nThreads, + mState.deviceCopyInputsPtr, // kernel arguments (chunkId is passed by wrapper) + mState.scratchPtr, + capacity, + mState.chunkReservedGB); + for (auto iResult{0}; iResult < results.size(); ++iResult) { + auto region = getCorrespondingRegionId(iResult, nBlocks, nRegions); + mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + } + mResultWriter.get()->snapshotBenchmark(); + std::cout << "\033[1;32m complete\033[0m" << std::endl; + } + break; + } + } +} + +template +void GPUbenchmark::copyFinalize() +{ + GPUCHECK(cudaMemcpy(mState.hostCopyInputsVector.data(), mState.deviceCopyInputsPtr, mState.getMaxChunks() * sizeof(chunk_type), cudaMemcpyDeviceToHost)); + GPUCHECK(cudaFree(mState.deviceCopyInputsPtr)); + std::cout << " â”” done." << std::endl; +} + +template +void GPUbenchmark::globalFinalize() +{ + GPUCHECK(cudaFree(mState.scratchPtr)); +} + +template +void GPUbenchmark::run() +{ + globalInit(0); + + readInit(); + // Reading in whole memory + readSequential(SplitLevel::Blocks); + readSequential(SplitLevel::Threads); + + // Reading in memory regions + readConcurrent(SplitLevel::Blocks); + readConcurrent(SplitLevel::Threads); + readFinalize(); + + writeInit(); + // Write on whole memory + writeSequential(SplitLevel::Blocks); + writeSequential(SplitLevel::Threads); + + // Write on memory regions + writeConcurrent(SplitLevel::Blocks); + writeConcurrent(SplitLevel::Threads); + writeFinalize(); + + copyInit(); + // Copy from input buffer (size = nChunks) on whole memory + copySequential(SplitLevel::Blocks); + copySequential(SplitLevel::Threads); + + // Copy from input buffer (size = nChunks) on memory regions + copyConcurrent(SplitLevel::Blocks); + copyConcurrent(SplitLevel::Threads); + copyFinalize(); + + GPUbenchmark::globalFinalize(); +} + +template class GPUbenchmark; +template class GPUbenchmark; +template class GPUbenchmark; +// template class GPUbenchmark; + +} // namespace benchmark +} // namespace o2 \ No newline at end of file diff --git a/GPU/GPUbenchmark/hip/.gitignore b/GPU/GPUbenchmark/hip/.gitignore new file mode 100644 index 0000000000000..14f27f00c53c2 --- /dev/null +++ b/GPU/GPUbenchmark/hip/.gitignore @@ -0,0 +1 @@ +*.hip.cxx \ No newline at end of file From 14fa88bff4c530ca0cab4e8ee41b9713d53ef518 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thiago=20Badar=C3=B3?= Date: Tue, 13 Jul 2021 10:04:34 -0300 Subject: [PATCH 162/314] Missing CMake entry in #6305 --- Detectors/TPC/workflow/CMakeLists.txt | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/Detectors/TPC/workflow/CMakeLists.txt b/Detectors/TPC/workflow/CMakeLists.txt index 0b1c8ec195e2d..04093be8ae226 100644 --- a/Detectors/TPC/workflow/CMakeLists.txt +++ b/Detectors/TPC/workflow/CMakeLists.txt @@ -109,6 +109,11 @@ o2_add_executable(calib-dedx SOURCES src/tpc-calib-dEdx.cxx PUBLIC_LINK_LIBRARIES O2::TPCWorkflow) +o2_add_executable(miptrack-filter + COMPONENT_NAME tpc + SOURCES src/tpc-miptrack-filter.cxx + PUBLIC_LINK_LIBRARIES O2::TPCWorkflow) + o2_add_test(workflow COMPONENT_NAME tpc LABELS tpc workflow From de0b3aa94a706eb2bae6494dd76b76b581a9eaa0 Mon Sep 17 00:00:00 2001 From: jbarrell Date: Wed, 7 Jul 2021 13:33:25 +0200 Subject: [PATCH 163/314] TRD digit converter improvements --- .../TRD/macros/convertRun2ToRun3Digits.C | 393 ++++++++++-------- 1 file changed, 209 insertions(+), 184 deletions(-) diff --git a/Detectors/TRD/macros/convertRun2ToRun3Digits.C b/Detectors/TRD/macros/convertRun2ToRun3Digits.C index da1808845cdd2..9a67c49f1202b 100644 --- a/Detectors/TRD/macros/convertRun2ToRun3Digits.C +++ b/Detectors/TRD/macros/convertRun2ToRun3Digits.C @@ -33,225 +33,265 @@ #endif +/*-------------------------------------------------------------------------- + +!! Set paths to input data in the convertRun2ToRun3Digits() function below !! + +----------------------------------------------------------------------------*/ + using namespace std; using namespace o2::trd; using namespace o2::trd::constants; -// qa.root -// 18000283989033.808.root -// TRD.Digits.root -void convertRun2ToRun3Digits(TString qaOutPath = "", - TString rawDataInPath = "", - TString run2DigitsInPath = "", - TString run3DigitsOutPath = "trddigits.root", - int nRawEvents = 5000) -{ - vector run3Digits; - vector triggerRecords; - o2::dataformats::MCTruthContainer mcLabels; +vector run3Digits; +vector triggerRecords; +o2::dataformats::MCTruthContainer mcLabels; - TH1F* hAdc = new TH1F("hADC", "ADC spectrum", 1024, -0.5, 1023.5); - TH1F* hTBsum = new TH1F("hTBsum", "TBsum", 3000, -0.5, 2999.5); - - // convert raw data if path set - if (rawDataInPath != "") { - cout << "Converting RAW data..." << endl; - AliRawReader* reader; - if (rawDataInPath.Contains(".root")) { - cout << "[I] Reading with ROOT" << endl; - AliRawReaderRoot* readerDate = new AliRawReaderRoot(rawDataInPath); - readerDate->SelectEquipment(0, 1024, 1024); - readerDate->Select("TRD"); - //readerDate->SelectEvents(7); - reader = (AliRawReader*)readerDate; - - } else if (rawDataInPath.Contains(":")) { - cout << "[I] Reading DATE monitoring events" << endl; - AliRawReaderDateOnline* readerRoot = new AliRawReaderDateOnline(rawDataInPath); - readerRoot->SelectEquipment(0, 1024, 1041); - readerRoot->Select("TRD"); - //readerRoot->SelectEvents(7); - reader = (AliRawReader*)readerRoot; - } +TH1F* hAdc = new TH1F("hADC", "ADC spectrum", 1024, -0.5, 1023.5); +TH1F* hTBsum = new TH1F("hTBsum", "TBsum", 3000, -0.5, 2999.5); - AliTRDdigitsManager* digitMan = new AliTRDdigitsManager; - digitMan->CreateArrays(); +void writeDigits(TString filename) +{ + if (run3Digits.size() != 0) { + TFile* digitsFile = new TFile(filename, "RECREATE"); + TTree* digitTree = new TTree("o2sim", "run2 digits"); + std::vector* run3pdigits = &run3Digits; + digitTree->Branch("TRDDigit", &run3pdigits); + digitTree->Branch("TriggerRecord", &triggerRecords); + digitTree->Branch("TRDMCLabels", &mcLabels); + digitTree->Fill(); + cout << run3Digits.size() << " run3 digits written to: " << filename << endl; + digitTree->Write(); + delete digitTree; + delete digitsFile; + } +} - AliTRDrawStream* rawStream = new AliTRDrawStream(reader); +void convertRaw(TString rawDataInPath) +{ + cout << "Converting raw data..." << endl; + run3Digits.reserve(4000 * 8000); + triggerRecords.reserve(1000 * 8000); + AliRawReader* reader; + if (rawDataInPath.Contains(".root")) { + cout << "[I] Reading with ROOT" << endl; + AliRawReaderRoot* readerDate = new AliRawReaderRoot(rawDataInPath); + readerDate->SelectEquipment(0, 1024, 1024); + readerDate->Select("TRD"); + //readerDate->SelectEvents(7); + reader = (AliRawReader*)readerDate; + + } else if (rawDataInPath.Contains(":")) { + cout << "[I] Reading DATE monitoring events" << endl; + AliRawReaderDateOnline* readerRoot = new AliRawReaderDateOnline(rawDataInPath); + readerRoot->SelectEquipment(0, 1024, 1041); + readerRoot->Select("TRD"); + //readerRoot->SelectEvents(7); + reader = (AliRawReader*)readerRoot; + } - TClonesArray trkl("AliTRDtrackletMCM"); - rawStream->SetTrackletArray(&trkl); + AliTRDdigitsManager* digitMan = new AliTRDdigitsManager; + digitMan->CreateArrays(); - int ievent = 0; - uint64_t triggerRecordsStart = 0; - int recordSize = 0; - while (reader->NextEvent()) { - int eventtime = ievent * 12; + AliTRDrawStream* rawStream = new AliTRDrawStream(reader); - if (ievent >= nRawEvents) - break; + TClonesArray trkl("AliTRDtrackletMCM"); + rawStream->SetTrackletArray(&trkl); - //digitMan->ResetArrays(); + int ievent = 0; + TString filename; + uint64_t triggerRecordsStart = 0; + int recordSize = 0; + while (reader->NextEvent()) { + int eventtime = ievent * 12; + if (ievent % 100 == 0 && ievent != 0) { + filename = "trddigits." + to_string(ievent / 100) + ".root"; + } - if (ievent % 10 == 0) { - cout << "Event " << ievent << endl; - } + //digitMan->ResetArrays(); - // hntrkl->Fill(trkl.GetEntries()); - while (rawStream->NextChamber(digitMan) >= 0) { - //hptphase->Fill(digMan->GetDigitsParam()->GetPretriggerPhase()); - } + if (ievent % 10 == 0) { + cout << "Event " << ievent << endl; + } - for (int det = 0; det < AliTRDCommonParam::kNdet; det++) { - AliTRDSignalIndex* idx = digitMan->GetIndexes(det); + // hntrkl->Fill(trkl.GetEntries()); + while (rawStream->NextChamber(digitMan) >= 0) { + //hptphase->Fill(digMan->GetDigitsParam()->GetPretriggerPhase()); + } - if (!idx) - continue; - if (!idx->HasEntry()) - continue; + for (int det = 0; det < AliTRDCommonParam::kNdet; det++) { + AliTRDSignalIndex* idx = digitMan->GetIndexes(det); - int row, col; - while (idx->NextRCIndex(row, col)) { - int tbsum = 0; - ArrayADC adctimes; - for (int timebin = 0; timebin < digitMan->GetDigits(det)->GetNtime(); timebin++) { - int adc = digitMan->GetDigits(det)->GetData(row, col, timebin); - hAdc->Fill(adc); - tbsum += adc; + if (!idx) + continue; + if (!idx->HasEntry()) + continue; - adctimes[timebin] = adc; - } + int row, col; + while (idx->NextRCIndex(row, col)) { + int tbsum = 0; + ArrayADC adctimes; + for (int timebin = 0; timebin < digitMan->GetDigits(det)->GetNtime(); timebin++) { + int adc = digitMan->GetDigits(det)->GetData(row, col, timebin); + hAdc->Fill(adc); + tbsum += adc; - if (tbsum > 0) { - run3Digits.push_back(Digit(det, row, col, adctimes)); - } + adctimes[timebin] = adc; + } - hTBsum->Fill(tbsum); + if (tbsum > 0) { + run3Digits.emplace_back(det, row, col, adctimes); } + + hTBsum->Fill(tbsum); } - trkl.Clear(); - recordSize = run3Digits.size() - triggerRecordsStart; - triggerRecords.emplace_back(ievent, triggerRecordsStart, recordSize, 0, 0); - triggerRecordsStart = run3Digits.size(); - ievent++; + digitMan->ClearIndexes(det); } - - delete rawStream; - if (reader) - delete reader; + trkl.Clear(); + recordSize = run3Digits.size() - triggerRecordsStart; + triggerRecords.emplace_back(ievent, triggerRecordsStart, recordSize, 0, 0); + triggerRecordsStart = run3Digits.size(); + ievent++; } - // convert run2 digits if path set - if (run2DigitsInPath != "") { - cout << "Converting Run2 digits..." << endl; + delete rawStream; + if (reader) + delete reader; +} - TFile run2DigitsFile(run2DigitsInPath); - AliTRDdigitsManager* digitMan = new AliTRDdigitsManager; - digitMan->CreateArrays(); +void convertSim(TString run2DigitsInPath) +{ + cout << "Converting run2 digits..." << endl; + run3Digits.reserve(4000 * 8000); + triggerRecords.reserve(1000 * 8000); - TIter next(run2DigitsFile.GetListOfKeys()); + TFile run2DigitsFile(run2DigitsInPath); + AliTRDdigitsManager* digitMan = new AliTRDdigitsManager; + digitMan->CreateArrays(); - uint64_t triggerRecordsStart = 0; - int recordSize = 0; - int ievent = 0; - while (TObject* obj = next()) { - cout << "Processing " << obj->GetName() << endl; + TIter next(run2DigitsFile.GetListOfKeys()); - // eventTime needs to be some increasing integer - string eventNumber(obj->GetName(), 5, 3); - int eventTime = stoi(eventNumber) * 12; + uint64_t triggerRecordsStart = 0; + int recordSize = 0; + int ievent = 0; + while (TObject* obj = next()) { + cout << "Processing " << obj->GetName() << endl; - TTree* tr = (TTree*)run2DigitsFile.Get(Form("%s/TreeD", obj->GetName())); + // eventTime needs to be some increasing integer + string eventNumber(obj->GetName(), 5, 3); + int eventTime = stoi(eventNumber) * 12; - for (int det = 0; det < AliTRDCommonParam::kNdet; det++) { - digitMan->ClearArrays(det); - digitMan->ClearIndexes(det); - } + TTree* tr = (TTree*)run2DigitsFile.Get(Form("%s/TreeD", obj->GetName())); - digitMan->ReadDigits(tr); + for (int det = 0; det < AliTRDCommonParam::kNdet; det++) { + digitMan->ClearArrays(det); + digitMan->ClearIndexes(det); + } - for (int det = 0; det < AliTRDCommonParam::kNdet; det++) { - if (!digitMan->GetDigits(det)) - continue; + digitMan->ReadDigits(tr); - int sector = det / 30; - int stack = (det - sector * 30) / 6; + for (int det = 0; det < AliTRDCommonParam::kNdet; det++) { + if (!digitMan->GetDigits(det)) + continue; - digitMan->GetDigits(det)->Expand(); + if (digitMan->GetDigits(det)->GetNtime() > 30) { + cout << "----!!! --- number of times is greater than 30" << endl; + } - int nrows = AliTRDfeeParam::GetNrowC1(); - if (stack == 2) { - nrows = AliTRDfeeParam::GetNrowC0(); - } + int sector = det / 30; + int stack = (det - sector * 30) / 6; - // cout << "det: " << det << " | " << "sector: " << sector << " | " << "stack: " << stack << " | " << "rows: " << nrows << endl; - - for (int row = 0; row < nrows; row++) { - for (int col = 0; col < NCOLUMN; col++) { - int side = (col < NCOLUMN / 2) ? 0 : 1; - int rob = 2 * (row / NMCMROBINROW) + side; - int mcm = side == 0 ? (row * NMCMROBINROW + col / NCOLMCM) % NMCMROB : (row * NMCMROBINROW + (col - NCOLUMN / 2) / NCOLMCM) % NMCMROB; - int channel = 19 - (col % NCOLMCM); - int tbsum = 0; - ArrayADC adctimes; - bool isSharedRight = false, isSharedLeft = false; - if (col % NCOLMCM == 0 || col % NCOLMCM == 1) { - isSharedRight = true; - } else if (col % NCOLMCM == 17) { - isSharedLeft = true; - } + digitMan->GetDigits(det)->Expand(); - for (int timebin = 0; timebin < digitMan->GetDigits(det)->GetNtime(); timebin++) { + int nrows = AliTRDfeeParam::GetNrowC1(); + if (stack == 2) { + nrows = AliTRDfeeParam::GetNrowC0(); + } - if (digitMan->GetDigits(det)->GetNtime() > 30) { - cout << "----!!! --- number of times is greater than 30" << endl; - } + // cout << "det: " << det << " | " << "sector: " << sector << " | " << "stack: " << stack << " | " << "rows: " << nrows << endl; - int adc = digitMan->GetDigitAmp(row, col, timebin, det); - adctimes[timebin] = adc; + for (int row = 0; row < nrows; row++) { + for (int col = 0; col < NCOLUMN; col++) { + int side = (col < NCOLUMN / 2) ? 0 : 1; + int rob = 2 * (row / NMCMROBINROW) + side; + int mcm = side == 0 ? (row * NMCMROBINROW + col / NCOLMCM) % NMCMROB : (row * NMCMROBINROW + (col - NCOLUMN / 2) / NCOLMCM) % NMCMROB; + int channel = 19 - (col % NCOLMCM); + int tbsum = 0; + ArrayADC adctimes; + bool isSharedRight = false, isSharedLeft = false; + if (col % NCOLMCM == 0 || col % NCOLMCM == 1) { + isSharedRight = true; + } else if (col % NCOLMCM == 17) { + isSharedLeft = true; + } - // this value seems to indicate no digit -> skip - if (adc == -7169) - continue; + for (int timebin = 0; timebin < digitMan->GetDigits(det)->GetNtime(); timebin++) { + int adc = digitMan->GetDigitAmp(row, col, timebin, det); - hAdc->Fill(adc); - tbsum += adc; - } + // this value seems to indicate no digit -> skip + if (adc == -7169) + continue; + + adctimes[timebin] = adc; + + hAdc->Fill(adc); + tbsum += adc; + } - if (tbsum > 0) { - run3Digits.push_back(Digit(det, rob, mcm, channel, adctimes)); - if (isSharedRight && col > 17) { - if (mcm % NMCMROBINCOL == 0) { - // switch to the ROB on the right - run3Digits.push_back(Digit(det, rob - 1, mcm + 3, channel - NCOLMCM, adctimes)); - } else { - // we stay on the same ROB - run3Digits.push_back(Digit(det, rob, mcm - 1, channel - NCOLMCM, adctimes)); - } - - } else if (isSharedLeft && col < 126) { - if (mcm % NMCMROBINCOL == 3) { - // switch to ROB on the left - run3Digits.push_back(Digit(det, rob + 1, mcm - 3, channel + NCOLMCM, adctimes)); - } else { - // we stay on the same ROB - run3Digits.push_back(Digit(det, rob, mcm + 1, channel + NCOLMCM, adctimes)); - } + if (tbsum > 0) { + run3Digits.push_back(Digit(det, rob, mcm, channel, adctimes)); + if (isSharedRight && col > 17) { + if (mcm % NMCMROBINCOL == 0) { + // switch to the ROB on the right + run3Digits.emplace_back(det, rob - 1, mcm + 3, channel - NCOLMCM, adctimes); + } else { + // we stay on the same ROB + run3Digits.emplace_back(det, rob, mcm - 1, channel - NCOLMCM, adctimes); } - } - if (tbsum > 0) { - hTBsum->Fill(tbsum); + } else if (isSharedLeft && col < 126) { + if (mcm % NMCMROBINCOL == 3) { + // switch to ROB on the left + run3Digits.emplace_back(det, rob + 1, mcm - 3, channel + NCOLMCM, adctimes); + } else { + // we stay on the same ROB + run3Digits.emplace_back(det, rob, mcm + 1, channel + NCOLMCM, adctimes); + } } } + + if (tbsum > 0) { + hTBsum->Fill(tbsum); + } } } - recordSize = run3Digits.size() - triggerRecordsStart; - triggerRecords.emplace_back(ievent, triggerRecordsStart, recordSize, 0, 0); - triggerRecordsStart = run3Digits.size(); - ievent++; } + recordSize = run3Digits.size() - triggerRecordsStart; + triggerRecords.emplace_back(ievent, triggerRecordsStart, recordSize, 0, 0); + triggerRecordsStart = run3Digits.size(); + ievent++; } +} + +// qa.root +// 18000283989033.808.root +// TRD.Digits.root +void convertRun2ToRun3Digits(TString qaOutPath = "", + TString rawDataInPath = "", + TString run2DigitsInPath = "", + TString outputPath = "trddigits.root") +{ + // convert raw data if path set + if (rawDataInPath != "") { + convertRaw(rawDataInPath); + } + + // convert run2 digits if path set + if (run2DigitsInPath != "") { + convertSim(run2DigitsInPath); + } + + writeDigits(outputPath); // show and write QA if (qaOutPath != "") { @@ -272,19 +312,4 @@ void convertRun2ToRun3Digits(TString qaOutPath = "", cout << "QA output written to: " << qaOutPath << endl; } - - // write run3 digits - if (run3Digits.size() != 0) { - TFile* digitsFile = new TFile(run3DigitsOutPath, "RECREATE"); - TTree* digitTree = new TTree("o2sim", "run2 digits"); - std::vector* run3pdigits = &run3Digits; - digitTree->Branch("TRDDigit", &run3pdigits); - digitTree->Branch("TriggerRecord", &triggerRecords); - digitTree->Branch("TRDMCLabels", &mcLabels); - digitTree->Fill(); - cout << run3Digits.size() << " run3 digits written to: " << run3DigitsOutPath << endl; - digitTree->Write(); - delete digitTree; - delete digitsFile; - } } From 8b70ac00c59a8cfce471cac0e762915dab445a63 Mon Sep 17 00:00:00 2001 From: sevdokim Date: Tue, 13 Jul 2021 16:31:59 +0200 Subject: [PATCH 164/314] Fix for CPV/RawReaderMemory to handle HBF orbits properly at the beginning of reading --- DataFormats/Detectors/CPV/include/DataFormatsCPV/RawFormats.h | 2 +- .../include/CPVReconstruction/RawReaderMemory.h | 1 + Detectors/CPV/reconstruction/src/RawDecoder.cxx | 3 ++- Detectors/CPV/reconstruction/src/RawReaderMemory.cxx | 4 +++- Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx | 2 +- Detectors/CPV/workflow/src/cpv-reco-workflow.cxx | 2 -- 6 files changed, 8 insertions(+), 6 deletions(-) diff --git a/DataFormats/Detectors/CPV/include/DataFormatsCPV/RawFormats.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/RawFormats.h index 4eff5684930a4..4dc033e42544d 100644 --- a/DataFormats/Detectors/CPV/include/DataFormatsCPV/RawFormats.h +++ b/DataFormats/Detectors/CPV/include/DataFormatsCPV/RawFormats.h @@ -101,7 +101,7 @@ class CpvHeader bool isOK() const { return (mBytes[9] == 0xe0) && (mBytes[10] == 0) && (mBytes[11] == 0) && (mBytes[12] == 0) && (mBytes[13] == 0) && (mBytes[14] == 0) && (mBytes[15] == 0); } bool isNoDataExpected() const { return mBytes[1] & 0b00100000; } bool isDataContinued() const { return mBytes[1] & 0b0100000; } - uint16_t bc() const { return mBytes[2] + ((mBytes[3] & 0x0f) << 8); } + uint16_t bc() const { return static_cast(mBytes[2]) + static_cast((mBytes[3] & 0x0f) << 8); } uint32_t orbit() const { return mBytes[4] + (mBytes[5] << 8) + (mBytes[6] << 16) + (mBytes[7] << 24); } public: diff --git a/Detectors/CPV/reconstruction/include/CPVReconstruction/RawReaderMemory.h b/Detectors/CPV/reconstruction/include/CPVReconstruction/RawReaderMemory.h index cd7800358752f..56d48dbf26dd8 100644 --- a/Detectors/CPV/reconstruction/include/CPVReconstruction/RawReaderMemory.h +++ b/Detectors/CPV/reconstruction/include/CPVReconstruction/RawReaderMemory.h @@ -119,6 +119,7 @@ class RawReaderMemory bool mPayloadInitialized = false; ///< Payload for current page initialized uint32_t mCurrentHBFOrbit = 0; ///< Current orbit of HBF bool mStopBitWasNotFound; ///< True if StopBit was not found but HBF orbit changed + bool mIsJustInited = false; ///< True if init() was just called ClassDefNV(RawReaderMemory, 2); }; diff --git a/Detectors/CPV/reconstruction/src/RawDecoder.cxx b/Detectors/CPV/reconstruction/src/RawDecoder.cxx index 9e1fa97e83450..e49b3efe8d04a 100644 --- a/Detectors/CPV/reconstruction/src/RawDecoder.cxx +++ b/Detectors/CPV/reconstruction/src/RawDecoder.cxx @@ -67,7 +67,8 @@ RawErrorType_t RawDecoder::readChannels() nDigitsAddedFromLastHeader = 0; if (currentOrbit != header.orbit()) { //bad cpvheader LOG(ERROR) << "RawDecoder::readChannels() : " - << "currentOrbit != header.orbit()"; + << "currentOrbit(=" << currentOrbit + << ") != header.orbit()(=" << header.orbit() << ")"; mErrors.emplace_back(5, 0, 0, 0, kCPVHEADER_INVALID); //5 is non-existing link with general errors skipUntilNextHeader = true; } diff --git a/Detectors/CPV/reconstruction/src/RawReaderMemory.cxx b/Detectors/CPV/reconstruction/src/RawReaderMemory.cxx index 85bd717331aa7..cc48bf64717b0 100644 --- a/Detectors/CPV/reconstruction/src/RawReaderMemory.cxx +++ b/Detectors/CPV/reconstruction/src/RawReaderMemory.cxx @@ -51,6 +51,7 @@ void RawReaderMemory::init() mPayloadInitialized = false; mCurrentHBFOrbit = 0; mStopBitWasNotFound = false; + mIsJustInited = true; } //Read the next pages until the stop bit is found or new HBF reached @@ -95,11 +96,12 @@ RawErrorType_t RawReaderMemory::nextPage() mCurrentPosition += RDHDecoder::getOffsetToNext(rawHeader); //moving on return RawErrorType_t::kNOT_CPV_RDH; } - if (mCurrentHBFOrbit != 0 || mStopBitWasNotFound) { //reading first time after init() or stopbit was not found + if (mIsJustInited || mStopBitWasNotFound) { //reading first time after init() or stopbit was not found mCurrentHBFOrbit = RDHDecoder::getHeartBeatOrbit(rawHeader); mRawHeader = rawHeader; //save RDH of first page as mRawHeader mRawHeaderInitialized = true; mStopBitWasNotFound = false; //reset this flag as we start to read again + mIsJustInited = false; } else if (mCurrentHBFOrbit != RDHDecoder::getHeartBeatOrbit(rawHeader)) { //next HBF started but we didn't find stop bit. mStopBitWasNotFound = true; diff --git a/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx b/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx index 00f0dadec4f2e..7379c5c40cbf0 100644 --- a/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx +++ b/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx @@ -247,7 +247,7 @@ o2::framework::DataProcessorSpec o2::cpv::reco_workflow::getRawToDigitConverterS outputs, o2::framework::adaptFromTask(), o2::framework::Options{ - {"pedestal", o2::framework::VariantType::Bool, false, {"If true then do not subtract pedestals from digits"}}, + {"pedestal", o2::framework::VariantType::Bool, false, {"do not subtract pedestals from digits"}}, {"ccdb-url", o2::framework::VariantType::String, "http://ccdb-test.cern.ch:8080", {"CCDB Url"}}, }}; } diff --git a/Detectors/CPV/workflow/src/cpv-reco-workflow.cxx b/Detectors/CPV/workflow/src/cpv-reco-workflow.cxx index c62f51158074a..1ea621660f429 100644 --- a/Detectors/CPV/workflow/src/cpv-reco-workflow.cxx +++ b/Detectors/CPV/workflow/src/cpv-reco-workflow.cxx @@ -34,9 +34,7 @@ void customize(std::vector& workflowOptions) {"disable-mc", o2::framework::VariantType::Bool, false, {"disable sending of MC information"}}, {"disable-root-input", o2::framework::VariantType::Bool, false, {"disable root-files input reader"}}, {"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writer"}}, - {"pedestal", o2::framework::VariantType::Bool, false, {"pedestal run? if true then don't subtract pedestals from digits"}}, {"ignore-dist-stf", o2::framework::VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}, - //{"ccdb-url", o2::framework::VariantType::String, "http://ccdb-test.cern.ch:8080", {"path to CCDB like http://ccdb-test.cern.ch:8080"}}, {"configKeyValues", o2::framework::VariantType::String, "", {"Semicolon separated key=value strings ..."}}}; std::swap(workflowOptions, options); } From de2e9eafee3bbe372e80f21e5de8b48423b5f924 Mon Sep 17 00:00:00 2001 From: Fabio Colamaria Date: Wed, 23 Jun 2021 15:58:21 +0200 Subject: [PATCH 165/314] PWGHF: Improved MC-reco mode of DDbar correlation code --- Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx | 29 +++++++++++++------ .../Tasks/PWGHF/HFCorrelatorDplusDminus.cxx | 19 ++++++++---- 2 files changed, 34 insertions(+), 14 deletions(-) diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx index d9a82e67e80eb..0dbfa614f43a7 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx @@ -195,8 +195,10 @@ struct HfCorrelatorD0D0barMcRec { void init(o2::framework::InitContext&) { - registry.add("hMassD0MCRec", "D0,D0bar candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); - registry.add("hMassD0barMCRec", "D0,D0bar candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassD0MCRecSig", "D0 signal candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassD0barMCRecSig", "D0bar signal candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassD0MCRecBkg", "D0 background candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassD0barMCRecBkg", "D0bar background candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); } Filter filterSelectCandidates = (aod::hf_selcandidate_d0::isSelD0 >= selectionFlagD0 || aod::hf_selcandidate_d0::isSelD0bar >= selectionFlagD0bar); @@ -218,13 +220,7 @@ struct HfCorrelatorD0D0barMcRec { continue; } if (std::abs(candidate1.flagMCMatchRec()) == 1 << DecayType::D0ToPiK) { - //fill invariant mass plots and generic info from all D0/D0bar candidates - if (candidate1.isSelD0() >= selectionFlagD0 && candidate1.flagMCMatchRec() == 1 << DecayType::D0ToPiK) { //only reco and matched as D0 - registry.fill(HIST("hMassD0MCRec"), InvMassD0(candidate1), candidate1.pt()); - } - if (candidate1.isSelD0bar() >= selectionFlagD0bar && candidate1.flagMCMatchRec() == -(1 << DecayType::D0ToPiK)) { //only reco and matched as D0bar - registry.fill(HIST("hMassD0barMCRec"), InvMassD0bar(candidate1), candidate1.pt()); - } + //fill generic info from D0/D0bar true candidates registry.fill(HIST("hPtCandMCRec"), candidate1.pt()); registry.fill(HIST("hPtProng0MCRec"), candidate1.ptProng0()); registry.fill(HIST("hPtProng1MCRec"), candidate1.ptProng1()); @@ -233,6 +229,21 @@ struct HfCorrelatorD0D0barMcRec { registry.fill(HIST("hYMCRec"), YD0(candidate1)); registry.fill(HIST("hSelectionStatusMCRec"), candidate1.isSelD0bar() + (candidate1.isSelD0() * 2)); } + //fill invariant mass plots from D0/D0bar signal and background candidates + if (candidate1.isSelD0() >= selectionFlagD0) { //only reco and matched as D0 + if (candidate1.flagMCMatchRec() == 1 << DecayType::D0ToPiK) { + registry.fill(HIST("hMassD0MCRecSig"), InvMassD0(candidate1), candidate1.pt()); + } else { + registry.fill(HIST("hMassD0MCRecBkg"), InvMassD0(candidate1), candidate1.pt()); + } + } + if (candidate1.isSelD0bar() >= selectionFlagD0bar) { //only reco and matched as D0 + if (candidate1.flagMCMatchRec() == -(1 << DecayType::D0ToPiK)) { //only reco and matched as D0bar + registry.fill(HIST("hMassD0barMCRecSig"), InvMassD0bar(candidate1), candidate1.pt()); + } else { + registry.fill(HIST("hMassD0barMCRecBkg"), InvMassD0bar(candidate1), candidate1.pt()); + } + } //D-Dbar correlation dedicated section //if the candidate is selected ad D0, search for D0bar and evaluate correlations diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx index 8f5b3a46c8a72..e68da95a4795f 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx @@ -193,8 +193,10 @@ struct HfCorrelatorDplusDminusMcRec { void init(o2::framework::InitContext&) { - registry.add("hMassDplusMCRec", "Dplus,Dminus candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); - registry.add("hMassDminusMCRec", "Dplus,Dminus candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassDplusMCRecSig", "Dplus signal candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassDminusMCRecSig", "Dminus signal candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassDplusMCRecBkg", "Dplus background candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassDminusMCRecBkg", "Dminus background candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); } Filter filterSelectCandidates = (aod::hf_selcandidate_dplus::isSelDplusToPiKPi >= selectionFlagDplus); @@ -221,11 +223,11 @@ struct HfCorrelatorDplusDminusMcRec { outerParticleSign = -1; //Dminus (second daughter track is positive) } if (std::abs(candidate1.flagMCMatchRec()) == 1 << DecayType::DPlusToPiKPi) { - //fill invariant mass plots and generic info from all Dplus/Dminus candidates + //fill invariant mass plots and generic info from Dplus/Dminus signal candidates if (outerParticleSign == 1) { //matched as Dplus - registry.fill(HIST("hMassDplusMCRec"), InvMassDPlus(candidate1), candidate1.pt()); + registry.fill(HIST("hMassDplusMCRecSig"), InvMassDPlus(candidate1), candidate1.pt()); } else { //matched as Dminus - registry.fill(HIST("hMassDminusMCRec"), InvMassDPlus(candidate1), candidate1.pt()); + registry.fill(HIST("hMassDminusMCRecSig"), InvMassDPlus(candidate1), candidate1.pt()); } registry.fill(HIST("hPtCandMCRec"), candidate1.pt()); registry.fill(HIST("hPtProng0MCRec"), candidate1.ptProng0()); @@ -235,6 +237,13 @@ struct HfCorrelatorDplusDminusMcRec { registry.fill(HIST("hPhiMCRec"), candidate1.phi()); registry.fill(HIST("hYMCRec"), YDPlus(candidate1)); registry.fill(HIST("hSelectionStatusMCRec"), candidate1.isSelDplusToPiKPi()); + } else { + //fill invariant mass plots and generic info from Dplus/Dminus background candidates + if (outerParticleSign == 1) { //matched as Dplus + registry.fill(HIST("hMassDplusMCRecBkg"), InvMassDPlus(candidate1), candidate1.pt()); + } else { //matched as Dminus + registry.fill(HIST("hMassDminusMCRecBkg"), InvMassDPlus(candidate1), candidate1.pt()); + } } //D-Dbar correlation dedicated section From c4dae193b3eca8369cc100646d2f999c0728ea77 Mon Sep 17 00:00:00 2001 From: Fabio Colamaria Date: Wed, 23 Jun 2021 16:10:42 +0200 Subject: [PATCH 166/314] Fix to comment lines --- Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx | 10 +++++----- Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx | 12 ++++++------ 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx index 0dbfa614f43a7..4bef0778d59a8 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx @@ -220,7 +220,7 @@ struct HfCorrelatorD0D0barMcRec { continue; } if (std::abs(candidate1.flagMCMatchRec()) == 1 << DecayType::D0ToPiK) { - //fill generic info from D0/D0bar true candidates + //fill per-candidate distributions from D0/D0bar true candidates registry.fill(HIST("hPtCandMCRec"), candidate1.pt()); registry.fill(HIST("hPtProng0MCRec"), candidate1.ptProng0()); registry.fill(HIST("hPtProng1MCRec"), candidate1.ptProng1()); @@ -230,15 +230,15 @@ struct HfCorrelatorD0D0barMcRec { registry.fill(HIST("hSelectionStatusMCRec"), candidate1.isSelD0bar() + (candidate1.isSelD0() * 2)); } //fill invariant mass plots from D0/D0bar signal and background candidates - if (candidate1.isSelD0() >= selectionFlagD0) { //only reco and matched as D0 - if (candidate1.flagMCMatchRec() == 1 << DecayType::D0ToPiK) { + if (candidate1.isSelD0() >= selectionFlagD0) { //only reco as D0 + if (candidate1.flagMCMatchRec() == 1 << DecayType::D0ToPiK) { //also matched as D0 registry.fill(HIST("hMassD0MCRecSig"), InvMassD0(candidate1), candidate1.pt()); } else { registry.fill(HIST("hMassD0MCRecBkg"), InvMassD0(candidate1), candidate1.pt()); } } - if (candidate1.isSelD0bar() >= selectionFlagD0bar) { //only reco and matched as D0 - if (candidate1.flagMCMatchRec() == -(1 << DecayType::D0ToPiK)) { //only reco and matched as D0bar + if (candidate1.isSelD0bar() >= selectionFlagD0bar) { //only reco as D0bar + if (candidate1.flagMCMatchRec() == -(1 << DecayType::D0ToPiK)) { //also matched as D0bar registry.fill(HIST("hMassD0barMCRecSig"), InvMassD0bar(candidate1), candidate1.pt()); } else { registry.fill(HIST("hMassD0barMCRecBkg"), InvMassD0bar(candidate1), candidate1.pt()); diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx index e68da95a4795f..0e98617a61a4c 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx @@ -223,10 +223,10 @@ struct HfCorrelatorDplusDminusMcRec { outerParticleSign = -1; //Dminus (second daughter track is positive) } if (std::abs(candidate1.flagMCMatchRec()) == 1 << DecayType::DPlusToPiKPi) { - //fill invariant mass plots and generic info from Dplus/Dminus signal candidates - if (outerParticleSign == 1) { //matched as Dplus + //fill invariant mass plots and per-candidate distributions from Dplus/Dminus signal candidates + if (outerParticleSign == 1) { //reco and matched as Dplus registry.fill(HIST("hMassDplusMCRecSig"), InvMassDPlus(candidate1), candidate1.pt()); - } else { //matched as Dminus + } else { //reco and matched as Dminus registry.fill(HIST("hMassDminusMCRecSig"), InvMassDPlus(candidate1), candidate1.pt()); } registry.fill(HIST("hPtCandMCRec"), candidate1.pt()); @@ -238,10 +238,10 @@ struct HfCorrelatorDplusDminusMcRec { registry.fill(HIST("hYMCRec"), YDPlus(candidate1)); registry.fill(HIST("hSelectionStatusMCRec"), candidate1.isSelDplusToPiKPi()); } else { - //fill invariant mass plots and generic info from Dplus/Dminus background candidates - if (outerParticleSign == 1) { //matched as Dplus + //fill invariant mass plots from Dplus/Dminus background candidates + if (outerParticleSign == 1) { //reco as Dplus registry.fill(HIST("hMassDplusMCRecBkg"), InvMassDPlus(candidate1), candidate1.pt()); - } else { //matched as Dminus + } else { //reco as Dminus registry.fill(HIST("hMassDminusMCRecBkg"), InvMassDPlus(candidate1), candidate1.pt()); } } From f27d2ae999fa5e382ed272f8041682b9880b7eb2 Mon Sep 17 00:00:00 2001 From: Fabio Colamaria Date: Thu, 24 Jun 2021 10:09:42 +0200 Subject: [PATCH 167/314] Added support for reflection mass distributions --- Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx index 4bef0778d59a8..98104298ddfdf 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx @@ -196,8 +196,10 @@ struct HfCorrelatorD0D0barMcRec { void init(o2::framework::InitContext&) { registry.add("hMassD0MCRecSig", "D0 signal candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); - registry.add("hMassD0barMCRecSig", "D0bar signal candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassD0MCRecRefl", "D0 reflection candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); registry.add("hMassD0MCRecBkg", "D0 background candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassD0barMCRecSig", "D0bar signal candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassD0barMCRecRefl", "D0bar reflection candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); registry.add("hMassD0barMCRecBkg", "D0bar background candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); } @@ -233,6 +235,8 @@ struct HfCorrelatorD0D0barMcRec { if (candidate1.isSelD0() >= selectionFlagD0) { //only reco as D0 if (candidate1.flagMCMatchRec() == 1 << DecayType::D0ToPiK) { //also matched as D0 registry.fill(HIST("hMassD0MCRecSig"), InvMassD0(candidate1), candidate1.pt()); + } else if (candidate1.flagMCMatchRec() == -(1 << DecayType::D0ToPiK)) { + registry.fill(HIST("hMassD0MCRecRefl"), InvMassD0(candidate1), candidate1.pt()); } else { registry.fill(HIST("hMassD0MCRecBkg"), InvMassD0(candidate1), candidate1.pt()); } @@ -240,6 +244,8 @@ struct HfCorrelatorD0D0barMcRec { if (candidate1.isSelD0bar() >= selectionFlagD0bar) { //only reco as D0bar if (candidate1.flagMCMatchRec() == -(1 << DecayType::D0ToPiK)) { //also matched as D0bar registry.fill(HIST("hMassD0barMCRecSig"), InvMassD0bar(candidate1), candidate1.pt()); + } else if (candidate1.flagMCMatchRec() == 1 << DecayType::D0ToPiK) { + registry.fill(HIST("hMassD0barMCRecRefl"), InvMassD0bar(candidate1), candidate1.pt()); } else { registry.fill(HIST("hMassD0barMCRecBkg"), InvMassD0bar(candidate1), candidate1.pt()); } From bd9198cd304ee78a0bbfb16d85c03db4fb236a7d Mon Sep 17 00:00:00 2001 From: Fabio Colamaria Date: Tue, 29 Jun 2021 11:39:09 +0200 Subject: [PATCH 168/314] Added reflection cases also to 2D mass plots and correlations distributions --- Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx | 18 ++- Analysis/Tasks/PWGHF/taskCorrelationDDbar.cxx | 131 ++++++++++++++---- 2 files changed, 117 insertions(+), 32 deletions(-) diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx index 98104298ddfdf..1b4c9fbd1fab7 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx @@ -209,7 +209,9 @@ struct HfCorrelatorD0D0barMcRec { { //MC reco level bool flagD0Signal = false; + bool flagD0Reflection = false; bool flagD0barSignal = false; + bool flagD0barReflection = false; for (auto& candidate1 : candidates) { //check decay channel flag for candidate1 if (!(candidate1.hfflag() & 1 << DecayType::D0ToPiK)) { @@ -256,7 +258,8 @@ struct HfCorrelatorD0D0barMcRec { if (candidate1.isSelD0() < selectionFlagD0) { //discard candidates not selected as D0 in outer loop continue; } - flagD0Signal = candidate1.flagMCMatchRec() == 1 << DecayType::D0ToPiK; //flagD0Signal 'true' if candidate1 matched to D0 (particle) + flagD0Signal = candidate1.flagMCMatchRec() == 1 << DecayType::D0ToPiK; //flagD0Signal 'true' if candidate1 matched to D0 (particle) + flagD0Reflection = candidate1.flagMCMatchRec() == -(1 << DecayType::D0ToPiK); //flagD0Reflection 'true' if candidate1, selected as D0 (particle), is matched to D0bar (antiparticle) for (auto& candidate2 : candidates) { if (!(candidate2.hfflag() & 1 << DecayType::D0ToPiK)) { //check decay channel flag for candidate2 continue; @@ -264,7 +267,8 @@ struct HfCorrelatorD0D0barMcRec { if (candidate2.isSelD0bar() < selectionFlagD0bar) { //discard candidates not selected as D0bar in inner loop continue; } - flagD0barSignal = candidate2.flagMCMatchRec() == -(1 << DecayType::D0ToPiK); //flagD0barSignal 'true' if candidate2 matched to D0bar (antiparticle) + flagD0barSignal = candidate2.flagMCMatchRec() == -(1 << DecayType::D0ToPiK); //flagD0barSignal 'true' if candidate2 matched to D0bar (antiparticle) + flagD0barReflection = candidate2.flagMCMatchRec() == 1 << DecayType::D0ToPiK; //flagD0barReflection 'true' if candidate2, selected as D0bar (antiparticle), is matched to D0 (particle) if (cutYCandMax >= 0. && std::abs(YD0(candidate2)) > cutYCandMax) { continue; } @@ -276,11 +280,17 @@ struct HfCorrelatorD0D0barMcRec { continue; } //choice of options (D0/D0bar signal/bkg) - int pairSignalStatus = 0; //0 = bkg/bkg, 1 = bkg/sig, 2 = sig/bkg, 3 = sig/sig + int pairSignalStatus = 0; //0 = bkg/bkg, 1 = bkg/ref, 2 = bkg/sig, 3 = ref/bkg, 4 = ref/ref, 5 = ref/sig, 6 = sig/bkg, 7 = sig/ref, 8 = sig/sig if (flagD0Signal) { - pairSignalStatus += 2; + pairSignalStatus += 6; + } + if (flagD0Reflection) { + pairSignalStatus += 3; } if (flagD0barSignal) { + pairSignalStatus += 2; + } + if (flagD0barReflection) { pairSignalStatus += 1; } entryD0D0barPair(getDeltaPhi(candidate2.phi(), candidate1.phi()), diff --git a/Analysis/Tasks/PWGHF/taskCorrelationDDbar.cxx b/Analysis/Tasks/PWGHF/taskCorrelationDDbar.cxx index 3291b8d7ebd4a..18a0c303ddfb1 100644 --- a/Analysis/Tasks/PWGHF/taskCorrelationDDbar.cxx +++ b/Analysis/Tasks/PWGHF/taskCorrelationDDbar.cxx @@ -187,28 +187,43 @@ struct HfTaskCorrelationDDbarMcRec { HistogramRegistry registry{ "registry", //NOTE: use hMassD0 (from correlator task) for normalisation, and hMass2DCorrelationPairs for 2D-sideband-subtraction purposes - {{"hMass2DCorrelationPairsMCRecSigSig", stringDDbar + "2D SigSig - MC reco;inv. mass D (GeV/#it{c}^{2});inv. mass Dbar (GeV/#it{c}^{2});" + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{200, 1.6, 2.1}, {200, 1.6, 2.1}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() - {"hMass2DCorrelationPairsMCRecSigBkg", stringDDbar + "2D SigBkg - MC reco;inv. mass D (GeV/#it{c}^{2});inv. mass Dbar (GeV/#it{c}^{2});" + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{200, 1.6, 2.1}, {200, 1.6, 2.1}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {{"hMass2DCorrelationPairsMCRecBkgBkg", stringDDbar + "2D BkgBkg - MC reco;inv. mass D (GeV/#it{c}^{2});inv. mass Dbar (GeV/#it{c}^{2});" + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{200, 1.6, 2.1}, {200, 1.6, 2.1}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hMass2DCorrelationPairsMCRecBkgRef", stringDDbar + "2D BkgRef - MC reco;inv. mass D (GeV/#it{c}^{2});inv. mass Dbar (GeV/#it{c}^{2});" + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{200, 1.6, 2.1}, {200, 1.6, 2.1}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() {"hMass2DCorrelationPairsMCRecBkgSig", stringDDbar + "2D BkgSig - MC reco;inv. mass D (GeV/#it{c}^{2});inv. mass Dbar (GeV/#it{c}^{2});" + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{200, 1.6, 2.1}, {200, 1.6, 2.1}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() - {"hMass2DCorrelationPairsMCRecBkgBkg", stringDDbar + "2D BkgBkg - MC reco;inv. mass D (GeV/#it{c}^{2});inv. mass Dbar (GeV/#it{c}^{2});" + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{200, 1.6, 2.1}, {200, 1.6, 2.1}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hMass2DCorrelationPairsMCRecRefBkg", stringDDbar + "2D RefBkg - MC reco;inv. mass D (GeV/#it{c}^{2});inv. mass Dbar (GeV/#it{c}^{2});" + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{200, 1.6, 2.1}, {200, 1.6, 2.1}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hMass2DCorrelationPairsMCRecRefRef", stringDDbar + "2D RefRef - MC reco;inv. mass D (GeV/#it{c}^{2});inv. mass Dbar (GeV/#it{c}^{2});" + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{200, 1.6, 2.1}, {200, 1.6, 2.1}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hMass2DCorrelationPairsMCRecRefSig", stringDDbar + "2D RefSig - MC reco;inv. mass D (GeV/#it{c}^{2});inv. mass Dbar (GeV/#it{c}^{2});" + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{200, 1.6, 2.1}, {200, 1.6, 2.1}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hMass2DCorrelationPairsMCRecSigBkg", stringDDbar + "2D SigBkg - MC reco;inv. mass D (GeV/#it{c}^{2});inv. mass Dbar (GeV/#it{c}^{2});" + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{200, 1.6, 2.1}, {200, 1.6, 2.1}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hMass2DCorrelationPairsMCRecSigRef", stringDDbar + "2D SigRef - MC reco;inv. mass D (GeV/#it{c}^{2});inv. mass Dbar (GeV/#it{c}^{2});" + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{200, 1.6, 2.1}, {200, 1.6, 2.1}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hMass2DCorrelationPairsMCRecSigSig", stringDDbar + "2D SigSig - MC reco;inv. mass D (GeV/#it{c}^{2});inv. mass Dbar (GeV/#it{c}^{2});" + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{200, 1.6, 2.1}, {200, 1.6, 2.1}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() {"hDeltaEtaPtIntSignalRegionMCRec", stringMCReco + stringSignal + stringDeltaEta + "entries", {HistType::kTH1F, {{200, -10., 10.}}}}, {"hDeltaPhiPtIntSignalRegionMCRec", stringMCReco + stringSignal + stringDeltaPhi + "entries", {HistType::kTH1F, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}}}}, {"hCorrel2DPtIntSignalRegionMCRec", stringMCReco + stringSignal + stringDeltaPhi + stringDeltaEta + "entries", {HistType::kTH2F, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {200, -10., 10.}}}}, {"hDeltaPtDDbarSignalRegionMCRec", stringMCReco + stringSignal + stringDeltaPt + "entries", {HistType::kTH1F, {{144, -36., 36.}}}}, {"hDeltaPtMaxMinSignalRegionMCRec", stringMCReco + stringSignal + stringDeltaPtMaxMin + "entries", {HistType::kTH1F, {{72, 0., 36.}}}}, - {"hCorrel2DVsPtSignalRegionMCRecSigSig", stringMCReco + "SigSig" + stringSignal + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() - {"hCorrel2DVsPtSignalRegionMCRecSigBkg", stringMCReco + "SigBkg" + stringSignal + +stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() - {"hCorrel2DVsPtSignalRegionMCRecBkgSig", stringMCReco + "BkgSig" + stringSignal + +stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() - {"hCorrel2DVsPtSignalRegionMCRecBkgBkg", stringMCReco + "BkgBkg" + stringSignal + +stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSignalRegionMCRecBkgBkg", stringMCReco + "BkgBkg" + stringSignal + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSignalRegionMCRecBkgRef", stringMCReco + "BkgRef" + stringSignal + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSignalRegionMCRecBkgSig", stringMCReco + "BkgSig" + stringSignal + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSignalRegionMCRecRefBkg", stringMCReco + "RefBkg" + stringSignal + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSignalRegionMCRecRefRef", stringMCReco + "RefRef" + stringSignal + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSignalRegionMCRecRefSig", stringMCReco + "RefSig" + stringSignal + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSignalRegionMCRecSigBkg", stringMCReco + "SigBkg" + stringSignal + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSignalRegionMCRecSigRef", stringMCReco + "SigRef" + stringSignal + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSignalRegionMCRecSigSig", stringMCReco + "SigSig" + stringSignal + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() {"hDeltaEtaPtIntSidebandsMCRec", stringMCReco + stringSideband + stringDeltaEta + "entries", {HistType::kTH1F, {{200, -10., 10.}}}}, {"hDeltaPhiPtIntSidebandsMCRec", stringMCReco + stringSideband + stringDeltaPhi + "entries", {HistType::kTH1F, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}}}}, {"hCorrel2DPtIntSidebandsMCRec", stringMCReco + stringSideband + stringDeltaPhi + stringDeltaEta + "entries", {HistType::kTH2F, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {200, -10., 10.}}}}, {"hDeltaPtDDbarSidebandsMCRec", stringMCReco + stringSideband + stringDeltaPt + "entries", {HistType::kTH1F, {{144, -36., 36.}}}}, {"hDeltaPtMaxMinSidebandsMCRec", stringMCReco + stringSideband + stringDeltaPtMaxMin + "entries", {HistType::kTH1F, {{72, 0., 36.}}}}, - {"hCorrel2DVsPtSidebandsMCRecSigSig", stringMCReco + "SigSig" + stringSideband + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() - should be empty, kept for cross-check and debug - {"hCorrel2DVsPtSidebandsMCRecSigBkg", stringMCReco + "SigBkg" + stringSideband + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSidebandsMCRecBkgBkg", stringMCReco + "BkgBkg" + stringSideband + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSidebandsMCRecBkgRef", stringMCReco + "BkgRef" + stringSideband + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() {"hCorrel2DVsPtSidebandsMCRecBkgSig", stringMCReco + "BkgSig" + stringSideband + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() - {"hCorrel2DVsPtSidebandsMCRecBkgBkg", stringMCReco + "BkgBkg" + stringSideband + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}}}; //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSidebandsMCRecRefBkg", stringMCReco + "RefBkg" + stringSideband + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSidebandsMCRecRefRef", stringMCReco + "RefRef" + stringSideband + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSidebandsMCRecRefSig", stringMCReco + "RefSig" + stringSideband + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSidebandsMCRecSigBkg", stringMCReco + "SigBkg" + stringSideband + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSidebandsMCRecSigRef", stringMCReco + "SigRef" + stringSideband + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}, //note: axes 3 and 4 (the pT) are updated in the init() + {"hCorrel2DVsPtSidebandsMCRecSigSig", stringMCReco + "SigSig" + stringSideband + stringDeltaPhi + stringDeltaEta + stringPtD + stringPtDbar + "entries", {HistType::kTHnSparseD, {{32, -o2::constants::math::PI / 2., 3. * o2::constants::math::PI / 2.}, {120, -6., 6.}, {10, 0., 10.}, {10, 0., 10.}}}}}}; //note: axes 3 and 4 (the pT) are updated in the init() //pT ranges for correlation plots: the default values are those embedded in hf_cuts_d0_topik (i.e. the mass pT bins), but can be redefined via json files Configurable> binsCorrelations{"ptBinsForCorrelations", std::vector{pTBinsCorrelations_v}, "pT bin limits for correlation plots"}; @@ -227,18 +242,33 @@ struct HfTaskCorrelationDDbarMcRec { const double* valuespTaxis = binsCorrelations->data(); for (int i = 2; i <= 3; i++) { - registry.get(HIST("hMass2DCorrelationPairsMCRecSigSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); - registry.get(HIST("hMass2DCorrelationPairsMCRecSigBkg"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); - registry.get(HIST("hMass2DCorrelationPairsMCRecBkgSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); registry.get(HIST("hMass2DCorrelationPairsMCRecBkgBkg"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); - registry.get(HIST("hCorrel2DVsPtSignalRegionMCRecSigSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); - registry.get(HIST("hCorrel2DVsPtSignalRegionMCRecSigBkg"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); - registry.get(HIST("hCorrel2DVsPtSignalRegionMCRecBkgSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hMass2DCorrelationPairsMCRecBkgRef"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hMass2DCorrelationPairsMCRecBkgSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hMass2DCorrelationPairsMCRecRefBkg"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hMass2DCorrelationPairsMCRecRefRef"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hMass2DCorrelationPairsMCRecRefSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hMass2DCorrelationPairsMCRecSigBkg"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hMass2DCorrelationPairsMCRecSigRef"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hMass2DCorrelationPairsMCRecSigSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); registry.get(HIST("hCorrel2DVsPtSignalRegionMCRecBkgBkg"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); - registry.get(HIST("hCorrel2DVsPtSidebandsMCRecSigSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); - registry.get(HIST("hCorrel2DVsPtSidebandsMCRecSigBkg"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); - registry.get(HIST("hCorrel2DVsPtSidebandsMCRecBkgSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSignalRegionMCRecBkgRef"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSignalRegionMCRecBkgSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSignalRegionMCRecRefBkg"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSignalRegionMCRecRefRef"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSignalRegionMCRecRefSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSignalRegionMCRecSigBkg"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSignalRegionMCRecSigRef"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSignalRegionMCRecSigSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); registry.get(HIST("hCorrel2DVsPtSidebandsMCRecBkgBkg"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSidebandsMCRecBkgRef"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSidebandsMCRecBkgSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSidebandsMCRecRefBkg"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSidebandsMCRecRefRef"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSidebandsMCRecRefSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSidebandsMCRecSigBkg"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSidebandsMCRecSigRef"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); + registry.get(HIST("hCorrel2DVsPtSidebandsMCRecSigSig"))->GetAxis(i)->Set(nBinspTaxis, valuespTaxis); } } @@ -265,13 +295,28 @@ struct HfTaskCorrelationDDbarMcRec { case 0: //D Bkg, Dbar Bkg registry.fill(HIST("hMass2DCorrelationPairsMCRecBkgBkg"), massD, massDbar, ptD, ptDbar); break; - case 1: //D Bkg, Dbar Sig + case 1: //D Bkg, Dbar Ref + registry.fill(HIST("hMass2DCorrelationPairsMCRecBkgRef"), massD, massDbar, ptD, ptDbar); + break; + case 2: //D Bkg, Dbar Sig registry.fill(HIST("hMass2DCorrelationPairsMCRecBkgSig"), massD, massDbar, ptD, ptDbar); break; - case 2: //D Sig, Dbar Bkg + case 3: //D Ref, Dbar Bkg + registry.fill(HIST("hMass2DCorrelationPairsMCRecRefBkg"), massD, massDbar, ptD, ptDbar); + break; + case 4: //D Ref, Dbar Ref + registry.fill(HIST("hMass2DCorrelationPairsMCRecRefRef"), massD, massDbar, ptD, ptDbar); + break; + case 5: //D Ref, Dbar Sig + registry.fill(HIST("hMass2DCorrelationPairsMCRecRefSig"), massD, massDbar, ptD, ptDbar); + break; + case 6: //D Sig, Dbar Bkg registry.fill(HIST("hMass2DCorrelationPairsMCRecSigBkg"), massD, massDbar, ptD, ptDbar); break; - case 3: //D Sig, Dbar Sig + case 7: //D Sig, Dbar Ref + registry.fill(HIST("hMass2DCorrelationPairsMCRecSigRef"), massD, massDbar, ptD, ptDbar); + break; + case 8: //D Sig, Dbar Sig registry.fill(HIST("hMass2DCorrelationPairsMCRecSigSig"), massD, massDbar, ptD, ptDbar); break; default: //should not happen for MC reco @@ -290,13 +335,28 @@ struct HfTaskCorrelationDDbarMcRec { case 0: //D Bkg, Dbar Bkg registry.fill(HIST("hCorrel2DVsPtSignalRegionMCRecBkgBkg"), deltaPhi, deltaEta, ptD, ptDbar); break; - case 1: //D Bkg, Dbar Sig + case 1: //D Bkg, Dbar Ref + registry.fill(HIST("hCorrel2DVsPtSignalRegionMCRecBkgRef"), deltaPhi, deltaEta, ptD, ptDbar); + break; + case 2: //D Bkg, Dbar Sig registry.fill(HIST("hCorrel2DVsPtSignalRegionMCRecBkgSig"), deltaPhi, deltaEta, ptD, ptDbar); break; - case 2: //D Sig, Dbar Bkg + case 3: //D Ref, Dbar Bkg + registry.fill(HIST("hCorrel2DVsPtSignalRegionMCRecRefBkg"), deltaPhi, deltaEta, ptD, ptDbar); + break; + case 4: //D Ref, Dbar Ref + registry.fill(HIST("hCorrel2DVsPtSignalRegionMCRecRefRef"), deltaPhi, deltaEta, ptD, ptDbar); + break; + case 5: //D Ref, Dbar Sig + registry.fill(HIST("hCorrel2DVsPtSignalRegionMCRecRefSig"), deltaPhi, deltaEta, ptD, ptDbar); + break; + case 6: //D Sig, Dbar Bkg registry.fill(HIST("hCorrel2DVsPtSignalRegionMCRecSigBkg"), deltaPhi, deltaEta, ptD, ptDbar); break; - case 3: //D Sig, Dbar Sig + case 7: //D Sig, Dbar Ref + registry.fill(HIST("hCorrel2DVsPtSignalRegionMCRecSigRef"), deltaPhi, deltaEta, ptD, ptDbar); + break; + case 8: //D Sig, Dbar Sig registry.fill(HIST("hCorrel2DVsPtSignalRegionMCRecSigSig"), deltaPhi, deltaEta, ptD, ptDbar); break; default: //should not happen for MC reco @@ -318,13 +378,28 @@ struct HfTaskCorrelationDDbarMcRec { case 0: //D Bkg, Dbar Bkg registry.fill(HIST("hCorrel2DVsPtSidebandsMCRecBkgBkg"), deltaPhi, deltaEta, ptD, ptDbar); break; - case 1: //D Bkg, Dbar Sig + case 1: //D Bkg, Dbar Ref + registry.fill(HIST("hCorrel2DVsPtSidebandsMCRecBkgRef"), deltaPhi, deltaEta, ptD, ptDbar); + break; + case 2: //D Bkg, Dbar Sig registry.fill(HIST("hCorrel2DVsPtSidebandsMCRecBkgSig"), deltaPhi, deltaEta, ptD, ptDbar); break; - case 2: //D Sig, Dbar Bkg + case 3: //D Ref, Dbar Bkg + registry.fill(HIST("hCorrel2DVsPtSidebandsMCRecRefBkg"), deltaPhi, deltaEta, ptD, ptDbar); + break; + case 4: //D Ref, Dbar Ref + registry.fill(HIST("hCorrel2DVsPtSidebandsMCRecRefRef"), deltaPhi, deltaEta, ptD, ptDbar); + break; + case 5: //D Ref, Dbar Sig + registry.fill(HIST("hCorrel2DVsPtSidebandsMCRecRefSig"), deltaPhi, deltaEta, ptD, ptDbar); + break; + case 6: //D Sig, Dbar Bkg registry.fill(HIST("hCorrel2DVsPtSidebandsMCRecSigBkg"), deltaPhi, deltaEta, ptD, ptDbar); break; - case 3: //D Sig, Dbar Sig + case 7: //D Sig, Dbar Ref + registry.fill(HIST("hCorrel2DVsPtSidebandsMCRecSigRef"), deltaPhi, deltaEta, ptD, ptDbar); + break; + case 8: //D Sig, Dbar Sig registry.fill(HIST("hCorrel2DVsPtSidebandsMCRecSigSig"), deltaPhi, deltaEta, ptD, ptDbar); break; default: //should not happen for MC reco From 7a4cd1acfa1f4a1829a6dbcc3cf9c99f803183f4 Mon Sep 17 00:00:00 2001 From: Fabio Colamaria Date: Tue, 29 Jun 2021 11:47:44 +0200 Subject: [PATCH 169/314] Adapted cases for D+D- to preserve compatibility with taskCorrelationsDDbar --- Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx index 0e98617a61a4c..a2e58aec61e62 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx @@ -267,12 +267,12 @@ struct HfCorrelatorDplusDminusMcRec { continue; } //choice of options (Dplus/Dminus signal/bkg) - int pairSignalStatus = 0; //0 = bkg/bkg, 1 = bkg/sig, 2 = sig/bkg, 3 = sig/sig + int pairSignalStatus = 0; //0 = bkg/bkg, 1 = bkg/ref, 2 = bkg/sig, 3 = ref/bkg, 4 = ref/ref, 5 = ref/sig, 6 = sig/bkg, 7 = sig/ref, 8 = sig/sig. Of course only 0,2,6,8 are relevant for D+D- if (flagDplusSignal) { - pairSignalStatus += 2; + pairSignalStatus += 6; } if (flagDminusSignal) { - pairSignalStatus += 1; + pairSignalStatus += 2; } entryDplusDminusPair(getDeltaPhi(candidate2.phi(), candidate1.phi()), candidate2.eta() - candidate1.eta(), From 9be588a22c097e63697daceb28fdaa364932c19f Mon Sep 17 00:00:00 2001 From: Fabio Colamaria Date: Mon, 12 Jul 2021 08:38:15 +0200 Subject: [PATCH 170/314] Fixed histogram labels --- Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx | 6 +++--- Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx | 8 ++++---- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx index 1b4c9fbd1fab7..f2e63629da705 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx @@ -198,9 +198,9 @@ struct HfCorrelatorD0D0barMcRec { registry.add("hMassD0MCRecSig", "D0 signal candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); registry.add("hMassD0MCRecRefl", "D0 reflection candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); registry.add("hMassD0MCRecBkg", "D0 background candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); - registry.add("hMassD0barMCRecSig", "D0bar signal candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); - registry.add("hMassD0barMCRecRefl", "D0bar reflection candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); - registry.add("hMassD0barMCRecBkg", "D0bar background candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassD0barMCRecSig", "D0bar signal candidates - MC reco;inv. mass D0bar only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassD0barMCRecRefl", "D0bar reflection candidates - MC reco;inv. mass D0bar only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassD0barMCRecBkg", "D0bar background candidates - MC reco;inv. mass D0bar only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); } Filter filterSelectCandidates = (aod::hf_selcandidate_d0::isSelD0 >= selectionFlagD0 || aod::hf_selcandidate_d0::isSelD0bar >= selectionFlagD0bar); diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx index a2e58aec61e62..d6dbf0ad40c61 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx @@ -193,10 +193,10 @@ struct HfCorrelatorDplusDminusMcRec { void init(o2::framework::InitContext&) { - registry.add("hMassDplusMCRecSig", "Dplus signal candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); - registry.add("hMassDminusMCRecSig", "Dminus signal candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); - registry.add("hMassDplusMCRecBkg", "Dplus background candidates - MC reco;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); - registry.add("hMassDminusMCRecBkg", "Dminus background candidates - MC reco;inv. mass D0 only (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassDplusMCRecSig", "Dplus signal candidates - MC reco;inv. mass D+ only (#pi K #pi) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassDminusMCRecSig", "Dminus signal candidates - MC reco;inv. mass D- only (#pi K #pi) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassDplusMCRecBkg", "Dplus background candidates - MC reco;inv. mass D+ only (#pi K #pi) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); + registry.add("hMassDminusMCRecBkg", "Dminus background candidates - MC reco;inv. mass D- only (#pi K #pi) (GeV/#it{c}^{2});entries", {HistType::kTH2F, {{120, 1.5848, 2.1848}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); } Filter filterSelectCandidates = (aod::hf_selcandidate_dplus::isSelDplusToPiKPi >= selectionFlagDplus); From 82b561f3fa79cc5bfe5ea09b360fc6b4d991a1f2 Mon Sep 17 00:00:00 2001 From: Robin Albert Andre Caron Date: Fri, 21 May 2021 15:37:19 +0200 Subject: [PATCH 171/314] Add the geometry misaligner class --- .../include/MFTSimulation/Detector.h | 4 +- .../MFTSimulation/GeometryMisAligner.h | 248 ++++++++ .../ITSMFT/MFT/simulation/src/Detector.cxx | 31 + .../MFT/simulation/src/GeometryMisAligner.cxx | 578 ++++++++++++++++++ .../MFT/simulation/src/MFTSimulationLinkDef.h | 1 + 5 files changed, 861 insertions(+), 1 deletion(-) create mode 100644 Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h create mode 100644 Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h index f57073eea3c89..1e9d09a6080a6 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h @@ -117,7 +117,9 @@ class Detector : public o2::base::DetImpl /// \param parent path of the parent volume /// \param lastUID on output, UID of the last volume void addAlignableVolumesChip(Int_t hf, Int_t dk, Int_t lr, Int_t ms, TString& parent, Int_t& lastUID) const; - + + void MisalignGeometry() const; // adding 'overide' will be inherited from FairApplication + Int_t isVersion() const { return mVersion; } /// Creating materials for the detector diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h new file mode 100644 index 0000000000000..33d09c33243cf --- /dev/null +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h @@ -0,0 +1,248 @@ +// Copyright CERN and copyright holders of ALICE O2. This software is +// distributed under the terms of the GNU General Public License v3 (GPL +// Version 3), copied verbatim in the file "COPYING". +// +// See http://alice-o2.web.cern.ch/license for full licensing information. +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file GeometryMisAligner.h +/// \brief This macro is used to misalign the existing MFT geometry +/// \author robin.caron@cern.ch (based on MUON/MCH AliRoot macros) +/// \date 01/07/2020 +/// + +#ifndef ALICEO2_MFT_GEOMETRYMISALIGNER_H +#define ALICEO2_MFT_GEOMETRYMISALIGNER_H + +#include + +class TGeoCombiTrans; +class TClonesArray; + +namespace o2 +{ +namespace mft +{ +class GeometryTGeo; +} +} // namespace o2 + +namespace o2 +{ +namespace mft +{ +class GeometryMisAligner : public TObject +{ + public: + GeometryMisAligner(Double_t cartXMisAligM, Double_t cartXMisAligW, Double_t cartYMisAligM, Double_t cartYMisAligW, Double_t angMisAligM, Double_t angMisAligW); + GeometryMisAligner(Double_t cartMisAligM, Double_t cartMisAligW, Double_t angMisAligM, Double_t angMisAligW); + GeometryMisAligner(Double_t cartMisAligW, Double_t angMisAligW); + GeometryMisAligner(); + ~GeometryMisAligner() override; + + /// Not implemented + GeometryMisAligner(const GeometryMisAligner& right); + /// Not implemented + GeometryMisAligner& operator=(const GeometryMisAligner& right); + + //_________________________________________________________________ + // methods + + GeometryTGeo* mGeometryTGeo; //! access to geometry details + + bool matrixToAngles(const double* rot, double& psi, double& theta, double& phi); + + // return a misaligned geometry obtained from the existing one. + void MisAlign(bool verbose = false); + + /// Set sensor cartesian displacement parameters different along x, y + void SetSensorCartMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean = 0., Double_t zwidth = 0.) + { + fSensorMisAlig[0][0] = xmean; + fSensorMisAlig[0][1] = xwidth; + fSensorMisAlig[1][0] = ymean; + fSensorMisAlig[1][1] = ywidth; + fSensorMisAlig[2][0] = zmean; + fSensorMisAlig[2][1] = zwidth; + } + + /// Set sensor cartesian displacement parameters, the same along x, y + void SetSensorCartMisAlig(Double_t mean, Double_t width) + { + fSensorMisAlig[0][0] = mean; + fSensorMisAlig[0][1] = width; + fSensorMisAlig[1][0] = mean; + fSensorMisAlig[1][1] = width; + } + + /// Set sensor angular displacement + void SetSensorAngMisAlig(Double_t zmean, Double_t zwidth, Double_t xmean = 0., Double_t xwidth = 0., Double_t ymean = 0., Double_t ywidth = 0.) + { + fSensorMisAlig[3][0] = xmean; + fSensorMisAlig[3][1] = xwidth; + fSensorMisAlig[4][0] = ymean; + fSensorMisAlig[4][1] = ywidth; + fSensorMisAlig[5][0] = zmean; + fSensorMisAlig[5][1] = zwidth; + } + + /// Set sensor cartesian displacement (Kept for backward compatibility) + void SetMaxSensorCartMisAlig(Double_t width) + { + fSensorMisAlig[0][0] = 0.0; + fSensorMisAlig[0][1] = width; + fSensorMisAlig[1][0] = 0.0; + fSensorMisAlig[1][1] = width; + } + + /// Set sensor angular displacement (Kept for backward compatibility) + void SetMaxSensorAngMisAlig(Double_t width) + { + fSensorMisAlig[5][0] = 0.0; + fSensorMisAlig[5][1] = width; + } + + /// Set sensor cartesian displacement parameters different along x, y + void SetLadderCartMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean = 0., Double_t zwidth = 0.) + { + fLadderMisAlig[0][0] = xmean; + fLadderMisAlig[0][1] = xwidth; + fLadderMisAlig[1][0] = ymean; + fLadderMisAlig[1][1] = ywidth; + fLadderMisAlig[2][0] = zmean; + fLadderMisAlig[2][1] = zwidth; + } + + /// Set ladder cartesian displacement parameters, the same along x, y + void SetLadderCartMisAlig(Double_t mean, Double_t width) + { + fLadderMisAlig[0][0] = mean; + fLadderMisAlig[0][1] = width; + fLadderMisAlig[1][0] = mean; + fLadderMisAlig[1][1] = width; + } + + /// Set ladder angular displacement + void SetLadderAngMisAlig(Double_t zmean, Double_t zwidth, Double_t xmean = 0., Double_t xwidth = 0., Double_t ymean = 0., Double_t ywidth = 0.) + { + fLadderMisAlig[3][0] = xmean; + fLadderMisAlig[3][1] = xwidth; + fLadderMisAlig[4][0] = ymean; + fLadderMisAlig[4][1] = ywidth; + fLadderMisAlig[5][0] = zmean; + fLadderMisAlig[5][1] = zwidth; + } + + /// Set cartesian displacement for ladder (Kept for backward compatibility) + void SetMaxLadderCartMisAlig(Double_t width) + { + fLadderMisAlig[0][0] = 0.0; + fLadderMisAlig[0][1] = width; + fLadderMisAlig[1][0] = 0.0; + fLadderMisAlig[1][1] = width; + } + + /// Set angular displacement for ladder (Kept for backward compatibility) + void SetMaxLadderAngMisAlig(Double_t width) + { + fLadderMisAlig[5][0] = 0.0; + fLadderMisAlig[5][1] = width; + } + + void SetXYAngMisAligFactor(Double_t factor); + + void SetZCartMisAligFactor(Double_t factor); + + /// Set option for gaussian distribution + void SetUseGaus(Bool_t usegaus) + { + fUseGaus = usegaus; + fUseUni = !usegaus; + } + + /// Set option for uniform distribution + void SetUseUni(Bool_t useuni) + { + fUseGaus = !useuni; + fUseUni = useuni; + } + + /// Set half cartesian displacement parameters + void SetHalfCartMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean, Double_t zwidth) + { + fHalfMisAlig[0][0] = xmean; + fHalfMisAlig[0][1] = xwidth; + fHalfMisAlig[1][0] = ymean; + fHalfMisAlig[1][1] = ywidth; + fHalfMisAlig[2][0] = zmean; + fHalfMisAlig[2][1] = zwidth; + } + + /// Set half cartesian displacement parameters + void SetHalfAngMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean, Double_t zwidth) + { + fHalfMisAlig[3][0] = xmean; + fHalfMisAlig[3][1] = xwidth; + fHalfMisAlig[4][0] = ymean; + fHalfMisAlig[4][1] = ywidth; + fHalfMisAlig[5][0] = zmean; + fHalfMisAlig[5][1] = zwidth; + } + + /// Set disk cartesian displacement parameters + void SetDiskCartMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean, Double_t zwidth) + { + fDiskMisAlig[0][0] = xmean; + fDiskMisAlig[0][1] = xwidth; + fDiskMisAlig[1][0] = ymean; + fDiskMisAlig[1][1] = ywidth; + fDiskMisAlig[2][0] = zmean; + fDiskMisAlig[2][1] = zwidth; + } + + /// Set disk cartesian displacement parameters + void SetDiskAngMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean, Double_t zwidth) + { + fDiskMisAlig[3][0] = xmean; + fDiskMisAlig[3][1] = xwidth; + fDiskMisAlig[4][0] = ymean; + fDiskMisAlig[4][1] = ywidth; + fDiskMisAlig[5][0] = zmean; + fDiskMisAlig[5][1] = zwidth; + } + + /// Set alignment resolution to misalign objects to be stored in CCDB + void SetAlignmentResolution(const TClonesArray* misAlignArray, Int_t chId = -1, Double_t chResX = -1., Double_t chResY = -1., Double_t deResX = -1., Double_t deResY = -1.); + + protected: + private: + // return a misaligned transformation + TGeoCombiTrans MisAlignLadder() const; + TGeoCombiTrans MisAlignDisk() const; + TGeoCombiTrans MisAlignSensor() const; + TGeoCombiTrans MisAlignHalf() const; + + void GetUniMisAlign(Double_t cartMisAlig[3], Double_t angMisAlig[3], const Double_t lParMisAlig[6][2]) const; + void GetGausMisAlign(Double_t cartMisAlig[3], Double_t angMisAlig[3], const Double_t lParMisAlig[6][2]) const; + + Bool_t fUseUni; ///< use uniform distribution for misaligmnets + Bool_t fUseGaus; ///< use gaussian distribution for misaligmnets + + Double_t fSensorMisAlig[6][2]; ///< Mean and width of the displacements of the sensors along x,y,z (translations) and about x,y,z (rotations) + Double_t fLadderMisAlig[6][2]; ///< Mean and width of the displacements of the ladder along x,y,z (translations) and about x,y,z (rotations) + Double_t fDiskMisAlig[6][2]; ///< Mean and width of the displacements of the half-disk along x,y,z (translations) and about x,y,z (rotations) + Double_t fHalfMisAlig[6][2]; ///< Mean and width of the displacements of the half-MF along x,y,z (translations) and about x,y,z (rotations) + + Double_t fXYAngMisAligFactor; ///< factor (<1) to apply to angular misalignment range since range of motion is restricted out of the xy plane + Double_t fZCartMisAligFactor; ///< factor (<1) to apply to cartetian misalignment range since range of motion is restricted in z direction + + ClassDefOverride(GeometryMisAligner, 4) // Geometry parametrisation +}; + +} // namespace mft +} // namespace o2 + +#endif //ALICEO2_MFT_GEOMETRYMISALIGNER_H diff --git a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx index 7a6244c2c5a36..b5e2040b46d81 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx @@ -20,6 +20,7 @@ #include "MFTBase/GeometryTGeo.h" #include "MFTSimulation/Detector.h" +#include "MFTSimulation/GeometryMisAligner.h" #include "Field/MagneticField.h" #include "SimulationDataFormat/Stack.h" @@ -711,6 +712,36 @@ void Detector::addAlignableVolumesChip(Int_t hf, Int_t dk, Int_t lr, Int_t ms, } } +//_____________________________________________________________________________ +void Detector::MisalignGeometry() const +{ + // Function to misalign the MFT geometry + + // Initialize the misaligner + o2::mft::GeometryMisAligner aGMA; + + aGMA.SetHalfCartMisAlig(0., 0., 0., 0., 0., 0.); // half-MFT translated on X, Y, Z axis + aGMA.SetHalfAngMisAlig(0., 0., 0., 0., 0., 0.); // half-MFT rotated on Z, X, Y axis + + aGMA.SetDiskCartMisAlig(0., 0., 0., 0., 0., 0.); // Half-disks translated on X, Y, Z axis + aGMA.SetDiskAngMisAlig(0., 0., 0., 0., 0., 0.); // Half-disks rotated on Z, X, Y axis + + aGMA.SetLadderCartMisAlig(0., 0., 0., 0., 0., 0.); // Ladders translated on X, Y, Z axis + aGMA.SetLadderAngMisAlig(0., 0., 0., 0., 0., 0.); // Ladders rotated on Z, X, Y axis + + aGMA.SetSensorCartMisAlig(0., 0., 0., 0., 0., 0.); // Sensors translated on X, Y, Z axis + aGMA.SetSensorAngMisAlig(0., 0., 0., 0., 0., 0.); // Sensors rotated on Z, X, Y axis + + aGMA.MisAlign(true); // Misalign the geometry + + // lock the geometry, or unlock with "false" + gGeoManager->RefreshPhysicalNodes(); + + // store the misaligned geometry in a root file + gGeoManager->Export("o2sim_geometry_misaligned.root"); + +} + //_____________________________________________________________________________ void Detector::EndOfEvent() { Reset(); } diff --git a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx new file mode 100644 index 0000000000000..68ce5eb62c6e1 --- /dev/null +++ b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx @@ -0,0 +1,578 @@ +// Copyright CERN and copyright holders of ALICE O2. This software is +// distributed under the terms of the GNU General Public License v3 (GPL +// Version 3), copied verbatim in the file "COPYING". +// +// See http://alice-o2.web.cern.ch/license for full licensing information. +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file GeometryMisAligner.cxx +/// \brief This macro is used to misalign the existing MFT geometry +/// \author robin.caron@cern.ch (based on MUON/MCH AliRoot macros) +/// \date 01/07/2020 + +/// This macro performs the misalignment of an existing MFT geometry +/// based on the standard definition of the detector elements in +/// the MFTGeometryTransformer class. +/// +/// It uses GeometryMisAligner : +/// - Creates a new MFTGeometryTransformer and GeometryMisAligner +/// - Loads the geometry from the specified geometry file (default is geometry.root) +/// - Creates a second MFTGeometryTransformer by misaligning the existing +/// one using GeometryMisAligner::MisAlign +/// - User has to specify the magnitude of the alignments, in the Cartesian +/// co-ordiantes (which are used to apply translation misalignments) and in the +/// spherical co-ordinates (which are used to apply angular displacements) +/// - User can also set misalignment ranges by hand using the methods : +/// SetMaxCartMisAlig, SetMaxAngMisAlig, SetXYAngMisAligFactor +/// (last method takes account of the fact that the misalingment is greatest in +/// the XY plane, since the detection elements are fixed to a support structure +/// in this plane. Misalignments in the XZ and YZ plane will be very small +/// compared to those in the XY plane, which are small already - of the order +/// of microns) +/// - Default behavior generates a "residual" misalignment using gaussian +/// distributions. Uniform distributions can still be used, see +/// GeometryMisAligner. +/// - User can also generate half, disk, ladder misalignments using: +/// SetHalfCartMisAlig and SetHalfAngMisAlig, +/// SetDiskCartMisAlig and SetDiskAngMisAlig, +/// SetLadderCartMisAlig and SetLadderAngMisAlig, +/// +/// Note: If the detection elements are allowed to be misaligned in all +/// directions, this has consequences for the alignment algorithm, which +/// needs to know the number of free parameters. Eric only allowed 3 : +/// x,y,theta_xy, but in principle z and the other two angles are alignable +/// as well. +/// +//----------------------------------------------------------------------------- + +#include "MFTSimulation/GeometryMisAligner.h" + +#include "MFTBase/Geometry.h" +#include "MFTBase/GeometryTGeo.h" +#include "MFTBase/GeometryBuilder.h" + +#include "MFTSimulation/Detector.h" + +#include "DetectorsCommonDataFormats/DetID.h" +#include "DetectorsCommonDataFormats/AlignParam.h" + +#include +#include +#include +#include +#include +#include +#include + +#include +#include +#include +#include + +#include "Framework/Logger.h" + +using namespace o2::mft; +using namespace o2::detectors; + +ClassImp(o2::mft::GeometryMisAligner); + +//______________________________________________________________________________ +GeometryMisAligner::GeometryMisAligner(Double_t cartXMisAligM, Double_t cartXMisAligW, Double_t cartYMisAligM, Double_t cartYMisAligW, Double_t angMisAligM, Double_t angMisAligW) + : TObject(), + fUseUni(kFALSE), + fUseGaus(kTRUE), + fXYAngMisAligFactor(0.0), + fZCartMisAligFactor(0.0) +{ + /// Standard constructor + for (Int_t i = 0; i < 6; i++) { + for (Int_t j = 0; j < 2; j++) { + fLadderMisAlig[i][j] = 0.0; + fDiskMisAlig[i][j] = 0.0; + fSensorMisAlig[i][j] = 0.0; + fHalfMisAlig[i][j] = 0.0; + } + } + fLadderMisAlig[0][0] = cartXMisAligM; + fLadderMisAlig[0][1] = cartXMisAligW; + fLadderMisAlig[1][0] = cartYMisAligM; + fLadderMisAlig[1][1] = cartYMisAligW; + fLadderMisAlig[5][0] = angMisAligM; + fLadderMisAlig[5][1] = angMisAligW; +} + +//______________________________________________________________________________ +GeometryMisAligner::GeometryMisAligner(Double_t cartMisAligM, Double_t cartMisAligW, Double_t angMisAligM, Double_t angMisAligW) + : TObject(), + fUseUni(kFALSE), + fUseGaus(kTRUE), + fXYAngMisAligFactor(0.0), + fZCartMisAligFactor(0.0) +{ + /// Standard constructor + for (Int_t i = 0; i < 6; i++) { + for (Int_t j = 0; j < 2; j++) { + fLadderMisAlig[i][j] = 0.0; + fDiskMisAlig[i][j] = 0.0; + fSensorMisAlig[i][j] = 0.0; + fHalfMisAlig[i][j] = 0.0; + } + } + fLadderMisAlig[0][0] = cartMisAligM; + fLadderMisAlig[0][1] = cartMisAligW; + fLadderMisAlig[1][0] = cartMisAligM; + fLadderMisAlig[1][1] = cartMisAligW; + fLadderMisAlig[5][0] = angMisAligM; + fLadderMisAlig[5][1] = angMisAligW; +} + +//______________________________________________________________________________ +GeometryMisAligner::GeometryMisAligner(Double_t cartMisAlig, Double_t angMisAlig) + : TObject(), + fUseUni(kTRUE), + fUseGaus(kFALSE), + fXYAngMisAligFactor(0.0), + fZCartMisAligFactor(0.0) +{ + /// Standard constructor + for (Int_t i = 0; i < 6; i++) { + for (Int_t j = 0; j < 2; j++) { + fLadderMisAlig[i][j] = 0.0; + fDiskMisAlig[i][j] = 0.0; + fSensorMisAlig[i][j] = 0.0; + fHalfMisAlig[i][j] = 0.0; + } + } + fLadderMisAlig[0][1] = cartMisAlig; + fLadderMisAlig[1][1] = cartMisAlig; + fLadderMisAlig[5][1] = angMisAlig; +} + +//_____________________________________________________________________________ +GeometryMisAligner::GeometryMisAligner() + : TObject(), + fUseUni(kTRUE), + fUseGaus(kFALSE), + fXYAngMisAligFactor(0.0), + fZCartMisAligFactor(0.0) +{ + /// Default constructor + for (Int_t i = 0; i < 6; i++) { + for (Int_t j = 0; j < 2; j++) { + fLadderMisAlig[i][j] = 0.0; + fDiskMisAlig[i][j] = 0.0; + fSensorMisAlig[i][j] = 0.0; + fHalfMisAlig[i][j] = 0.0; + } + } +} + +//______________________________________________________________________________ +GeometryMisAligner::~GeometryMisAligner() +{ + /// Destructor +} + +//_________________________________________________________________________ +void GeometryMisAligner::SetXYAngMisAligFactor(Double_t factor) +{ + /// Set XY angular misalign factor + + if (TMath::Abs(factor) > 1.0 && factor > 0.) { + fXYAngMisAligFactor = factor; + fLadderMisAlig[3][0] = fLadderMisAlig[5][0] * factor; // These lines were + fLadderMisAlig[3][1] = fLadderMisAlig[5][1] * factor; // added to keep + fLadderMisAlig[4][0] = fLadderMisAlig[5][0] * factor; // backward + fLadderMisAlig[4][1] = fLadderMisAlig[5][1] * factor; // compatibility + } else + LOG(ERROR) << "Invalid XY angular misalign factor, " << factor; +} + +//_________________________________________________________________________ +void GeometryMisAligner::SetZCartMisAligFactor(Double_t factor) +{ + /// Set XY angular misalign factor + if (TMath::Abs(factor) < 1.0 && factor > 0.) { + fZCartMisAligFactor = factor; + fLadderMisAlig[2][0] = fLadderMisAlig[0][0]; + fLadderMisAlig[2][1] = fLadderMisAlig[0][1] * factor; + } else + LOG(ERROR) << "Invalid Z cartesian misalign factor, " << factor; +} + +//_________________________________________________________________________ +void GeometryMisAligner::GetUniMisAlign(double cartMisAlig[3], double angMisAlig[3], const double lParMisAlig[6][2]) const +{ + /// Misalign using uniform distribution + + /// misalign the centre of the local transformation + /// rotation axes : + /// fAngMisAlig[1,2,3] = [x,y,z] + /// Assume that misalignment about the x and y axes (misalignment of z plane) + /// is much smaller, since the entire detection plane has to be moved (the + /// detection elements are on a support structure), while rotation of the x-y + /// plane is more free. + + cartMisAlig[0] = gRandom->Uniform(-lParMisAlig[0][1] + lParMisAlig[0][0], lParMisAlig[0][0] + lParMisAlig[0][1]); + cartMisAlig[1] = gRandom->Uniform(-lParMisAlig[1][1] + lParMisAlig[1][0], lParMisAlig[1][0] + lParMisAlig[1][1]); + cartMisAlig[2] = gRandom->Uniform(-lParMisAlig[2][1] + lParMisAlig[2][0], lParMisAlig[2][0] + lParMisAlig[2][1]); + + angMisAlig[0] = gRandom->Uniform(-lParMisAlig[3][1] + lParMisAlig[3][0], lParMisAlig[3][0] + lParMisAlig[3][1]); + angMisAlig[1] = gRandom->Uniform(-lParMisAlig[4][1] + lParMisAlig[4][0], lParMisAlig[4][0] + lParMisAlig[4][1]); + angMisAlig[2] = gRandom->Uniform(-lParMisAlig[5][1] + lParMisAlig[5][0], lParMisAlig[5][0] + lParMisAlig[5][1]); // degrees +} + +//_________________________________________________________________________ +void GeometryMisAligner::GetGausMisAlign(double cartMisAlig[3], double angMisAlig[3], const double lParMisAlig[6][2]) const +{ + /// Misalign using gaussian distribution + + /// misalign the centre of the local transformation + /// rotation axes : + /// fAngMisAlig[1,2,3] = [x,y,z] + /// Assume that misalignment about the x and y axes (misalignment of z plane) + /// is much smaller, since the entire detection plane has to be moved (the + /// detection elements are on a support structure), while rotation of the x-y + /// plane is more free. + + cartMisAlig[0] = gRandom->Gaus(lParMisAlig[0][0], lParMisAlig[0][1]); + cartMisAlig[1] = gRandom->Gaus(lParMisAlig[1][0], lParMisAlig[1][1]); + cartMisAlig[2] = gRandom->Gaus(lParMisAlig[2][0], lParMisAlig[2][1]); + + angMisAlig[0] = gRandom->Gaus(lParMisAlig[3][0], lParMisAlig[3][1]); + angMisAlig[1] = gRandom->Gaus(lParMisAlig[4][0], lParMisAlig[4][1]); + angMisAlig[2] = gRandom->Gaus(lParMisAlig[5][0], lParMisAlig[5][1]); +} + +//_________________________________________________________________________ +TGeoCombiTrans GeometryMisAligner::MisAlignSensor() const +{ + /// Misalign given transformation and return the misaligned transformation. + /// Use misalignment parameters for sensor on the ladder. + /// Note that applied misalignments are small deltas with respect to the detection + /// element own ideal local reference frame. Thus deltaTransf represents + /// the transformation to go from the misaligned sensor local coordinates to the + /// ideal sensor local coordinates. + /// Also note that this -is not- what is in the ALICE alignment framework known + /// as local nor global (see GeometryMisAligner::MisAlign) + + Double_t cartMisAlig[3] = {0, 0, 0}; + Double_t angMisAlig[3] = {0, 0, 0}; + + if (fUseUni) { + GetUniMisAlign(cartMisAlig, angMisAlig, fSensorMisAlig); + } else { + if (!fUseGaus) { + LOG(INFO) << "Neither uniform nor gausian distribution is set! Will use gausian..."; + } + GetGausMisAlign(cartMisAlig, angMisAlig, fSensorMisAlig); + } + + TGeoTranslation deltaTrans(cartMisAlig[0], cartMisAlig[1], cartMisAlig[2]); + TGeoRotation deltaRot; + deltaRot.RotateX(angMisAlig[0]); + deltaRot.RotateY(angMisAlig[1]); + deltaRot.RotateZ(angMisAlig[2]); + + TGeoCombiTrans deltaTransf(deltaTrans, deltaRot); + + return TGeoCombiTrans(deltaTransf); +} + +//_________________________________________________________________________ +TGeoCombiTrans GeometryMisAligner::MisAlignLadder() const +{ + /// Misalign given transformation and return the misaligned transformation. + /// Use misalignment parameters for ladder. + /// Note that applied misalignments are small deltas with respect to the detection + /// element own ideal local reference frame. Thus deltaTransf represents + /// the transformation to go from the misaligned ladder local coordinates to the + /// ideal ladder local coordinates. + /// Also note that this -is not- what is in the ALICE alignment framework known + /// as local nor global (see GeometryMisAligner::MisAlign) + + Double_t cartMisAlig[3] = {0, 0, 0}; + Double_t angMisAlig[3] = {0, 0, 0}; + + if (fUseUni) { + GetUniMisAlign(cartMisAlig, angMisAlig, fLadderMisAlig); + } else { + if (!fUseGaus) { + LOG(INFO) << "Neither uniform nor gausian distribution is set! Will use gausian..."; + } + GetGausMisAlign(cartMisAlig, angMisAlig, fLadderMisAlig); + } + + TGeoTranslation deltaTrans(cartMisAlig[0], cartMisAlig[1], cartMisAlig[2]); + TGeoRotation deltaRot; + deltaRot.RotateX(angMisAlig[0]); + deltaRot.RotateY(angMisAlig[1]); + deltaRot.RotateZ(angMisAlig[2]); + + TGeoCombiTrans deltaTransf(deltaTrans, deltaRot); + + return TGeoCombiTrans(deltaTransf); +} + +//_________________________________________________________________________ +TGeoCombiTrans + GeometryMisAligner::MisAlignHalf() const +{ + /// Misalign given transformation and return the misaligned transformation. + /// Use misalignment parameters for half-MFT. + /// Note that applied misalignments are small deltas with respect to the module + /// own ideal local reference frame. Thus deltaTransf represents + /// the transformation to go from the misaligned half local coordinates to the + /// ideal half local coordinates. + /// Also note that this -is not- what is in the ALICE alignment framework known + /// as local nor global (see GeometryMisAligner::MisAlign) + + Double_t cartMisAlig[3] = {0, 0, 0}; + Double_t angMisAlig[3] = {0, 0, 0}; + + if (fUseUni) { + GetUniMisAlign(cartMisAlig, angMisAlig, fHalfMisAlig); + } else { + if (!fUseGaus) { + LOG(INFO) << "Neither uniform nor gausian distribution is set! Will use gausian..."; + } + GetGausMisAlign(cartMisAlig, angMisAlig, fHalfMisAlig); + } + + TGeoTranslation deltaTrans(cartMisAlig[0], cartMisAlig[1], cartMisAlig[2]); + TGeoRotation deltaRot; + deltaRot.RotateX(angMisAlig[0]); + deltaRot.RotateY(angMisAlig[1]); + deltaRot.RotateZ(angMisAlig[2]); + + TGeoCombiTrans deltaTransf(deltaTrans, deltaRot); + //TGeoHMatrix newTransfMat = transform * deltaTransf; + + return TGeoCombiTrans(deltaTransf); +} + +//_________________________________________________________________________ +TGeoCombiTrans + GeometryMisAligner::MisAlignDisk() const +{ + /// Misalign given transformation and return the misaligned transformation. + /// Use misalignment parameters for disk. + /// Note that applied misalignments are small deltas with respect to the module + /// own ideal local reference frame. Thus deltaTransf represents + /// the transformation to go from the misaligned disk local coordinates to the + /// ideal disk local coordinates. + /// Also note that this -is not- what is in the ALICE alignment framework known + /// as local nor global (see GeometryMisAligner::MisAlign) + + Double_t cartMisAlig[3] = {0, 0, 0}; + Double_t angMisAlig[3] = {0, 0, 0}; + + if (fUseUni) { + GetUniMisAlign(cartMisAlig, angMisAlig, fDiskMisAlig); + } else { + if (!fUseGaus) { + LOG(INFO) << "Neither uniform nor gausian distribution is set! Will use gausian..."; + } + GetGausMisAlign(cartMisAlig, angMisAlig, fDiskMisAlig); + } + + TGeoTranslation deltaTrans(cartMisAlig[0], cartMisAlig[1], cartMisAlig[2]); + TGeoRotation deltaRot; + deltaRot.RotateX(angMisAlig[0]); + deltaRot.RotateY(angMisAlig[1]); + deltaRot.RotateZ(angMisAlig[2]); + + TGeoCombiTrans deltaTransf(deltaTrans, deltaRot); + + return TGeoCombiTrans(deltaTransf); +} + + +//______________________________________________________________________ +bool GeometryMisAligner::matrixToAngles(const double* rot, double& psi, double& theta, double& phi) +{ + /// Calculates the Euler angles in "x y z" notation + /// using the rotation matrix + /// Returns false in case the rotation angles can not be + /// extracted from the matrix + + if (std::abs(rot[0]) < 1e-7 || std::abs(rot[8]) < 1e-7) { + LOG(ERROR) << "Failed to extract roll-pitch-yall angles!"; + return false; + } + psi = std::atan2(-rot[5], rot[8]); + theta = std::asin(rot[2]); + phi = std::atan2(-rot[1], rot[0]); + return true; +} + +//______________________________________________________________________ +void GeometryMisAligner::MisAlign(Bool_t verbose) +{ + /// Takes the internal geometry module transformers, copies them to + /// new geometry module transformers. + /// Calculates module misalignment parameters and applies these + /// to the new module transformer. + /// Calculates the module misalignment delta transformation in the + /// Alice Alignment Framework newTransf = delta * oldTransf. + /// Add a module misalignment to the new geometry transformer. + /// Gets the Detection Elements from the module transformer. + /// Calculates misalignment parameters and applies these + /// to the local transformation of the Detection Element. + /// Obtains the new global transformation by multiplying the new + /// module transformer transformation with the new local transformation. + /// Applies the new global transform to a new detection element. + /// Adds the new detection element to a new module transformer. + /// Calculates the d.e. misalignment delta transformation in the + /// Alice Alignment Framework (newGlobalTransf = delta * oldGlobalTransf). + /// Add a d.e. misalignment to the new geometry transformer. + /// Adds the new module transformer to a new geometry transformer. + /// Returns the new geometry transformer. + + mGeometryTGeo = GeometryTGeo::Instance(); + + o2::detectors::AlignParam lAP; + + std::vector> lAPvec; + std::vector lAPvecDisk; // storage for disk + std::vector lAPvecLadder; // storage for ladder + + if (verbose) { + LOG(INFO) << "---- MisAlign MFT geometry ----"; + } + + Int_t nAlignID = 0; + double lPsi, lTheta, lPhi = 0.; + Int_t nChip = 0; + Int_t nHalf = mGeometryTGeo->getNumberOfHalfs(); + + for (Int_t hf = 0; hf < nHalf; hf++) { + Int_t nDisks = mGeometryTGeo->getNumberOfDisksPerHalf(hf); + + // New module transformation + TGeoCombiTrans localDeltaTransform = MisAlignHalf(); + + TString sname = mGeometryTGeo->composeSymNameHalf(hf); + + lAP.setSymName(sname); + lAP.setAlignableID(nAlignID++); + lAP.setLocalParams(localDeltaTransform); + + if (!matrixToAngles(localDeltaTransform.GetRotationMatrix(), lPsi, lTheta, lPhi)) { + LOG(ERROR) << "Problem extracting angles! from Half"; + } + LOG(DEBUG) << "** LocalDeltaTransform Half: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), localDeltaTransform.GetTranslation()[0], localDeltaTransform.GetTranslation()[1], localDeltaTransform.GetTranslation()[2], localDeltaTransform.GetRotationMatrix()[0], localDeltaTransform.GetRotationMatrix()[1], localDeltaTransform.GetRotationMatrix()[2]); + + lAP.setLocalParams(localDeltaTransform); + + // Apply misalignment of the half to the ideal geometry + lAP.applyToGeometry(); + + for (Int_t dk = 0; dk < nDisks; dk++) { + + // New module transformation + localDeltaTransform = MisAlignDisk(); + sname = mGeometryTGeo->composeSymNameDisk(hf, dk); + + lAP.setSymName(sname); + lAP.setAlignableID(nAlignID++); + + if (!matrixToAngles(localDeltaTransform.GetRotationMatrix(), lPsi, lTheta, lPhi)) { + LOG(ERROR) << "Problem extracting angles!"; + } + LOG(DEBUG) << "**** LocalDeltaTransform Disk: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), localDeltaTransform.GetTranslation()[0], localDeltaTransform.GetTranslation()[1], localDeltaTransform.GetTranslation()[2], localDeltaTransform.GetRotationMatrix()[0], localDeltaTransform.GetRotationMatrix()[1], localDeltaTransform.GetRotationMatrix()[2]); + + // Set the local delta transformation to the module + lAP.setLocalParams(localDeltaTransform); + + LOG(DEBUG) << "**** AlignParam Disk: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), lAP.getX(), lAP.getY(), lAP.getZ(), lAP.getPsi(), lAP.getTheta(), lAP.getPhi()); + + Int_t nLadders = 0; + + for (Int_t sensor = mGeometryTGeo->getMinSensorsPerLadder(); sensor < mGeometryTGeo->getMaxSensorsPerLadder() + 1; sensor++) { + nLadders += mGeometryTGeo->getNumberOfLaddersPerDisk(hf, dk, sensor); + } + + // Apply misalignment to the ideal geometry + lAP.applyToGeometry(); + + // Store AlignParam (misalignment parameters) + lAPvecDisk.push_back(lAP); + + for (Int_t lr = 0; lr < nLadders; lr++) { //nLadders + + localDeltaTransform = MisAlignLadder(); + + sname = mGeometryTGeo->composeSymNameLadder(hf, dk, lr); + + Int_t nSensorsPerLadder = mGeometryTGeo->getNumberOfSensorsPerLadder(hf, dk, lr); + TString path = "/cave_1/barrel_1/" + sname; + + lAP.setSymName(sname); + + lAP.setAlignableID(nAlignID++); + + LOG(DEBUG) << "LocalDeltaTransform Ladder: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), localDeltaTransform.GetTranslation()[0], localDeltaTransform.GetTranslation()[1], localDeltaTransform.GetTranslation()[2], lPsi, lTheta, lPhi); + + // Set the local transformations + lAP.setLocalParams(localDeltaTransform); + + LOG(DEBUG) << "AlignParam Ladder: " << fmt::format(" {} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), lAP.getX(), lAP.getY(), lAP.getZ(), lAP.getPsi(), lAP.getTheta(), lAP.getPhi()); + + if (verbose) { + LOG(INFO) << "-> MisAligned element : " << sname << " Ladder: " << lr; + } + + // Apply misaligned detection element to the geometry + lAP.applyToGeometry(); + + // Store AlignParam (misalignment parameters) + lAPvecLadder.push_back(lAP); + + for (Int_t sr = 0; sr < nSensorsPerLadder; sr++) { + + localDeltaTransform = MisAlignSensor(); + + sname = mGeometryTGeo->composeSymNameChip(hf, dk, lr, sr); + + lAP.setSymName(sname); + lAP.setAlignableID(nAlignID++); + lAP.setLocalParams(localDeltaTransform); + lAP.applyToGeometry(); + + nChip++; + + } + } + } + } + + lAPvec.push_back(lAPvecDisk); + lAPvec.push_back(lAPvecLadder); + +} + +void GeometryMisAligner::SetAlignmentResolution(const TClonesArray* misAlignArray, Int_t rChId, Double_t rChResX, Double_t rChResY, Double_t rDeResX, Double_t rDeResY) +{ + + Int_t chIdMin = (rChId < 0) ? 0 : rChId; + Int_t chIdMax = (rChId < 0) ? 9 : rChId; + Double_t chResX = (rChResX < 0) ? fDiskMisAlig[0][1] : rChResX; + Double_t chResY = (rChResY < 0) ? fDiskMisAlig[1][1] : rChResY; + Double_t deResX = (rDeResX < 0) ? fLadderMisAlig[0][1] : rDeResX; + Double_t deResY = (rDeResY < 0) ? fLadderMisAlig[1][1] : rDeResY; + + TMatrixDSym mChCorrMatrix(6); + mChCorrMatrix[0][0] = chResX * chResX; + mChCorrMatrix[1][1] = chResY * chResY; + + TMatrixDSym mDECorrMatrix(6); + mDECorrMatrix[0][0] = deResX * deResX; + mDECorrMatrix[1][1] = deResY * deResY; + + // not yet implemented +} + diff --git a/Detectors/ITSMFT/MFT/simulation/src/MFTSimulationLinkDef.h b/Detectors/ITSMFT/MFT/simulation/src/MFTSimulationLinkDef.h index fb9efc51df888..f768448b3ef6c 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/MFTSimulationLinkDef.h +++ b/Detectors/ITSMFT/MFT/simulation/src/MFTSimulationLinkDef.h @@ -18,5 +18,6 @@ #pragma link C++ class o2::mft::Detector + ; #pragma link C++ class o2::base::DetImpl < o2::mft::Detector> + ; #pragma link C++ class o2::mft::DigitizerTask + ; +#pragma link C++ class o2::mft::GeometryMisAligner + ; #endif From dda7474949e38a555a3e17838cc690d122e64d6c Mon Sep 17 00:00:00 2001 From: Robin Albert Andre Caron Date: Wed, 26 May 2021 21:39:45 +0200 Subject: [PATCH 172/314] Add small fixes and comments --- .../ITSMFT/MFT/simulation/CMakeLists.txt | 5 +- .../include/MFTSimulation/Detector.h | 6 +-- .../MFTSimulation/GeometryMisAligner.h | 6 +-- .../ITSMFT/MFT/simulation/src/Detector.cxx | 20 ++++---- .../MFT/simulation/src/GeometryMisAligner.cxx | 48 ++++++++++--------- 5 files changed, 45 insertions(+), 40 deletions(-) diff --git a/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt b/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt index 761a27778920e..9afdb2d0938bc 100644 --- a/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt @@ -10,12 +10,13 @@ # or submit itself to any jurisdiction. o2_add_library(MFTSimulation - SOURCES src/Detector.cxx src/DigitizerTask.cxx + SOURCES src/Detector.cxx src/DigitizerTask.cxx src/GeometryMisAligner.cxx PUBLIC_LINK_LIBRARIES O2::MFTBase ROOT::Physics) o2_target_root_dictionary(MFTSimulation HEADERS include/MFTSimulation/Detector.h - include/MFTSimulation/DigitizerTask.h) + include/MFTSimulation/DigitizerTask.h + include/MFTSimulation/GeometryMisAligner.h) o2_data_file(COPY data DESTINATION Detectors/MFT/simulation) diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h index 1e9d09a6080a6..84ff5a7b2e29e 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h @@ -117,9 +117,9 @@ class Detector : public o2::base::DetImpl /// \param parent path of the parent volume /// \param lastUID on output, UID of the last volume void addAlignableVolumesChip(Int_t hf, Int_t dk, Int_t lr, Int_t ms, TString& parent, Int_t& lastUID) const; - - void MisalignGeometry() const; // adding 'overide' will be inherited from FairApplication - + + void MisalignGeometry() const; // adding 'overide' will be inherited from FairApplication + Int_t isVersion() const { return mVersion; } /// Creating materials for the detector diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h index 33d09c33243cf..5e8e47f8dcc8a 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h @@ -231,10 +231,10 @@ class GeometryMisAligner : public TObject Bool_t fUseUni; ///< use uniform distribution for misaligmnets Bool_t fUseGaus; ///< use gaussian distribution for misaligmnets - Double_t fSensorMisAlig[6][2]; ///< Mean and width of the displacements of the sensors along x,y,z (translations) and about x,y,z (rotations) + Double_t fSensorMisAlig[6][2]; ///< Mean and width of the displacements of the sensors along x,y,z (translations) and about x,y,z (rotations) Double_t fLadderMisAlig[6][2]; ///< Mean and width of the displacements of the ladder along x,y,z (translations) and about x,y,z (rotations) - Double_t fDiskMisAlig[6][2]; ///< Mean and width of the displacements of the half-disk along x,y,z (translations) and about x,y,z (rotations) - Double_t fHalfMisAlig[6][2]; ///< Mean and width of the displacements of the half-MF along x,y,z (translations) and about x,y,z (rotations) + Double_t fDiskMisAlig[6][2]; ///< Mean and width of the displacements of the half-disk along x,y,z (translations) and about x,y,z (rotations) + Double_t fHalfMisAlig[6][2]; ///< Mean and width of the displacements of the half-MF along x,y,z (translations) and about x,y,z (rotations) Double_t fXYAngMisAligFactor; ///< factor (<1) to apply to angular misalignment range since range of motion is restricted out of the xy plane Double_t fZCartMisAligFactor; ///< factor (<1) to apply to cartetian misalignment range since range of motion is restricted in z direction diff --git a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx index b5e2040b46d81..d6ab1b4478b58 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx @@ -626,6 +626,7 @@ void Detector::addAlignableVolumes() const for (Int_t hf = 0; hf < nHalf; hf++) { addAlignableVolumesHalf(hf, path, lastUID); } + MisalignGeometry(); } //_____________________________________________________________________________ @@ -722,24 +723,25 @@ void Detector::MisalignGeometry() const aGMA.SetHalfCartMisAlig(0., 0., 0., 0., 0., 0.); // half-MFT translated on X, Y, Z axis aGMA.SetHalfAngMisAlig(0., 0., 0., 0., 0., 0.); // half-MFT rotated on Z, X, Y axis - + aGMA.SetDiskCartMisAlig(0., 0., 0., 0., 0., 0.); // Half-disks translated on X, Y, Z axis aGMA.SetDiskAngMisAlig(0., 0., 0., 0., 0., 0.); // Half-disks rotated on Z, X, Y axis - + aGMA.SetLadderCartMisAlig(0., 0., 0., 0., 0., 0.); // Ladders translated on X, Y, Z axis - aGMA.SetLadderAngMisAlig(0., 0., 0., 0., 0., 0.); // Ladders rotated on Z, X, Y axis - + aGMA.SetLadderAngMisAlig(0., 0., 0., 0., 0., 0.); // Ladders rotated on Z, X, Y axis + aGMA.SetSensorCartMisAlig(0., 0., 0., 0., 0., 0.); // Sensors translated on X, Y, Z axis - aGMA.SetSensorAngMisAlig(0., 0., 0., 0., 0., 0.); // Sensors rotated on Z, X, Y axis + aGMA.SetSensorAngMisAlig(0., 0., 0., 0., 0., 0.); // Sensors rotated on Z, X, Y axis - aGMA.MisAlign(true); // Misalign the geometry + aGMA.MisAlign(false); // Misalign the geometry ('option'=verbose) - // lock the geometry, or unlock with "false" - gGeoManager->RefreshPhysicalNodes(); + // lock the geometry, or unlock with 'false' + //gGeoManager->RefreshPhysicalNodes(); // store the misaligned geometry in a root file gGeoManager->Export("o2sim_geometry_misaligned.root"); - + + //gGeoManager->RefreshPhysicalNodes(false); } //_____________________________________________________________________________ diff --git a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx index 68ce5eb62c6e1..a3bcab209f2a3 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx @@ -207,7 +207,7 @@ void GeometryMisAligner::SetZCartMisAligFactor(Double_t factor) void GeometryMisAligner::GetUniMisAlign(double cartMisAlig[3], double angMisAlig[3], const double lParMisAlig[6][2]) const { /// Misalign using uniform distribution - + /// misalign the centre of the local transformation /// rotation axes : /// fAngMisAlig[1,2,3] = [x,y,z] @@ -215,7 +215,7 @@ void GeometryMisAligner::GetUniMisAlign(double cartMisAlig[3], double angMisAlig /// is much smaller, since the entire detection plane has to be moved (the /// detection elements are on a support structure), while rotation of the x-y /// plane is more free. - + cartMisAlig[0] = gRandom->Uniform(-lParMisAlig[0][1] + lParMisAlig[0][0], lParMisAlig[0][0] + lParMisAlig[0][1]); cartMisAlig[1] = gRandom->Uniform(-lParMisAlig[1][1] + lParMisAlig[1][0], lParMisAlig[1][0] + lParMisAlig[1][1]); cartMisAlig[2] = gRandom->Uniform(-lParMisAlig[2][1] + lParMisAlig[2][0], lParMisAlig[2][0] + lParMisAlig[2][1]); @@ -229,7 +229,7 @@ void GeometryMisAligner::GetUniMisAlign(double cartMisAlig[3], double angMisAlig void GeometryMisAligner::GetGausMisAlign(double cartMisAlig[3], double angMisAlig[3], const double lParMisAlig[6][2]) const { /// Misalign using gaussian distribution - + /// misalign the centre of the local transformation /// rotation axes : /// fAngMisAlig[1,2,3] = [x,y,z] @@ -237,7 +237,7 @@ void GeometryMisAligner::GetGausMisAlign(double cartMisAlig[3], double angMisAli /// is much smaller, since the entire detection plane has to be moved (the /// detection elements are on a support structure), while rotation of the x-y /// plane is more free. - + cartMisAlig[0] = gRandom->Gaus(lParMisAlig[0][0], lParMisAlig[0][1]); cartMisAlig[1] = gRandom->Gaus(lParMisAlig[1][0], lParMisAlig[1][1]); cartMisAlig[2] = gRandom->Gaus(lParMisAlig[2][0], lParMisAlig[2][1]); @@ -386,11 +386,10 @@ TGeoCombiTrans deltaRot.RotateZ(angMisAlig[2]); TGeoCombiTrans deltaTransf(deltaTrans, deltaRot); - + return TGeoCombiTrans(deltaTransf); } - //______________________________________________________________________ bool GeometryMisAligner::matrixToAngles(const double* rot, double& psi, double& theta, double& phi) { @@ -398,7 +397,7 @@ bool GeometryMisAligner::matrixToAngles(const double* rot, double& psi, double& /// using the rotation matrix /// Returns false in case the rotation angles can not be /// extracted from the matrix - + if (std::abs(rot[0]) < 1e-7 || std::abs(rot[8]) < 1e-7) { LOG(ERROR) << "Failed to extract roll-pitch-yall angles!"; return false; @@ -437,13 +436,11 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) o2::detectors::AlignParam lAP; std::vector> lAPvec; - std::vector lAPvecDisk; // storage for disk + std::vector lAPvecDisk; // storage for disk std::vector lAPvecLadder; // storage for ladder - if (verbose) { - LOG(INFO) << "---- MisAlign MFT geometry ----"; - } - + LOG(INFO) << " GeometryMisAligner::MisAlign "; + Int_t nAlignID = 0; double lPsi, lTheta, lPhi = 0.; Int_t nChip = 0; @@ -454,7 +451,7 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) // New module transformation TGeoCombiTrans localDeltaTransform = MisAlignHalf(); - + TString sname = mGeometryTGeo->composeSymNameHalf(hf); lAP.setSymName(sname); @@ -467,7 +464,7 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) LOG(DEBUG) << "** LocalDeltaTransform Half: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), localDeltaTransform.GetTranslation()[0], localDeltaTransform.GetTranslation()[1], localDeltaTransform.GetTranslation()[2], localDeltaTransform.GetRotationMatrix()[0], localDeltaTransform.GetRotationMatrix()[1], localDeltaTransform.GetRotationMatrix()[2]); lAP.setLocalParams(localDeltaTransform); - + // Apply misalignment of the half to the ideal geometry lAP.applyToGeometry(); @@ -490,6 +487,10 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) LOG(DEBUG) << "**** AlignParam Disk: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), lAP.getX(), lAP.getY(), lAP.getZ(), lAP.getPsi(), lAP.getTheta(), lAP.getPhi()); + if (verbose) { + LOG(INFO) << "-> misalign element: " << sname << ", disk: " << dk; + } + Int_t nLadders = 0; for (Int_t sensor = mGeometryTGeo->getMinSensorsPerLadder(); sensor < mGeometryTGeo->getMaxSensorsPerLadder() + 1; sensor++) { @@ -499,10 +500,10 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) // Apply misalignment to the ideal geometry lAP.applyToGeometry(); - // Store AlignParam (misalignment parameters) + // Store AlignParam (misalignment parameters) lAPvecDisk.push_back(lAP); - for (Int_t lr = 0; lr < nLadders; lr++) { //nLadders + for (Int_t lr = 0; lr < nLadders; lr++) { //nLadders localDeltaTransform = MisAlignLadder(); @@ -516,14 +517,14 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) lAP.setAlignableID(nAlignID++); LOG(DEBUG) << "LocalDeltaTransform Ladder: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), localDeltaTransform.GetTranslation()[0], localDeltaTransform.GetTranslation()[1], localDeltaTransform.GetTranslation()[2], lPsi, lTheta, lPhi); - + // Set the local transformations lAP.setLocalParams(localDeltaTransform); LOG(DEBUG) << "AlignParam Ladder: " << fmt::format(" {} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), lAP.getX(), lAP.getY(), lAP.getZ(), lAP.getPsi(), lAP.getTheta(), lAP.getPhi()); if (verbose) { - LOG(INFO) << "-> MisAligned element : " << sname << " Ladder: " << lr; + LOG(INFO) << "--> misalign element: " << sname << ", ladder: " << lr; } // Apply misaligned detection element to the geometry @@ -531,20 +532,23 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) // Store AlignParam (misalignment parameters) lAPvecLadder.push_back(lAP); - + for (Int_t sr = 0; sr < nSensorsPerLadder; sr++) { localDeltaTransform = MisAlignSensor(); sname = mGeometryTGeo->composeSymNameChip(hf, dk, lr, sr); + if (verbose) { + LOG(INFO) << "---> misalign element: " << sname << ", sensor: " << sr; + } + lAP.setSymName(sname); lAP.setAlignableID(nAlignID++); lAP.setLocalParams(localDeltaTransform); lAP.applyToGeometry(); - + nChip++; - } } } @@ -552,7 +556,6 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) lAPvec.push_back(lAPvecDisk); lAPvec.push_back(lAPvecLadder); - } void GeometryMisAligner::SetAlignmentResolution(const TClonesArray* misAlignArray, Int_t rChId, Double_t rChResX, Double_t rChResY, Double_t rDeResX, Double_t rDeResY) @@ -575,4 +578,3 @@ void GeometryMisAligner::SetAlignmentResolution(const TClonesArray* misAlignArra // not yet implemented } - From 63222f33ffa0ecfb5f8aaa5039422820ac7b8d60 Mon Sep 17 00:00:00 2001 From: Rafael Pezzi Date: Wed, 2 Jun 2021 11:27:59 +0200 Subject: [PATCH 173/314] Fix CI warnings --- .../include/MFTSimulation/GeometryMisAligner.h | 2 +- .../ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx | 12 ++++-------- 2 files changed, 5 insertions(+), 9 deletions(-) diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h index 5e8e47f8dcc8a..e4b8c48f69ac2 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h @@ -41,7 +41,7 @@ class GeometryMisAligner : public TObject GeometryMisAligner(Double_t cartMisAligM, Double_t cartMisAligW, Double_t angMisAligM, Double_t angMisAligW); GeometryMisAligner(Double_t cartMisAligW, Double_t angMisAligW); GeometryMisAligner(); - ~GeometryMisAligner() override; + ~GeometryMisAligner() = default; /// Not implemented GeometryMisAligner(const GeometryMisAligner& right); diff --git a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx index a3bcab209f2a3..28523931992a3 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx @@ -170,12 +170,6 @@ GeometryMisAligner::GeometryMisAligner() } } -//______________________________________________________________________________ -GeometryMisAligner::~GeometryMisAligner() -{ - /// Destructor -} - //_________________________________________________________________________ void GeometryMisAligner::SetXYAngMisAligFactor(Double_t factor) { @@ -187,8 +181,9 @@ void GeometryMisAligner::SetXYAngMisAligFactor(Double_t factor) fLadderMisAlig[3][1] = fLadderMisAlig[5][1] * factor; // added to keep fLadderMisAlig[4][0] = fLadderMisAlig[5][0] * factor; // backward fLadderMisAlig[4][1] = fLadderMisAlig[5][1] * factor; // compatibility - } else + } else { LOG(ERROR) << "Invalid XY angular misalign factor, " << factor; + } } //_________________________________________________________________________ @@ -199,8 +194,9 @@ void GeometryMisAligner::SetZCartMisAligFactor(Double_t factor) fZCartMisAligFactor = factor; fLadderMisAlig[2][0] = fLadderMisAlig[0][0]; fLadderMisAlig[2][1] = fLadderMisAlig[0][1] * factor; - } else + } else { LOG(ERROR) << "Invalid Z cartesian misalign factor, " << factor; + } } //_________________________________________________________________________ From 81607829b539cf6a5f779b23d9c28b8a854b46fb Mon Sep 17 00:00:00 2001 From: Robin Albert Andre Caron Date: Sat, 5 Jun 2021 18:23:53 +0200 Subject: [PATCH 174/314] Add CCDB path to store AlignParams objects --- .../ITSMFT/MFT/simulation/CMakeLists.txt | 3 +- .../MFTSimulation/GeometryMisAligner.h | 10 +++- .../ITSMFT/MFT/simulation/src/Detector.cxx | 15 ++--- .../MFT/simulation/src/GeometryMisAligner.cxx | 56 ++++++++++++------- 4 files changed, 52 insertions(+), 32 deletions(-) diff --git a/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt b/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt index 9afdb2d0938bc..e4ae138c63186 100644 --- a/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt @@ -11,7 +11,7 @@ o2_add_library(MFTSimulation SOURCES src/Detector.cxx src/DigitizerTask.cxx src/GeometryMisAligner.cxx - PUBLIC_LINK_LIBRARIES O2::MFTBase ROOT::Physics) + PUBLIC_LINK_LIBRARIES O2::MFTBase O2::CCDB ROOT::Physics) o2_target_root_dictionary(MFTSimulation HEADERS include/MFTSimulation/Detector.h @@ -31,4 +31,5 @@ o2_add_executable(digi2raw O2::DetectorsRaw O2::DetectorsCommonDataFormats O2::CommonUtils + O2::CCDB Boost::program_options) diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h index e4b8c48f69ac2..f7665497c964b 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h @@ -34,7 +34,7 @@ namespace o2 { namespace mft { -class GeometryMisAligner : public TObject +class GeometryMisAligner { public: GeometryMisAligner(Double_t cartXMisAligM, Double_t cartXMisAligW, Double_t cartYMisAligM, Double_t cartYMisAligW, Double_t angMisAligM, Double_t angMisAligW); @@ -56,7 +56,11 @@ class GeometryMisAligner : public TObject bool matrixToAngles(const double* rot, double& psi, double& theta, double& phi); // return a misaligned geometry obtained from the existing one. - void MisAlign(bool verbose = false); + void MisAlign(bool verbose = false, + const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080", + long tmin = 0, long tmax = -1, + const std::string& objectPath = "", + const std::string& fileName = "MFTAlignment.root"); /// Set sensor cartesian displacement parameters different along x, y void SetSensorCartMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean = 0., Double_t zwidth = 0.) @@ -239,7 +243,7 @@ class GeometryMisAligner : public TObject Double_t fXYAngMisAligFactor; ///< factor (<1) to apply to angular misalignment range since range of motion is restricted out of the xy plane Double_t fZCartMisAligFactor; ///< factor (<1) to apply to cartetian misalignment range since range of motion is restricted in z direction - ClassDefOverride(GeometryMisAligner, 4) // Geometry parametrisation + ClassDef(GeometryMisAligner, 0) // Geometry parametrisation }; } // namespace mft diff --git a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx index d6ab1b4478b58..ee4fd1c0dd7c0 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx @@ -717,6 +717,11 @@ void Detector::addAlignableVolumesChip(Int_t hf, Int_t dk, Int_t lr, Int_t ms, void Detector::MisalignGeometry() const { // Function to misalign the MFT geometry + const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080"; + long tmin = 0; + long tmax = -1; + const std::string& objectPath = ""; + const std::string& fileName = "MFTAlignment.root"; // Initialize the misaligner o2::mft::GeometryMisAligner aGMA; @@ -733,15 +738,7 @@ void Detector::MisalignGeometry() const aGMA.SetSensorCartMisAlig(0., 0., 0., 0., 0., 0.); // Sensors translated on X, Y, Z axis aGMA.SetSensorAngMisAlig(0., 0., 0., 0., 0., 0.); // Sensors rotated on Z, X, Y axis - aGMA.MisAlign(false); // Misalign the geometry ('option'=verbose) - - // lock the geometry, or unlock with 'false' - //gGeoManager->RefreshPhysicalNodes(); - - // store the misaligned geometry in a root file - gGeoManager->Export("o2sim_geometry_misaligned.root"); - - //gGeoManager->RefreshPhysicalNodes(false); + aGMA.MisAlign(false, ccdbHost, tmin, tmax, objectPath, fileName); // Misalign the geometry } //_____________________________________________________________________________ diff --git a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx index 28523931992a3..bced75d66cf91 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx @@ -58,7 +58,10 @@ #include "DetectorsCommonDataFormats/DetID.h" #include "DetectorsCommonDataFormats/AlignParam.h" +#include "DetectorsCommonDataFormats/NameConf.h" +#include "DetectorsBase/GeometryManager.h" +#include "CCDB/CcdbApi.h" #include #include #include @@ -66,12 +69,12 @@ #include #include #include - +#include #include #include #include #include - +#include #include "Framework/Logger.h" using namespace o2::mft; @@ -80,8 +83,7 @@ using namespace o2::detectors; ClassImp(o2::mft::GeometryMisAligner); //______________________________________________________________________________ -GeometryMisAligner::GeometryMisAligner(Double_t cartXMisAligM, Double_t cartXMisAligW, Double_t cartYMisAligM, Double_t cartYMisAligW, Double_t angMisAligM, Double_t angMisAligW) - : TObject(), +GeometryMisAligner::GeometryMisAligner(Double_t cartXMisAligM, Double_t cartXMisAligW, Double_t cartYMisAligM, Double_t cartYMisAligW, Double_t angMisAligM, Double_t angMisAligW) : fUseUni(kFALSE), fUseGaus(kTRUE), fXYAngMisAligFactor(0.0), @@ -105,8 +107,7 @@ GeometryMisAligner::GeometryMisAligner(Double_t cartXMisAligM, Double_t cartXMis } //______________________________________________________________________________ -GeometryMisAligner::GeometryMisAligner(Double_t cartMisAligM, Double_t cartMisAligW, Double_t angMisAligM, Double_t angMisAligW) - : TObject(), +GeometryMisAligner::GeometryMisAligner(Double_t cartMisAligM, Double_t cartMisAligW, Double_t angMisAligM, Double_t angMisAligW) : fUseUni(kFALSE), fUseGaus(kTRUE), fXYAngMisAligFactor(0.0), @@ -130,8 +131,7 @@ GeometryMisAligner::GeometryMisAligner(Double_t cartMisAligM, Double_t cartMisAl } //______________________________________________________________________________ -GeometryMisAligner::GeometryMisAligner(Double_t cartMisAlig, Double_t angMisAlig) - : TObject(), +GeometryMisAligner::GeometryMisAligner(Double_t cartMisAlig, Double_t angMisAlig) : fUseUni(kTRUE), fUseGaus(kFALSE), fXYAngMisAligFactor(0.0), @@ -152,8 +152,7 @@ GeometryMisAligner::GeometryMisAligner(Double_t cartMisAlig, Double_t angMisAlig } //_____________________________________________________________________________ -GeometryMisAligner::GeometryMisAligner() - : TObject(), +GeometryMisAligner::GeometryMisAligner() : fUseUni(kTRUE), fUseGaus(kFALSE), fXYAngMisAligFactor(0.0), @@ -405,7 +404,11 @@ bool GeometryMisAligner::matrixToAngles(const double* rot, double& psi, double& } //______________________________________________________________________ -void GeometryMisAligner::MisAlign(Bool_t verbose) +void GeometryMisAligner::MisAlign(Bool_t verbose, + const std::string& ccdbHost, + long tmin, long tmax, + const std::string& objectPath, + const std::string& fileName) { /// Takes the internal geometry module transformers, copies them to /// new geometry module transformers. @@ -431,9 +434,7 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) o2::detectors::AlignParam lAP; - std::vector> lAPvec; - std::vector lAPvecDisk; // storage for disk - std::vector lAPvecLadder; // storage for ladder + std::vector lAPvec; LOG(INFO) << " GeometryMisAligner::MisAlign "; @@ -464,6 +465,8 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) // Apply misalignment of the half to the ideal geometry lAP.applyToGeometry(); + lAPvec.emplace_back(lAP); + for (Int_t dk = 0; dk < nDisks; dk++) { // New module transformation @@ -497,7 +500,7 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) lAP.applyToGeometry(); // Store AlignParam (misalignment parameters) - lAPvecDisk.push_back(lAP); + lAPvec.emplace_back(lAP); for (Int_t lr = 0; lr < nLadders; lr++) { //nLadders @@ -509,7 +512,6 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) TString path = "/cave_1/barrel_1/" + sname; lAP.setSymName(sname); - lAP.setAlignableID(nAlignID++); LOG(DEBUG) << "LocalDeltaTransform Ladder: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), localDeltaTransform.GetTranslation()[0], localDeltaTransform.GetTranslation()[1], localDeltaTransform.GetTranslation()[2], lPsi, lTheta, lPhi); @@ -527,7 +529,7 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) lAP.applyToGeometry(); // Store AlignParam (misalignment parameters) - lAPvecLadder.push_back(lAP); + lAPvec.emplace_back(lAP); for (Int_t sr = 0; sr < nSensorsPerLadder; sr++) { @@ -544,14 +546,30 @@ void GeometryMisAligner::MisAlign(Bool_t verbose) lAP.setLocalParams(localDeltaTransform); lAP.applyToGeometry(); + lAPvec.emplace_back(lAP); + nChip++; } } } } - lAPvec.push_back(lAPvecDisk); - lAPvec.push_back(lAPvecLadder); + if (!ccdbHost.empty()) { + std::string path = objectPath.empty() ? o2::base::NameConf::getAlignmentPath(o2::detectors::DetID::MFT) : objectPath; + LOGP(INFO, "Storing alignment object on {}/{}", ccdbHost, path); + o2::ccdb::CcdbApi api; + map metadata; // can be empty + api.init(ccdbHost.c_str()); // or http://localhost:8080 for a local installation + // store abitrary user object in strongly typed manner + api.storeAsTFileAny(&lAPvec, path, metadata, tmin, tmax); + } + + if (!fileName.empty()) { + LOGP(INFO, "Storing MFT alignment in local file {}", fileName); + TFile algFile(fileName.c_str(), "recreate"); + algFile.WriteObjectAny(&lAPvec, "std::vector", "alignment"); + algFile.Close(); + } } void GeometryMisAligner::SetAlignmentResolution(const TClonesArray* misAlignArray, Int_t rChId, Double_t rChResX, Double_t rChResY, Double_t rDeResX, Double_t rDeResY) From e83889dee9adccbeaaa7af9519af3ce66ffda5e7 Mon Sep 17 00:00:00 2001 From: Robin Albert Andre Caron Date: Sun, 6 Jun 2021 14:24:23 +0200 Subject: [PATCH 175/314] Add external input misalign parameters --- .../MFT/base/include/MFTBase/MFTBaseParam.h | 34 ++++++++++ .../include/MFTSimulation/Detector.h | 2 +- .../MFTSimulation/GeometryMisAligner.h | 14 ++-- .../ITSMFT/MFT/simulation/src/Detector.cxx | 37 ++++++----- .../MFT/simulation/src/GeometryMisAligner.cxx | 66 ++----------------- 5 files changed, 66 insertions(+), 87 deletions(-) diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h index ac22668b86bba..b64f6033a11a8 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h @@ -44,6 +44,40 @@ struct MFTBaseParam : public o2::conf::ConfigurableParamHelper { // General configurations bool minimal = false; // Disables all elements out of MFT acceptance + // General misalignment input parameters + bool misalignHalf = false; + bool misalignDisk = false; + bool misalignLadder = false; + bool misalignSensor = true; + + double xHalf = 0.0; + double yHalf = 0.0; + double zHalf = 0.0; + double psiHalf = 0.0; + double thetaHalf = 0.0; + double phiHalf = 0.0; + + double xDisk = 0.0; + double yDisk = 0.0; + double zDisk = 0.0; + double psiDisk = 0.0; + double thetaDisk = 0.0; + double phiDisk = 0.0; + + double xLadder = 0.0; + double yLadder = 0.0; + double zLadder = 0.0; + double psiLadder = 0.0; + double thetaLadder = 0.0; + double phiLadder = 0.0; + + double xSensor = 0.0; + double ySensor = 0.0; + double zSensor = 0.0; + double psiSensor = 0.0; + double thetaSensor = 0.0; + double phiSensor = 0.0; + O2ParamDef(MFTBaseParam, "MFTBase"); }; diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h index 84ff5a7b2e29e..01d8ae6bb611b 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h @@ -118,7 +118,7 @@ class Detector : public o2::base::DetImpl /// \param lastUID on output, UID of the last volume void addAlignableVolumesChip(Int_t hf, Int_t dk, Int_t lr, Int_t ms, TString& parent, Int_t& lastUID) const; - void MisalignGeometry() const; // adding 'overide' will be inherited from FairApplication + void MisalignGeometry() const; Int_t isVersion() const { return mVersion; } /// Creating materials for the detector diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h index f7665497c964b..73cad7cb24357 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h @@ -56,14 +56,10 @@ class GeometryMisAligner bool matrixToAngles(const double* rot, double& psi, double& theta, double& phi); // return a misaligned geometry obtained from the existing one. - void MisAlign(bool verbose = false, - const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080", - long tmin = 0, long tmax = -1, - const std::string& objectPath = "", - const std::string& fileName = "MFTAlignment.root"); + void MisAlign(bool verbose = false, const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080", long tmin = 0, long tmax = -1, const std::string& objectPath = "", const std::string& fileName = "MFTAlignment.root"); /// Set sensor cartesian displacement parameters different along x, y - void SetSensorCartMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean = 0., Double_t zwidth = 0.) + void SetSensorCartMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean, Double_t zwidth) { fSensorMisAlig[0][0] = xmean; fSensorMisAlig[0][1] = xwidth; @@ -83,7 +79,7 @@ class GeometryMisAligner } /// Set sensor angular displacement - void SetSensorAngMisAlig(Double_t zmean, Double_t zwidth, Double_t xmean = 0., Double_t xwidth = 0., Double_t ymean = 0., Double_t ywidth = 0.) + void SetSensorAngMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean, Double_t zwidth) { fSensorMisAlig[3][0] = xmean; fSensorMisAlig[3][1] = xwidth; @@ -110,7 +106,7 @@ class GeometryMisAligner } /// Set sensor cartesian displacement parameters different along x, y - void SetLadderCartMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean = 0., Double_t zwidth = 0.) + void SetLadderCartMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean, Double_t zwidth) { fLadderMisAlig[0][0] = xmean; fLadderMisAlig[0][1] = xwidth; @@ -130,7 +126,7 @@ class GeometryMisAligner } /// Set ladder angular displacement - void SetLadderAngMisAlig(Double_t zmean, Double_t zwidth, Double_t xmean = 0., Double_t xwidth = 0., Double_t ymean = 0., Double_t ywidth = 0.) + void SetLadderAngMisAlig(Double_t xmean, Double_t xwidth, Double_t ymean, Double_t ywidth, Double_t zmean, Double_t zwidth) { fLadderMisAlig[3][0] = xmean; fLadderMisAlig[3][1] = xwidth; diff --git a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx index ee4fd1c0dd7c0..e1554d606652a 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx @@ -18,6 +18,7 @@ #include "MFTBase/Geometry.h" #include "MFTBase/GeometryTGeo.h" +#include "MFTBase/MFTBaseParam.h" #include "MFTSimulation/Detector.h" #include "MFTSimulation/GeometryMisAligner.h" @@ -626,7 +627,6 @@ void Detector::addAlignableVolumes() const for (Int_t hf = 0; hf < nHalf; hf++) { addAlignableVolumesHalf(hf, path, lastUID); } - MisalignGeometry(); } //_____________________________________________________________________________ @@ -682,8 +682,6 @@ void Detector::addAlignableVolumesLadder(Int_t hf, Int_t dk, Int_t lr, path = Form("%s/%s_%d_%d_%d_%d", parent.Data(), GeometryTGeo::getMFTLadderPattern(), hf, dk, lr, lr); TString sname = mGeometryTGeo->composeSymNameLadder(hf, dk, lr); - LOG(DEBUG) << "Add " << sname << " <-> " << path; - if (!gGeoManager->SetAlignableEntry(sname.Data(), path.Data())) { LOG(FATAL) << "Unable to set alignable entry ! " << sname << " : " << path; } @@ -706,8 +704,6 @@ void Detector::addAlignableVolumesChip(Int_t hf, Int_t dk, Int_t lr, Int_t ms, Int_t uid = o2::base::GeometryManager::getSensID(o2::detectors::DetID::MFT, lastUID++); - LOG(DEBUG) << "Add " << sname << " <-> " << path << " uid: " << uid; - if (!gGeoManager->SetAlignableEntry(sname, path.Data(), uid)) { LOG(FATAL) << "Unable to set alignable entry ! " << sname << " : " << path; } @@ -717,6 +713,8 @@ void Detector::addAlignableVolumesChip(Int_t hf, Int_t dk, Int_t lr, Int_t ms, void Detector::MisalignGeometry() const { // Function to misalign the MFT geometry + auto& mftBaseParam = MFTBaseParam::Instance(); + const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080"; long tmin = 0; long tmax = -1; @@ -726,19 +724,26 @@ void Detector::MisalignGeometry() const // Initialize the misaligner o2::mft::GeometryMisAligner aGMA; - aGMA.SetHalfCartMisAlig(0., 0., 0., 0., 0., 0.); // half-MFT translated on X, Y, Z axis - aGMA.SetHalfAngMisAlig(0., 0., 0., 0., 0., 0.); // half-MFT rotated on Z, X, Y axis - - aGMA.SetDiskCartMisAlig(0., 0., 0., 0., 0., 0.); // Half-disks translated on X, Y, Z axis - aGMA.SetDiskAngMisAlig(0., 0., 0., 0., 0., 0.); // Half-disks rotated on Z, X, Y axis - - aGMA.SetLadderCartMisAlig(0., 0., 0., 0., 0., 0.); // Ladders translated on X, Y, Z axis - aGMA.SetLadderAngMisAlig(0., 0., 0., 0., 0., 0.); // Ladders rotated on Z, X, Y axis + if (mftBaseParam.misalignHalf) { + aGMA.SetHalfCartMisAlig(0., mftBaseParam.xHalf, 0., mftBaseParam.yHalf, 0., mftBaseParam.zHalf); + aGMA.SetHalfAngMisAlig(0., mftBaseParam.psiHalf, 0., mftBaseParam.thetaHalf, 0., mftBaseParam.phiHalf); + } - aGMA.SetSensorCartMisAlig(0., 0., 0., 0., 0., 0.); // Sensors translated on X, Y, Z axis - aGMA.SetSensorAngMisAlig(0., 0., 0., 0., 0., 0.); // Sensors rotated on Z, X, Y axis + if (mftBaseParam.misalignDisk) { + aGMA.SetDiskCartMisAlig(0., mftBaseParam.xDisk, 0., mftBaseParam.yDisk, 0., mftBaseParam.zDisk); + aGMA.SetDiskAngMisAlig(0., mftBaseParam.psiDisk, 0., mftBaseParam.thetaDisk, 0., mftBaseParam.phiDisk); + } + if (mftBaseParam.misalignLadder) { + aGMA.SetLadderCartMisAlig(0., mftBaseParam.xLadder, 0., mftBaseParam.yLadder, 0., mftBaseParam.zLadder); + aGMA.SetLadderAngMisAlig(0., mftBaseParam.psiLadder, 0., mftBaseParam.thetaLadder, 0., mftBaseParam.phiLadder); + } + if (mftBaseParam.misalignSensor) { + aGMA.SetSensorCartMisAlig(0., mftBaseParam.xSensor, 0., mftBaseParam.ySensor, 0., mftBaseParam.zSensor); + aGMA.SetSensorAngMisAlig(0., mftBaseParam.psiSensor, 0., mftBaseParam.thetaSensor, 0., mftBaseParam.phiSensor); + } - aGMA.MisAlign(false, ccdbHost, tmin, tmax, objectPath, fileName); // Misalign the geometry + // Misalign the geometry + aGMA.MisAlign(false, ccdbHost, tmin, tmax, objectPath, fileName); } //_____________________________________________________________________________ diff --git a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx index bced75d66cf91..a103323c97203 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx @@ -404,11 +404,7 @@ bool GeometryMisAligner::matrixToAngles(const double* rot, double& psi, double& } //______________________________________________________________________ -void GeometryMisAligner::MisAlign(Bool_t verbose, - const std::string& ccdbHost, - long tmin, long tmax, - const std::string& objectPath, - const std::string& fileName) +void GeometryMisAligner::MisAlign(Bool_t verbose, const std::string& ccdbHost, long tmin, long tmax, const std::string& objectPath, const std::string& fileName) { /// Takes the internal geometry module transformers, copies them to /// new geometry module transformers. @@ -431,123 +427,71 @@ void GeometryMisAligner::MisAlign(Bool_t verbose, /// Returns the new geometry transformer. mGeometryTGeo = GeometryTGeo::Instance(); - o2::detectors::AlignParam lAP; - std::vector lAPvec; + LOG(INFO) << "GeometryMisAligner::MisAlign "; - LOG(INFO) << " GeometryMisAligner::MisAlign "; - - Int_t nAlignID = 0; double lPsi, lTheta, lPhi = 0.; + Int_t nAlignID = 0; Int_t nChip = 0; Int_t nHalf = mGeometryTGeo->getNumberOfHalfs(); for (Int_t hf = 0; hf < nHalf; hf++) { Int_t nDisks = mGeometryTGeo->getNumberOfDisksPerHalf(hf); - // New module transformation TGeoCombiTrans localDeltaTransform = MisAlignHalf(); - TString sname = mGeometryTGeo->composeSymNameHalf(hf); - lAP.setSymName(sname); lAP.setAlignableID(nAlignID++); lAP.setLocalParams(localDeltaTransform); - if (!matrixToAngles(localDeltaTransform.GetRotationMatrix(), lPsi, lTheta, lPhi)) { LOG(ERROR) << "Problem extracting angles! from Half"; } - LOG(DEBUG) << "** LocalDeltaTransform Half: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), localDeltaTransform.GetTranslation()[0], localDeltaTransform.GetTranslation()[1], localDeltaTransform.GetTranslation()[2], localDeltaTransform.GetRotationMatrix()[0], localDeltaTransform.GetRotationMatrix()[1], localDeltaTransform.GetRotationMatrix()[2]); - lAP.setLocalParams(localDeltaTransform); - - // Apply misalignment of the half to the ideal geometry + // Apply misalignment to the ideal geometry lAP.applyToGeometry(); - lAPvec.emplace_back(lAP); for (Int_t dk = 0; dk < nDisks; dk++) { - - // New module transformation localDeltaTransform = MisAlignDisk(); sname = mGeometryTGeo->composeSymNameDisk(hf, dk); - lAP.setSymName(sname); lAP.setAlignableID(nAlignID++); - if (!matrixToAngles(localDeltaTransform.GetRotationMatrix(), lPsi, lTheta, lPhi)) { LOG(ERROR) << "Problem extracting angles!"; } LOG(DEBUG) << "**** LocalDeltaTransform Disk: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), localDeltaTransform.GetTranslation()[0], localDeltaTransform.GetTranslation()[1], localDeltaTransform.GetTranslation()[2], localDeltaTransform.GetRotationMatrix()[0], localDeltaTransform.GetRotationMatrix()[1], localDeltaTransform.GetRotationMatrix()[2]); - // Set the local delta transformation to the module lAP.setLocalParams(localDeltaTransform); - - LOG(DEBUG) << "**** AlignParam Disk: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), lAP.getX(), lAP.getY(), lAP.getZ(), lAP.getPsi(), lAP.getTheta(), lAP.getPhi()); - if (verbose) { LOG(INFO) << "-> misalign element: " << sname << ", disk: " << dk; } - Int_t nLadders = 0; - for (Int_t sensor = mGeometryTGeo->getMinSensorsPerLadder(); sensor < mGeometryTGeo->getMaxSensorsPerLadder() + 1; sensor++) { nLadders += mGeometryTGeo->getNumberOfLaddersPerDisk(hf, dk, sensor); } - - // Apply misalignment to the ideal geometry lAP.applyToGeometry(); - - // Store AlignParam (misalignment parameters) lAPvec.emplace_back(lAP); for (Int_t lr = 0; lr < nLadders; lr++) { //nLadders - localDeltaTransform = MisAlignLadder(); - sname = mGeometryTGeo->composeSymNameLadder(hf, dk, lr); - Int_t nSensorsPerLadder = mGeometryTGeo->getNumberOfSensorsPerLadder(hf, dk, lr); TString path = "/cave_1/barrel_1/" + sname; - lAP.setSymName(sname); lAP.setAlignableID(nAlignID++); - - LOG(DEBUG) << "LocalDeltaTransform Ladder: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), localDeltaTransform.GetTranslation()[0], localDeltaTransform.GetTranslation()[1], localDeltaTransform.GetTranslation()[2], lPsi, lTheta, lPhi); - - // Set the local transformations lAP.setLocalParams(localDeltaTransform); - - LOG(DEBUG) << "AlignParam Ladder: " << fmt::format(" {} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), lAP.getX(), lAP.getY(), lAP.getZ(), lAP.getPsi(), lAP.getTheta(), lAP.getPhi()); - - if (verbose) { - LOG(INFO) << "--> misalign element: " << sname << ", ladder: " << lr; - } - - // Apply misaligned detection element to the geometry lAP.applyToGeometry(); - - // Store AlignParam (misalignment parameters) lAPvec.emplace_back(lAP); for (Int_t sr = 0; sr < nSensorsPerLadder; sr++) { - localDeltaTransform = MisAlignSensor(); - sname = mGeometryTGeo->composeSymNameChip(hf, dk, lr, sr); - - if (verbose) { - LOG(INFO) << "---> misalign element: " << sname << ", sensor: " << sr; - } - lAP.setSymName(sname); lAP.setAlignableID(nAlignID++); lAP.setLocalParams(localDeltaTransform); lAP.applyToGeometry(); - lAPvec.emplace_back(lAP); - nChip++; } } @@ -558,7 +502,7 @@ void GeometryMisAligner::MisAlign(Bool_t verbose, std::string path = objectPath.empty() ? o2::base::NameConf::getAlignmentPath(o2::detectors::DetID::MFT) : objectPath; LOGP(INFO, "Storing alignment object on {}/{}", ccdbHost, path); o2::ccdb::CcdbApi api; - map metadata; // can be empty + std::map metadata; // can be empty api.init(ccdbHost.c_str()); // or http://localhost:8080 for a local installation // store abitrary user object in strongly typed manner api.storeAsTFileAny(&lAPvec, path, metadata, tmin, tmax); From 33457e05705861f59b03d64603a500a8bef4eca5 Mon Sep 17 00:00:00 2001 From: Robin Albert Andre Caron Date: Tue, 8 Jun 2021 23:44:07 +0200 Subject: [PATCH 176/314] Fix alignID and not applying alignment to geom --- .../include/MFTSimulation/Detector.h | 2 +- .../ITSMFT/MFT/simulation/src/Detector.cxx | 5 ++-- .../MFT/simulation/src/GeometryMisAligner.cxx | 30 +++++++------------ 3 files changed, 14 insertions(+), 23 deletions(-) diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h index 01d8ae6bb611b..2427690a37eed 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h @@ -118,7 +118,7 @@ class Detector : public o2::base::DetImpl /// \param lastUID on output, UID of the last volume void addAlignableVolumesChip(Int_t hf, Int_t dk, Int_t lr, Int_t ms, TString& parent, Int_t& lastUID) const; - void MisalignGeometry() const; + void Misaligner() const; Int_t isVersion() const { return mVersion; } /// Creating materials for the detector diff --git a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx index e1554d606652a..88fca65602041 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx @@ -710,9 +710,9 @@ void Detector::addAlignableVolumesChip(Int_t hf, Int_t dk, Int_t lr, Int_t ms, } //_____________________________________________________________________________ -void Detector::MisalignGeometry() const +void Detector::Misaligner() const { - // Function to misalign the MFT geometry + // produce misalignment parameters stored into local file or CCDB auto& mftBaseParam = MFTBaseParam::Instance(); const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080"; @@ -742,7 +742,6 @@ void Detector::MisalignGeometry() const aGMA.SetSensorAngMisAlig(0., mftBaseParam.psiSensor, 0., mftBaseParam.thetaSensor, 0., mftBaseParam.phiSensor); } - // Misalign the geometry aGMA.MisAlign(false, ccdbHost, tmin, tmax, objectPath, fileName); } diff --git a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx index a103323c97203..15d0e8c3008c5 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx @@ -442,35 +442,22 @@ void GeometryMisAligner::MisAlign(Bool_t verbose, const std::string& ccdbHost, l TGeoCombiTrans localDeltaTransform = MisAlignHalf(); TString sname = mGeometryTGeo->composeSymNameHalf(hf); lAP.setSymName(sname); - lAP.setAlignableID(nAlignID++); + lAP.setAlignableID(-1); lAP.setLocalParams(localDeltaTransform); - if (!matrixToAngles(localDeltaTransform.GetRotationMatrix(), lPsi, lTheta, lPhi)) { - LOG(ERROR) << "Problem extracting angles! from Half"; - } - lAP.setLocalParams(localDeltaTransform); - // Apply misalignment to the ideal geometry - lAP.applyToGeometry(); lAPvec.emplace_back(lAP); for (Int_t dk = 0; dk < nDisks; dk++) { localDeltaTransform = MisAlignDisk(); sname = mGeometryTGeo->composeSymNameDisk(hf, dk); lAP.setSymName(sname); - lAP.setAlignableID(nAlignID++); - if (!matrixToAngles(localDeltaTransform.GetRotationMatrix(), lPsi, lTheta, lPhi)) { - LOG(ERROR) << "Problem extracting angles!"; - } + lAP.setAlignableID(-1); LOG(DEBUG) << "**** LocalDeltaTransform Disk: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), localDeltaTransform.GetTranslation()[0], localDeltaTransform.GetTranslation()[1], localDeltaTransform.GetTranslation()[2], localDeltaTransform.GetRotationMatrix()[0], localDeltaTransform.GetRotationMatrix()[1], localDeltaTransform.GetRotationMatrix()[2]); lAP.setLocalParams(localDeltaTransform); - if (verbose) { - LOG(INFO) << "-> misalign element: " << sname << ", disk: " << dk; - } Int_t nLadders = 0; for (Int_t sensor = mGeometryTGeo->getMinSensorsPerLadder(); sensor < mGeometryTGeo->getMaxSensorsPerLadder() + 1; sensor++) { nLadders += mGeometryTGeo->getNumberOfLaddersPerDisk(hf, dk, sensor); } - lAP.applyToGeometry(); lAPvec.emplace_back(lAP); for (Int_t lr = 0; lr < nLadders; lr++) { //nLadders @@ -479,19 +466,24 @@ void GeometryMisAligner::MisAlign(Bool_t verbose, const std::string& ccdbHost, l Int_t nSensorsPerLadder = mGeometryTGeo->getNumberOfSensorsPerLadder(hf, dk, lr); TString path = "/cave_1/barrel_1/" + sname; lAP.setSymName(sname); - lAP.setAlignableID(nAlignID++); + lAP.setAlignableID(-1); lAP.setLocalParams(localDeltaTransform); - lAP.applyToGeometry(); lAPvec.emplace_back(lAP); for (Int_t sr = 0; sr < nSensorsPerLadder; sr++) { localDeltaTransform = MisAlignSensor(); sname = mGeometryTGeo->composeSymNameChip(hf, dk, lr, sr); + if (!matrixToAngles(localDeltaTransform.GetRotationMatrix(), lPsi, lTheta, lPhi)) { + LOG(ERROR) << "Problem extracting angles from sensor"; + } lAP.setSymName(sname); - lAP.setAlignableID(nAlignID++); + Int_t uid = o2::base::GeometryManager::getSensID(o2::detectors::DetID::MFT, nChip++); + lAP.setAlignableID(uid); lAP.setLocalParams(localDeltaTransform); - lAP.applyToGeometry(); lAPvec.emplace_back(lAP); + if (verbose) { + LOG(INFO) << "misaligner: " << sname << ", sensor: " << nChip; + } nChip++; } } From 3ea0b255d519a1f228a321303dd80188d80d3c14 Mon Sep 17 00:00:00 2001 From: Robin Albert Andre Caron Date: Mon, 14 Jun 2021 11:57:50 +0200 Subject: [PATCH 177/314] Add test macro and small fixes in misaligner --- .../MFT/base/include/MFTBase/MFTBaseParam.h | 33 ---------------- .../ITSMFT/MFT/macros/test/CMakeLists.txt | 5 +++ .../ITSMFT/MFT/macros/test/MFTMisaligner.C | 35 +++++++++++++++++ .../ITSMFT/MFT/simulation/CMakeLists.txt | 1 - .../include/MFTSimulation/Detector.h | 1 - .../ITSMFT/MFT/simulation/src/Detector.cxx | 38 ------------------- .../MFT/simulation/src/GeometryMisAligner.cxx | 8 +++- 7 files changed, 46 insertions(+), 75 deletions(-) create mode 100644 Detectors/ITSMFT/MFT/macros/test/MFTMisaligner.C diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h index b64f6033a11a8..9334cec545dff 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h @@ -44,39 +44,6 @@ struct MFTBaseParam : public o2::conf::ConfigurableParamHelper { // General configurations bool minimal = false; // Disables all elements out of MFT acceptance - // General misalignment input parameters - bool misalignHalf = false; - bool misalignDisk = false; - bool misalignLadder = false; - bool misalignSensor = true; - - double xHalf = 0.0; - double yHalf = 0.0; - double zHalf = 0.0; - double psiHalf = 0.0; - double thetaHalf = 0.0; - double phiHalf = 0.0; - - double xDisk = 0.0; - double yDisk = 0.0; - double zDisk = 0.0; - double psiDisk = 0.0; - double thetaDisk = 0.0; - double phiDisk = 0.0; - - double xLadder = 0.0; - double yLadder = 0.0; - double zLadder = 0.0; - double psiLadder = 0.0; - double thetaLadder = 0.0; - double phiLadder = 0.0; - - double xSensor = 0.0; - double ySensor = 0.0; - double zSensor = 0.0; - double psiSensor = 0.0; - double thetaSensor = 0.0; - double phiSensor = 0.0; O2ParamDef(MFTBaseParam, "MFTBase"); }; diff --git a/Detectors/ITSMFT/MFT/macros/test/CMakeLists.txt b/Detectors/ITSMFT/MFT/macros/test/CMakeLists.txt index 4ebcb8cc19762..ce575aa159efc 100644 --- a/Detectors/ITSMFT/MFT/macros/test/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/macros/test/CMakeLists.txt @@ -18,3 +18,8 @@ o2_add_test_root_macro(CreateDictionaries.C O2::SimulationDataFormat LABELS mft) +o2_add_test_root_macro(MFTMisaligner.C + PUBLIC_LINK_LIBRARIES O2::MFTBase + O2::CCDB + LABELS mft) + diff --git a/Detectors/ITSMFT/MFT/macros/test/MFTMisaligner.C b/Detectors/ITSMFT/MFT/macros/test/MFTMisaligner.C new file mode 100644 index 0000000000000..fe849ba866f15 --- /dev/null +++ b/Detectors/ITSMFT/MFT/macros/test/MFTMisaligner.C @@ -0,0 +1,35 @@ +/// \file MFTMisaligner.C +/// Macros to test the (mis)alignment of the MFT geometry + +#if !defined(__CLING__) || defined(__ROOTCLING__) +#include "MFTBase/GeometryTGeo.h" +#include "MFTSimulation/GeometryMisAligner.h" +#include "DetectorsBase/GeometryManager.h" +#endif + +//_____________________________________________________________________________ +void MFTMisaligner(const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080", long tmin = 0, long tmax = -1, + double xHalf = 0., double yHalf = 0., double zHalf = 0., double psiHalf = 0., double thetaHalf = 0., double phiHalf = 0., + double xDisk = 0., double yDisk = 0., double zDisk = 0., double psiDisk = 0., double thetaDisk = 0., double phiDisk = 0., + double xLadder = 0., double yLadder = 0., double zLadder = 0., double psiLadder = 0., double thetaLadder = 0., double phiLadder = 0., + double xChip = 0., double yChip = 0., double zChip = 0., double psiChip = 0., double thetaChip = 0., double phiChip = 0., + const std::string& objectPath = "", + const std::string& fileName = "MFTAlignment.root", + bool verbose = false) +{ + o2::base::GeometryManager::loadGeometry("", false); + + // Initialize the misaligner + o2::mft::GeometryMisAligner misaligner; + + misaligner.SetHalfCartMisAlig(0., xHalf, 0., yHalf, 0., zHalf); + misaligner.SetHalfAngMisAlig(0., psiHalf, 0., thetaHalf, 0., phiHalf); + misaligner.SetDiskCartMisAlig(0., xDisk, 0., yDisk, 0., zDisk); + misaligner.SetDiskAngMisAlig(0., psiDisk, 0., thetaDisk, 0., phiDisk); + misaligner.SetLadderCartMisAlig(0., xLadder, 0., yLadder, 0., zLadder); + misaligner.SetLadderAngMisAlig(0., psiLadder, 0., thetaLadder, 0., phiLadder); + misaligner.SetSensorCartMisAlig(0., xChip, 0., yChip, 0., zChip); + misaligner.SetSensorAngMisAlig(0., psiChip, 0., thetaChip, 0., phiChip); + + misaligner.MisAlign(verbose, ccdbHost, tmin, tmax, objectPath, fileName); +} diff --git a/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt b/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt index e4ae138c63186..9c92707347afd 100644 --- a/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt +++ b/Detectors/ITSMFT/MFT/simulation/CMakeLists.txt @@ -31,5 +31,4 @@ o2_add_executable(digi2raw O2::DetectorsRaw O2::DetectorsCommonDataFormats O2::CommonUtils - O2::CCDB Boost::program_options) diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h index 2427690a37eed..b17a814f6b52e 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h @@ -118,7 +118,6 @@ class Detector : public o2::base::DetImpl /// \param lastUID on output, UID of the last volume void addAlignableVolumesChip(Int_t hf, Int_t dk, Int_t lr, Int_t ms, TString& parent, Int_t& lastUID) const; - void Misaligner() const; Int_t isVersion() const { return mVersion; } /// Creating materials for the detector diff --git a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx index 88fca65602041..63b6e0b2b6d03 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/Detector.cxx @@ -18,10 +18,8 @@ #include "MFTBase/Geometry.h" #include "MFTBase/GeometryTGeo.h" -#include "MFTBase/MFTBaseParam.h" #include "MFTSimulation/Detector.h" -#include "MFTSimulation/GeometryMisAligner.h" #include "Field/MagneticField.h" #include "SimulationDataFormat/Stack.h" @@ -709,42 +707,6 @@ void Detector::addAlignableVolumesChip(Int_t hf, Int_t dk, Int_t lr, Int_t ms, } } -//_____________________________________________________________________________ -void Detector::Misaligner() const -{ - // produce misalignment parameters stored into local file or CCDB - auto& mftBaseParam = MFTBaseParam::Instance(); - - const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080"; - long tmin = 0; - long tmax = -1; - const std::string& objectPath = ""; - const std::string& fileName = "MFTAlignment.root"; - - // Initialize the misaligner - o2::mft::GeometryMisAligner aGMA; - - if (mftBaseParam.misalignHalf) { - aGMA.SetHalfCartMisAlig(0., mftBaseParam.xHalf, 0., mftBaseParam.yHalf, 0., mftBaseParam.zHalf); - aGMA.SetHalfAngMisAlig(0., mftBaseParam.psiHalf, 0., mftBaseParam.thetaHalf, 0., mftBaseParam.phiHalf); - } - - if (mftBaseParam.misalignDisk) { - aGMA.SetDiskCartMisAlig(0., mftBaseParam.xDisk, 0., mftBaseParam.yDisk, 0., mftBaseParam.zDisk); - aGMA.SetDiskAngMisAlig(0., mftBaseParam.psiDisk, 0., mftBaseParam.thetaDisk, 0., mftBaseParam.phiDisk); - } - if (mftBaseParam.misalignLadder) { - aGMA.SetLadderCartMisAlig(0., mftBaseParam.xLadder, 0., mftBaseParam.yLadder, 0., mftBaseParam.zLadder); - aGMA.SetLadderAngMisAlig(0., mftBaseParam.psiLadder, 0., mftBaseParam.thetaLadder, 0., mftBaseParam.phiLadder); - } - if (mftBaseParam.misalignSensor) { - aGMA.SetSensorCartMisAlig(0., mftBaseParam.xSensor, 0., mftBaseParam.ySensor, 0., mftBaseParam.zSensor); - aGMA.SetSensorAngMisAlig(0., mftBaseParam.psiSensor, 0., mftBaseParam.thetaSensor, 0., mftBaseParam.phiSensor); - } - - aGMA.MisAlign(false, ccdbHost, tmin, tmax, objectPath, fileName); -} - //_____________________________________________________________________________ void Detector::EndOfEvent() { Reset(); } diff --git a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx index 15d0e8c3008c5..6cd9599d4f5ba 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx @@ -344,7 +344,6 @@ TGeoCombiTrans deltaRot.RotateZ(angMisAlig[2]); TGeoCombiTrans deltaTransf(deltaTrans, deltaRot); - //TGeoHMatrix newTransfMat = transform * deltaTransf; return TGeoCombiTrans(deltaTransf); } @@ -444,6 +443,7 @@ void GeometryMisAligner::MisAlign(Bool_t verbose, const std::string& ccdbHost, l lAP.setSymName(sname); lAP.setAlignableID(-1); lAP.setLocalParams(localDeltaTransform); + lAP.applyToGeometry(); lAPvec.emplace_back(lAP); for (Int_t dk = 0; dk < nDisks; dk++) { @@ -454,11 +454,13 @@ void GeometryMisAligner::MisAlign(Bool_t verbose, const std::string& ccdbHost, l LOG(DEBUG) << "**** LocalDeltaTransform Disk: " << fmt::format("{} : {} | X: {:+f} Y: {:+f} Z: {:+f} | pitch: {:+f} roll: {:+f} yaw: {:+f}\n", lAP.getSymName(), lAP.getAlignableID(), localDeltaTransform.GetTranslation()[0], localDeltaTransform.GetTranslation()[1], localDeltaTransform.GetTranslation()[2], localDeltaTransform.GetRotationMatrix()[0], localDeltaTransform.GetRotationMatrix()[1], localDeltaTransform.GetRotationMatrix()[2]); lAP.setLocalParams(localDeltaTransform); + lAP.applyToGeometry(); + lAPvec.emplace_back(lAP); + Int_t nLadders = 0; for (Int_t sensor = mGeometryTGeo->getMinSensorsPerLadder(); sensor < mGeometryTGeo->getMaxSensorsPerLadder() + 1; sensor++) { nLadders += mGeometryTGeo->getNumberOfLaddersPerDisk(hf, dk, sensor); } - lAPvec.emplace_back(lAP); for (Int_t lr = 0; lr < nLadders; lr++) { //nLadders localDeltaTransform = MisAlignLadder(); @@ -468,6 +470,7 @@ void GeometryMisAligner::MisAlign(Bool_t verbose, const std::string& ccdbHost, l lAP.setSymName(sname); lAP.setAlignableID(-1); lAP.setLocalParams(localDeltaTransform); + lAP.applyToGeometry(); lAPvec.emplace_back(lAP); for (Int_t sr = 0; sr < nSensorsPerLadder; sr++) { @@ -480,6 +483,7 @@ void GeometryMisAligner::MisAlign(Bool_t verbose, const std::string& ccdbHost, l Int_t uid = o2::base::GeometryManager::getSensID(o2::detectors::DetID::MFT, nChip++); lAP.setAlignableID(uid); lAP.setLocalParams(localDeltaTransform); + lAP.applyToGeometry(); lAPvec.emplace_back(lAP); if (verbose) { LOG(INFO) << "misaligner: " << sname << ", sensor: " << nChip; From 0b3875dde90784ac7fbfa516f543ed5c91a971ab Mon Sep 17 00:00:00 2001 From: ALICE Action Bot Date: Wed, 16 Jun 2021 10:14:18 +0000 Subject: [PATCH 178/314] Please consider the following formatting changes --- .../MFT/base/include/MFTBase/MFTBaseParam.h | 1 - .../include/MFTSimulation/Detector.h | 1 - .../MFT/simulation/src/GeometryMisAligner.cxx | 38 +++++++++---------- 3 files changed, 17 insertions(+), 23 deletions(-) diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h index 9334cec545dff..ac22668b86bba 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/MFTBaseParam.h @@ -44,7 +44,6 @@ struct MFTBaseParam : public o2::conf::ConfigurableParamHelper { // General configurations bool minimal = false; // Disables all elements out of MFT acceptance - O2ParamDef(MFTBaseParam, "MFTBase"); }; diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h index b17a814f6b52e..f57073eea3c89 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/Detector.h @@ -118,7 +118,6 @@ class Detector : public o2::base::DetImpl /// \param lastUID on output, UID of the last volume void addAlignableVolumesChip(Int_t hf, Int_t dk, Int_t lr, Int_t ms, TString& parent, Int_t& lastUID) const; - Int_t isVersion() const { return mVersion; } /// Creating materials for the detector diff --git a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx index 6cd9599d4f5ba..c01bcc257b31a 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx @@ -83,11 +83,10 @@ using namespace o2::detectors; ClassImp(o2::mft::GeometryMisAligner); //______________________________________________________________________________ -GeometryMisAligner::GeometryMisAligner(Double_t cartXMisAligM, Double_t cartXMisAligW, Double_t cartYMisAligM, Double_t cartYMisAligW, Double_t angMisAligM, Double_t angMisAligW) : - fUseUni(kFALSE), - fUseGaus(kTRUE), - fXYAngMisAligFactor(0.0), - fZCartMisAligFactor(0.0) +GeometryMisAligner::GeometryMisAligner(Double_t cartXMisAligM, Double_t cartXMisAligW, Double_t cartYMisAligM, Double_t cartYMisAligW, Double_t angMisAligM, Double_t angMisAligW) : fUseUni(kFALSE), + fUseGaus(kTRUE), + fXYAngMisAligFactor(0.0), + fZCartMisAligFactor(0.0) { /// Standard constructor for (Int_t i = 0; i < 6; i++) { @@ -107,11 +106,10 @@ GeometryMisAligner::GeometryMisAligner(Double_t cartXMisAligM, Double_t cartXMis } //______________________________________________________________________________ -GeometryMisAligner::GeometryMisAligner(Double_t cartMisAligM, Double_t cartMisAligW, Double_t angMisAligM, Double_t angMisAligW) : - fUseUni(kFALSE), - fUseGaus(kTRUE), - fXYAngMisAligFactor(0.0), - fZCartMisAligFactor(0.0) +GeometryMisAligner::GeometryMisAligner(Double_t cartMisAligM, Double_t cartMisAligW, Double_t angMisAligM, Double_t angMisAligW) : fUseUni(kFALSE), + fUseGaus(kTRUE), + fXYAngMisAligFactor(0.0), + fZCartMisAligFactor(0.0) { /// Standard constructor for (Int_t i = 0; i < 6; i++) { @@ -131,11 +129,10 @@ GeometryMisAligner::GeometryMisAligner(Double_t cartMisAligM, Double_t cartMisAl } //______________________________________________________________________________ -GeometryMisAligner::GeometryMisAligner(Double_t cartMisAlig, Double_t angMisAlig) : - fUseUni(kTRUE), - fUseGaus(kFALSE), - fXYAngMisAligFactor(0.0), - fZCartMisAligFactor(0.0) +GeometryMisAligner::GeometryMisAligner(Double_t cartMisAlig, Double_t angMisAlig) : fUseUni(kTRUE), + fUseGaus(kFALSE), + fXYAngMisAligFactor(0.0), + fZCartMisAligFactor(0.0) { /// Standard constructor for (Int_t i = 0; i < 6; i++) { @@ -152,11 +149,10 @@ GeometryMisAligner::GeometryMisAligner(Double_t cartMisAlig, Double_t angMisAlig } //_____________________________________________________________________________ -GeometryMisAligner::GeometryMisAligner() : - fUseUni(kTRUE), - fUseGaus(kFALSE), - fXYAngMisAligFactor(0.0), - fZCartMisAligFactor(0.0) +GeometryMisAligner::GeometryMisAligner() : fUseUni(kTRUE), + fUseGaus(kFALSE), + fXYAngMisAligFactor(0.0), + fZCartMisAligFactor(0.0) { /// Default constructor for (Int_t i = 0; i < 6; i++) { @@ -499,7 +495,7 @@ void GeometryMisAligner::MisAlign(Bool_t verbose, const std::string& ccdbHost, l LOGP(INFO, "Storing alignment object on {}/{}", ccdbHost, path); o2::ccdb::CcdbApi api; std::map metadata; // can be empty - api.init(ccdbHost.c_str()); // or http://localhost:8080 for a local installation + api.init(ccdbHost.c_str()); // or http://localhost:8080 for a local installation // store abitrary user object in strongly typed manner api.storeAsTFileAny(&lAPvec, path, metadata, tmin, tmax); } From 4989c1113ed8c7324126f0ca99ec1f8fe253dfe7 Mon Sep 17 00:00:00 2001 From: Rafael Pezzi Date: Wed, 7 Jul 2021 15:48:34 +0200 Subject: [PATCH 179/314] Fix copyright headers --- .../include/MFTSimulation/GeometryMisAligner.h | 9 +++++---- .../ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx | 9 +++++---- 2 files changed, 10 insertions(+), 8 deletions(-) diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h index 73cad7cb24357..98be8e2e28086 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization diff --git a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx index c01bcc257b31a..19c0c822b27ce 100644 --- a/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx +++ b/Detectors/ITSMFT/MFT/simulation/src/GeometryMisAligner.cxx @@ -1,8 +1,9 @@ -// Copyright CERN and copyright holders of ALICE O2. This software is -// distributed under the terms of the GNU General Public License v3 (GPL -// Version 3), copied verbatim in the file "COPYING". +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. // -// See http://alice-o2.web.cern.ch/license for full licensing information. +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". // // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization From 9f35a03165f38f75ca61c659b2ef7d1e82ff912a Mon Sep 17 00:00:00 2001 From: Alla Maevskaya Date: Wed, 14 Jul 2021 11:41:20 +0300 Subject: [PATCH 180/314] use Nchannels as FT0 constants --- .../FIT/FT0/base/include/FT0Base/Geometry.h | 3 ++- .../testWorkflow/FT0CalibCollectorWriterSpec.h | 4 ++-- Detectors/FIT/macros/readFT0digits.C | 10 +++++----- Detectors/FIT/macros/readFT0hits.C | 17 ++++++++--------- 4 files changed, 17 insertions(+), 17 deletions(-) diff --git a/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h b/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h index 6d41589545700..3a5649c02ccdd 100644 --- a/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h +++ b/Detectors/FIT/FT0/base/include/FT0Base/Geometry.h @@ -16,6 +16,7 @@ //////////////////////////////////////////////// #include "DetectorsBase/GeometryManager.h" #include "DetectorsCommonDataFormats/DetID.h" +#include "FT0Base/Constants.h" #include "Framework/Logger.h" #include #include @@ -45,7 +46,7 @@ class Geometry TVector3 centerMCP(int imcp) { return mMCP[imcp]; } TVector3 tiltMCP(int imcp) { return mAngles[imcp]; } - static constexpr int Nchannels = 229; // number of LUT channels + static constexpr int Nchannels = o2::ft0::Constants::sNCHANNELS_PM; // number of PM channels static constexpr int Nsensors = 208; // number of channels static constexpr int NCellsA = 24; // number of radiatiors on A side static constexpr int NCellsC = 28; // number of radiatiors on C side diff --git a/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibCollectorWriterSpec.h b/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibCollectorWriterSpec.h index 223b2702d0830..a4c6c5e60732f 100644 --- a/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibCollectorWriterSpec.h +++ b/Detectors/FIT/FT0/calibration/testWorkflow/FT0CalibCollectorWriterSpec.h @@ -46,7 +46,7 @@ class FT0CalibCollectorWriter : public o2::framework::Task { mCount = 0; createAndOpenFileAndTree(); - mFT0CalibInfoOut.reserve(1000000 * Geo::Nchannels); // tree size 208ch * 10^6 entries * 12 byte + mFT0CalibInfoOut.reserve(1000000 * Geo::Nchannels); // tree size 216ch * 10^6 entries * 12 byte } void run(o2::framework::ProcessingContext& pc) final @@ -108,7 +108,7 @@ namespace framework DataProcessorSpec getFT0CalibCollectorWriterSpec() { - LOG(INFO) << " @@@@ getFT0CalibCollectorWriterSpec "; + LOG(DEBUG) << " @@@@ getFT0CalibCollectorWriterSpec "; using device = o2::calibration::FT0CalibCollectorWriter; std::vector inputs; inputs.emplace_back("collectedInfo", o2::header::gDataOriginFT0, "COLLECTEDINFO"); diff --git a/Detectors/FIT/macros/readFT0digits.C b/Detectors/FIT/macros/readFT0digits.C index bc2a4e30783cc..404dec4c09fe3 100644 --- a/Detectors/FIT/macros/readFT0digits.C +++ b/Detectors/FIT/macros/readFT0digits.C @@ -17,12 +17,12 @@ void readFT0digits() TDirectory* cwd = gDirectory; gDirectory = 0x0; - TH2F* hMultDig = new TH2F("hMultDig", "amplitude ", 210, 0, 210, 200, 0, 1000); - TH2F* hTimeDig = new TH2F("hTimeDig", "Time", 210, 0, 210, 100, -100, 100); + TH2F* hMultDig = new TH2F("hMultDig", "amplitude ", 220, 0, 220, 200, 0, 1000); + TH2F* hTimeDig = new TH2F("hTimeDig", "Time", 220, 0, 220, 100, -100, 100); TH2F* hTimeDigMultA = new TH2F("hTimeDigMultA", "Time vs amplitude", 200, 0, 100, 100, -100, 100); TH2F* hTimeDigMultC = new TH2F("hTimeDigMultC", "Time vs amplitude", 200, 0, 100, 100, -100, 100); TH1F* hNchA = new TH1F("hNchA", "FT0-A", 100, 0, 100); - TH1F* hNchC = new TH1F("hNchC", "FT0-C", 100, 0, 100); + TH1F* hNchC = new TH1F("hNchC", "FT0-C", 110, 0, 110); gDirectory = cwd; @@ -35,7 +35,7 @@ void readFT0digits() digTree->SetBranchAddress("FT0DIGITSBC", &ft0BCDataPtr); digTree->SetBranchAddress("FT0DIGITSCH", &ft0ChDataPtr); - float cfd[208], amp[208]; + float cfd[216], amp[216]; for (int ient = 0; ient < digTree->GetEntries(); ient++) { digTree->GetEntry(ient); @@ -43,7 +43,7 @@ void readFT0digits() std::cout << "Entry " << ient << " : " << nbc << " BCs stored" << std::endl; for (int ibc = 0; ibc < nbc; ibc++) { auto& bcd = digitsBC[ibc]; - for (int ii = 0; ii < 208; ii++) { + for (int ii = 0; ii < 216; ii++) { cfd[ii] = amp[ii] = 0; } diff --git a/Detectors/FIT/macros/readFT0hits.C b/Detectors/FIT/macros/readFT0hits.C index 1bf04e9d77cc1..0554b715cbaf7 100644 --- a/Detectors/FIT/macros/readFT0hits.C +++ b/Detectors/FIT/macros/readFT0hits.C @@ -16,12 +16,12 @@ void readFT0hits() gDirectory = 0x0; TH2F* hMultHit = - new TH2F("hMultHits", "photons Hits ", 210, 0, 210, 500, 0, 5000); - TH2F* hTimeHitA = new TH2F("hTimeAhit", "Time Hits", 210, 0, 210, 500, -1, 1); - TH2F* hTimeHitC = new TH2F("hTimeChit", "Time Hits", 210, 0, 210, 200, -1, 1); + new TH2F("hMultHits", "photons Hits ", 220, 0, 220, 500, 0, 5000); + TH2F* hTimeHitA = new TH2F("hTimeAhit", "Time Hits", 220, 0, 220, 500, -1, 1); + TH2F* hTimeHitC = new TH2F("hTimeChit", "Time Hits", 220, 0, 220, 200, -1, 1); TH2F* hMultDig = - new TH2F("hMultDig", "amplitude ", 210, 0, 210, 500, 0, 1000); - TH2F* hPel = new TH2F("hPelDig", "N p.e. ", 210, 0, 210, 500, 0, 10000); + new TH2F("hMultDig", "amplitude ", 220, 0, 220, 500, 0, 1000); + TH2F* hPel = new TH2F("hPelDig", "N p.e. ", 220, 0, 220, 500, 0, 10000); TH2F* hXYA = new TH2F("hXYA", "X vs Y A side", 400, -20, 20, 400, -20, 20); TH2F* hXYC = new TH2F("hXYC", "X vs Y C side", 400, -20, 20, 400, -20, 20); @@ -59,15 +59,14 @@ void readFT0hits() hTimeHitA->Fill(detID, hit_time[detID] - 11.04); hTimeHitC->Fill(detID, hit_time[detID] - 2.91); countE[detID]++; - if (detID < 97) + if (detID < 96) hXYA->Fill(hit.GetX(), hit.GetY()); - if (detID > 96) + if (detID > 95) hXYC->Fill(hit.GetX(), hit.GetY()); } - for (int ii = 0; ii < 208; ii++) { + for (int ii = 0; ii < 220; ii++) { if (countE[ii] > 100) { hMultHit->Fill(ii, countE[ii]); - // std::cout< Date: Thu, 15 Jul 2021 10:50:57 +0000 Subject: [PATCH 181/314] Export Framework headers required for O2Physics (#6641) In order to factor out O2Physics into its own repository, some extra O2 headers need to be exposed. So far, these are only the headers required for `Analysis/Tutorials/src/histograms.cxx` -- copying other analysis code might require more headers to be exposed. --- Framework/Core/{src => include/Framework}/AnalysisManagers.h | 2 +- Framework/Core/include/Framework/AnalysisTask.h | 4 ++-- Framework/Core/{src => include/Framework}/ExpressionHelpers.h | 0 Framework/Core/src/AODReaderHelpers.cxx | 2 +- Framework/Core/src/Expressions.cxx | 2 +- Framework/Core/test/benchmark_GandivaExpressions.cxx | 3 +-- Framework/Core/test/test_ASoA.cxx | 2 +- Framework/Core/test/test_Expressions.cxx | 2 +- 8 files changed, 8 insertions(+), 9 deletions(-) rename Framework/Core/{src => include/Framework}/AnalysisManagers.h (99%) rename Framework/Core/{src => include/Framework}/ExpressionHelpers.h (100%) diff --git a/Framework/Core/src/AnalysisManagers.h b/Framework/Core/include/Framework/AnalysisManagers.h similarity index 99% rename from Framework/Core/src/AnalysisManagers.h rename to Framework/Core/include/Framework/AnalysisManagers.h index 15c2966dbef40..b83fc94794edc 100644 --- a/Framework/Core/src/AnalysisManagers.h +++ b/Framework/Core/include/Framework/AnalysisManagers.h @@ -22,7 +22,7 @@ #include "Framework/ConfigurableHelpers.h" #include "Framework/InitContext.h" #include "Framework/RootConfigParamHelpers.h" -#include "../src/ExpressionHelpers.h" +#include "Framework/ExpressionHelpers.h" namespace o2::framework { diff --git a/Framework/Core/include/Framework/AnalysisTask.h b/Framework/Core/include/Framework/AnalysisTask.h index 8c74ac4fb2bc8..ce403581627bf 100644 --- a/Framework/Core/include/Framework/AnalysisTask.h +++ b/Framework/Core/include/Framework/AnalysisTask.h @@ -12,14 +12,14 @@ #ifndef FRAMEWORK_ANALYSIS_TASK_H_ #define FRAMEWORK_ANALYSIS_TASK_H_ -#include "../../src/AnalysisManagers.h" +#include "Framework/AnalysisManagers.h" #include "Framework/AlgorithmSpec.h" #include "Framework/CallbackService.h" #include "Framework/ConfigContext.h" #include "Framework/ControlService.h" #include "Framework/DataProcessorSpec.h" #include "Framework/Expressions.h" -#include "../src/ExpressionHelpers.h" +#include "Framework/ExpressionHelpers.h" #include "Framework/EndOfStreamContext.h" #include "Framework/Logger.h" #include "Framework/StructToTuple.h" diff --git a/Framework/Core/src/ExpressionHelpers.h b/Framework/Core/include/Framework/ExpressionHelpers.h similarity index 100% rename from Framework/Core/src/ExpressionHelpers.h rename to Framework/Core/include/Framework/ExpressionHelpers.h diff --git a/Framework/Core/src/AODReaderHelpers.cxx b/Framework/Core/src/AODReaderHelpers.cxx index 9245fec51e3ad..fa283ebffe40f 100644 --- a/Framework/Core/src/AODReaderHelpers.cxx +++ b/Framework/Core/src/AODReaderHelpers.cxx @@ -14,7 +14,7 @@ #include "Framework/AnalysisHelpers.h" #include "AnalysisDataModelHelpers.h" #include "DataProcessingHelpers.h" -#include "ExpressionHelpers.h" +#include "Framework/ExpressionHelpers.h" #include "Framework/RootTableBuilderHelpers.h" #include "Framework/AlgorithmSpec.h" #include "Framework/ConfigParamRegistry.h" diff --git a/Framework/Core/src/Expressions.cxx b/Framework/Core/src/Expressions.cxx index e7a1f6c8bfc83..cd1756a9ea3d4 100644 --- a/Framework/Core/src/Expressions.cxx +++ b/Framework/Core/src/Expressions.cxx @@ -9,7 +9,7 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#include "../src/ExpressionHelpers.h" +#include "Framework/ExpressionHelpers.h" #include "Framework/VariantHelpers.h" #include "Framework/Logger.h" #include "Framework/RuntimeError.h" diff --git a/Framework/Core/test/benchmark_GandivaExpressions.cxx b/Framework/Core/test/benchmark_GandivaExpressions.cxx index 700bf1abb51d0..2715afc9226ba 100644 --- a/Framework/Core/test/benchmark_GandivaExpressions.cxx +++ b/Framework/Core/test/benchmark_GandivaExpressions.cxx @@ -10,11 +10,10 @@ // or submit itself to any jurisdiction. #include "Framework/Expressions.h" -#include "../src/ExpressionHelpers.h" +#include "Framework/ExpressionHelpers.h" #include "Framework/HistogramRegistry.h" #include "Framework/Logger.h" -#include "../src/ExpressionHelpers.h" #include #include diff --git a/Framework/Core/test/test_ASoA.cxx b/Framework/Core/test/test_ASoA.cxx index 7c0471fb821a5..a3ed83fa0c4f0 100644 --- a/Framework/Core/test/test_ASoA.cxx +++ b/Framework/Core/test/test_ASoA.cxx @@ -17,7 +17,7 @@ #include "Framework/ASoAHelpers.h" #include "Framework/Expressions.h" #include "Framework/AnalysisHelpers.h" -#include "../src/ExpressionHelpers.h" +#include "Framework/ExpressionHelpers.h" #include "gandiva/tree_expr_builder.h" #include "arrow/status.h" #include "gandiva/filter.h" diff --git a/Framework/Core/test/test_Expressions.cxx b/Framework/Core/test/test_Expressions.cxx index e614d3347a0c7..57c61a636671d 100644 --- a/Framework/Core/test/test_Expressions.cxx +++ b/Framework/Core/test/test_Expressions.cxx @@ -14,7 +14,7 @@ #define BOOST_TEST_DYN_LINK #include "Framework/Configurable.h" -#include "../src/ExpressionHelpers.h" +#include "Framework/ExpressionHelpers.h" #include "Framework/AnalysisDataModel.h" #include "Framework/AODReaderHelpers.h" #include From 91c81146aef0932e0577a744367e1ff96d69dc2c Mon Sep 17 00:00:00 2001 From: Maximiliano Puccio Date: Thu, 15 Jul 2021 12:56:05 +0200 Subject: [PATCH 182/314] Make json workflow description avalable for cefp (#6623) --- Analysis/EventFiltering/CMakeLists.txt | 2 +- .../centralEventFilterProcessor.cxx | 54 ++++++++++--------- 2 files changed, 30 insertions(+), 26 deletions(-) diff --git a/Analysis/EventFiltering/CMakeLists.txt b/Analysis/EventFiltering/CMakeLists.txt index 2733cba71f407..3c1b5e9365790 100644 --- a/Analysis/EventFiltering/CMakeLists.txt +++ b/Analysis/EventFiltering/CMakeLists.txt @@ -13,7 +13,7 @@ o2_add_library(EventFiltering SOURCES centralEventFilterProcessor.cxx PUBLIC_LINK_LIBRARIES O2::Framework O2::DetectorsBase O2::AnalysisDataModel O2::AnalysisCore) -o2_add_executable(central-event-filter-processor +o2_add_dpl_workflow(central-event-filter-processor SOURCES cefp.cxx COMPONENT_NAME Analysis PUBLIC_LINK_LIBRARIES O2::EventFiltering) diff --git a/Analysis/EventFiltering/centralEventFilterProcessor.cxx b/Analysis/EventFiltering/centralEventFilterProcessor.cxx index 86fcc4e6e5f0d..de6adecd0145d 100644 --- a/Analysis/EventFiltering/centralEventFilterProcessor.cxx +++ b/Analysis/EventFiltering/centralEventFilterProcessor.cxx @@ -32,13 +32,12 @@ using namespace rapidjson; namespace { -Document readJsonFile(std::string& config) +bool readJsonFile(std::string& config, Document& d) { - Document d; FILE* fp = fopen(config.data(), "rb"); if (!fp) { LOG(ERROR) << "Missing configuration json file: " << config; - return d; + return false; } char readBuffer[65536]; @@ -46,7 +45,7 @@ Document readJsonFile(std::string& config) d.ParseStream(is); fclose(fp); - return d; + return true; } } // namespace @@ -68,24 +67,26 @@ void CentralEventFilterProcessor::init(framework::InitContext& ic) // } // } LOG(INFO) << "Start init"; - Document d = readJsonFile(mConfigFile); + Document d; int nCols{0}; - for (auto& workflow : d["workflows"].GetArray()) { - if (std::string_view(workflow["subwagon_name"].GetString()) == "CentralEventFilterProcessor") { - auto& config = workflow["configuration"]; - for (auto& filter : AvailableFilters) { - auto& filterConfig = config[filter]; - if (filterConfig.IsObject()) { - std::unordered_map tableMap; - for (auto& node : filterConfig.GetObject()) { - tableMap[node.name.GetString()] = node.value.GetDouble(); - nCols++; + if (readJsonFile(mConfigFile, d)) { + for (auto& workflow : d["workflows"].GetArray()) { + if (std::string_view(workflow["subwagon_name"].GetString()) == "CentralEventFilterProcessor") { + auto& config = workflow["configuration"]; + for (auto& filter : AvailableFilters) { + auto& filterConfig = config[filter]; + if (filterConfig.IsObject()) { + std::unordered_map tableMap; + for (auto& node : filterConfig.GetObject()) { + tableMap[node.name.GetString()] = node.value.GetDouble(); + nCols++; + } + LOG(INFO) << "Enabling downscaling map for filter: " << filter; + mDownscaling[filter] = tableMap; } - LOG(INFO) << "Enabling downscaling map for filter: " << filter; - mDownscaling[filter] = tableMap; } + break; } - break; } } LOG(INFO) << "Middle init" << std::endl; @@ -167,20 +168,23 @@ DataProcessorSpec getCentralEventFilterProcessorSpec(std::string& config) { std::vector inputs; - Document d = readJsonFile(config); + Document d; - for (auto& workflow : d["workflows"].GetArray()) { - for (unsigned int iFilter{0}; iFilter < AvailableFilters.size(); ++iFilter) { - if (std::string_view(workflow["subwagon_name"].GetString()) == std::string_view(AvailableFilters[iFilter])) { - inputs.emplace_back(std::string(AvailableFilters[iFilter]), "AOD", FilterDescriptions[iFilter], 0, Lifetime::Timeframe); - LOG(INFO) << "Adding input " << std::string_view(AvailableFilters[iFilter]) << std::endl; - break; + if (readJsonFile(config, d)) { + for (auto& workflow : d["workflows"].GetArray()) { + for (unsigned int iFilter{0}; iFilter < AvailableFilters.size(); ++iFilter) { + if (std::string_view(workflow["subwagon_name"].GetString()) == std::string_view(AvailableFilters[iFilter])) { + inputs.emplace_back(std::string(AvailableFilters[iFilter]), "AOD", FilterDescriptions[iFilter], 0, Lifetime::Timeframe); + LOG(INFO) << "Adding input " << std::string_view(AvailableFilters[iFilter]) << std::endl; + break; + } } } } std::vector outputs; outputs.emplace_back("AOD", "Decision", 0, Lifetime::Timeframe); + outputs.emplace_back("TFN", "TFNumber", 0, Lifetime::Timeframe); return DataProcessorSpec{ "o2-central-event-filter-processor", From cc3dc658487a560fb8f74736a741cbae7a1f8e7a Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Wed, 14 Jul 2021 15:16:45 +0200 Subject: [PATCH 183/314] A utility to engineer collision structures in a timeframe Going beyond what was possible until now via SimReader: * make collision contexts of arbitrary timelength `o2-steer-colcontexttool -i bkg,50000 --tflength 10` (generated a context for 10ms timeframes and 50kHz interaction rate) * allow to inject only into every N-th background event `o2-steer-colcontexttool -i bkg,50000 sgn,@0:e5` (injects signals into every 5-th background event) * allow to inject respecting a minimal time distance between signal events `o2-steer-colcontexttool -i bkg,50000 sgn,@0:d10000` (injects signals into background but minimally 10000ns apart) * allow to overlay arbitrary interactions (without matching of vertex) `o2-steer-colcontexttool -i bkg,50000 sgn,40000` (2 unrelated collisions, the first one at 50kHz the second one at 40kHz) * allow to inject multiple signal events `o2-steer-colcontexttool -i bkg,50000 sgn1,@0:e1 sgn2,@0:e1` (injects 2 signals into every background event) The tool can be upgraded to allow editing of existing contexts, etc. in the future. One can also treat QED events in this new fashion without special treatment in digitizers. To use the tool, simply generate a context with it before digitization ``` o2-sim -n ... -o bkg o2-sim ... -o sgn o2-steer-colcontexttool -i bkg,40000 sgn,@0:e2 o2-sim-digitizer-workflow --incontext collisioncontext.root --sims bkg ``` --- .../DigitizationContext.h | 2 +- .../simulation/src/DigitizationContext.cxx | 6 +- Steer/CMakeLists.txt | 5 + Steer/src/CollisionContextTool.cxx | 342 ++++++++++++++++++ 4 files changed, 349 insertions(+), 6 deletions(-) create mode 100644 Steer/src/CollisionContextTool.cxx diff --git a/DataFormats/simulation/include/SimulationDataFormat/DigitizationContext.h b/DataFormats/simulation/include/SimulationDataFormat/DigitizationContext.h index b21d6b0201074..07bee22029bad 100644 --- a/DataFormats/simulation/include/SimulationDataFormat/DigitizationContext.h +++ b/DataFormats/simulation/include/SimulationDataFormat/DigitizationContext.h @@ -127,7 +127,7 @@ class DigitizationContext std::vector mEventRecordsWithQED; std::vector> mEventPartsWithQED; - o2::BunchFilling mBCFilling; // patter of active BCs + o2::BunchFilling mBCFilling; // pattern of active BCs std::vector mSimPrefixes; // identifiers to the hit sim products; the key corresponds to the source ID of event record std::string mQEDSimPrefix; // prefix for QED production/contribution diff --git a/DataFormats/simulation/src/DigitizationContext.cxx b/DataFormats/simulation/src/DigitizationContext.cxx index f9e1c5035cdae..76c62cad5d1ca 100644 --- a/DataFormats/simulation/src/DigitizationContext.cxx +++ b/DataFormats/simulation/src/DigitizationContext.cxx @@ -23,7 +23,7 @@ using namespace o2::steer; void DigitizationContext::printCollisionSummary(bool withQED) const { std::cout << "Summary of DigitizationContext --\n"; - std::cout << "Parts per collision " << mMaxPartNumber << "\n"; + std::cout << "Maximal parts per collision " << mMaxPartNumber << "\n"; std::cout << "Collision parts taken from simulations specified by prefix:\n"; for (int p = 0; p < mSimPrefixes.size(); ++p) { std::cout << "Part " << p << " : " << mSimPrefixes[p] << "\n"; @@ -54,10 +54,6 @@ void DigitizationContext::printCollisionSummary(bool withQED) const void DigitizationContext::setSimPrefixes(std::vector const& prefixes) { mSimPrefixes = prefixes; - // the number should correspond to the number of parts - if (mSimPrefixes.size() != mMaxPartNumber) { - std::cerr << "Inconsistent number of simulation prefixes and part numbers"; - } } bool DigitizationContext::initSimChains(o2::detectors::DetID detid, std::vector& simchains) const diff --git a/Steer/CMakeLists.txt b/Steer/CMakeLists.txt index 7cf99620ce8df..83d2d447a0ece 100644 --- a/Steer/CMakeLists.txt +++ b/Steer/CMakeLists.txt @@ -17,6 +17,11 @@ o2_add_library(Steer O2::SimulationDataFormat O2::DetectorsCommonDataFormats) +o2_add_executable(colcontexttool + COMPONENT_NAME steer + SOURCES src/CollisionContextTool.cxx + PUBLIC_LINK_LIBRARIES Boost::program_options O2::Algorithm O2::Steer O2::SimulationDataFormat) + o2_target_root_dictionary(Steer HEADERS include/Steer/InteractionSampler.h include/Steer/HitProcessingManager.h diff --git a/Steer/src/CollisionContextTool.cxx b/Steer/src/CollisionContextTool.cxx new file mode 100644 index 0000000000000..65ac716e8948f --- /dev/null +++ b/Steer/src/CollisionContextTool.cxx @@ -0,0 +1,342 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include +#include +#include +#include +#include +#include "Steer/InteractionSampler.h" +#include "CommonDataFormat/InteractionRecord.h" +#include "SimulationDataFormat/DigitizationContext.h" +#include +#include +#include +#include + +// +// Created by Sandro Wenzel on 13.07.21. +// + +// A utility to create/engineer (later modify/display) collision contexts + +// options struct filled from command line +struct Options { + std::vector interactionRates; + std::string outfilename; // + double timeframelengthinMS; // timeframe length in milliseconds + long seed; // + bool printContext = false; + std::string bcpatternfile; +}; + +enum class InteractionLockMode { + NOLOCK, + EVERYN, + MINTIMEDISTANCE +}; + +struct InteractionSpec { + std::string name; // name (prefix for transport simulation); may also serve as unique identifier + float interactionRate; + std::pair synconto; // if this interaction locks on another interaction; takes precedence over interactionRate + InteractionLockMode syncmode = InteractionLockMode::NOLOCK; + int mcnumberasked = -1; // number of MC events asked (but can be left -1) in which case it will be determined from timeframelength + int mcnumberavail = -1; // number of MC events avail (but can be left -1); if avail < asked there will be reuse of events + bool randomizeorder = false; // whether order of events will be randomized +}; + +InteractionSpec parseInteractionSpec(std::string const& specifier, std::vector const& existingPatterns) +{ + // An interaction specification is a command-separated string + // of the following form: + // SPEC=NAMESTRING,INTERACTIONSTRING[,MCNUMBERSTRING] + // + // where + // + // NAMESTRING : a simple named specifier for the interaction; matching to a simulation prefix used by o2-sim + // + // INTERACTIONSTRING: irate | @ID:[ed]FLOATVALUE + // - either: a simple number irate specifying the interaction rate in kHz + // - or: a string such as @0:e5, saying that this interaction should match/sync + // with collisions of the 0-th interaction, but inject only every 5 collisions. + // Alternatively @0:d10000 means to inject but leaving a timedistance of at least 10000ns between signals + // + // MCNUMBERSTRING: NUMBER1:r?NUMBER2 can specify how many collisions NUMBER1 to produce, taking from a sample of NUMBER2 available collisions + // - this option is only supported on the first interaction which is supposed to be the background interaction + // - if the 'r' character is present we randomize the order of the MC events + + // tokens are separated by comma + std::vector tokens = o2::RangeTokenizer::tokenize(specifier); + + float rate = -1.; + std::pair synconto(-1, 1); + + // extract name + std::string name = tokens[0]; + + // extract the MC number spec if given + int collisionsasked = -1; + int collisionsavail = -1; + bool randomizeorder = false; + if (tokens.size() > 2) { + auto mctoken = tokens[2]; + std::regex re("([0-9]*):(r?)([0-9]*)$", std::regex_constants::extended); + + std::cmatch m; + if (std::regex_match(mctoken.c_str(), m, re)) { + collisionsasked = std::atoi(m[1].str().c_str()); + if (m[2].str().compare("r") == 0) { + randomizeorder = true; + } + collisionsavail = std::atoi(m[3].str().c_str()); + } else { + LOG(ERROR) << "Could not parse " << mctoken << " as MCNUMBERSTRING"; + exit(1); + } + } + + // extract interaction rate ... or locking + auto& interactionToken = tokens[1]; + if (interactionToken[0] == '@') { + try { + // locking onto some other interaction + std::regex re("@([0-9]*):([ed])([0-9]*[.]?[0-9]?)$", std::regex_constants::extended); + + std::cmatch m; + if (std::regex_match(interactionToken.c_str(), m, re)) { + auto crossindex = std::atoi(m[1].str().c_str()); + auto mode = m[2].str(); + auto modevalue = std::atof(m[3].str().c_str()); + + if (crossindex > existingPatterns.size()) { + LOG(ERROR) << "Reference to non-existent interaction spec"; + exit(1); + } + synconto = std::pair(crossindex, modevalue); + + InteractionLockMode lockMode; + if (mode.compare("e") == 0) { + lockMode = InteractionLockMode::EVERYN; + } + if (mode.compare("d") == 0) { + lockMode = InteractionLockMode::MINTIMEDISTANCE; + } + return InteractionSpec{name, rate, synconto, lockMode, collisionsasked, collisionsavail, randomizeorder}; + } else { + LOG(ERROR) << "Could not parse " << interactionToken << " as INTERACTIONSTRING"; + exit(1); + } + } catch (std::regex_error e) { + LOG(ERROR) << "Exception during regular expression match " << e.what(); + exit(1); + } + } else { + rate = std::atof(interactionToken.c_str()); + return InteractionSpec{name, rate, synconto, InteractionLockMode::NOLOCK, collisionsasked, collisionsavail, randomizeorder}; + } +} + +bool parseOptions(int argc, char* argv[], Options& optvalues) +{ + namespace bpo = boost::program_options; + bpo::options_description options( + "A utility to create and manipulate digitization contexts (MC collision structure within a timeframe).\n\n" + "Allowed options"); + + options.add_options()( + "interactions,i", bpo::value>(&optvalues.interactionRates)->multitoken(), "name,IRate|LockSpecifier")( + "outfile,o", bpo::value(&optvalues.outfilename)->default_value("collisioncontext.root"), "Outfile of collision context")( + "tflength", bpo::value(&optvalues.timeframelengthinMS)->default_value(-1.), + "Length of timeframe to generate in ms (if given). " + "Otherwise, the context will be generated by using collision numbers from the interaction specification.")( + "seed", bpo::value(&optvalues.seed)->default_value(0L), "Seed for random number generator (for time sampling etc). Default 0: Random")( + "show-context", "Print generated collision context to terminal.")( + "bcPatternFile", bpo::value(&optvalues.bcpatternfile)->default_value(""), "Interacting BC pattern file (e.g. from CreateBCPattern.C)"); + + // TODO: + // - ADD HBFUTIL interfacing + bc pattern ? + + options.add_options()("help,h", "Produce help message."); + + bpo::variables_map vm; + try { + bpo::store(bpo::command_line_parser(argc, argv).options(options).run(), vm); + bpo::notify(vm); + + // help + if (vm.count("help")) { + std::cout << options << std::endl; + return false; + } + if (vm.count("show-context")) { + optvalues.printContext = true; + } + + } catch (const bpo::error& e) { + std::cerr << e.what() << "\n\n"; + std::cerr << "Error parsing options; Available options:\n"; + std::cerr << options << std::endl; + return false; + } + return true; +} + +int main(int argc, char* argv[]) +{ + Options options; + if (!parseOptions(argc, argv, options)) { + exit(1); + } + + // init random generator + gRandom->SetSeed(options.seed); + + std::vector ispecs; + // building the interaction spec + for (auto& i : options.interactionRates) { + // this is created as output from + ispecs.push_back(parseInteractionSpec(i, ispecs)); + } + + // do some cross checking on this + std::vector samplers; + + std::vector>> collisions; + + // now we generate the collision structure (interaction type by interaction type) + bool usetimeframelength = options.timeframelengthinMS > 0; + + for (int id = 0; id < ispecs.size(); ++id) { + auto mode = ispecs[id].syncmode; + if (mode == InteractionLockMode::NOLOCK) { + o2::steer::InteractionSampler sampler; + sampler.setInteractionRate(ispecs[id].interactionRate); + if (!options.bcpatternfile.empty()) { + sampler.setBunchFilling(options.bcpatternfile); + } + sampler.init(); + o2::InteractionTimeRecord record; + int count = 0; + do { + record = sampler.generateCollisionTime(); + std::vector parts; + parts.emplace_back(id, count); + + std::pair> insertvalue(record, parts); + auto iter = std::lower_bound(collisions.begin(), collisions.end(), insertvalue, [](std::pair> const& a, std::pair> const& b) { return a.first < b.first; }); + collisions.insert(iter, insertvalue); + count++; + } while ((usetimeframelength && record.getTimeNS() < options.timeframelengthinMS * 1000 * 1000) || (ispecs[id].mcnumberasked > 0 && count < ispecs[id].mcnumberasked)); + + // we support randomization etc on non-injected/embedded interactions + // and we can apply them here + auto random_shuffle = [](auto first, auto last) { + auto n = last - first; + for (auto i = n - 1; i > 0; --i) { + using std::swap; + swap(first[i], first[(int)(gRandom->Rndm() * n)]); + } + }; + std::vector eventindices(count); + std::iota(eventindices.begin(), eventindices.end(), 0); + // apply randomization of order if any + if (ispecs[id].randomizeorder) { + random_shuffle(eventindices.begin(), eventindices.end()); + } + if (ispecs[id].mcnumberavail > 0) { + // apply cutting to number of available entries + for (auto& e : eventindices) { + e = e % ispecs[id].mcnumberavail; + } + } + // make these transformations final: + for (auto& col : collisions) { + for (auto& part : col.second) { + if (part.sourceID == id) { + part.entryID = eventindices[part.entryID]; + } + } + } + + } else { + // we are in some lock/sync mode and modify existing collisions + int lastcol = -1; + double lastcoltime = -1.; + auto distanceval = ispecs[id].synconto.second; + auto lockonto = ispecs[id].synconto.first; + int eventcount = 0; + + for (int colid = 0; colid < collisions.size(); ++colid) { + auto& col = collisions[colid]; + auto coltime = col.first.getTimeNS(); + + bool rightinteraction = false; + // we are locking only on collisions which have the referenced interaction present + // --> there must be an EventPart with the right sourceID + for (auto& eventPart : col.second) { + if (eventPart.sourceID == lockonto) { + rightinteraction = true; + break; + } + } + if (!rightinteraction) { + continue; + } + + bool inject = false; + // we always start with first one + if (lastcol == -1) { + inject = true; + } + if (mode == InteractionLockMode::EVERYN && (colid - lastcol) >= distanceval) { + inject = true; + } + if (mode == InteractionLockMode::MINTIMEDISTANCE && (coltime - lastcoltime) >= distanceval) { + inject = true; + } + + if (inject) { + col.second.emplace_back(id, eventcount++); + lastcol = colid; + lastcoltime = coltime; + } + } + } + } + + // create DigitizationContext + o2::steer::DigitizationContext digicontext; + // we can fill this container + auto& parts = digicontext.getEventParts(); + // we can fill this container + auto& records = digicontext.getEventRecords(); + // copy over information + size_t maxParts = 0; + for (auto& p : collisions) { + records.push_back(p.first); + parts.push_back(p.second); + maxParts = std::max(p.second.size(), maxParts); + } + digicontext.setNCollisions(collisions.size()); + digicontext.setMaxNumberParts(maxParts); + std::vector prefixes; + for (auto& p : ispecs) { + prefixes.push_back(p.name); + } + digicontext.setSimPrefixes(prefixes); + if (options.printContext) { + digicontext.printCollisionSummary(); + } + digicontext.saveToFile(options.outfilename); + + return 0; +} \ No newline at end of file From ca6d8cf26210da1964d7d2d865fa34d0461a6b17 Mon Sep 17 00:00:00 2001 From: Nazar Burmasov Date: Wed, 14 Jul 2021 15:24:27 +0300 Subject: [PATCH 184/314] Add V0s table to the converter --- .../AODProducerWorkflowSpec.h | 14 ++- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 99 ++++++++++++------- Detectors/AOD/src/aod-producer-workflow.cxx | 8 +- 3 files changed, 73 insertions(+), 48 deletions(-) diff --git a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h index 10c259db0d933..a35990189d5e1 100644 --- a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h +++ b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h @@ -147,7 +147,7 @@ typedef boost::unordered_map Triple class AODProducerWorkflowDPL : public Task { public: - AODProducerWorkflowDPL(GID::mask_t src, std::shared_ptr dataRequest, bool fillSVertices) : mInputSources(src), mDataRequest(dataRequest), mFillSVertices(fillSVertices) {} + AODProducerWorkflowDPL(GID::mask_t src, std::shared_ptr dataRequest) : mInputSources(src), mDataRequest(dataRequest) {} ~AODProducerWorkflowDPL() override = default; void init(InitContext& ic) final; void run(ProcessingContext& pc) final; @@ -160,9 +160,13 @@ class AODProducerWorkflowDPL : public Task int64_t mTFNumber{-1}; int mTruncate{1}; int mRecoOnly{0}; - bool mFillSVertices{false}; TStopwatch mTimer; + // unordered map connects global indices and table indices of barrel tracks + // the map is used for V0s table filling + std::unordered_map mV0sIndices; + int mTableTrID{0}; + std::shared_ptr mDataRequest; // truncation is enabled by default @@ -249,8 +253,8 @@ class AODProducerWorkflowDPL : public Task void addToMFTTracksTable(mftTracksCursorType& mftTracksCursor, const o2::mft::TrackMFT& track, int collisionID); // helper for track tables - // fills tables collision by collision - // interaction time is for TOF information + // * fills tables collision by collision + // * interaction time is for TOF information template void fillTrackTablesPerCollision(int collisionID, double interactionTime, @@ -282,7 +286,7 @@ class AODProducerWorkflowDPL : public Task }; /// create a processor spec -framework::DataProcessorSpec getAODProducerWorkflowSpec(GID::mask_t src, bool useMC, bool fillSVertices); +framework::DataProcessorSpec getAODProducerWorkflowSpec(GID::mask_t src, bool useMC); } // namespace o2::aodproducer diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index 6687fe925abfb..5d128db77b8a0 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -265,6 +265,9 @@ void AODProducerWorkflowDPL::fillTrackTablesPerCollision(int collisionID, } addToTracksTable(tracksCursor, tracksCovCursor, trackPar, collisionID, src); addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); + // collecting table indices of barrel tracks for V0s table + mV0sIndices[trackIndex.getIndex()] = mTableTrID; + mTableTrID++; } } } @@ -532,11 +535,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto primVerGIs = recoData.getPrimaryVertexMatchedTracks(); auto primVerLabels = recoData.getPrimaryVertexMCLabels(); - // temporary placeholder - if (mFillSVertices) { - auto secVertices = recoData.getV0s(); - auto p2secRefs = recoData.getPV2V0Refs(); - } + auto secVertices = recoData.getV0s(); auto ft0ChData = recoData.getFT0ChannelsData(); auto ft0RecPoints = recoData.getFT0RecPoints(); @@ -553,36 +552,38 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto& bcBuilder = pc.outputs().make(Output{"AOD", "BC"}); auto& collisionsBuilder = pc.outputs().make(Output{"AOD", "COLLISION"}); - auto& mcColLabelsBuilder = pc.outputs().make(Output{"AOD", "MCCOLLISIONLABEL"}); + auto& fddBuilder = pc.outputs().make(Output{"AOD", "FDD"}); auto& ft0Builder = pc.outputs().make(Output{"AOD", "FT0"}); + auto& fv0aBuilder = pc.outputs().make(Output{"AOD", "FV0A"}); + auto& fv0cBuilder = pc.outputs().make(Output{"AOD", "FV0C"}); + auto& mcColLabelsBuilder = pc.outputs().make(Output{"AOD", "MCCOLLISIONLABEL"}); auto& mcCollisionsBuilder = pc.outputs().make(Output{"AOD", "MCCOLLISION"}); + auto& mcMFTTrackLabelBuilder = pc.outputs().make(Output{"AOD", "MCMFTTRACKLABEL"}); + auto& mcParticlesBuilder = pc.outputs().make(Output{"AOD", "MCPARTICLE"}); + auto& mcTrackLabelBuilder = pc.outputs().make(Output{"AOD", "MCTRACKLABEL"}); + auto& mftTracksBuilder = pc.outputs().make(Output{"AOD", "MFTTRACK"}); auto& tracksBuilder = pc.outputs().make(Output{"AOD", "TRACK"}); auto& tracksCovBuilder = pc.outputs().make(Output{"AOD", "TRACKCOV"}); auto& tracksExtraBuilder = pc.outputs().make(Output{"AOD", "TRACKEXTRA"}); - auto& mftTracksBuilder = pc.outputs().make(Output{"AOD", "MFTTRACK"}); - auto& mcParticlesBuilder = pc.outputs().make(Output{"AOD", "MCPARTICLE"}); - auto& mcTrackLabelBuilder = pc.outputs().make(Output{"AOD", "MCTRACKLABEL"}); - auto& mcMFTTrackLabelBuilder = pc.outputs().make(Output{"AOD", "MCMFTTRACKLABEL"}); - auto& fv0aBuilder = pc.outputs().make(Output{"AOD", "FV0A"}); - auto& fddBuilder = pc.outputs().make(Output{"AOD", "FDD"}); - auto& fv0cBuilder = pc.outputs().make(Output{"AOD", "FV0C"}); + auto& v0sBuilder = pc.outputs().make(Output{"AOD", "V0S"}); auto& zdcBuilder = pc.outputs().make(Output{"AOD", "ZDC"}); auto bcCursor = bcBuilder.cursor(); auto collisionsCursor = collisionsBuilder.cursor(); - auto mcColLabelsCursor = mcColLabelsBuilder.cursor(); + auto fddCursor = fddBuilder.cursor(); auto ft0Cursor = ft0Builder.cursor(); + auto fv0aCursor = fv0aBuilder.cursor(); + auto fv0cCursor = fv0cBuilder.cursor(); + auto mcColLabelsCursor = mcColLabelsBuilder.cursor(); auto mcCollisionsCursor = mcCollisionsBuilder.cursor(); - auto tracksCursor = tracksBuilder.cursor(); - auto tracksCovCursor = tracksCovBuilder.cursor(); - auto tracksExtraCursor = tracksExtraBuilder.cursor(); - auto mftTracksCursor = mftTracksBuilder.cursor(); + auto mcMFTTrackLabelCursor = mcMFTTrackLabelBuilder.cursor(); auto mcParticlesCursor = mcParticlesBuilder.cursor(); auto mcTrackLabelCursor = mcTrackLabelBuilder.cursor(); - auto mcMFTTrackLabelCursor = mcMFTTrackLabelBuilder.cursor(); - auto fv0aCursor = fv0aBuilder.cursor(); - auto fv0cCursor = fv0cBuilder.cursor(); - auto fddCursor = fddBuilder.cursor(); + auto mftTracksCursor = mftTracksBuilder.cursor(); + auto tracksCovCursor = tracksCovBuilder.cursor(); + auto tracksCursor = tracksBuilder.cursor(); + auto tracksExtraCursor = tracksExtraBuilder.cursor(); + auto v0sCursor = v0sBuilder.cursor(); auto zdcCursor = zdcBuilder.cursor(); o2::steer::MCKinematicsReader mcReader("collisioncontext.root"); @@ -749,11 +750,15 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) mcColLabelsCursor(0, mcCollisionID, mcMask); } + // hash map for track indices of secondary vertices + std::unordered_map v0sIndices; + // filling unassigned tracks first // so that all unassigned tracks are stored in the beginning of the table together auto& trackRef = primVer2TRefs.back(); // references to unassigned tracks are at the end // fixme: interaction time is undefined for unassigned tracks (?) - fillTrackTablesPerCollision(-1, -1, trackRef, primVerGIs, recoData, tracksCursor, tracksCovCursor, tracksExtraCursor, mftTracksCursor); + fillTrackTablesPerCollision(-1, -1, trackRef, primVerGIs, recoData, + tracksCursor, tracksCovCursor, tracksExtraCursor, mftTracksCursor); // filling collisions and tracks into tables int collisionID = 0; @@ -793,10 +798,31 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) collisionTimeMask); auto& trackRef = primVer2TRefs[collisionID]; // passing interaction time in [ps] - fillTrackTablesPerCollision(collisionID, tsTimeStamp * 1E3, trackRef, primVerGIs, recoData, tracksCursor, tracksCovCursor, tracksExtraCursor, mftTracksCursor); + fillTrackTablesPerCollision(collisionID, tsTimeStamp * 1E3, trackRef, primVerGIs, recoData, + tracksCursor, tracksCovCursor, tracksExtraCursor, mftTracksCursor); collisionID++; } + // filling v0s table + for (auto& svertex : secVertices) { + auto trPosID = svertex.getProngID(0); + auto trNegID = svertex.getProngID(1); + int posTableIdx = -1; + int negTableIdx = -1; + LOG(DEBUG) << "V0s: " << trPosID.getIndex() << " " << trNegID.getIndex(); + auto item = mV0sIndices.find(trPosID.getIndex()); + if (item != mV0sIndices.end()) { + posTableIdx = item->second; + } + item = mV0sIndices.find(trNegID.getIndex()); + if (item != mV0sIndices.end()) { + negTableIdx = item->second; + } + v0sCursor(0, posTableIdx, negTableIdx); + } + + mV0sIndices.clear(); + // filling BC table // TODO: get real triggerMask uint64_t triggerMask = 1; @@ -936,42 +962,41 @@ void AODProducerWorkflowDPL::endOfStream(EndOfStreamContext& ec) mTimer.CpuTime(), mTimer.RealTime(), mTimer.Counter() - 1); } -DataProcessorSpec getAODProducerWorkflowSpec(GID::mask_t src, bool useMC, bool fillSVertices) +DataProcessorSpec getAODProducerWorkflowSpec(GID::mask_t src, bool useMC) { std::vector outputs; auto dataRequest = std::make_shared(); dataRequest->requestTracks(src, useMC); dataRequest->requestPrimaryVertertices(useMC); - if (fillSVertices) { - dataRequest->requestSecondaryVertertices(useMC); - } + dataRequest->requestSecondaryVertertices(useMC); dataRequest->requestFT0RecPoints(false); dataRequest->requestClusters(GIndex::getSourcesMask("TPC"), false); outputs.emplace_back(OutputLabel{"O2bc"}, "AOD", "BC", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2collision"}, "AOD", "COLLISION", 0, Lifetime::Timeframe); + outputs.emplace_back(OutputLabel{"O2fdd"}, "AOD", "FDD", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2ft0"}, "AOD", "FT0", 0, Lifetime::Timeframe); + outputs.emplace_back(OutputLabel{"O2fv0a"}, "AOD", "FV0A", 0, Lifetime::Timeframe); + outputs.emplace_back(OutputLabel{"O2fv0c"}, "AOD", "FV0C", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2mccollision"}, "AOD", "MCCOLLISION", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2mccollisionlabel"}, "AOD", "MCCOLLISIONLABEL", 0, Lifetime::Timeframe); + outputs.emplace_back(OutputLabel{"O2mcmfttracklabel"}, "AOD", "MCMFTTRACKLABEL", 0, Lifetime::Timeframe); + outputs.emplace_back(OutputLabel{"O2mcparticle"}, "AOD", "MCPARTICLE", 0, Lifetime::Timeframe); + outputs.emplace_back(OutputLabel{"O2mctracklabel"}, "AOD", "MCTRACKLABEL", 0, Lifetime::Timeframe); + outputs.emplace_back(OutputLabel{"O2mfttrack"}, "AOD", "MFTTRACK", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2track"}, "AOD", "TRACK", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2trackcov"}, "AOD", "TRACKCOV", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2trackextra"}, "AOD", "TRACKEXTRA", 0, Lifetime::Timeframe); - outputs.emplace_back(OutputLabel{"O2mfttrack"}, "AOD", "MFTTRACK", 0, Lifetime::Timeframe); - outputs.emplace_back(OutputLabel{"O2mcparticle"}, "AOD", "MCPARTICLE", 0, Lifetime::Timeframe); - outputs.emplace_back(OutputLabel{"O2mctracklabel"}, "AOD", "MCTRACKLABEL", 0, Lifetime::Timeframe); - outputs.emplace_back(OutputLabel{"O2mcmfttracklabel"}, "AOD", "MCMFTTRACKLABEL", 0, Lifetime::Timeframe); - outputs.emplace_back(OutputSpec{"TFN", "TFNumber"}); - outputs.emplace_back(OutputLabel{"O2fv0a"}, "AOD", "FV0A", 0, Lifetime::Timeframe); - outputs.emplace_back(OutputLabel{"O2fv0c"}, "AOD", "FV0C", 0, Lifetime::Timeframe); - outputs.emplace_back(OutputLabel{"O2fdd"}, "AOD", "FDD", 0, Lifetime::Timeframe); + outputs.emplace_back(OutputLabel{"O2v0"}, "AOD", "V0S", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2zdc"}, "AOD", "ZDC", 0, Lifetime::Timeframe); + outputs.emplace_back(OutputSpec{"TFN", "TFNumber"}); return DataProcessorSpec{ "aod-producer-workflow", dataRequest->inputs, outputs, - AlgorithmSpec{adaptFromTask(src, dataRequest, fillSVertices)}, + AlgorithmSpec{adaptFromTask(src, dataRequest)}, Options{ ConfigParamSpec{"aod-timeframe-id", VariantType::Int64, -1L, {"Set timeframe number"}}, ConfigParamSpec{"enable-truncation", VariantType::Int, 1, {"Truncation parameter: 1 -- on, != 1 -- off"}}, diff --git a/Detectors/AOD/src/aod-producer-workflow.cxx b/Detectors/AOD/src/aod-producer-workflow.cxx index a7639580b8645..048d18704ed0a 100644 --- a/Detectors/AOD/src/aod-producer-workflow.cxx +++ b/Detectors/AOD/src/aod-producer-workflow.cxx @@ -28,7 +28,6 @@ void customize(std::vector& workflowOptions) {"disable-root-output", o2::framework::VariantType::Bool, false, {"disable root-files output writer"}}, {"disable-mc", o2::framework::VariantType::Bool, false, {"disable MC propagation"}}, {"info-sources", VariantType::String, std::string{GID::ALL}, {"comma-separated list of sources to use"}}, - {"fill-svertices", o2::framework::VariantType::Bool, false, {"fill V0 table"}}, {"configKeyValues", VariantType::String, "", {"Semicolon separated key=value strings ..."}}}; std::swap(workflowOptions, options); @@ -39,20 +38,17 @@ void customize(std::vector& workflowOptions) WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) { o2::conf::ConfigurableParam::updateFromString(configcontext.options().get("configKeyValues")); - auto fillSVertices = configcontext.options().get("fill-svertices"); auto useMC = !configcontext.options().get("disable-mc"); GID::mask_t allowedSrc = GID::getSourcesMask("ITS,MFT,TPC,ITS-TPC,ITS-TPC-TOF,TPC-TOF,FT0,TPC-TRD,ITS-TPC-TRD"); GID::mask_t src = allowedSrc & GID::getSourcesMask(configcontext.options().get("info-sources")); WorkflowSpec specs; - specs.emplace_back(o2::aodproducer::getAODProducerWorkflowSpec(src, useMC, fillSVertices)); + specs.emplace_back(o2::aodproducer::getAODProducerWorkflowSpec(src, useMC)); o2::globaltracking::InputHelper::addInputSpecs(configcontext, specs, src, src, src, useMC, src); o2::globaltracking::InputHelper::addInputSpecsPVertex(configcontext, specs, useMC); - if (fillSVertices) { - o2::globaltracking::InputHelper::addInputSpecsSVertex(configcontext, specs); - } + o2::globaltracking::InputHelper::addInputSpecsSVertex(configcontext, specs); return std::move(specs); } From 9601b007f0d7ff9dce0ac847888fb2eaba243573 Mon Sep 17 00:00:00 2001 From: Nazar Burmasov Date: Wed, 14 Jul 2021 19:23:36 +0300 Subject: [PATCH 185/314] Use GlobalTrackID as a key for unordered_map instead of int index --- .../AODProducerWorkflowSpec.h | 29 ++++++++++--------- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 9 +++--- 2 files changed, 20 insertions(+), 18 deletions(-) diff --git a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h index a35990189d5e1..9fdf4ce29c284 100644 --- a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h +++ b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h @@ -14,29 +14,30 @@ #ifndef O2_AODPRODUCER_WORKFLOW_SPEC #define O2_AODPRODUCER_WORKFLOW_SPEC -#include "DataFormatsFT0/RecPoints.h" -#include "Framework/AnalysisDataModel.h" -#include "Framework/AnalysisHelpers.h" -#include "Framework/DataProcessorSpec.h" -#include "Framework/Task.h" -#include "TStopwatch.h" #include "CCDB/BasicCCDBManager.h" -#include "Steer/MCKinematicsReader.h" -#include "SimulationDataFormat/MCCompLabel.h" -#include "ReconstructionDataFormats/PrimaryVertex.h" -#include "ReconstructionDataFormats/GlobalTrackID.h" +#include "DataFormatsFT0/RecPoints.h" #include "DataFormatsGlobalTracking/RecoContainer.h" #include "DataFormatsITS/TrackITS.h" #include "DataFormatsMFT/TrackMFT.h" #include "DataFormatsTPC/TrackTPC.h" #include "DataFormatsTRD/TrackTRD.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/AnalysisHelpers.h" +#include "Framework/DataProcessorSpec.h" +#include "Framework/Task.h" +#include "ReconstructionDataFormats/GlobalTrackID.h" +#include "ReconstructionDataFormats/PrimaryVertex.h" #include "ReconstructionDataFormats/TrackTPCITS.h" +#include "ReconstructionDataFormats/VtxTrackIndex.h" +#include "SimulationDataFormat/MCCompLabel.h" +#include "Steer/MCKinematicsReader.h" +#include "TStopwatch.h" -#include -#include +#include #include #include -#include +#include +#include using namespace o2::framework; using GID = o2::dataformats::GlobalTrackID; @@ -164,7 +165,7 @@ class AODProducerWorkflowDPL : public Task // unordered map connects global indices and table indices of barrel tracks // the map is used for V0s table filling - std::unordered_map mV0sIndices; + std::unordered_map mV0sIndices; int mTableTrID{0}; std::shared_ptr mDataRequest; diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index 5d128db77b8a0..dd855adeea7d3 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -43,6 +43,7 @@ #include "FT0Base/Geometry.h" #include "TMath.h" #include "MathUtils/Utils.h" + #include #include #include @@ -266,7 +267,7 @@ void AODProducerWorkflowDPL::fillTrackTablesPerCollision(int collisionID, addToTracksTable(tracksCursor, tracksCovCursor, trackPar, collisionID, src); addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); // collecting table indices of barrel tracks for V0s table - mV0sIndices[trackIndex.getIndex()] = mTableTrID; + mV0sIndices.emplace(trackIndex, mTableTrID); mTableTrID++; } } @@ -809,18 +810,18 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto trNegID = svertex.getProngID(1); int posTableIdx = -1; int negTableIdx = -1; - LOG(DEBUG) << "V0s: " << trPosID.getIndex() << " " << trNegID.getIndex(); - auto item = mV0sIndices.find(trPosID.getIndex()); + auto item = mV0sIndices.find(trPosID); if (item != mV0sIndices.end()) { posTableIdx = item->second; } - item = mV0sIndices.find(trNegID.getIndex()); + item = mV0sIndices.find(trNegID); if (item != mV0sIndices.end()) { negTableIdx = item->second; } v0sCursor(0, posTableIdx, negTableIdx); } + mTableTrID = 0; mV0sIndices.clear(); // filling BC table From a454ae8d47c1e2f03473cd050156678e85744fde Mon Sep 17 00:00:00 2001 From: Nazar Burmasov Date: Wed, 14 Jul 2021 20:16:38 +0300 Subject: [PATCH 186/314] Add cascades to the converter --- .../AODProducerWorkflowSpec.h | 4 +-- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 28 +++++++++++++++---- 2 files changed, 24 insertions(+), 8 deletions(-) diff --git a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h index 9fdf4ce29c284..5196be80146ad 100644 --- a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h +++ b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h @@ -164,8 +164,8 @@ class AODProducerWorkflowDPL : public Task TStopwatch mTimer; // unordered map connects global indices and table indices of barrel tracks - // the map is used for V0s table filling - std::unordered_map mV0sIndices; + // the map is used for V0s and cascades + std::unordered_map mGIDToTableID; int mTableTrID{0}; std::shared_ptr mDataRequest; diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index dd855adeea7d3..d30d0715545ae 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -30,6 +30,7 @@ #include "Framework/TableBuilder.h" #include "Framework/TableTreeHelpers.h" #include "GlobalTracking/MatchTOF.h" +#include "ReconstructionDataFormats/Cascade.h" #include "ReconstructionDataFormats/GlobalTrackID.h" #include "ReconstructionDataFormats/Track.h" #include "ReconstructionDataFormats/TrackTPCITS.h" @@ -267,7 +268,7 @@ void AODProducerWorkflowDPL::fillTrackTablesPerCollision(int collisionID, addToTracksTable(tracksCursor, tracksCovCursor, trackPar, collisionID, src); addToTracksExtraTable(tracksExtraCursor, extraInfoHolder); // collecting table indices of barrel tracks for V0s table - mV0sIndices.emplace(trackIndex, mTableTrID); + mGIDToTableID.emplace(trackIndex, mTableTrID); mTableTrID++; } } @@ -537,6 +538,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto primVerLabels = recoData.getPrimaryVertexMCLabels(); auto secVertices = recoData.getV0s(); + auto cascades = recoData.getCascades(); auto ft0ChData = recoData.getFT0ChannelsData(); auto ft0RecPoints = recoData.getFT0RecPoints(); @@ -552,6 +554,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) LOG(DEBUG) << "FOUND " << ft0RecPoints.size() << " FT0 rec. points"; auto& bcBuilder = pc.outputs().make(Output{"AOD", "BC"}); + auto& cascadesBuilder = pc.outputs().make(Output{"AOD", "CASCADE"}); auto& collisionsBuilder = pc.outputs().make(Output{"AOD", "COLLISION"}); auto& fddBuilder = pc.outputs().make(Output{"AOD", "FDD"}); auto& ft0Builder = pc.outputs().make(Output{"AOD", "FT0"}); @@ -570,6 +573,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto& zdcBuilder = pc.outputs().make(Output{"AOD", "ZDC"}); auto bcCursor = bcBuilder.cursor(); + auto cascadesCursor = cascadesBuilder.cursor(); auto collisionsCursor = collisionsBuilder.cursor(); auto fddCursor = fddBuilder.cursor(); auto ft0Cursor = ft0Builder.cursor(); @@ -810,19 +814,30 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto trNegID = svertex.getProngID(1); int posTableIdx = -1; int negTableIdx = -1; - auto item = mV0sIndices.find(trPosID); - if (item != mV0sIndices.end()) { + auto item = mGIDToTableID.find(trPosID); + if (item != mGIDToTableID.end()) { posTableIdx = item->second; } - item = mV0sIndices.find(trNegID); - if (item != mV0sIndices.end()) { + item = mGIDToTableID.find(trNegID); + if (item != mGIDToTableID.end()) { negTableIdx = item->second; } v0sCursor(0, posTableIdx, negTableIdx); } + // filling cascades table + for (auto& cascade : cascades) { + auto bachelorID = cascade.getBachelorID(); + int bachTableIdx = -1; + auto item = mGIDToTableID.find(bachelorID); + if (item != mGIDToTableID.end()) { + bachTableIdx = item->second; + } + cascadesCursor(0, cascade.getV0ID(), bachTableIdx); + } + mTableTrID = 0; - mV0sIndices.clear(); + mGIDToTableID.clear(); // filling BC table // TODO: get real triggerMask @@ -975,6 +990,7 @@ DataProcessorSpec getAODProducerWorkflowSpec(GID::mask_t src, bool useMC) dataRequest->requestClusters(GIndex::getSourcesMask("TPC"), false); outputs.emplace_back(OutputLabel{"O2bc"}, "AOD", "BC", 0, Lifetime::Timeframe); + outputs.emplace_back(OutputLabel{"O2cascade"}, "AOD", "CASCADE", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2collision"}, "AOD", "COLLISION", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2fdd"}, "AOD", "FDD", 0, Lifetime::Timeframe); outputs.emplace_back(OutputLabel{"O2ft0"}, "AOD", "FT0", 0, Lifetime::Timeframe); From 11d6128a0f08194b8d19024f144666c705fa472c Mon Sep 17 00:00:00 2001 From: Nazar Burmasov Date: Thu, 15 Jul 2021 11:40:54 +0300 Subject: [PATCH 187/314] Add an exception throw if positive or negative track index not found --- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index d30d0715545ae..63cae094d6730 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -817,10 +817,14 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto item = mGIDToTableID.find(trPosID); if (item != mGIDToTableID.end()) { posTableIdx = item->second; + } else { + LOG(FATAL) << "Could not find a positive track index"; } item = mGIDToTableID.find(trNegID); if (item != mGIDToTableID.end()) { negTableIdx = item->second; + } else { + LOG(FATAL) << "Could not find a negative track index"; } v0sCursor(0, posTableIdx, negTableIdx); } From ede8bb138fdb2417a9fb27b54887e1da3f1023f8 Mon Sep 17 00:00:00 2001 From: Nazar Burmasov Date: Thu, 15 Jul 2021 13:16:32 +0300 Subject: [PATCH 188/314] Add an exception throw if a bachelor track index not found --- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index 63cae094d6730..61a14f40f9df0 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -836,6 +836,8 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto item = mGIDToTableID.find(bachelorID); if (item != mGIDToTableID.end()) { bachTableIdx = item->second; + } else { + LOG(FATAL) << "Could not find a bachelor track index"; } cascadesCursor(0, cascade.getV0ID(), bachTableIdx); } From 6eae8c8719d627dedff41f81c26806631a89f31e Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Thu, 15 Jul 2021 10:58:33 +0200 Subject: [PATCH 189/314] DPL: fix idling readers No need to empty the queue at End Of Stream when devices do not have any data inputs. We can simply switch to the "Idle" state and hopefully not use any CPU. --- .../Core/include/Framework/DeviceState.h | 6 ++--- Framework/Core/src/DataProcessingDevice.cxx | 25 +++++++++++++++++-- 2 files changed, 26 insertions(+), 5 deletions(-) diff --git a/Framework/Core/include/Framework/DeviceState.h b/Framework/Core/include/Framework/DeviceState.h index b87eae6e620c3..2fd782cf87d36 100644 --- a/Framework/Core/include/Framework/DeviceState.h +++ b/Framework/Core/include/Framework/DeviceState.h @@ -32,11 +32,11 @@ namespace o2::framework /// device. enum struct StreamingState { /// Data is being processed - Streaming, + Streaming = 0, /// End of streaming requested, but not notified - EndOfStreaming, + EndOfStreaming = 1, /// End of streaming notified - Idle, + Idle = 2, }; /// Running state information of a given device diff --git a/Framework/Core/src/DataProcessingDevice.cxx b/Framework/Core/src/DataProcessingDevice.cxx index b8c3d1ac8c60d..56ce81850ef93 100644 --- a/Framework/Core/src/DataProcessingDevice.cxx +++ b/Framework/Core/src/DataProcessingDevice.cxx @@ -723,6 +723,7 @@ void DataProcessingDevice::doRun(DataProcessorContext& context) }; if (context.deviceContext->state->streaming == StreamingState::Idle) { + *context.wasActive = false; return; } @@ -756,7 +757,10 @@ void DataProcessingDevice::doRun(DataProcessorContext& context) // We keep processing data until we are Idle. // FIXME: not sure this is the correct way to drain the queues, but // I guess we will see. - while (DataProcessingDevice::tryDispatchComputation(context, *context.completed)) { + /// Besides flushing the queues we must make sure we do not have only + /// timers as they do not need to be further processed. + bool hasOnlyGenerated = (context.deviceContext->spec->inputChannels.size() == 1) && (context.deviceContext->spec->inputs[0].matcher.lifetime == Lifetime::Timer || context.deviceContext->spec->inputs[0].matcher.lifetime == Lifetime::Enumeration); + while (DataProcessingDevice::tryDispatchComputation(context, *context.completed) && hasOnlyGenerated == false) { context.relayer->processDanglingInputs(*context.expirationHandlers, *context.registry, false); } EndOfStreamContext eosContext{*context.registry, *context.allocator}; @@ -771,10 +775,27 @@ void DataProcessingDevice::doRun(DataProcessorContext& context) // This is needed because the transport is deleted before the device. context.relayer->clear(); switchState(StreamingState::Idle); - *context.wasActive = true; + if (hasOnlyGenerated) { + *context.wasActive = false; + } else { + *context.wasActive = true; + } + // On end of stream we shut down all output pollers. + for (auto& poller : context.deviceContext->state->activeOutputPollers) { + uv_poll_stop(poller); + } + context.deviceContext->state->activeOutputPollers.clear(); return; } + if (context.deviceContext->state->streaming == StreamingState::Idle) { + // On end of stream we shut down all output pollers. + for (auto& poller : context.deviceContext->state->activeOutputPollers) { + uv_poll_stop(poller); + } + context.deviceContext->state->activeOutputPollers.clear(); + } + return; } From 10f5981c7465c18f95d9ff29e248155ff20936da Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Fri, 16 Jul 2021 01:38:46 +0300 Subject: [PATCH 190/314] DPL GUI: fix switch-case fallthrough (#6646) --- Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx | 1 + 1 file changed, 1 insertion(+) diff --git a/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx b/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx index 8630dc2cbb178..eb948abb06f93 100644 --- a/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx +++ b/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx @@ -145,6 +145,7 @@ void optionsTable(const char* label, std::vector const& options break; case VariantType::Empty: ImGui::TextUnformatted(""); // no default value + break; default: ImGui::TextUnformatted("unknown"); } From a750e7028b020e22e153334fa6a93e0d624aba8b Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Fri, 16 Jul 2021 00:39:17 +0200 Subject: [PATCH 191/314] DPL Analysis: better tweaking of default aod-memory-rate-limit (#6645) --- Framework/Core/src/ArrowSupport.cxx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Framework/Core/src/ArrowSupport.cxx b/Framework/Core/src/ArrowSupport.cxx index 9ef52c212d5bb..66c16958be645 100644 --- a/Framework/Core/src/ArrowSupport.cxx +++ b/Framework/Core/src/ArrowSupport.cxx @@ -342,9 +342,10 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() [](ServiceRegistry& registry, boost::program_options::variables_map const& vm) { auto config = new RateLimitConfig{}; int readers = std::stoll(vm["readers"].as()); - long long int minReaderMemory = readers * 500; if (vm.count("aod-memory-rate-limit")) { - config->maxMemory = std::max(minReaderMemory, std::stoll(vm["aod-memory-rate-limit"].as()) / 1000000); + config->maxMemory = std::stoll(vm["aod-memory-rate-limit"].as()) / 1000000; + } else { + config->maxMemory = readers * 400; } static bool once = false; // Until we guarantee this is called only once... From d32b2f3d1f8e6a5a3e062c288284bbb7c63e69ac Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Fri, 16 Jul 2021 09:15:39 +0300 Subject: [PATCH 192/314] DPL: fix unassigned variable (#6647) --- Framework/Core/src/HTTPParser.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Framework/Core/src/HTTPParser.cxx b/Framework/Core/src/HTTPParser.cxx index 88ff5e48c669e..8c97d18aa4daf 100644 --- a/Framework/Core/src/HTTPParser.cxx +++ b/Framework/Core/src/HTTPParser.cxx @@ -69,7 +69,7 @@ void encode_websocket_frames(std::vector& outputs, char const* src, si } else { headerSize = sizeof(WebSocketFrameHuge); buffer = (char*)malloc(headerSize + size); - WebSocketFrameHuge* header; + WebSocketFrameHuge* header = (WebSocketFrameHuge*)buffer; memset(buffer, 0, headerSize); header->len = 127; header->len64 = size; From 1977800da245a4fd671a42bda5bc24e8d9762d75 Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Fri, 16 Jul 2021 07:13:58 +0300 Subject: [PATCH 193/314] MathUtils: Fix a copy-paste bug introduced in ae8838eec8c3148fef407725f69b416251c9ff8f --- Common/MathUtils/include/MathUtils/detail/IntervalXY.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Common/MathUtils/include/MathUtils/detail/IntervalXY.h b/Common/MathUtils/include/MathUtils/detail/IntervalXY.h index 892868ed562b2..cdc1bc2e93db2 100644 --- a/Common/MathUtils/include/MathUtils/detail/IntervalXY.h +++ b/Common/MathUtils/include/MathUtils/detail/IntervalXY.h @@ -287,7 +287,7 @@ GPUdi() bool IntervalXY::seenByLine(const IntervalXY& other, T eps) const other.getLineCoefs(a, b, c); T x0, y0, x1, y1; eval(-eps, x0, y0); - eval(1.f + eps, x0, y0); + eval(1.f + eps, x1, y1); return (a * x0 + b * y0 + c) * (a * x1 + b * y1 + c) < 0; } From e293a364d054d3e86d0969051d509ac2b4b3297a Mon Sep 17 00:00:00 2001 From: Fabrizio Date: Fri, 16 Jul 2021 13:53:22 +0200 Subject: [PATCH 194/314] PWGHF: Rearrange selections and add possibility to apply pT-differential cuts (#6392) --- Analysis/Core/CMakeLists.txt | 2 - .../include/AnalysisCore/HFConfigurables.h | 74 -- .../include/AnalysisCore/HFSelectorCuts.h | 64 +- Analysis/Core/src/AnalysisCoreLinkDef.h | 2 - Analysis/Core/src/HFConfigurables.cxx | 15 - .../Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx | 1121 +++++++++-------- doc/data/2021-02-o2_prs.json | 5 - 7 files changed, 658 insertions(+), 625 deletions(-) delete mode 100644 Analysis/Core/include/AnalysisCore/HFConfigurables.h delete mode 100644 Analysis/Core/src/HFConfigurables.cxx diff --git a/Analysis/Core/CMakeLists.txt b/Analysis/Core/CMakeLists.txt index dc26de0a8a35c..bc4a674b231b7 100644 --- a/Analysis/Core/CMakeLists.txt +++ b/Analysis/Core/CMakeLists.txt @@ -13,7 +13,6 @@ o2_add_library(AnalysisCore SOURCES src/CorrelationContainer.cxx src/TrackSelection.cxx src/TriggerAliases.cxx - src/HFConfigurables.cxx PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisDataModel) o2_target_root_dictionary(AnalysisCore @@ -22,7 +21,6 @@ o2_target_root_dictionary(AnalysisCore include/AnalysisCore/TrackSelectionDefaults.h include/AnalysisCore/TriggerAliases.h include/AnalysisCore/MC.h - include/AnalysisCore/HFConfigurables.h LINKDEF src/AnalysisCoreLinkDef.h) o2_add_executable(merger diff --git a/Analysis/Core/include/AnalysisCore/HFConfigurables.h b/Analysis/Core/include/AnalysisCore/HFConfigurables.h deleted file mode 100644 index 0854734164271..0000000000000 --- a/Analysis/Core/include/AnalysisCore/HFConfigurables.h +++ /dev/null @@ -1,74 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -/// \file HFConfigurables.h -/// \brief Heavy-flavour candidate preselection configurables for HFTrackIndexSkimsCreator -/// -/// \author Nima Zardoshti , CERN - -#ifndef O2_ANALYSIS_HFCONFIGURABLES_H -#define O2_ANALYSIS_HFCONFIGURABLES_H - -#include - -class HFTrackIndexSkimsCreatorConfigs -{ - public: - HFTrackIndexSkimsCreatorConfigs() = default; - ~HFTrackIndexSkimsCreatorConfigs() = default; - - // 2-prong cuts - - // D0ToPiK - double mPtD0ToPiKMin = 4.; //original value 0. - double mInvMassD0ToPiKMin = 1.46; - double mInvMassD0ToPiKMax = 2.26; - double mCPAD0ToPiKMin = 0.75; - double mImpParProductD0ToPiKMax = -0.00005; - // JpsiToEE - double mPtJpsiToEEMin = 4.; //original value 0. - double mInvMassJpsiToEEMin = 2.5; - double mInvMassJpsiToEEMax = 4.1; - double mCPAJpsiToEEMin = -2; - double mImpParProductJpsiToEEMax = 1000.; - - // 3-prong cuts - - // DPlusToPiKPi - double mPtDPlusToPiKPiMin = 4.; //original value 0. - double mInvMassDPlusToPiKPiMin = 1.75; //original value 1.7 - double mInvMassDPlusToPiKPiMax = 2.0; //original value 2.05 - double mCPADPlusToPiKPiMin = 0.5; - double mDecLenDPlusToPiKPiMin = 0.; - // LcToPKPi - double mPtLcToPKPiMin = 4.; //original value 0. - double mInvMassLcToPKPiMin = 2.15; //original value 2.1 - double mInvMassLcToPKPiMax = 2.45; //original value 2.5 - double mCPALcToPKPiMin = 0.5; - double mDecLenLcToPKPiMin = 0.; - // DsToPiKK - double mPtDsToPiKKMin = 4.; //original value 0. - double mInvMassDsToPiKKMin = 1.75; //original value 1.7 - double mInvMassDsToPiKKMax = 2.15; //original value 2.2 - double mCPADsToPiKKMin = 0.5; - double mDecLenDsToPiKKMin = 0.; - // XicToPKPi - double mPtXicToPKPiMin = 1.; // - double mInvMassXicToPKPiMin = 2.25; // - double mInvMassXicToPKPiMax = 2.70; // - double mCPAXicToPKPiMin = 0.5; - double mDecLenXicToPKPiMin = 0.; - - private: - ClassDef(HFTrackIndexSkimsCreatorConfigs, 1); -}; - -#endif diff --git a/Analysis/Core/include/AnalysisCore/HFSelectorCuts.h b/Analysis/Core/include/AnalysisCore/HFSelectorCuts.h index 9460a8e555586..f2264a1a94c97 100644 --- a/Analysis/Core/include/AnalysisCore/HFSelectorCuts.h +++ b/Analysis/Core/include/AnalysisCore/HFSelectorCuts.h @@ -33,13 +33,13 @@ enum Code { }; } // namespace pdg -/// Finds pT bin in a configurable array. +/// Finds pT bin in an array. /// \param bins array of pT bins /// \param value pT /// \return index of the pT bin /// \note Accounts for the offset so that pt bin array can be used to also configure a histogram axis. template -int findBin(o2::framework::Configurable> const& bins, T2 value) +int findBin(T1 const& bins, T2 value) { if (value < bins->front()) { return -1; @@ -70,12 +70,12 @@ constexpr double pTBinsTrack[npTBinsTrack + 1] = { auto pTBinsTrack_v = std::vector{pTBinsTrack, pTBinsTrack + npTBinsTrack + 1}; // default values for the cuts -constexpr double cutsTrack[npTBinsTrack][nCutVarsTrack] = {{0., 10.}, /* pt<0.5*/ - {0., 10.}, /* 0.53*/ +constexpr double cutsTrack[npTBinsTrack][nCutVarsTrack] = {{0.0025, 10.}, /* 0 < pt < 0.5 */ + {0.0025, 10.}, /* 0.5 < pt < 1 */ + {0.0025, 10.}, /* 1 < pt < 1.5 */ + {0.0025, 10.}, /* 1.5 < pt < 2 */ + {0.0000, 10.}, /* 2 < pt < 3 */ + {0.0000, 10.}}; /* 3 < pt < 1000 */ // row labels static const std::vector pTBinLabelsTrack{}; @@ -84,6 +84,54 @@ static const std::vector pTBinLabelsTrack{}; static const std::vector cutVarLabelsTrack = {"min_dcaxytoprimary", "max_dcaxytoprimary"}; } // namespace hf_cuts_single_track +namespace hf_cuts_presel_2prong +{ +static constexpr int npTBins = 2; +static constexpr int nCutVars = 4; +// default values for the pT bin edges (can be used to configure histogram axis) +// common for any 2-prong candidate +// offset by 1 from the bin numbers in cuts array +constexpr double pTBins[npTBins + 1] = { + 1., + 5., + 1000.0}; +auto pTBinsVec = std::vector{pTBins, pTBins + npTBins + 1}; + +// default values for the cuts +constexpr double cuts[npTBins][nCutVars] = {{1.65, 2.15, 0.5, 100.}, /* 1 < pt < 5 */ + {1.65, 2.15, 0.5, 100.}}; /* 5 < pt > 1000 */ + +// row labels +static const std::vector pTBinLabels{}; + +// column labels +static const std::vector cutVarLabels = {"massMin", "massMax", "cosp", "d0d0"}; +} // namespace hf_cuts_presel_2prong + +namespace hf_cuts_presel_3prong +{ +static constexpr int npTBins = 2; +static constexpr int nCutVars = 4; +// default values for the pT bin edges (can be used to configure histogram axis) +// common for any 3-prong candidate +// offset by 1 from the bin numbers in cuts array +constexpr double pTBins[npTBins + 1] = { + 1., + 5., + 1000.0}; +auto pTBinsVec = std::vector{pTBins, pTBins + npTBins + 1}; + +// default values for the cuts +constexpr double cuts[npTBins][nCutVars] = {{1.75, 2.05, 0.7, 0.02}, /* 1 < pt < 5 */ + {1.75, 2.05, 0.5, 0.02}}; /* 5 < pt < 1000 */ + +// row labels +static const std::vector pTBinLabels{}; + +// column labels +static const std::vector cutVarLabels = {"massMin", "massMax", "cosp", "decL"}; +} // namespace hf_cuts_presel_3prong + namespace hf_cuts_d0_topik { static constexpr int npTBins = 25; diff --git a/Analysis/Core/src/AnalysisCoreLinkDef.h b/Analysis/Core/src/AnalysisCoreLinkDef.h index c6e5e04248a2d..b263cbc454c5f 100644 --- a/Analysis/Core/src/AnalysisCoreLinkDef.h +++ b/Analysis/Core/src/AnalysisCoreLinkDef.h @@ -16,5 +16,3 @@ #pragma link C++ class CorrelationContainer + ; #pragma link C++ class TrackSelection + ; #pragma link C++ class TriggerAliases + ; - -#pragma link C++ class HFTrackIndexSkimsCreatorConfigs + ; diff --git a/Analysis/Core/src/HFConfigurables.cxx b/Analysis/Core/src/HFConfigurables.cxx deleted file mode 100644 index aaa49d5afb8df..0000000000000 --- a/Analysis/Core/src/HFConfigurables.cxx +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -// HF Configurable Classes -// -// Authors: Nima Zardoshti -#include "AnalysisCore/HFConfigurables.h" diff --git a/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx b/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx index 0a2c2ad12df4d..1cdb30a62c53f 100644 --- a/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx +++ b/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx @@ -21,7 +21,6 @@ #include "DetectorsVertexing/DCAFitterN.h" #include "AnalysisDataModel/HFSecondaryVertex.h" #include "AnalysisCore/trackUtilities.h" -#include "AnalysisCore/HFConfigurables.h" #include "AnalysisDataModel/EventSelection.h" //#include "AnalysisDataModel/Centrality.h" #include "AnalysisDataModel/StrangenessTables.h" @@ -37,6 +36,19 @@ using namespace o2::framework::expressions; using namespace o2::aod; using namespace o2::analysis::hf_cuts_single_track; +// enum for candidate type +enum CandidateType { + Cand2Prong = 0, + Cand3Prong, + CandV0bachelor, + NCandidateTypes +}; + +static const double massPi = RecoDecay::getMassPDG(kPiPlus); +static const double massK = RecoDecay::getMassPDG(kKPlus); +static const double massProton = RecoDecay::getMassPDG(kProton); +static const double massElectron = RecoDecay::getMassPDG(kElectron); + void customize(std::vector& workflowOptions) { ConfigParamSpec optionDoMC{"do-LcK0Sp", VariantType::Bool, false, {"Skim also Lc --> K0S+p"}}; @@ -128,34 +140,27 @@ struct HfTagSelCollisions { /// Track selection struct HfTagSelTracks { - // enum for candidate type - enum CandidateType { - Cand2Prong = 0, - Cand3Prong - }; - Produces rowSelectedTrack; Configurable fillHistograms{"fillHistograms", true, "fill histograms"}; - Configurable d_bz{"d_bz", 5., "bz field"}; + Configurable debug{"debug", true, "debug mode"}; + Configurable bz{"bz", 5., "bz field"}; // quality cut Configurable doCutQuality{"doCutQuality", true, "apply quality cuts"}; - Configurable d_tpcnclsfound{"d_tpcnclsfound", 70, ">= min. number of TPC clusters needed"}; + Configurable tpcNClsFound{"tpcNClsFound", 70, ">= min. number of TPC clusters needed"}; // pT bins for single-track cuts - Configurable> pTBinsTrack{"ptbins_singletrack", std::vector{hf_cuts_single_track::pTBinsTrack_v}, "track pT bin limits for 2-prong DCAXY pT-depentend cut"}; + Configurable> pTBinsTrack{"pTBinsTrack", std::vector{hf_cuts_single_track::pTBinsTrack_v}, "track pT bin limits for 2-prong DCAXY pT-depentend cut"}; // 2-prong cuts - Configurable ptmintrack_2prong{"ptmintrack_2prong", -1., "min. track pT for 2 prong candidate"}; - Configurable> cutsTrack2Prong{"cuts_singletrack_2prong", {hf_cuts_single_track::cutsTrack[0], npTBinsTrack, nCutVarsTrack, pTBinLabelsTrack, cutVarLabelsTrack}, "Single-track selections per pT bin for 2-prong candidates"}; - Configurable etamax_2prong{"etamax_2prong", 4., "max. pseudorapidity for 2 prong candidate"}; + Configurable pTMinTrack2Prong{"pTMinTrack2Prong", -1., "min. track pT for 2 prong candidate"}; + Configurable> cutsTrack2Prong{"cutsTrack2Prong", {hf_cuts_single_track::cutsTrack[0], npTBinsTrack, nCutVarsTrack, pTBinLabelsTrack, cutVarLabelsTrack}, "Single-track selections per pT bin for 2-prong candidates"}; + Configurable etaMax2Prong{"etaMax2Prong", 4., "max. pseudorapidity for 2 prong candidate"}; // 3-prong cuts - Configurable ptmintrack_3prong{"ptmintrack_3prong", -1., "min. track pT for 3 prong candidate"}; - Configurable> cutsTrack3Prong{"cuts_singletrack_3prong", {hf_cuts_single_track::cutsTrack[0], npTBinsTrack, nCutVarsTrack, pTBinLabelsTrack, cutVarLabelsTrack}, "Single-track selections per pT bin for 3-prong candidates"}; - Configurable etamax_3prong{"etamax_3prong", 4., "max. pseudorapidity for 3 prong candidate"}; + Configurable pTMinTrack3Prong{"pTMinTrack3Prong", -1., "min. track pT for 3 prong candidate"}; + Configurable> cutsTrack3Prong{"cutsTrack3Prong", {hf_cuts_single_track::cutsTrack[0], npTBinsTrack, nCutVarsTrack, pTBinLabelsTrack, cutVarLabelsTrack}, "Single-track selections per pT bin for 3-prong candidates"}; + Configurable etaMax3Prong{"etaMax3Prong", 4., "max. pseudorapidity for 3 prong candidate"}; // bachelor cuts (when using cascades) Configurable ptMinTrackBach{"ptMinTrackBach", 0.3, "min. track pT for bachelor in cascade candidate"}; // 0.5 for PbPb 2015? - Configurable dcaToPrimXYMaxPtBach{"dcaToPrimXYMaxPtBach", 2., "max pt cut for min. DCAXY to prim. vtx. for bachelor in cascade candidate"}; - Configurable dcaToPrimXYMinBach{"dcaToPrimXYMinBach", 0., "min. DCAXY to prim. vtx. for bachelor in cascade candidate"}; // for PbPb 2018, the cut should be 0.0025 - Configurable dcaToPrimXYMaxBach{"dcaToPrimXYMaxBach", 1.0, "max. DCAXY to prim. vtx. for bachelor in cascade candidate"}; + Configurable> cutsTrackBach{"cutsTrackBach", {hf_cuts_single_track::cutsTrack[0], npTBinsTrack, nCutVarsTrack, pTBinLabelsTrack, cutVarLabelsTrack}, "Single-track selections per pT bin for the bachelor of V0-bachelor candidates"}; Configurable etaMaxBach{"etaMaxBach", 0.8, "max. pseudorapidity for bachelor in cascade candidate"}; // for debugging @@ -167,28 +172,36 @@ struct HfTagSelTracks { HistogramRegistry registry{ "registry", - {{"hpt_nocuts", "all tracks;#it{p}_{T}^{track} (GeV/#it{c});entries", {HistType::kTH1F, {{100, 0., 10.}}}}, + {{"hRejTracks", "Tracks;;entries", {HistType::kTH1F, {{15, 0.5, 15.5}}}}, + {"hPtNoCuts", "all tracks;#it{p}_{T}^{track} (GeV/#it{c});entries", {HistType::kTH1F, {{100, 0., 10.}}}}, // 2-prong histograms - {"hpt_cuts_2prong", "tracks selected for 2-prong vertexing;#it{p}_{T}^{track} (GeV/#it{c});entries", {HistType::kTH1F, {{100, 0., 10.}}}}, - {"hdcatoprimxy_cuts_2prong", "tracks selected for 2-prong vertexing;DCAxy to prim. vtx. (cm);entries", {HistType::kTH1F, {{400, -2., 2.}}}}, - {"heta_cuts_2prong", "tracks selected for 2-prong vertexing;#it{#eta};entries", {HistType::kTH1F, {{static_cast(1.2 * etamax_2prong * 100), -1.2 * etamax_2prong, 1.2 * etamax_2prong}}}}, + {"hPtCuts2Prong", "tracks selected for 2-prong vertexing;#it{p}_{T}^{track} (GeV/#it{c});entries", {HistType::kTH1F, {{100, 0., 10.}}}}, + {"hDCAToPrimXYVsPtCuts2Prong", "tracks selected for 2-prong vertexing;#it{p}_{T}^{track} (GeV/#it{c});DCAxy to prim. vtx. (cm);entries", {HistType::kTH2F, {{100, 0., 10.}, {400, -2., 2.}}}}, + {"hEtaCuts2Prong", "tracks selected for 2-prong vertexing;#it{#eta};entries", {HistType::kTH1F, {{static_cast(1.2 * etaMax2Prong * 100), -1.2 * etaMax2Prong, 1.2 * etaMax2Prong}}}}, // 3-prong histograms - {"hpt_cuts_3prong", "tracks selected for 3-prong vertexing;#it{p}_{T}^{track} (GeV/#it{c});entries", {HistType::kTH1F, {{100, 0., 10.}}}}, - {"hdcatoprimxy_cuts_3prong", "tracks selected for 3-prong vertexing;DCAxy to prim. vtx. (cm);entries", {HistType::kTH1F, {{400, -2., 2.}}}}, - {"heta_cuts_3prong", "tracks selected for 3-prong vertexing;#it{#eta};entries", {HistType::kTH1F, {{static_cast(1.2 * etamax_3prong * 100), -1.2 * etamax_3prong, 1.2 * etamax_3prong}}}}, + {"hPtCuts3Prong", "tracks selected for 3-prong vertexing;#it{p}_{T}^{track} (GeV/#it{c});entries", {HistType::kTH1F, {{100, 0., 10.}}}}, + {"hDCAToPrimXYVsPtCuts3Prong", "tracks selected for 3-prong vertexing;#it{p}_{T}^{track} (GeV/#it{c});DCAxy to prim. vtx. (cm);entries", {HistType::kTH2F, {{100, 0., 10.}, {400, -2., 2.}}}}, + {"hEtaCuts3Prong", "tracks selected for 3-prong vertexing;#it{#eta};entries", {HistType::kTH1F, {{static_cast(1.2 * etaMax3Prong * 100), -1.2 * etaMax3Prong, 1.2 * etaMax3Prong}}}}, // bachelor (for cascades) histograms - {"hpt_cuts_bach", "bachelor tracks selected for cascade vertexing;#it{p}_{T}^{track} (GeV/#it{c});entries", {HistType::kTH1F, {{100, 0., 10.}}}}, - {"hdcatoprimxy_cuts_bach", "bachelor tracks selected for cascade vertexing;DCAxy to prim. vtx. (cm);entries", {HistType::kTH1F, {{100, -1., 1.}}}}, - {"heta_cuts_bach", "bachelortracks selected for cascade vertexing;#it{#eta};entries", {HistType::kTH1F, {{100, -1., 1.}}}} + {"hPtCutsV0bachelor", "tracks selected for 3-prong vertexing;#it{p}_{T}^{track} (GeV/#it{c});entries", {HistType::kTH1F, {{100, 0., 10.}}}}, + {"hDCAToPrimXYVsPtCutsV0bachelor", "tracks selected for V0-bachelor vertexing;#it{p}_{T}^{track} (GeV/#it{c});DCAxy to prim. vtx. (cm);entries", {HistType::kTH2F, {{100, 0., 10.}, {400, -2., 2.}}}}, + {"hEtaCutsV0bachelor", "tracks selected for 3-prong vertexing;#it{#eta};entries", {HistType::kTH1F, {{static_cast(1.2 * etaMaxBach * 100), -1.2 * etaMaxBach, 1.2 * etaMaxBach}}}}}}; - }}; + static const int nCuts = 4; // array of 2-prong and 3-prong single-track cuts - std::array, 2> cutsSingleTrack; + std::array, 3> cutsSingleTrack; void init(InitContext const&) { - cutsSingleTrack = {cutsTrack2Prong, cutsTrack3Prong}; + cutsSingleTrack = {cutsTrack2Prong, cutsTrack3Prong, cutsTrackBach}; + std::string cutNames[nCuts + 1] = {"selected", "rej pT", "rej eta", "rej track quality", "rej dca"}; + std::string candNames[CandidateType::NCandidateTypes] = {"2-prong", "3-prong", "bachelor"}; + for (int iCandType = 0; iCandType < CandidateType::NCandidateTypes; iCandType++) { + for (int iCut = 0; iCut < nCuts + 1; iCut++) { + registry.get(HIST("hRejTracks"))->GetXaxis()->SetBinLabel((nCuts + 1) * iCandType + iCut + 1, Form("%s %s", candNames[iCandType].data(), cutNames[iCut].data())); + } + } } /// Single-track cuts for 2-prongs or 3-prongs @@ -232,98 +245,179 @@ struct HfTagSelTracks { MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "\nWe found the proton " << indexBach); - int status_prong = 7; // selection flag , 3 bits on + int statusProng = BIT(CandidateType::NCandidateTypes) - 1; // selection flag , all bits on + bool cutStatus[CandidateType::NCandidateTypes][nCuts]; + if (debug) { + for (int iCandType = 0; iCandType < CandidateType::NCandidateTypes; iCandType++) { + for (int iCut = 0; iCut < nCuts; iCut++) { + cutStatus[iCandType][iCut] = true; + } + } + } auto trackPt = track.pt(); - if (fillHistograms.value) { - registry.get(HIST("hpt_nocuts"))->Fill(trackPt); + auto trackEta = track.eta(); + + if (fillHistograms) { + registry.get(HIST("hPtNoCuts"))->Fill(trackPt); } + int iDebugCut = 2; // pT cut - if (trackPt < ptmintrack_2prong) { - status_prong = status_prong & ~(1 << 0); // the bitwise operation & ~(1 << n) will set the nth bit to 0 + if (trackPt < pTMinTrack2Prong) { + CLRBIT(statusProng, CandidateType::Cand2Prong); // set the nth bit to 0 + if (debug) { + cutStatus[CandidateType::Cand2Prong][0] = false; + if (fillHistograms) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * CandidateType::Cand2Prong + iDebugCut); + } + } } - if (trackPt < ptmintrack_3prong) { - status_prong = status_prong & ~(1 << 1); + if (trackPt < pTMinTrack3Prong) { + CLRBIT(statusProng, CandidateType::Cand3Prong); + if (debug) { + cutStatus[CandidateType::Cand3Prong][0] = false; + if (fillHistograms) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * CandidateType::Cand3Prong + iDebugCut); + } + } } MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "proton " << indexBach << " pt = " << trackPt << " (cut " << ptMinTrackBach << ")"); if (trackPt < ptMinTrackBach) { - status_prong = status_prong & ~(1 << 2); + CLRBIT(statusProng, CandidateType::CandV0bachelor); + if (debug) { + cutStatus[CandidateType::CandV0bachelor][0] = false; + if (fillHistograms) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * CandidateType::CandV0bachelor + iDebugCut); + } + } } - auto trackEta = track.eta(); + iDebugCut = 3; // eta cut - if ((status_prong & (1 << 0)) && std::abs(trackEta) > etamax_2prong) { - status_prong = status_prong & ~(1 << 0); + if ((debug || TESTBIT(statusProng, CandidateType::Cand2Prong)) && std::abs(trackEta) > etaMax2Prong) { + CLRBIT(statusProng, CandidateType::Cand2Prong); + if (debug) { + cutStatus[CandidateType::Cand2Prong][1] = false; + if (fillHistograms) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * CandidateType::Cand2Prong + iDebugCut); + } + } } - if ((status_prong & (1 << 1)) && std::abs(trackEta) > etamax_3prong) { - status_prong = status_prong & ~(1 << 1); + if ((debug || TESTBIT(statusProng, CandidateType::Cand3Prong)) && std::abs(trackEta) > etaMax3Prong) { + CLRBIT(statusProng, CandidateType::Cand3Prong); + if (debug) { + cutStatus[CandidateType::Cand3Prong][1] = false; + if (fillHistograms) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * CandidateType::Cand3Prong + iDebugCut); + } + } } MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "proton " << indexBach << " eta = " << trackEta << " (cut " << etaMaxBach << ")"); - if ((status_prong & (1 << 2)) && std::abs(trackEta) > etaMaxBach) { - status_prong = status_prong & ~(1 << 2); + if ((debug || TESTBIT(statusProng, CandidateType::CandV0bachelor)) && std::abs(trackEta) > etaMaxBach) { + CLRBIT(statusProng, CandidateType::CandV0bachelor); + if (debug) { + cutStatus[CandidateType::CandV0bachelor][1] = false; + if (fillHistograms) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * CandidateType::CandV0bachelor + iDebugCut); + } + } } // quality cut - MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "proton " << indexBach << " tpcNClsFound = " << track.tpcNClsFound() << " (cut " << tpcnclsfound.value << ")"); + MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "proton " << indexBach << " tpcNClsFound = " << track.tpcNClsFound() << " (cut " << tpcNClsFound.value << ")"); - if (doCutQuality.value && status_prong > 0) { // FIXME to make a more complete selection e.g track.flags() & o2::aod::track::TPCrefit && track.flags() & o2::aod::track::GoldenChi2 && + iDebugCut = 4; + if (doCutQuality.value && (debug || statusProng > 0)) { // FIXME to make a more complete selection e.g track.flags() & o2::aod::track::TPCrefit && track.flags() & o2::aod::track::GoldenChi2 && UChar_t clustermap = track.itsClusterMap(); - if (!(track.tpcNClsFound() >= d_tpcnclsfound.value && + if (!(track.tpcNClsFound() >= tpcNClsFound.value && // is this the number of TPC clusters? It should not be used track.flags() & o2::aod::track::ITSrefit && (TESTBIT(clustermap, 0) || TESTBIT(clustermap, 1)))) { - status_prong = 0; + statusProng = 0; MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "proton " << indexBach << " did not pass clusters cut"); + if (debug) { + for (int iCandType = 0; iCandType < CandidateType::NCandidateTypes; iCandType++) { + cutStatus[iCandType][2] = false; + if (fillHistograms) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * iCandType + iDebugCut); + } + } + } } } + iDebugCut = 5; // DCA cut array dca; - if (status_prong > 0) { - double dcaToPrimXYMinBach_ptDep = dcaToPrimXYMinBach * TMath::Max(0., (1 - TMath::Floor(trackPt / dcaToPrimXYMaxPtBach))); + if ((debug || statusProng > 0)) { auto trackparvar0 = getTrackParCov(track); - if (!trackparvar0.propagateParamToDCA(vtxXYZ, d_bz, &dca, 100.)) { // get impact parameters - status_prong = 0; + if (!trackparvar0.propagateParamToDCA(vtxXYZ, bz, &dca, 100.)) { // get impact parameters + statusProng = 0; } - if ((status_prong & (1 << 0)) && !isSelectedTrack(track, dca, Cand2Prong)) { - status_prong = status_prong & ~(1 << 0); + if ((debug || TESTBIT(statusProng, CandidateType::Cand2Prong)) && !isSelectedTrack(track, dca, CandidateType::Cand2Prong)) { + CLRBIT(statusProng, CandidateType::Cand2Prong); + if (debug) { + cutStatus[CandidateType::Cand2Prong][3] = false; + if (fillHistograms) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * CandidateType::Cand2Prong + iDebugCut); + } + } } - if ((status_prong & (1 << 1)) && !isSelectedTrack(track, dca, Cand3Prong)) { - status_prong = status_prong & ~(1 << 1); + if ((debug || TESTBIT(statusProng, CandidateType::Cand3Prong)) && !isSelectedTrack(track, dca, CandidateType::Cand3Prong)) { + CLRBIT(statusProng, CandidateType::Cand3Prong); + if (debug) { + cutStatus[CandidateType::Cand3Prong][3] = false; + if (fillHistograms) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * CandidateType::Cand3Prong + iDebugCut); + } + } } - if ((status_prong & (1 << 2)) && (std::abs(dca[0]) < dcaToPrimXYMinBach_ptDep || std::abs(dca[0]) > dcaToPrimXYMaxBach)) { - MY_DEBUG_MSG(isProtonFromLc, - LOG(INFO) << "proton " << indexBach << " did not pass DCA cut"; - LOG(INFO) << "dca[0] = " << dca[0] << " (lower cut " << dcaToPrimXYMinBach_ptDep << ", upper cut " << dcaToPrimXYMaxBach << ")";); - status_prong = status_prong & ~(1 << 2); + if ((debug || TESTBIT(statusProng, CandidateType::CandV0bachelor)) && !isSelectedTrack(track, dca, CandidateType::CandV0bachelor)) { + CLRBIT(statusProng, CandidateType::CandV0bachelor); + if (debug) { + cutStatus[CandidateType::CandV0bachelor][3] = false; + if (fillHistograms) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * CandidateType::CandV0bachelor + iDebugCut); + } + } } } - MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "status_prong = " << status_prong; printf("\n")); + MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "statusProng = " << statusProng; printf("\n")); // fill histograms if (fillHistograms) { - if (status_prong & (1 << 0)) { - registry.get(HIST("hpt_cuts_2prong"))->Fill(trackPt); - registry.get(HIST("hdcatoprimxy_cuts_2prong"))->Fill(dca[0]); - registry.get(HIST("heta_cuts_2prong"))->Fill(trackEta); + iDebugCut = 1; + if (TESTBIT(statusProng, CandidateType::Cand2Prong)) { + registry.get(HIST("hPtCuts2Prong"))->Fill(trackPt); + registry.get(HIST("hEtaCuts2Prong"))->Fill(trackEta); + registry.get(HIST("hDCAToPrimXYVsPtCuts2Prong"))->Fill(trackPt, dca[0]); + if (debug) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * CandidateType::Cand2Prong + iDebugCut); + } } - if (status_prong & (1 << 1)) { - registry.get(HIST("hpt_cuts_3prong"))->Fill(trackPt); - registry.get(HIST("hdcatoprimxy_cuts_3prong"))->Fill(dca[0]); - registry.get(HIST("heta_cuts_3prong"))->Fill(trackEta); + if (TESTBIT(statusProng, CandidateType::Cand3Prong)) { + registry.get(HIST("hPtCuts3Prong"))->Fill(trackPt); + registry.get(HIST("hEtaCuts3Prong"))->Fill(trackEta); + registry.get(HIST("hDCAToPrimXYVsPtCuts3Prong"))->Fill(trackPt, dca[0]); + if (debug) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * CandidateType::Cand3Prong + iDebugCut); + } } - if (status_prong & (1 << 2)) { + if (TESTBIT(statusProng, CandidateType::CandV0bachelor)) { MY_DEBUG_MSG(isProtonFromLc, LOG(INFO) << "Will be kept: Proton from Lc " << indexBach); - registry.get(HIST("hpt_cuts_bach"))->Fill(trackPt); - registry.get(HIST("hdcatoprimxy_cuts_bach"))->Fill(dca[0]); - registry.get(HIST("heta_cuts_bach"))->Fill(trackEta); + registry.get(HIST("hPtCutsV0bachelor"))->Fill(trackPt); + registry.get(HIST("hEtaCutsV0bachelor"))->Fill(trackEta); + registry.get(HIST("hDCAToPrimXYVsPtCutsV0bachelor"))->Fill(trackPt, dca[0]); + if (debug) { + registry.get(HIST("hRejTracks"))->Fill((nCuts + 1) * CandidateType::CandV0bachelor + iDebugCut); + } } } // fill table row - rowSelectedTrack(status_prong, dca[0], dca[1]); + rowSelectedTrack(statusProng, dca[0], dca[1]); } } }; @@ -338,34 +432,53 @@ struct HfTrackIndexSkimsCreator { Produces rowProng3CutStatus; //Configurable nCollsMax{"nCollsMax", -1, "Max collisions per file"}; //can be added to run over limited collisions per file - for tesing purposes + Configurable debug{"debug", false, "debug mode"}; Configurable fillHistograms{"fillHistograms", true, "fill histograms"}; Configurable do3prong{"do3prong", 0, "do 3 prong"}; + // preselection parameters + Configurable pTTolerance{"pTTolerance", 0.1, "pT tolerance in GeV/c for applying preselections before vertex reconstruction"}; // vertexing parameters - Configurable d_bz{"d_bz", 5., "magnetic field kG"}; - Configurable b_propdca{"b_propdca", true, "create tracks version propagated to PCA"}; + Configurable bz{"bz", 5., "magnetic field kG"}; + Configurable propToDCA{"propToDCA", true, "create tracks version propagated to PCA"}; Configurable useAbsDCA{"useAbsDCA", true, "Minimise abs. distance rather than chi2"}; - Configurable d_maxr{"d_maxr", 200., "reject PCA's above this radius"}; - Configurable d_maxdzini{"d_maxdzini", 4., "reject (if>0) PCA candidate if tracks DZ exceeds threshold"}; - Configurable d_minparamchange{"d_minparamchange", 1.e-3, "stop iterations if largest change of any X is smaller than this"}; - Configurable d_minrelchi2change{"d_minrelchi2change", 0.9, "stop iterations if chi2/chi2old > this"}; - Configurable configs{"configs", {}, "configurables"}; - Configurable b_debug{"b_debug", false, "debug mode"}; + Configurable maxRad{"maxRad", 200., "reject PCA's above this radius"}; + Configurable maxDZIni{"maxDZIni", 4., "reject (if>0) PCA candidate if tracks DZ exceeds threshold"}; + Configurable minParamChange{"minParamChange", 1.e-3, "stop iterations if largest change of any X is smaller than this"}; + Configurable minRelChi2Change{"minRelChi2Change", 0.9, "stop iterations if chi2/chi2old > this"}; + // D0 cuts + Configurable> pTBinsD0ToPiK{"pTBinsD0ToPiK", std::vector{hf_cuts_presel_2prong::pTBinsVec}, "pT bin limits for D0->piK pT-depentend cuts"}; + Configurable> cutsD0ToPiK{"cutsD0ToPiK", {hf_cuts_presel_2prong::cuts[0], hf_cuts_presel_2prong::npTBins, hf_cuts_presel_2prong::nCutVars, hf_cuts_presel_2prong::pTBinLabels, hf_cuts_presel_2prong::cutVarLabels}, "D0->piK selections per pT bin"}; + // Jpsi cuts + Configurable> pTBinsJpsiToEE{"pTBinsJpsiToEE", std::vector{hf_cuts_presel_2prong::pTBinsVec}, "pT bin limits for Jpsi->ee pT-depentend cuts"}; + Configurable> cutsJpsiToEE{"cutsJpsiToEE", {hf_cuts_presel_2prong::cuts[0], hf_cuts_presel_2prong::npTBins, hf_cuts_presel_2prong::nCutVars, hf_cuts_presel_2prong::pTBinLabels, hf_cuts_presel_2prong::cutVarLabels}, "Jpsi->ee selections per pT bin"}; + // D+ cuts + Configurable> pTBinsDPlusToPiKPi{"pTBinsDPlusToPiKPi", std::vector{hf_cuts_presel_3prong::pTBinsVec}, "pT bin limits for D+->piKpi pT-depentend cuts"}; + Configurable> cutsDPlusToPiKPi{"cutsDPlusToPiKPi", {hf_cuts_presel_3prong::cuts[0], hf_cuts_presel_3prong::npTBins, hf_cuts_presel_3prong::nCutVars, hf_cuts_presel_3prong::pTBinLabels, hf_cuts_presel_3prong::cutVarLabels}, "D+->piKpi selections per pT bin"}; + // Ds+ cuts + Configurable> pTBinsDsToPiKK{"pTBinsDsToPiKK", std::vector{hf_cuts_presel_3prong::pTBinsVec}, "pT bin limits for Ds+->KKpi pT-depentend cuts"}; + Configurable> cutsDsToPiKK{"cutsDsToPiKK", {hf_cuts_presel_3prong::cuts[0], hf_cuts_presel_3prong::npTBins, hf_cuts_presel_3prong::nCutVars, hf_cuts_presel_3prong::pTBinLabels, hf_cuts_presel_3prong::cutVarLabels}, "Ds+->KKpi selections per pT bin"}; + // Lc+ cuts + Configurable> pTBinsLcToPKPi{"pTBinsLcToPKPi", std::vector{hf_cuts_presel_3prong::pTBinsVec}, "pT bin limits for Lc->pKpi pT-depentend cuts"}; + Configurable> cutsLcToPKPi{"cutsLcToPKPi", {hf_cuts_presel_3prong::cuts[0], hf_cuts_presel_3prong::npTBins, hf_cuts_presel_3prong::nCutVars, hf_cuts_presel_3prong::pTBinLabels, hf_cuts_presel_3prong::cutVarLabels}, "Lc->pKpi selections per pT bin"}; + // Xic+ cuts + Configurable> pTBinsXicToPKPi{"pTBinsXicToPKPi", std::vector{hf_cuts_presel_3prong::pTBinsVec}, "pT bin limits for Xic->pKpi pT-depentend cuts"}; + Configurable> cutsXicToPKPi{"cutsXicToPKPi", {hf_cuts_presel_3prong::cuts[0], hf_cuts_presel_3prong::npTBins, hf_cuts_presel_3prong::nCutVars, hf_cuts_presel_3prong::pTBinLabels, hf_cuts_presel_3prong::cutVarLabels}, "Xic->pKpi selections per pT bin"}; HistogramRegistry registry{ "registry", {{"hNTracks", ";# of tracks;entries", {HistType::kTH1F, {{2500, 0., 25000.}}}}, // 2-prong histograms - {"hvtx2_x", "2-prong candidates;#it{x}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -2., 2.}}}}, - {"hvtx2_y", "2-prong candidates;#it{y}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -2., 2.}}}}, - {"hvtx2_z", "2-prong candidates;#it{z}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -20., 20.}}}}, + {"hVtx2ProngX", "2-prong candidates;#it{x}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -2., 2.}}}}, + {"hVtx2ProngY", "2-prong candidates;#it{y}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -2., 2.}}}}, + {"hVtx2ProngZ", "2-prong candidates;#it{z}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -20., 20.}}}}, {"hNCand2Prong", "2-prong candidates preselected;# of candidates;entries", {HistType::kTH1F, {{2000, 0., 200000.}}}}, {"hNCand2ProngVsNTracks", "2-prong candidates preselected;# of selected tracks;# of candidates;entries", {HistType::kTH2F, {{2500, 0., 25000.}, {2000, 0., 200000.}}}}, {"hmassD0ToPiK", "D^{0} candidates;inv. mass (#pi K) (GeV/#it{c}^{2});entries", {HistType::kTH1F, {{500, 0., 5.}}}}, {"hmassJpsiToEE", "J/#psi candidates;inv. mass (e^{#plus} e^{#minus}) (GeV/#it{c}^{2});entries", {HistType::kTH1F, {{500, 0., 5.}}}}, // 3-prong histograms - {"hvtx3_x", "3-prong candidates;#it{x}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -2., 2.}}}}, - {"hvtx3_y", "3-prong candidates;#it{y}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -2., 2.}}}}, - {"hvtx3_z", "3-prong candidates;#it{z}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -20., 20.}}}}, + {"hVtx3ProngX", "3-prong candidates;#it{x}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -2., 2.}}}}, + {"hVtx3ProngY", "3-prong candidates;#it{y}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -2., 2.}}}}, + {"hVtx3ProngZ", "3-prong candidates;#it{z}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -20., 20.}}}}, {"hNCand3Prong", "3-prong candidates preselected;# of candidates;entries", {HistType::kTH1F, {{5000, 0., 500000.}}}}, {"hNCand3ProngVsNTracks", "3-prong candidates preselected;# of selected tracks;# of candidates;entries", {HistType::kTH2F, {{2500, 0., 25000.}, {5000, 0., 500000.}}}}, {"hmassDPlusToPiKPi", "D^{#plus} candidates;inv. mass (#pi K #pi) (GeV/#it{c}^{2});entries", {HistType::kTH1F, {{500, 0., 5.}}}}, @@ -373,6 +486,241 @@ struct HfTrackIndexSkimsCreator { {"hmassDsToPiKK", "D_{s} candidates;inv. mass (K K #pi) (GeV/#it{c}^{2});entries", {HistType::kTH1F, {{500, 0., 5.}}}}, {"hmassXicToPKPi", "#Xi_{c} candidates;inv. mass (p K #pi) (GeV/#it{c}^{2});entries", {HistType::kTH1F, {{500, 0., 5.}}}}}}; + static const int n2ProngDecays = hf_cand_prong2::DecayType::N2ProngDecays; // number of 2-prong hadron types + static const int n3ProngDecays = hf_cand_prong3::DecayType::N3ProngDecays; // number of 3-prong hadron types + static const int nCuts2Prong = 4; // how many different selections are made on 2-prongs + static const int nCuts3Prong = 4; // how many different selections are made on 3-prongs + + array, 2>, n2ProngDecays> arrMass2Prong; + array, 2>, n3ProngDecays> arrMass3Prong; + + // arrays of 2-prong and 3-prong cuts + std::array, n2ProngDecays> cut2Prong; + std::array, n2ProngDecays> pTBins2Prong; + std::array, n3ProngDecays> cut3Prong; + std::array, n3ProngDecays> pTBins3Prong; + + void init(InitContext const&) + { + arrMass2Prong[hf_cand_prong2::DecayType::D0ToPiK] = array{array{massPi, massK}, + array{massK, massPi}}; + + arrMass2Prong[hf_cand_prong2::DecayType::JpsiToEE] = array{array{massElectron, massElectron}, + array{massElectron, massElectron}}; + + arrMass3Prong[hf_cand_prong3::DecayType::DPlusToPiKPi] = array{array{massPi, massK, massPi}, + array{massPi, massK, massPi}}; + + arrMass3Prong[hf_cand_prong3::DecayType::LcToPKPi] = array{array{massProton, massK, massPi}, + array{massPi, massK, massProton}}; + + arrMass3Prong[hf_cand_prong3::DecayType::DsToPiKK] = array{array{massK, massK, massPi}, + array{massPi, massK, massK}}; + + arrMass3Prong[hf_cand_prong3::DecayType::XicToPKPi] = array{array{massProton, massK, massPi}, + array{massPi, massK, massProton}}; + + // cuts for 2-prong decays retrieved by json. the order must be then one in hf_cand_prong2::DecayType + cut2Prong = {cutsD0ToPiK, cutsJpsiToEE}; + pTBins2Prong = {pTBinsD0ToPiK, pTBinsJpsiToEE}; + // cuts for 3-prong decays retrieved by json. the order must be then one in hf_cand_prong3::DecayType + cut3Prong = {cutsDPlusToPiKPi, cutsLcToPKPi, cutsDsToPiKK, cutsXicToPKPi}; + pTBins3Prong = {pTBinsDPlusToPiKPi, pTBinsLcToPKPi, pTBinsDsToPiKK, pTBinsXicToPKPi}; + } + + /// Method to perform selections for 2-prong candidates before vertex reconstruction + /// \param hfTracks is the array of 2 tracks + /// \param massHypos is a 2D array containing the mass hypotheses for the 2-prong channels + /// \param cutStatus is a 2D array with outcome of each selection (filled only in debug mode) + /// \param isSelected ia s bitmap with selection outcome + template + void is2ProngPreselected(const T1& hfTracks, T2& cutStatus, T3& whichHypo, int& isSelected) + { + auto arrMom = array{ + array{hfTracks[0].px(), hfTracks[0].py(), hfTracks[0].pz()}, + array{hfTracks[1].px(), hfTracks[1].py(), hfTracks[1].pz()}}; + + auto pT = RecoDecay::Pt(arrMom[0], arrMom[1]) - pTTolerance; // add tolerance because of no reco decay vertex + + for (int iDecay2P = 0; iDecay2P < n2ProngDecays; iDecay2P++) { + + // pT + auto pTBin = findBin(&pTBins2Prong[iDecay2P], pT); + // return immediately if it is outside the defined pT bins + if (pTBin == -1) { + CLRBIT(isSelected, iDecay2P); + if (debug) { + cutStatus[iDecay2P][0] = false; + } + continue; + } + + // invariant mass + double massHypos[2]; + whichHypo[iDecay2P] = 3; + if ((debug || TESTBIT(isSelected, iDecay2P)) && cut2Prong[iDecay2P].get(pTBin, "massMin") >= 0. && cut2Prong[iDecay2P].get(pTBin, "massMax") > 0.) { + massHypos[0] = RecoDecay::M(arrMom, arrMass2Prong[iDecay2P][0]); + massHypos[1] = RecoDecay::M(arrMom, arrMass2Prong[iDecay2P][1]); + if (massHypos[0] < cut2Prong[iDecay2P].get(pTBin, "massMin") || massHypos[0] >= cut2Prong[iDecay2P].get(pTBin, "massMax")) { + whichHypo[iDecay2P] -= 1; + } + if (massHypos[1] < cut2Prong[iDecay2P].get(pTBin, "massMin") || massHypos[1] >= cut2Prong[iDecay2P].get(pTBin, "massMax")) { + whichHypo[iDecay2P] -= 2; + } + if (whichHypo[iDecay2P] == 0) { + CLRBIT(isSelected, iDecay2P); + if (debug) { + cutStatus[iDecay2P][1] = false; + } + } + } + + // imp. par. product cut + if (debug || TESTBIT(isSelected, iDecay2P)) { + auto impParProduct = hfTracks[0].dcaPrim0() * hfTracks[1].dcaPrim0(); + if (impParProduct > cut2Prong[iDecay2P].get(pTBin, "d0d0")) { + CLRBIT(isSelected, iDecay2P); + if (debug) { + cutStatus[iDecay2P][2] = false; + } + } + } + } + } + + /// Method to perform selections for 3-prong candidates before vertex reconstruction + /// \param hfTracks is the array of 3 tracks + /// \param massHypos is a 2D array containing the mass hypotheses for the 3-prong channels + /// \param cutStatus is a 2D array with outcome of each selection (filled only in debug mode) + /// \param isSelected ia s bitmap with selection outcome + template + void is3ProngPreselected(const T1& hfTracks, T2& cutStatus, T3& whichHypo, int& isSelected) + { + auto arrMom = array{ + array{hfTracks[0].px(), hfTracks[0].py(), hfTracks[0].pz()}, + array{hfTracks[1].px(), hfTracks[1].py(), hfTracks[1].pz()}, + array{hfTracks[2].px(), hfTracks[2].py(), hfTracks[2].pz()}}; + + auto pT = RecoDecay::Pt(arrMom[0], arrMom[1], arrMom[2]) - pTTolerance; // add tolerance because of no reco decay vertex + + for (int iDecay3P = 0; iDecay3P < n3ProngDecays; iDecay3P++) { + + // pT + auto pTBin = findBin(&pTBins3Prong[iDecay3P], pT); + // return immediately if it is outside the defined pT bins + if (pTBin == -1) { + CLRBIT(isSelected, iDecay3P); + if (debug) { + cutStatus[iDecay3P][0] = false; + } + continue; + } + + // invariant mass + double massHypos[2]; + whichHypo[iDecay3P] = 3; + if ((debug || TESTBIT(isSelected, iDecay3P)) && cut3Prong[iDecay3P].get(pTBin, "massMin") >= 0. && cut3Prong[iDecay3P].get(pTBin, "massMax") > 0.) { //no need to check isSelected but to avoid mistakes + massHypos[0] = RecoDecay::M(arrMom, arrMass3Prong[iDecay3P][0]); + massHypos[1] = RecoDecay::M(arrMom, arrMass3Prong[iDecay3P][1]); + if (massHypos[0] < cut3Prong[iDecay3P].get(pTBin, "massMin") || massHypos[0] >= cut3Prong[iDecay3P].get(pTBin, "massMax")) { + whichHypo[iDecay3P] -= 1; + } + if (massHypos[1] < cut3Prong[iDecay3P].get(pTBin, "massMin") || massHypos[1] >= cut3Prong[iDecay3P].get(pTBin, "massMax")) { + whichHypo[iDecay3P] -= 2; + } + if (whichHypo[iDecay3P] == 0) { + CLRBIT(isSelected, iDecay3P); + if (debug) { + cutStatus[iDecay3P][1] = false; + } + } + } + } + } + + /// Method to perform selections for 2-prong candidates after vertex reconstruction + /// \param pVecCand is the array for the candidate momentum after reconstruction of secondary vertex + /// \param secVtx is the secondary vertex + /// \param primVtx is the primary vertex + /// \param cutStatus is a 2D array with outcome of each selection (filled only in debug mode) + /// \param isSelected ia s bitmap with selection outcome + template + void is2ProngSelected(const T1& pVecCand, const T2& secVtx, const T3& primVtx, T4& cutStatus, int& isSelected) + { + if (debug || isSelected > 0) { + for (int iDecay2P = 0; iDecay2P < n2ProngDecays; iDecay2P++) { + + // pT + auto pTBin = findBin(&pTBins2Prong[iDecay2P], RecoDecay::Pt(pVecCand)); + if (pTBin == -1) { // cut if it is outside the defined pT bins + CLRBIT(isSelected, iDecay2P); + if (debug) { + cutStatus[iDecay2P][0] = false; + } + continue; + } + + // cosp + if (debug || TESTBIT(isSelected, iDecay2P)) { + auto cpa = RecoDecay::CPA(primVtx, secVtx, pVecCand); + if (cpa < cut2Prong[iDecay2P].get("cosp")) { + CLRBIT(isSelected, iDecay2P); + if (debug) { + cutStatus[iDecay2P][3] = false; + } + } + } + } + } + } + + /// Method to perform selections for 3-prong candidates after vertex reconstruction + /// \param pVecCand is the array for the candidate momentum after reconstruction of secondary vertex + /// \param secVtx is the secondary vertex + /// \param primVtx is the primary vertex + /// \param cutStatus is a 2D array with outcome of each selection (filled only in debug mode) + /// \param isSelected ia s bitmap with selection outcome + template + void is3ProngSelected(const T1& pVecCand, const T2& secVtx, const T3& primVtx, T4& cutStatus, int& isSelected) + { + if (debug || isSelected > 0) { + for (int iDecay3P = 0; iDecay3P < n3ProngDecays; iDecay3P++) { + + // pT + auto pTBin = findBin(&pTBins3Prong[iDecay3P], RecoDecay::Pt(pVecCand)); + if (pTBin == -1) { // cut if it is outside the defined pT bins + CLRBIT(isSelected, iDecay3P); + if (debug) { + cutStatus[iDecay3P][0] = false; + } + continue; + } + + // cosp + if ((debug || TESTBIT(isSelected, iDecay3P))) { + auto cpa = RecoDecay::CPA(primVtx, secVtx, pVecCand); + if (cpa < cut3Prong[iDecay3P].get("cosp")) { + CLRBIT(isSelected, iDecay3P); + if (debug) { + cutStatus[iDecay3P][2] = false; + } + } + } + + // decay length + if ((debug || TESTBIT(isSelected, iDecay3P))) { + auto decayLength = RecoDecay::distance(primVtx, secVtx); + if (decayLength < cut3Prong[iDecay3P].get("decL")) { + CLRBIT(isSelected, iDecay3P); + if (debug) { + cutStatus[iDecay3P][3] = false; + } + } + } + } + } + } + Filter filterSelectCollisions = (aod::hf_selcollision::whyRejectColl == 0); Filter filterSelectTracks = aod::hf_seltrack::isSelProng > 0; @@ -383,11 +731,6 @@ struct HfTrackIndexSkimsCreator { //Partition tracksPos = aod::track::signed1Pt > 0.f; //Partition tracksNeg = aod::track::signed1Pt < 0.f; - double massPi = RecoDecay::getMassPDG(kPiPlus); - double massK = RecoDecay::getMassPDG(kKPlus); - double massProton = RecoDecay::getMassPDG(kProton); - double massElectron = RecoDecay::getMassPDG(kElectron); - // int nColls{0}; //can be added to run over limited collisions per file - for tesing purposes void process( //soa::Join::iterator const& collision, //FIXME add centrality when option for variations to the process function appears @@ -410,112 +753,35 @@ struct HfTrackIndexSkimsCreator { //auto centrality = collision.centV0M(); //FIXME add centrality when option for variations to the process function appears - //FIXME move above process function - const int n2ProngDecays = hf_cand_prong2::DecayType::N2ProngDecays; // number of 2-prong hadron types - const int n3ProngDecays = hf_cand_prong3::DecayType::N3ProngDecays; // number of 3-prong hadron types - int n2ProngBit = (1 << n2ProngDecays) - 1; // bit value for 2-prong candidates where each candidiate is one bit and they are all set to 1 - int n3ProngBit = (1 << n3ProngDecays) - 1; // bit value for 3-prong candidates where each candidiate is one bit and they are all set to 1 - - //retrieve cuts from json - to be made pT dependent when option appears in json - const int nCuts2Prong = 4; // how many different selections are made on 2-prongs - double cut2ProngPtCandMin[n2ProngDecays]; - double cut2ProngInvMassCandMin[n2ProngDecays]; - double cut2ProngInvMassCandMax[n2ProngDecays]; - double cut2ProngCPACandMin[n2ProngDecays]; - double cut2ProngImpParProductCandMax[n2ProngDecays]; - - cut2ProngPtCandMin[hf_cand_prong2::DecayType::D0ToPiK] = configs->mPtD0ToPiKMin; - cut2ProngInvMassCandMin[hf_cand_prong2::DecayType::D0ToPiK] = configs->mInvMassD0ToPiKMin; - cut2ProngInvMassCandMax[hf_cand_prong2::DecayType::D0ToPiK] = configs->mInvMassD0ToPiKMax; - cut2ProngCPACandMin[hf_cand_prong2::DecayType::D0ToPiK] = configs->mCPAD0ToPiKMin; - cut2ProngImpParProductCandMax[hf_cand_prong2::DecayType::D0ToPiK] = configs->mImpParProductD0ToPiKMax; - - cut2ProngPtCandMin[hf_cand_prong2::DecayType::JpsiToEE] = configs->mPtJpsiToEEMin; - cut2ProngInvMassCandMin[hf_cand_prong2::DecayType::JpsiToEE] = configs->mInvMassJpsiToEEMin; - cut2ProngInvMassCandMax[hf_cand_prong2::DecayType::JpsiToEE] = configs->mInvMassJpsiToEEMax; - cut2ProngCPACandMin[hf_cand_prong2::DecayType::JpsiToEE] = configs->mCPAJpsiToEEMin; - cut2ProngImpParProductCandMax[hf_cand_prong2::DecayType::JpsiToEE] = configs->mImpParProductJpsiToEEMax; - - const int nCuts3Prong = 4; // how many different selections are made on 3-prongs - double cut3ProngPtCandMin[n3ProngDecays]; - double cut3ProngInvMassCandMin[n3ProngDecays]; - double cut3ProngInvMassCandMax[n3ProngDecays]; - double cut3ProngCPACandMin[n3ProngDecays]; - double cut3ProngDecLenCandMin[n3ProngDecays]; - - cut3ProngPtCandMin[hf_cand_prong3::DecayType::DPlusToPiKPi] = configs->mPtDPlusToPiKPiMin; - cut3ProngInvMassCandMin[hf_cand_prong3::DecayType::DPlusToPiKPi] = configs->mInvMassDPlusToPiKPiMin; - cut3ProngInvMassCandMax[hf_cand_prong3::DecayType::DPlusToPiKPi] = configs->mInvMassDPlusToPiKPiMax; - cut3ProngCPACandMin[hf_cand_prong3::DecayType::DPlusToPiKPi] = configs->mCPADPlusToPiKPiMin; - cut3ProngDecLenCandMin[hf_cand_prong3::DecayType::DPlusToPiKPi] = configs->mDecLenDPlusToPiKPiMin; - - cut3ProngPtCandMin[hf_cand_prong3::DecayType::LcToPKPi] = configs->mPtLcToPKPiMin; - cut3ProngInvMassCandMin[hf_cand_prong3::DecayType::LcToPKPi] = configs->mInvMassLcToPKPiMin; - cut3ProngInvMassCandMax[hf_cand_prong3::DecayType::LcToPKPi] = configs->mInvMassLcToPKPiMax; - cut3ProngCPACandMin[hf_cand_prong3::DecayType::LcToPKPi] = configs->mCPALcToPKPiMin; - cut3ProngDecLenCandMin[hf_cand_prong3::DecayType::LcToPKPi] = configs->mDecLenLcToPKPiMin; - - cut3ProngPtCandMin[hf_cand_prong3::DecayType::DsToPiKK] = configs->mPtDsToPiKKMin; - cut3ProngInvMassCandMin[hf_cand_prong3::DecayType::DsToPiKK] = configs->mInvMassDsToPiKKMin; - cut3ProngInvMassCandMax[hf_cand_prong3::DecayType::DsToPiKK] = configs->mInvMassDsToPiKKMax; - cut3ProngCPACandMin[hf_cand_prong3::DecayType::DsToPiKK] = configs->mCPADsToPiKKMin; - cut3ProngDecLenCandMin[hf_cand_prong3::DecayType::DsToPiKK] = configs->mDecLenDsToPiKKMin; - - cut3ProngPtCandMin[hf_cand_prong3::DecayType::XicToPKPi] = configs->mPtXicToPKPiMin; - cut3ProngInvMassCandMin[hf_cand_prong3::DecayType::XicToPKPi] = configs->mInvMassXicToPKPiMin; - cut3ProngInvMassCandMax[hf_cand_prong3::DecayType::XicToPKPi] = configs->mInvMassXicToPKPiMax; - cut3ProngCPACandMin[hf_cand_prong3::DecayType::XicToPKPi] = configs->mCPAXicToPKPiMin; - cut3ProngDecLenCandMin[hf_cand_prong3::DecayType::XicToPKPi] = configs->mDecLenXicToPKPiMin; + int n2ProngBit = BIT(n2ProngDecays) - 1; // bit value for 2-prong candidates where each candidiate is one bit and they are all set to 1 + int n3ProngBit = BIT(n3ProngDecays) - 1; // bit value for 3-prong candidates where each candidiate is one bit and they are all set to 1 bool cutStatus2Prong[n2ProngDecays][nCuts2Prong]; bool cutStatus3Prong[n3ProngDecays][nCuts3Prong]; - int nCutStatus2ProngBit = (1 << nCuts2Prong) - 1; // bit value for selection status for each 2-prong candidate where each selection is one bit and they are all set to 1 - int nCutStatus3ProngBit = (1 << nCuts3Prong) - 1; // bit value for selection status for each 3-prong candidate where each selection is one bit and they are all set to 1 - - array, n2ProngDecays> arr2Mass1; - arr2Mass1[hf_cand_prong2::DecayType::D0ToPiK] = array{massPi, massK}; - arr2Mass1[hf_cand_prong2::DecayType::JpsiToEE] = array{massElectron, massElectron}; - - array, n2ProngDecays> arr2Mass2; - arr2Mass2[hf_cand_prong2::DecayType::D0ToPiK] = array{massK, massPi}; - arr2Mass2[hf_cand_prong2::DecayType::JpsiToEE] = array{massElectron, massElectron}; - - array, n3ProngDecays> arr3Mass1; - arr3Mass1[hf_cand_prong3::DecayType::DPlusToPiKPi] = array{massPi, massK, massPi}; - arr3Mass1[hf_cand_prong3::DecayType::LcToPKPi] = array{massProton, massK, massPi}; - arr3Mass1[hf_cand_prong3::DecayType::DsToPiKK] = array{massK, massK, massPi}; - arr3Mass1[hf_cand_prong3::DecayType::XicToPKPi] = array{massProton, massK, massPi}; - - array, n3ProngDecays> arr3Mass2; - arr3Mass2[hf_cand_prong3::DecayType::DPlusToPiKPi] = array{massPi, massK, massPi}; - arr3Mass2[hf_cand_prong3::DecayType::LcToPKPi] = array{massPi, massK, massProton}; - arr3Mass2[hf_cand_prong3::DecayType::DsToPiKK] = array{massPi, massK, massK}; - arr3Mass2[hf_cand_prong3::DecayType::XicToPKPi] = array{massPi, massK, massProton}; + int nCutStatus2ProngBit = BIT(nCuts2Prong) - 1; // bit value for selection status for each 2-prong candidate where each selection is one bit and they are all set to 1 + int nCutStatus3ProngBit = BIT(nCuts3Prong) - 1; // bit value for selection status for each 3-prong candidate where each selection is one bit and they are all set to 1 - double mass2ProngHypo1[n2ProngDecays]; - double mass2ProngHypo2[n2ProngDecays]; - - double mass3ProngHypo1[n3ProngDecays]; - double mass3ProngHypo2[n3ProngDecays]; + int whichHypo2Prong[n2ProngDecays]; + int whichHypo3Prong[n3ProngDecays]; // 2-prong vertex fitter o2::vertexing::DCAFitterN<2> df2; - df2.setBz(d_bz); - df2.setPropagateToPCA(b_propdca); - df2.setMaxR(d_maxr); - df2.setMaxDZIni(d_maxdzini); - df2.setMinParamChange(d_minparamchange); - df2.setMinRelChi2Change(d_minrelchi2change); + df2.setBz(bz); + df2.setPropagateToPCA(propToDCA); + df2.setMaxR(maxRad); + df2.setMaxDZIni(maxDZIni); + df2.setMinParamChange(minParamChange); + df2.setMinRelChi2Change(minRelChi2Change); df2.setUseAbsDCA(useAbsDCA); // 3-prong vertex fitter o2::vertexing::DCAFitterN<3> df3; - df3.setBz(d_bz); - df3.setPropagateToPCA(b_propdca); - df3.setMaxR(d_maxr); - df3.setMaxDZIni(d_maxdzini); - df3.setMinParamChange(d_minparamchange); - df3.setMinRelChi2Change(d_minrelchi2change); + df3.setBz(bz); + df3.setPropagateToPCA(propToDCA); + df3.setMaxR(maxRad); + df3.setMaxDZIni(maxDZIni); + df3.setMinParamChange(minParamChange); + df3.setMinRelChi2Change(minRelChi2Change); df3.setUseAbsDCA(useAbsDCA); // used to calculate number of candidiates per event @@ -528,8 +794,8 @@ struct HfTrackIndexSkimsCreator { if (trackPos1.signed1Pt() < 0) { continue; } - bool sel2ProngStatusPos = trackPos1.isSelProng() & (1 << 0); - bool sel3ProngStatusPos1 = trackPos1.isSelProng() & (1 << 1); + bool sel2ProngStatusPos = TESTBIT(trackPos1.isSelProng(), CandidateType::Cand2Prong); + bool sel3ProngStatusPos1 = TESTBIT(trackPos1.isSelProng(), CandidateType::Cand3Prong); if (!sel2ProngStatusPos && !sel3ProngStatusPos1) { continue; } @@ -542,8 +808,8 @@ struct HfTrackIndexSkimsCreator { if (trackNeg1.signed1Pt() > 0) { continue; } - bool sel2ProngStatusNeg = trackNeg1.isSelProng() & (1 << 0); - bool sel3ProngStatusNeg1 = trackNeg1.isSelProng() & (1 << 1); + bool sel2ProngStatusNeg = TESTBIT(trackNeg1.isSelProng(), CandidateType::Cand2Prong); + bool sel3ProngStatusNeg1 = TESTBIT(trackNeg1.isSelProng(), CandidateType::Cand3Prong); if (!sel2ProngStatusNeg && !sel3ProngStatusNeg1) { continue; } @@ -552,36 +818,19 @@ struct HfTrackIndexSkimsCreator { int isSelected2ProngCand = n2ProngBit; //bitmap for checking status of two-prong candidates (1 is true, 0 is rejected) - if (b_debug) { - for (int n2 = 0; n2 < n2ProngDecays; n2++) { - for (int n2cut = 0; n2cut < nCuts2Prong; n2cut++) { - cutStatus2Prong[n2][n2cut] = true; + if (debug) { + for (int iDecay2P = 0; iDecay2P < n2ProngDecays; iDecay2P++) { + for (int iCut = 0; iCut < nCuts2Prong; iCut++) { + cutStatus2Prong[iDecay2P][iCut] = true; } } } - int iDebugCut = 0; // 2-prong vertex reconstruction if (sel2ProngStatusPos && sel2ProngStatusNeg) { - // invariant-mass cut - auto arrMom = array{ - array{trackPos1.px(), trackPos1.py(), trackPos1.pz()}, - array{trackNeg1.px(), trackNeg1.py(), trackNeg1.pz()}}; - for (int n2 = 0; n2 < n2ProngDecays; n2++) { - mass2ProngHypo1[n2] = RecoDecay::M(arrMom, arr2Mass1[n2]); - mass2ProngHypo2[n2] = RecoDecay::M(arrMom, arr2Mass2[n2]); - if ((b_debug || (isSelected2ProngCand & 1 << n2)) && cut2ProngInvMassCandMin[n2] >= 0. && cut2ProngInvMassCandMax[n2] > 0.) { //no need to check isSelected2Prong but to avoid mistakes - if ((mass2ProngHypo1[n2] < cut2ProngInvMassCandMin[n2] || mass2ProngHypo1[n2] >= cut2ProngInvMassCandMax[n2]) && - (mass2ProngHypo2[n2] < cut2ProngInvMassCandMin[n2] || mass2ProngHypo2[n2] >= cut2ProngInvMassCandMax[n2])) { - isSelected2ProngCand = isSelected2ProngCand & ~(1 << n2); - if (b_debug) { - cutStatus2Prong[n2][iDebugCut] = false; - } - } - } - } - iDebugCut++; + // 2-prong preselections + is2ProngPreselected(array{trackPos1, trackNeg1}, cutStatus2Prong, whichHypo2Prong, isSelected2ProngCand); // secondary vertex reconstruction and further 2-prong selections if (isSelected2ProngCand > 0 && df2.process(trackParVarPos1, trackParVarNeg1) > 0) { //should it be this or > 0 or are they equivalent @@ -594,60 +843,20 @@ struct HfTrackIndexSkimsCreator { df2.getTrack(1).getPxPyPzGlo(pvec1); auto pVecCandProng2 = RecoDecay::PVec(pvec0, pvec1); - - // candidate pT cut - if ((b_debug || isSelected2ProngCand > 0) && (std::count_if(std::begin(cut2ProngPtCandMin), std::end(cut2ProngPtCandMin), [](double d) { return d >= 0.; }) > 0)) { - double cand2ProngPt = RecoDecay::Pt(pVecCandProng2); - for (int n2 = 0; n2 < n2ProngDecays; n2++) { - if ((b_debug || (isSelected2ProngCand & 1 << n2)) && cand2ProngPt < cut2ProngPtCandMin[n2]) { - isSelected2ProngCand = isSelected2ProngCand & ~(1 << n2); - if (b_debug) { - cutStatus2Prong[n2][iDebugCut] = false; - } - } - } - } - iDebugCut++; - - // imp. par. product cut - if ((b_debug || isSelected2ProngCand > 0) && (std::count_if(std::begin(cut2ProngImpParProductCandMax), std::end(cut2ProngImpParProductCandMax), [](double d) { return d < 100.; }) > 0)) { - auto impParProduct = trackPos1.dcaPrim0() * trackNeg1.dcaPrim0(); - for (int n2 = 0; n2 < n2ProngDecays; n2++) { - if ((b_debug || (isSelected2ProngCand & 1 << n2)) && impParProduct > cut2ProngImpParProductCandMax[n2]) { - isSelected2ProngCand = isSelected2ProngCand & ~(1 << n2); - if (b_debug) { - cutStatus2Prong[n2][iDebugCut] = false; - } - } - } - } - iDebugCut++; - - // CPA cut - if ((b_debug || isSelected2ProngCand > 0) && (std::count_if(std::begin(cut2ProngCPACandMin), std::end(cut2ProngCPACandMin), [](double d) { return d > -2.; }) > 0)) { - auto cpa = RecoDecay::CPA(array{collision.posX(), collision.posY(), collision.posZ()}, secondaryVertex2, pVecCandProng2); - for (int n2 = 0; n2 < n2ProngDecays; n2++) { - if ((b_debug || (isSelected2ProngCand & 1 << n2)) && cpa < cut2ProngCPACandMin[n2]) { - isSelected2ProngCand = isSelected2ProngCand & ~(1 << n2); - if (b_debug) { - cutStatus2Prong[n2][iDebugCut] = false; - } - } - } - } - iDebugCut++; + // 2-prong selections after secondary vertex + is2ProngSelected(pVecCandProng2, secondaryVertex2, array{collision.posX(), collision.posY(), collision.posZ()}, cutStatus2Prong, isSelected2ProngCand); if (isSelected2ProngCand > 0) { // fill table row rowTrackIndexProng2(trackPos1.globalIndex(), trackNeg1.globalIndex(), isSelected2ProngCand); - if (b_debug) { + if (debug) { int Prong2CutStatus[n2ProngDecays]; - for (int n2 = 0; n2 < n2ProngDecays; n2++) { - Prong2CutStatus[n2] = nCutStatus2ProngBit; - for (int n2cut = 0; n2cut < nCuts2Prong; n2cut++) { - if (!cutStatus2Prong[n2][n2cut]) { - Prong2CutStatus[n2] = Prong2CutStatus[n2] & ~(1 << n2cut); + for (int iDecay2P = 0; iDecay2P < n2ProngDecays; iDecay2P++) { + Prong2CutStatus[iDecay2P] = nCutStatus2ProngBit; + for (int iCut = 0; iCut < nCuts2Prong; iCut++) { + if (!cutStatus2Prong[iDecay2P][iCut]) { + CLRBIT(Prong2CutStatus[iDecay2P], iCut); } } } @@ -656,26 +865,24 @@ struct HfTrackIndexSkimsCreator { // fill histograms if (fillHistograms) { - - registry.get(HIST("hvtx2_x"))->Fill(secondaryVertex2[0]); - registry.get(HIST("hvtx2_y"))->Fill(secondaryVertex2[1]); - registry.get(HIST("hvtx2_z"))->Fill(secondaryVertex2[2]); - arrMom = array{pvec0, pvec1}; - for (int n2 = 0; n2 < n2ProngDecays; n2++) { - if (isSelected2ProngCand & 1 << n2) { - if ((cut2ProngInvMassCandMin[n2] < 0. && cut2ProngInvMassCandMax[n2] <= 0.) || (mass2ProngHypo1[n2] >= cut2ProngInvMassCandMin[n2] && mass2ProngHypo1[n2] < cut2ProngInvMassCandMax[n2])) { - mass2ProngHypo1[n2] = RecoDecay::M(arrMom, arr2Mass1[n2]); - if (n2 == hf_cand_prong2::DecayType::D0ToPiK) { - registry.get(HIST("hmassD0ToPiK"))->Fill(mass2ProngHypo1[n2]); - } - if (n2 == hf_cand_prong2::DecayType::JpsiToEE) { - registry.get(HIST("hmassJpsiToEE"))->Fill(mass2ProngHypo1[n2]); + registry.get(HIST("hVtx2ProngX"))->Fill(secondaryVertex2[0]); + registry.get(HIST("hVtx2ProngY"))->Fill(secondaryVertex2[1]); + registry.get(HIST("hVtx2ProngZ"))->Fill(secondaryVertex2[2]); + array, 2> arrMom = {pvec0, pvec1}; + for (int iDecay2P = 0; iDecay2P < n2ProngDecays; iDecay2P++) { + if (TESTBIT(isSelected2ProngCand, iDecay2P)) { + if (whichHypo2Prong[iDecay2P] == 1 || whichHypo2Prong[iDecay2P] == 3) { + auto mass2Prong = RecoDecay::M(arrMom, arrMass2Prong[iDecay2P][0]); + if (iDecay2P == hf_cand_prong2::DecayType::D0ToPiK) { + registry.get(HIST("hmassD0ToPiK"))->Fill(mass2Prong); + } else if (iDecay2P == hf_cand_prong2::DecayType::JpsiToEE) { + registry.get(HIST("hmassJpsiToEE"))->Fill(mass2Prong); } } - if ((cut2ProngInvMassCandMin[n2] < 0. && cut2ProngInvMassCandMax[n2] <= 0.) || (mass2ProngHypo2[n2] >= cut2ProngInvMassCandMin[n2] && mass2ProngHypo2[n2] < cut2ProngInvMassCandMax[n2])) { - mass2ProngHypo2[n2] = RecoDecay::M(arrMom, arr2Mass2[n2]); - if (n2 == hf_cand_prong2::DecayType::D0ToPiK) { - registry.get(HIST("hmassD0ToPiK"))->Fill(mass2ProngHypo1[n2]); + if (whichHypo2Prong[iDecay2P] >= 2) { + auto mass2Prong = RecoDecay::M(arrMom, arrMass2Prong[iDecay2P][1]); + if (iDecay2P == hf_cand_prong2::DecayType::D0ToPiK) { + registry.get(HIST("hmassD0ToPiK"))->Fill(mass2Prong); } } } @@ -697,44 +904,25 @@ struct HfTrackIndexSkimsCreator { if (trackPos2.signed1Pt() < 0) { continue; } - if (!(trackPos2.isSelProng() & (1 << 1))) { + if (!TESTBIT(trackPos2.isSelProng(), CandidateType::Cand3Prong)) { continue; } int isSelected3ProngCand = n3ProngBit; - if (b_debug) { - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - for (int n3cut = 0; n3cut < nCuts3Prong; n3cut++) { - cutStatus3Prong[n3][n3cut] = true; - } - } - } - int iDebugCut = 0; - - // 3-prong invariant-mass cut - auto arr3Mom = array{ - array{trackPos1.px(), trackPos1.py(), trackPos1.pz()}, - array{trackNeg1.px(), trackNeg1.py(), trackNeg1.pz()}, - array{trackPos2.px(), trackPos2.py(), trackPos2.pz()}}; - - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - mass3ProngHypo1[n3] = RecoDecay::M(arr3Mom, arr3Mass1[n3]); - mass3ProngHypo2[n3] = RecoDecay::M(arr3Mom, arr3Mass2[n3]); - if ((isSelected3ProngCand & 1 << n3) && cut3ProngInvMassCandMin[n3] >= 0. && cut3ProngInvMassCandMax[n3] > 0.) { - if ((mass3ProngHypo1[n3] < cut3ProngInvMassCandMin[n3] || mass3ProngHypo1[n3] >= cut3ProngInvMassCandMax[n3]) && - (mass3ProngHypo2[n3] < cut3ProngInvMassCandMin[n3] || mass3ProngHypo2[n3] >= cut3ProngInvMassCandMax[n3])) { - isSelected3ProngCand = isSelected3ProngCand & ~(1 << n3); - if (b_debug) { - cutStatus3Prong[n3][iDebugCut] = false; - } + if (debug) { + for (int iDecay3P = 0; iDecay3P < n3ProngDecays; iDecay3P++) { + for (int iCut = 0; iCut < nCuts3Prong; iCut++) { + cutStatus3Prong[iDecay3P][iCut] = true; } } } - if (!b_debug && isSelected3ProngCand == 0) { + + // 3-prong preselections + is3ProngPreselected(array{trackPos1, trackNeg1, trackPos2}, cutStatus3Prong, whichHypo3Prong, isSelected3ProngCand); + if (!debug && isSelected3ProngCand == 0) { continue; } - iDebugCut++; // reconstruct the 3-prong secondary vertex auto trackParVarPos2 = getTrackParCov(trackPos2); @@ -752,70 +940,24 @@ struct HfTrackIndexSkimsCreator { df3.getTrack(2).getPxPyPzGlo(pvec2); auto pVecCandProng3Pos = RecoDecay::PVec(pvec0, pvec1, pvec2); - - // candidate pT cut - if (std::count_if(std::begin(cut3ProngPtCandMin), std::end(cut3ProngPtCandMin), [](double d) { return d >= 0.; }) > 0) { - double cand3ProngPt = RecoDecay::Pt(pVecCandProng3Pos); - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - if (cand3ProngPt < cut3ProngPtCandMin[n3]) { - isSelected3ProngCand = isSelected3ProngCand & ~(1 << n3); - } - if (b_debug) { - cutStatus3Prong[n3][iDebugCut] = false; - } - } - if (!b_debug && isSelected3ProngCand == 0) { - continue; //this and all further instances should be changed if 4 track loop is added - } - } - iDebugCut++; - - // CPA cut - if (std::count_if(std::begin(cut3ProngCPACandMin), std::end(cut3ProngCPACandMin), [](double d) { return d > -2.; }) > 0) { - auto cpa = RecoDecay::CPA(array{collision.posX(), collision.posY(), collision.posZ()}, secondaryVertex3, pVecCandProng3Pos); - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - if ((isSelected3ProngCand & 1 << n3) && cpa < cut3ProngCPACandMin[n3]) { - isSelected3ProngCand = isSelected3ProngCand & ~(1 << n3); - } - if (b_debug) { - cutStatus3Prong[n3][iDebugCut] = false; - } - } - if (!b_debug && isSelected3ProngCand == 0) { - continue; - } - } - iDebugCut++; - - // decay length cut - if (std::count_if(std::begin(cut3ProngDecLenCandMin), std::end(cut3ProngDecLenCandMin), [](double d) { return d > 0.; }) > 0) { - auto decayLength = RecoDecay::distance(array{collision.posX(), collision.posY(), collision.posZ()}, secondaryVertex3); - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - if ((isSelected3ProngCand & 1 << n3) && decayLength < cut3ProngDecLenCandMin[n3]) { - isSelected3ProngCand = isSelected3ProngCand & ~(1 << n3); - if (b_debug) { - cutStatus3Prong[n3][iDebugCut] = false; - } - } - } - if (!b_debug && isSelected3ProngCand == 0) { - continue; - } + // 3-prong selections after secondary vertex + is3ProngSelected(pVecCandProng3Pos, secondaryVertex3, array{collision.posX(), collision.posY(), collision.posZ()}, cutStatus3Prong, isSelected3ProngCand); + if (!debug && isSelected3ProngCand == 0) { + continue; } - iDebugCut++; // fill table row rowTrackIndexProng3(trackPos1.globalIndex(), trackNeg1.globalIndex(), trackPos2.globalIndex(), isSelected3ProngCand); - if (b_debug) { + if (debug) { int Prong3CutStatus[n3ProngDecays]; - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - Prong3CutStatus[n3] = nCutStatus3ProngBit; - for (int n3cut = 0; n3cut < nCuts3Prong; n3cut++) { - if (!cutStatus3Prong[n3][n3cut]) { - Prong3CutStatus[n3] = Prong3CutStatus[n3] & ~(1 << n3cut); + for (int iDecay3P = 0; iDecay3P < n3ProngDecays; iDecay3P++) { + Prong3CutStatus[iDecay3P] = nCutStatus3ProngBit; + for (int iCut = 0; iCut < nCuts3Prong; iCut++) { + if (!cutStatus3Prong[iDecay3P][iCut]) { + CLRBIT(Prong3CutStatus[iDecay3P], iCut); } } } @@ -824,38 +966,41 @@ struct HfTrackIndexSkimsCreator { // fill histograms if (fillHistograms) { - - registry.get(HIST("hvtx3_x"))->Fill(secondaryVertex3[0]); - registry.get(HIST("hvtx3_y"))->Fill(secondaryVertex3[1]); - registry.get(HIST("hvtx3_z"))->Fill(secondaryVertex3[2]); - arr3Mom = array{pvec0, pvec1, pvec2}; - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - if (isSelected3ProngCand & 1 << n3) { - if ((cut3ProngInvMassCandMin[n3] < 0. && cut3ProngInvMassCandMax[n3] <= 0.) || (mass3ProngHypo1[n3] >= cut3ProngInvMassCandMin[n3] && mass3ProngHypo1[n3] < cut3ProngInvMassCandMax[n3])) { - mass3ProngHypo1[n3] = RecoDecay::M(arr3Mom, arr3Mass1[n3]); - if (n3 == hf_cand_prong3::DecayType::DPlusToPiKPi) { - registry.get(HIST("hmassDPlusToPiKPi"))->Fill(mass3ProngHypo1[n3]); - } - if (n3 == hf_cand_prong3::DecayType::LcToPKPi) { - registry.get(HIST("hmassLcToPKPi"))->Fill(mass3ProngHypo1[n3]); - } - if (n3 == hf_cand_prong3::DecayType::DsToPiKK) { - registry.get(HIST("hmassDsToPiKK"))->Fill(mass3ProngHypo1[n3]); - } - if (n3 == hf_cand_prong3::DecayType::XicToPKPi) { - registry.get(HIST("hmassXicToPKPi"))->Fill(mass3ProngHypo1[n3]); + registry.get(HIST("hVtx3ProngX"))->Fill(secondaryVertex3[0]); + registry.get(HIST("hVtx3ProngY"))->Fill(secondaryVertex3[1]); + registry.get(HIST("hVtx3ProngZ"))->Fill(secondaryVertex3[2]); + array, 3> arr3Mom = {pvec0, pvec1, pvec2}; + for (int iDecay3P = 0; iDecay3P < n3ProngDecays; iDecay3P++) { + if (TESTBIT(isSelected3ProngCand, iDecay3P)) { + if (whichHypo3Prong[iDecay3P] == 1 || whichHypo3Prong[iDecay3P] == 3) { + auto mass3Prong = RecoDecay::M(arr3Mom, arrMass3Prong[iDecay3P][0]); + switch (iDecay3P) { + case hf_cand_prong3::DecayType::DPlusToPiKPi: + registry.get(HIST("hmassDPlusToPiKPi"))->Fill(mass3Prong); + break; + case hf_cand_prong3::DecayType::DsToPiKK: + registry.get(HIST("hmassDsToPiKK"))->Fill(mass3Prong); + break; + case hf_cand_prong3::DecayType::LcToPKPi: + registry.get(HIST("hmassLcToPKPi"))->Fill(mass3Prong); + break; + case hf_cand_prong3::DecayType::XicToPKPi: + registry.get(HIST("hmassXicToPKPi"))->Fill(mass3Prong); + break; } } - if ((cut3ProngInvMassCandMin[n3] < 0. && cut3ProngInvMassCandMax[n3] <= 0.) || (mass3ProngHypo2[n3] >= cut3ProngInvMassCandMin[n3] && mass3ProngHypo2[n3] < cut3ProngInvMassCandMax[n3])) { - mass3ProngHypo2[n3] = RecoDecay::M(arr3Mom, arr3Mass2[n3]); - if (n3 == hf_cand_prong3::DecayType::LcToPKPi) { - registry.get(HIST("hmassLcToPKPi"))->Fill(mass3ProngHypo2[n3]); - } - if (n3 == hf_cand_prong3::DecayType::DsToPiKK) { - registry.get(HIST("hmassDsToPiKK"))->Fill(mass3ProngHypo2[n3]); - } - if (n3 == hf_cand_prong3::DecayType::XicToPKPi) { - registry.get(HIST("hmassXicToPKPi"))->Fill(mass3ProngHypo2[n3]); + if (whichHypo3Prong[iDecay3P] >= 2) { + auto mass3Prong = RecoDecay::M(arr3Mom, arrMass3Prong[iDecay3P][1]); + switch (iDecay3P) { + case hf_cand_prong3::DecayType::DsToPiKK: + registry.get(HIST("hmassDsToPiKK"))->Fill(mass3Prong); + break; + case hf_cand_prong3::DecayType::LcToPKPi: + registry.get(HIST("hmassLcToPKPi"))->Fill(mass3Prong); + break; + case hf_cand_prong3::DecayType::XicToPKPi: + registry.get(HIST("hmassXicToPKPi"))->Fill(mass3Prong); + break; } } } @@ -869,44 +1014,25 @@ struct HfTrackIndexSkimsCreator { if (trackNeg2.signed1Pt() > 0) { continue; } - if (!(trackNeg2.isSelProng() & (1 << 1))) { + if (!TESTBIT(trackNeg2.isSelProng(), CandidateType::Cand3Prong)) { continue; } int isSelected3ProngCand = n3ProngBit; - if (b_debug) { - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - for (int n3cut = 0; n3cut < nCuts3Prong; n3cut++) { - cutStatus3Prong[n3][n3cut] = true; + if (debug) { + for (int iDecay3P = 0; iDecay3P < n3ProngDecays; iDecay3P++) { + for (int iCut = 0; iCut < nCuts3Prong; iCut++) { + cutStatus3Prong[iDecay3P][iCut] = true; } } } - int iDebugCut = 0; - - // 3-prong invariant-mass cut - auto arr3Mom = array{ - array{trackNeg1.px(), trackNeg1.py(), trackNeg1.pz()}, - array{trackPos1.px(), trackPos1.py(), trackPos1.pz()}, - array{trackNeg2.px(), trackNeg2.py(), trackNeg2.pz()}}; - - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - mass3ProngHypo1[n3] = RecoDecay::M(arr3Mom, arr3Mass1[n3]); - mass3ProngHypo2[n3] = RecoDecay::M(arr3Mom, arr3Mass2[n3]); - if ((isSelected3ProngCand & 1 << n3) && cut3ProngInvMassCandMin[n3] >= 0. && cut3ProngInvMassCandMax[n3] > 0.) { - if ((mass3ProngHypo1[n3] < cut3ProngInvMassCandMin[n3] || mass3ProngHypo1[n3] >= cut3ProngInvMassCandMax[n3]) && - (mass3ProngHypo2[n3] < cut3ProngInvMassCandMin[n3] || mass3ProngHypo2[n3] >= cut3ProngInvMassCandMax[n3])) { - isSelected3ProngCand = isSelected3ProngCand & ~(1 << n3); - if (b_debug) { - cutStatus3Prong[n3][iDebugCut] = false; - } - } - } - } - if (!b_debug && isSelected3ProngCand == 0) { + + //3-prong preselections + is3ProngPreselected(array{trackNeg1, trackPos1, trackNeg2}, cutStatus3Prong, whichHypo3Prong, isSelected3ProngCand); + if (!debug && isSelected3ProngCand == 0) { continue; } - iDebugCut++; // reconstruct the 3-prong secondary vertex auto trackParVarNeg2 = getTrackParCov(trackNeg2); @@ -926,69 +1052,24 @@ struct HfTrackIndexSkimsCreator { auto pVecCandProng3Neg = RecoDecay::PVec(pvec0, pvec1, pvec2); - // candidate pT cut - if (std::count_if(std::begin(cut3ProngPtCandMin), std::end(cut3ProngPtCandMin), [](double d) { return d >= 0.; }) > 0) { - double cand3ProngPt = RecoDecay::Pt(pVecCandProng3Neg); - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - if (cand3ProngPt < cut3ProngPtCandMin[n3]) { - isSelected3ProngCand = isSelected3ProngCand & ~(1 << n3); - if (b_debug) { - cutStatus3Prong[n3][iDebugCut] = false; - } - } - } - if (!b_debug && isSelected3ProngCand == 0) { - continue; - } - } - iDebugCut++; - - // CPA cut - if (std::count_if(std::begin(cut3ProngCPACandMin), std::end(cut3ProngCPACandMin), [](double d) { return d > -2.; }) > 0) { - auto cpa = RecoDecay::CPA(array{collision.posX(), collision.posY(), collision.posZ()}, secondaryVertex3, pVecCandProng3Neg); - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - if ((isSelected3ProngCand & 1 << n3) && cpa < cut3ProngCPACandMin[n3]) { - isSelected3ProngCand = isSelected3ProngCand & ~(1 << n3); - if (b_debug) { - cutStatus3Prong[n3][iDebugCut] = false; - } - } - } - if (!b_debug && isSelected3ProngCand == 0) { - continue; - } - } - iDebugCut++; - - // decay length cut - if (std::count_if(std::begin(cut3ProngDecLenCandMin), std::end(cut3ProngDecLenCandMin), [](double d) { return d > 0.; }) > 0) { - auto decayLength = RecoDecay::distance(array{collision.posX(), collision.posY(), collision.posZ()}, secondaryVertex3); - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - if ((isSelected3ProngCand & 1 << n3) && decayLength < cut3ProngDecLenCandMin[n3]) { - isSelected3ProngCand = isSelected3ProngCand & ~(1 << n3); - if (b_debug) { - cutStatus3Prong[n3][iDebugCut] = false; - } - } - } - if (!b_debug && isSelected3ProngCand == 0) { - continue; - } + // 3-prong selections after secondary vertex + is3ProngSelected(pVecCandProng3Neg, secondaryVertex3, array{collision.posX(), collision.posY(), collision.posZ()}, cutStatus3Prong, isSelected3ProngCand); + if (!debug && isSelected3ProngCand == 0) { + continue; } - iDebugCut++; // fill table row rowTrackIndexProng3(trackNeg1.globalIndex(), trackPos1.globalIndex(), trackNeg2.globalIndex(), isSelected3ProngCand); - if (b_debug) { + if (debug) { int Prong3CutStatus[n3ProngDecays]; - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - Prong3CutStatus[n3] = nCutStatus3ProngBit; - for (int n3cut = 0; n3cut < nCuts3Prong; n3cut++) { - if (!cutStatus3Prong[n3][n3cut]) { - Prong3CutStatus[n3] = Prong3CutStatus[n3] & ~(1 << n3cut); + for (int iDecay3P = 0; iDecay3P < n3ProngDecays; iDecay3P++) { + Prong3CutStatus[iDecay3P] = nCutStatus3ProngBit; + for (int iCut = 0; iCut < nCuts3Prong; iCut++) { + if (!cutStatus3Prong[iDecay3P][iCut]) { + CLRBIT(Prong3CutStatus[iDecay3P], iCut); } } } @@ -997,38 +1078,41 @@ struct HfTrackIndexSkimsCreator { // fill histograms if (fillHistograms) { - - registry.get(HIST("hvtx3_x"))->Fill(secondaryVertex3[0]); - registry.get(HIST("hvtx3_y"))->Fill(secondaryVertex3[1]); - registry.get(HIST("hvtx3_z"))->Fill(secondaryVertex3[2]); - arr3Mom = array{pvec0, pvec1, pvec2}; - for (int n3 = 0; n3 < n3ProngDecays; n3++) { - if (isSelected3ProngCand & 1 << n3) { - if ((cut3ProngInvMassCandMin[n3] < 0. && cut3ProngInvMassCandMax[n3] <= 0.) || (mass3ProngHypo1[n3] >= cut3ProngInvMassCandMin[n3] && mass3ProngHypo1[n3] < cut3ProngInvMassCandMax[n3])) { - mass3ProngHypo1[n3] = RecoDecay::M(arr3Mom, arr3Mass1[n3]); - if (n3 == hf_cand_prong3::DecayType::DPlusToPiKPi) { - registry.get(HIST("hmassDPlusToPiKPi"))->Fill(mass3ProngHypo1[n3]); - } - if (n3 == hf_cand_prong3::DecayType::LcToPKPi) { - registry.get(HIST("hmassLcToPKPi"))->Fill(mass3ProngHypo1[n3]); - } - if (n3 == hf_cand_prong3::DecayType::DsToPiKK) { - registry.get(HIST("hmassDsToPiKK"))->Fill(mass3ProngHypo1[n3]); - } - if (n3 == hf_cand_prong3::DecayType::XicToPKPi) { - registry.get(HIST("hmassXicToPKPi"))->Fill(mass3ProngHypo1[n3]); + registry.get(HIST("hVtx3ProngX"))->Fill(secondaryVertex3[0]); + registry.get(HIST("hVtx3ProngY"))->Fill(secondaryVertex3[1]); + registry.get(HIST("hVtx3ProngZ"))->Fill(secondaryVertex3[2]); + array, 3> arr3Mom = {pvec0, pvec1, pvec2}; + for (int iDecay3P = 0; iDecay3P < n3ProngDecays; iDecay3P++) { + if (TESTBIT(isSelected3ProngCand, iDecay3P)) { + if (whichHypo3Prong[iDecay3P] == 1 || whichHypo3Prong[iDecay3P] == 3) { + auto mass3Prong = RecoDecay::M(arr3Mom, arrMass3Prong[iDecay3P][0]); + switch (iDecay3P) { + case hf_cand_prong3::DecayType::DPlusToPiKPi: + registry.get(HIST("hmassDPlusToPiKPi"))->Fill(mass3Prong); + break; + case hf_cand_prong3::DecayType::DsToPiKK: + registry.get(HIST("hmassDsToPiKK"))->Fill(mass3Prong); + break; + case hf_cand_prong3::DecayType::LcToPKPi: + registry.get(HIST("hmassLcToPKPi"))->Fill(mass3Prong); + break; + case hf_cand_prong3::DecayType::XicToPKPi: + registry.get(HIST("hmassXicToPKPi"))->Fill(mass3Prong); + break; } } - if ((cut3ProngInvMassCandMin[n3] < 0. && cut3ProngInvMassCandMax[n3] <= 0.) || (mass3ProngHypo2[n3] >= cut3ProngInvMassCandMin[n3] && mass3ProngHypo2[n3] < cut3ProngInvMassCandMax[n3])) { - mass3ProngHypo2[n3] = RecoDecay::M(arr3Mom, arr3Mass2[n3]); - if (n3 == hf_cand_prong3::DecayType::LcToPKPi) { - registry.get(HIST("hmassLcToPKPi"))->Fill(mass3ProngHypo2[n3]); - } - if (n3 == hf_cand_prong3::DecayType::DsToPiKK) { - registry.get(HIST("hmassDsToPiKK"))->Fill(mass3ProngHypo2[n3]); - } - if (n3 == hf_cand_prong3::DecayType::XicToPKPi) { - registry.get(HIST("hmassXicToPKPi"))->Fill(mass3ProngHypo2[n3]); + if (whichHypo3Prong[iDecay3P] >= 2) { + auto mass3Prong = RecoDecay::M(arr3Mom, arrMass3Prong[iDecay3P][1]); + switch (iDecay3P) { + case hf_cand_prong3::DecayType::DsToPiKK: + registry.get(HIST("hmassDsToPiKK"))->Fill(mass3Prong); + break; + case hf_cand_prong3::DecayType::LcToPKPi: + registry.get(HIST("hmassLcToPKPi"))->Fill(mass3Prong); + break; + case hf_cand_prong3::DecayType::XicToPKPi: + registry.get(HIST("hmassXicToPKPi"))->Fill(mass3Prong); + break; } } } @@ -1119,9 +1203,9 @@ struct HfTrackIndexSkimsCreatorCascades { // histograms HistogramRegistry registry{ "registry", - {{"hvtx2_x", "2-prong candidates;#it{x}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -2., 2.}}}}, - {"hvtx2_y", "2-prong candidates;#it{y}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -2., 2.}}}}, - {"hvtx2_z", "2-prong candidates;#it{z}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -20., 20.}}}}, + {{"hVtx2ProngX", "2-prong candidates;#it{x}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -2., 2.}}}}, + {"hVtx2ProngY", "2-prong candidates;#it{y}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -2., 2.}}}}, + {"hVtx2ProngZ", "2-prong candidates;#it{z}_{sec. vtx.} (cm);entries", {HistType::kTH1F, {{1000, -20., 20.}}}}, {"hmass2", "2-prong candidates;inv. mass (K0s p) (GeV/#it{c}^{2});entries", {HistType::kTH1F, {{500, 0., 5.}}}}}}; // NB: using FullTracks = soa::Join; defined in Framework/Core/include/Framework/AnalysisDataModel.h @@ -1314,9 +1398,9 @@ struct HfTrackIndexSkimsCreatorCascades { // fill histograms if (doValPlots) { MY_DEBUG_MSG(isK0SfromLc && isProtonFromLc && isLc, LOG(INFO) << "KEPT! True Lc from proton " << indexBach << " and K0S pos " << indexV0DaughPos << " and neg " << indexV0DaughNeg); - registry.get(HIST("hvtx2_x"))->Fill(posCasc[0]); - registry.get(HIST("hvtx2_y"))->Fill(posCasc[1]); - registry.get(HIST("hvtx2_z"))->Fill(posCasc[2]); + registry.get(HIST("hVtx2ProngX"))->Fill(posCasc[0]); + registry.get(HIST("hVtx2ProngY"))->Fill(posCasc[1]); + registry.get(HIST("hVtx2ProngZ"))->Fill(posCasc[2]); registry.get(HIST("hmass2"))->Fill(mass2K0sP); } @@ -1327,7 +1411,6 @@ struct HfTrackIndexSkimsCreatorCascades { }; //________________________________________________________________________________________________________________________ - WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) { WorkflowSpec workflow{}; diff --git a/doc/data/2021-02-o2_prs.json b/doc/data/2021-02-o2_prs.json index 1f6817a9c9a49..572e342f732a3 100644 --- a/doc/data/2021-02-o2_prs.json +++ b/doc/data/2021-02-o2_prs.json @@ -3152,11 +3152,6 @@ }, "files": { "edges": [ - { - "node": { - "path": "Analysis/Core/include/AnalysisCore/HFConfigurables.h" - } - }, { "node": { "path": "Analysis/DataModel/include/AnalysisDataModel/HFCandidateSelectionTables.h" From 47123cfa103955c64cca42958a744eb9f19e4971 Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Fri, 16 Jul 2021 14:55:29 +0300 Subject: [PATCH 195/314] [MID] remove unwanted local scope of variable (#6649) --- Detectors/MUON/MID/QC/exe/raw-ul-checker.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/MUON/MID/QC/exe/raw-ul-checker.cxx b/Detectors/MUON/MID/QC/exe/raw-ul-checker.cxx index c424070e81d6a..1d52eacf2053a 100644 --- a/Detectors/MUON/MID/QC/exe/raw-ul-checker.cxx +++ b/Detectors/MUON/MID/QC/exe/raw-ul-checker.cxx @@ -124,7 +124,7 @@ int main(int argc, char* argv[]) o2::mid::ElectronicsDelay electronicsDelay; if (vm.count("electronics-delay-file")) { - o2::mid::ElectronicsDelay electronicsDelay = o2::mid::readElectronicsDelay(vm["electronics-delay-file"].as().c_str()); + electronicsDelay = o2::mid::readElectronicsDelay(vm["electronics-delay-file"].as().c_str()); } auto bareDecoder = o2::mid::Decoder(true, true, electronicsDelay, crateMasks, feeIdConfig); From 4974c848410377b1e8a88d304ca876ca73db09e2 Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Fri, 16 Jul 2021 13:35:22 +0200 Subject: [PATCH 196/314] Fix typo in RecoContainer concerning V0s The input spec should be all capitalized `V0S` to be consistent with output spec definitions. --- DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx b/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx index a7c78dc3f18a8..7fdccff6ed2e3 100644 --- a/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx +++ b/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx @@ -221,7 +221,7 @@ void DataRequest::requestPrimaryVerterticesTMP(bool mc) // primary vertices befo void DataRequest::requestSecondaryVertertices(bool) { - addInput({"v0s", "GLO", "V0s", 0, Lifetime::Timeframe}); + addInput({"v0s", "GLO", "V0S", 0, Lifetime::Timeframe}); addInput({"p2v0s", "GLO", "PVTX_V0REFS", 0, Lifetime::Timeframe}); addInput({"cascs", "GLO", "CASCS", 0, Lifetime::Timeframe}); addInput({"p2cascs", "GLO", "PVTX_CASCREFS", 0, Lifetime::Timeframe}); From babd4f0338ffcc299d2245a0bb780c05ae3ae479 Mon Sep 17 00:00:00 2001 From: Pietro Cortese Date: Fri, 16 Jul 2021 11:32:59 +0200 Subject: [PATCH 197/314] Bug fix from @anerokhi --- DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEvent.h | 2 +- Detectors/ZDC/reconstruction/src/ZDCEnergyParam.cxx | 2 +- Detectors/ZDC/reconstruction/src/ZDCTowerParam.cxx | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEvent.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEvent.h index 6016a65fa758c..0030dac116b3c 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEvent.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/RecEvent.h @@ -65,7 +65,7 @@ struct RecEvent { if (ch >= NChannels) { ch = 0x1f; } - info = (info & 0x07ff) || ch << 11; + info = (info & 0x07ff) | ch << 11; mInfo.emplace_back(info); mRecBC.back().addInfo(); } diff --git a/Detectors/ZDC/reconstruction/src/ZDCEnergyParam.cxx b/Detectors/ZDC/reconstruction/src/ZDCEnergyParam.cxx index aec62cb50a8d7..b66f13ae4d2c5 100644 --- a/Detectors/ZDC/reconstruction/src/ZDCEnergyParam.cxx +++ b/Detectors/ZDC/reconstruction/src/ZDCEnergyParam.cxx @@ -16,7 +16,7 @@ using namespace o2::zdc; void ZDCEnergyParam::setEnergyCalib(uint32_t ich, float val) { - bool in_list = in_list; + bool in_list = false; for (int il = 0; il < ChEnergyCalib.size(); il++) { if (ich == ChEnergyCalib[il]) { in_list = true; diff --git a/Detectors/ZDC/reconstruction/src/ZDCTowerParam.cxx b/Detectors/ZDC/reconstruction/src/ZDCTowerParam.cxx index 466fcc2ece8e1..ec76526ecd235 100644 --- a/Detectors/ZDC/reconstruction/src/ZDCTowerParam.cxx +++ b/Detectors/ZDC/reconstruction/src/ZDCTowerParam.cxx @@ -16,7 +16,7 @@ using namespace o2::zdc; void ZDCTowerParam::setTowerCalib(uint32_t ich, float val) { - bool in_list = in_list; + bool in_list = false; for (int il = 0; il < ChTowerCalib.size(); il++) { if (ich == ChTowerCalib[il]) { in_list = true; From bd4fcd1224526df5ae68393811038db7bed82873 Mon Sep 17 00:00:00 2001 From: shahoian Date: Fri, 16 Jul 2021 04:12:12 +0200 Subject: [PATCH 198/314] Extend detectors CTFHeader by format version and dict. timestamp --- .../CPV/include/DataFormatsCPV/CTF.h | 4 +- DataFormats/Detectors/Common/CMakeLists.txt | 2 + .../CTFDictHeader.h | 50 +++++++++++++++++++ .../EncodedBlocks.h | 1 + .../Detectors/Common/src/CTFDictHeader.cxx | 30 +++++++++++ .../src/DetectorsCommonDataFormatsLinkDef.h | 1 + .../EMCAL/include/DataFormatsEMCAL/CTF.h | 4 +- .../FIT/FDD/include/DataFormatsFDD/CTF.h | 4 +- .../FIT/FT0/include/DataFormatsFT0/CTF.h | 4 +- .../FIT/FV0/include/DataFormatsFV0/CTF.h | 4 +- .../HMPID/include/DataFormatsHMP/CTF.h | 4 +- .../common/include/DataFormatsITSMFT/CTF.h | 4 +- .../MUON/MCH/include/DataFormatsMCH/CTF.h | 4 +- .../MUON/MID/include/DataFormatsMID/CTF.h | 4 +- .../PHOS/include/DataFormatsPHOS/CTF.h | 4 +- .../TOF/include/DataFormatsTOF/CTF.h | 4 +- .../TPC/include/DataFormatsTPC/CTF.h | 4 +- .../TRD/include/DataFormatsTRD/CTF.h | 4 +- .../ZDC/include/DataFormatsZDC/CTF.h | 4 +- .../Base/include/DetectorsBase/CTFCoderBase.h | 13 +++++ Detectors/Base/src/CTFCoderBase.cxx | 11 +++- .../include/CPVReconstruction/CTFCoder.h | 4 +- .../include/CPVReconstruction/CTFHelper.h | 3 +- Detectors/CTF/workflow/src/CTFWriterSpec.cxx | 6 +++ .../include/EMCALReconstruction/CTFCoder.h | 6 ++- .../include/EMCALReconstruction/CTFHelper.h | 3 +- .../include/FDDReconstruction/CTFCoder.h | 4 +- .../include/FT0Reconstruction/CTFCoder.h | 2 + .../include/FV0Reconstruction/CTFCoder.h | 4 +- .../include/HMPIDReconstruction/CTFCoder.h | 4 +- .../include/HMPIDReconstruction/CTFHelper.h | 3 +- .../include/ITSMFTReconstruction/CTFCoder.h | 6 ++- .../MUON/MCH/CTF/include/MCHCTF/CTFCoder.h | 2 + .../MUON/MCH/CTF/include/MCHCTF/CTFHelper.h | 3 +- .../MUON/MID/CTF/include/MIDCTF/CTFCoder.h | 2 + .../MUON/MID/CTF/include/MIDCTF/CTFHelper.h | 3 +- .../include/PHOSReconstruction/CTFCoder.h | 6 ++- .../include/PHOSReconstruction/CTFHelper.h | 3 +- .../include/TOFReconstruction/CTFCoder.h | 4 +- .../include/TPCReconstruction/CTFCoder.h | 7 ++- .../include/TRDReconstruction/CTFCoder.h | 2 + .../include/TRDReconstruction/CTFHelper.h | 3 +- .../include/ZDCReconstruction/CTFCoder.h | 2 + .../include/ZDCReconstruction/CTFHelper.h | 3 +- 44 files changed, 198 insertions(+), 51 deletions(-) create mode 100644 DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/CTFDictHeader.h create mode 100644 DataFormats/Detectors/Common/src/CTFDictHeader.cxx diff --git a/DataFormats/Detectors/CPV/include/DataFormatsCPV/CTF.h b/DataFormats/Detectors/CPV/include/DataFormatsCPV/CTF.h index eb171e7e60fb1..b1db64a872504 100644 --- a/DataFormats/Detectors/CPV/include/DataFormatsCPV/CTF.h +++ b/DataFormats/Detectors/CPV/include/DataFormatsCPV/CTF.h @@ -28,13 +28,13 @@ namespace cpv { /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nTriggers = 0; /// number of triggers uint32_t nClusters = 0; /// number of referred cells uint32_t firstOrbit = 0; /// orbit of 1st trigger uint16_t firstBC = 0; /// bc of 1st trigger - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// wrapper for the Entropy-encoded triggers and cells of the TF diff --git a/DataFormats/Detectors/Common/CMakeLists.txt b/DataFormats/Detectors/Common/CMakeLists.txt index 47134fdb903ad..e5d7215e9ed9b 100644 --- a/DataFormats/Detectors/Common/CMakeLists.txt +++ b/DataFormats/Detectors/Common/CMakeLists.txt @@ -14,6 +14,7 @@ o2_add_library(DetectorsCommonDataFormats src/NameConf.cxx src/EncodedBlocks.cxx src/CTFHeader.cxx + src/CTFDictHeader.cxx PUBLIC_LINK_LIBRARIES ROOT::Core ROOT::Geom @@ -33,6 +34,7 @@ o2_target_root_dictionary( include/DetectorsCommonDataFormats/NameConf.h include/DetectorsCommonDataFormats/EncodedBlocks.h include/DetectorsCommonDataFormats/CTFHeader.h + include/DetectorsCommonDataFormats/CTFDictHeader.h include/DetectorsCommonDataFormats/DetMatrixCache.h) configure_file(UpgradesStatus.h.in diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/CTFDictHeader.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/CTFDictHeader.h new file mode 100644 index 0000000000000..bff50fab5b8f2 --- /dev/null +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/CTFDictHeader.h @@ -0,0 +1,50 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file CTFDictHeader.h +/// \brief Header: timestamps and format version for detector CTF dictionary +/// \author ruben.shahoyan@cern.ch + +#ifndef _ALICEO2_CTFDICTHEADER_H +#define _ALICEO2_CTFDICTHEADER_H + +#include +#include + +namespace o2 +{ +namespace ctf +{ + +/// Detector header base +struct CTFDictHeader { + uint32_t dictTimeStamp = 0; // dictionary creation time (seconds since epoch) / hash + uint8_t majorVersion = 1; + uint8_t minorVersion = 0; + + bool isValidDictTimeStamp() const { return dictTimeStamp != 0; } + bool operator==(const CTFDictHeader& o) const + { + return dictTimeStamp == o.dictTimeStamp && majorVersion == o.majorVersion && minorVersion == o.minorVersion; + } + bool operator!=(const CTFDictHeader& o) const + { + return dictTimeStamp != o.dictTimeStamp || majorVersion != o.majorVersion || minorVersion != o.minorVersion; + } + std::string asString() const; + + ClassDefNV(CTFDictHeader, 1); +}; + +} // namespace ctf +} // namespace o2 + +#endif diff --git a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h index 3a7d229f0fd54..b99ad2f9338e8 100644 --- a/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h +++ b/DataFormats/Detectors/Common/include/DetectorsCommonDataFormats/EncodedBlocks.h @@ -24,6 +24,7 @@ #include "TTree.h" #include "CommonUtils/StringUtils.h" #include "Framework/Logger.h" +#include "DetectorsCommonDataFormats/CTFDictHeader.h" namespace o2 { diff --git a/DataFormats/Detectors/Common/src/CTFDictHeader.cxx b/DataFormats/Detectors/Common/src/CTFDictHeader.cxx new file mode 100644 index 0000000000000..a07ef734a7f15 --- /dev/null +++ b/DataFormats/Detectors/Common/src/CTFDictHeader.cxx @@ -0,0 +1,30 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file CTFDictHeader.cxx +/// \brief Header: timestamps and format version for detector CTF dictionary +/// \author ruben.shahoyan@cern.ch + +#include "DetectorsCommonDataFormats/CTFDictHeader.h" +#include +#include +#include + +using namespace o2::ctf; + +std::string CTFDictHeader::asString() const +{ + std::time_t temp = dictTimeStamp; + std::tm* t = std::gmtime(&temp); + std::stringstream ss; + ss << "Dict. v" << int(majorVersion) << '.' << int(minorVersion) << " from " << std::put_time(t, "%Y-%m-%d %I:%M:%S %p"); + return ss.str(); +} diff --git a/DataFormats/Detectors/Common/src/DetectorsCommonDataFormatsLinkDef.h b/DataFormats/Detectors/Common/src/DetectorsCommonDataFormatsLinkDef.h index 2b252a85bc914..da8b38261320e 100644 --- a/DataFormats/Detectors/Common/src/DetectorsCommonDataFormatsLinkDef.h +++ b/DataFormats/Detectors/Common/src/DetectorsCommonDataFormatsLinkDef.h @@ -31,6 +31,7 @@ #pragma link C++ class o2::ctf::CTFHeader + ; #pragma link C++ class o2::ctf::Registry + ; +#pragma link C++ class o2::ctf::CTFDictHeader + ; #pragma link C++ class o2::ctf::Block < uint32_t> + ; #pragma link C++ class o2::ctf::Block < uint16_t> + ; #pragma link C++ class o2::ctf::Block < uint8_t> + ; diff --git a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/CTF.h b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/CTF.h index b337646c740cd..d9cb0a6ca2d3f 100644 --- a/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/CTF.h +++ b/DataFormats/Detectors/EMCAL/include/DataFormatsEMCAL/CTF.h @@ -28,13 +28,13 @@ namespace emcal { /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nTriggers = 0; /// number of triggers uint32_t nCells = 0; /// number of referred cells uint32_t firstOrbit = 0; /// orbit of 1st trigger uint16_t firstBC = 0; /// bc of 1st trigger - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// wrapper for the Entropy-encoded triggers and cells of the TF diff --git a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/CTF.h b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/CTF.h index e1fa4856fbe29..3c1df8d89ee4d 100644 --- a/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/CTF.h +++ b/DataFormats/Detectors/FIT/FDD/include/DataFormatsFDD/CTF.h @@ -26,12 +26,12 @@ namespace fdd { /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nTriggers = 0; /// number of triggers in TF uint32_t firstOrbit = 0; /// 1st orbit of TF uint16_t firstBC = 0; /// 1st BC of TF - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// Intermediate, compressed but not yet entropy-encoded digits diff --git a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/CTF.h b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/CTF.h index eab9ccd608135..2156041ddee9f 100644 --- a/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/CTF.h +++ b/DataFormats/Detectors/FIT/FT0/include/DataFormatsFT0/CTF.h @@ -26,12 +26,12 @@ namespace ft0 { /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nTriggers = 0; /// number of triggers in TF uint32_t firstOrbit = 0; /// 1st orbit of TF uint16_t firstBC = 0; /// 1st BC of TF uint16_t triggerGate = 192; // trigger gate used at encoding - ClassDefNV(CTFHeader, 2); + ClassDefNV(CTFHeader, 3); }; /// Intermediate, compressed but not yet entropy-encoded digits diff --git a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/CTF.h b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/CTF.h index a114557cea296..d461a7e7710d6 100644 --- a/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/CTF.h +++ b/DataFormats/Detectors/FIT/FV0/include/DataFormatsFV0/CTF.h @@ -26,12 +26,12 @@ namespace fv0 { /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nTriggers = 0; /// number of triggers in TF uint32_t firstOrbit = 0; /// 1st orbit of TF uint16_t firstBC = 0; /// 1st BC of TF - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// Intermediate, compressed but not yet entropy-encoded digits diff --git a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/CTF.h b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/CTF.h index 724ce563cb469..b7f96e2827cfc 100644 --- a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/CTF.h +++ b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/CTF.h @@ -26,13 +26,13 @@ namespace hmpid { /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nTriggers = 0; /// number of triggers uint32_t nDigits = 0; /// number of digits uint32_t firstOrbit = 0; /// orbit of 1st trigger uint16_t firstBC = 0; /// bc of 1st trigger - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// wrapper for the Entropy-encoded triggers and cells of the TF diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/CTF.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/CTF.h index 920be59182e84..6ed01c5d849e3 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/CTF.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/CTF.h @@ -29,7 +29,7 @@ class ROFRecord; class CompClusterExt; /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nROFs = 0; /// number of ROFrame in TF uint32_t nClusters = 0; /// number of clusters in TF uint32_t nChips = 0; /// number of fired chips in TF : this is for the version with chipInc stored once per new chip @@ -37,7 +37,7 @@ struct CTFHeader { uint32_t firstOrbit = 0; /// 1st orbit of TF uint16_t firstBC = 0; /// 1st BC of TF - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// Compressed but not yet entropy-encoded clusters diff --git a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/CTF.h b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/CTF.h index d07794d3ecc2d..2df0c1c67b040 100644 --- a/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/CTF.h +++ b/DataFormats/Detectors/MUON/MCH/include/DataFormatsMCH/CTF.h @@ -27,13 +27,13 @@ namespace mch { /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nROFs = 0; /// number of ROFrames in TF uint32_t nDigits = 0; /// number of digits in TF uint32_t firstOrbit = 0; /// 1st orbit of TF uint16_t firstBC = 0; /// 1st BC of TF - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// wrapper for the Entropy-encoded clusters of the TF diff --git a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/CTF.h b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/CTF.h index 1f7762fd95185..bcfca4aca95de 100644 --- a/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/CTF.h +++ b/DataFormats/Detectors/MUON/MID/include/DataFormatsMID/CTF.h @@ -28,13 +28,13 @@ namespace mid { /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nROFs = 0; /// number of ROFrames in TF uint32_t nColumns = 0; /// number of referred columns in TF uint32_t firstOrbit = 0; /// 1st orbit of TF uint16_t firstBC = 0; /// 1st BC of TF - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// wrapper for the Entropy-encoded clusters of the TF diff --git a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/CTF.h b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/CTF.h index 170b0a4e47bfc..87d51f5194234 100644 --- a/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/CTF.h +++ b/DataFormats/Detectors/PHOS/include/DataFormatsPHOS/CTF.h @@ -28,13 +28,13 @@ namespace phos { /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nTriggers = 0; /// number of triggers uint32_t nCells = 0; /// number of referred cells uint32_t firstOrbit = 0; /// orbit of 1st trigger uint16_t firstBC = 0; /// bc of 1st trigger - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// wrapper for the Entropy-encoded triggers and cells of the TF diff --git a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CTF.h b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CTF.h index 8938712cb442d..57d5784dc3b66 100644 --- a/DataFormats/Detectors/TOF/include/DataFormatsTOF/CTF.h +++ b/DataFormats/Detectors/TOF/include/DataFormatsTOF/CTF.h @@ -29,14 +29,14 @@ class ROFRecord; class CompClusterExt; /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nROFs = 0; /// number of ROFrame in TF uint32_t nDigits = 0; /// number of digits in TF uint32_t nPatternBytes = 0; /// number of bytes for explict patterns uint32_t firstOrbit = 0; /// 1st orbit of TF uint16_t firstBC = 0; /// 1st BC of TF - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// Compressed but not yet entropy-encoded infos diff --git a/DataFormats/Detectors/TPC/include/DataFormatsTPC/CTF.h b/DataFormats/Detectors/TPC/include/DataFormatsTPC/CTF.h index ebd9e427087bb..1e57c9654932c 100644 --- a/DataFormats/Detectors/TPC/include/DataFormatsTPC/CTF.h +++ b/DataFormats/Detectors/TPC/include/DataFormatsTPC/CTF.h @@ -24,11 +24,11 @@ namespace o2 namespace tpc { -struct CTFHeader : public CompressedClustersCounters { +struct CTFHeader : public ctf::CTFDictHeader, public CompressedClustersCounters { enum : uint32_t { CombinedColumns = 0x1 }; uint32_t flags = 0; - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// wrapper for the Entropy-encoded clusters of the TF diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CTF.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CTF.h index 45b75e14f1470..6e8be7604bd03 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/CTF.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/CTF.h @@ -26,7 +26,7 @@ namespace trd { /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nTriggers = 0; /// number of triggers uint32_t nTracklets = 0; /// number of tracklets uint32_t nDigits = 0; /// number of digits @@ -34,7 +34,7 @@ struct CTFHeader { uint16_t firstBC = 0; /// bc of 1st trigger uint16_t format = 0; /// format word to be added to tracklet - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// wrapper for the Entropy-encoded triggers and cells of the TF diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/CTF.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/CTF.h index 5f959ffa12983..7c3e8bdc163f7 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/CTF.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/CTF.h @@ -29,7 +29,7 @@ namespace zdc { /// Header for a single CTF -struct CTFHeader { +struct CTFHeader : public o2::ctf::CTFDictHeader { uint32_t nTriggers = 0; /// number of triggers uint32_t nChannels = 0; /// number of referred channels uint32_t nEOData = 0; /// number of end-of-orbit data objects (pedestal + scalers) @@ -37,7 +37,7 @@ struct CTFHeader { uint32_t firstOrbitEOData = 0; /// orbit of 1st end-of-orbit data uint16_t firstBC = 0; /// bc of 1st trigger std::array firstScaler{}; // inital scaler values - ClassDefNV(CTFHeader, 1); + ClassDefNV(CTFHeader, 2); }; /// wrapper for the Entropy-encoded triggers and cells of the TF diff --git a/Detectors/Base/include/DetectorsBase/CTFCoderBase.h b/Detectors/Base/include/DetectorsBase/CTFCoderBase.h index 29a58dbb367bf..afbaa036e164b 100644 --- a/Detectors/Base/include/DetectorsBase/CTFCoderBase.h +++ b/Detectors/Base/include/DetectorsBase/CTFCoderBase.h @@ -21,6 +21,7 @@ #include #include "DetectorsCommonDataFormats/DetID.h" #include "DetectorsCommonDataFormats/NameConf.h" +#include "DetectorsCommonDataFormats/CTFDictHeader.h" #include "rANS/rans.h" namespace o2 @@ -53,6 +54,10 @@ class CTFCoderBase if (fileDict) { std::unique_ptr tree((TTree*)fileDict->Get(std::string(o2::base::NameConf::CTFDICT).c_str())); CTF::readFromTree(bufVec, *tree.get(), mDet.getName()); + if (bufVec.size()) { + mExtHeader = static_cast(CTF::get(bufVec.data())->getHeader()); + LOGP(INFO, "Found {} {} in {}", mDet.getName(), mExtHeader.asString(), dictPath); + } } return bufVec; } @@ -83,9 +88,17 @@ class CTFCoderBase protected: std::string getPrefix() const { return o2::utils::Str::concat_string(mDet.getName(), "_CTF: "); } + void assignDictVersion(CTFDictHeader& h) const + { + if (mExtHeader.isValidDictTimeStamp()) { + h = mExtHeader; + } + } + void checkDictVersion(const CTFDictHeader& h) const; std::vector> mCoders; // encoders/decoders DetID mDet; + CTFDictHeader mExtHeader; // external dictionary header ClassDefNV(CTFCoderBase, 1); }; diff --git a/Detectors/Base/src/CTFCoderBase.cxx b/Detectors/Base/src/CTFCoderBase.cxx index 3ad8067c173b2..90107ea7edeb5 100644 --- a/Detectors/Base/src/CTFCoderBase.cxx +++ b/Detectors/Base/src/CTFCoderBase.cxx @@ -61,8 +61,15 @@ std::unique_ptr CTFCoderBase::loadDictionaryTreeFile(const std::string& d if (!mayFail) { throw std::runtime_error("did not find CTFHeader with needed detector"); } - } else { - LOG(INFO) << "Found CTF dictionary for " << mDet.getName() << " in " << dictPath; } return fileDict; } + +void CTFCoderBase::checkDictVersion(const CTFDictHeader& h) const +{ + if (h.isValidDictTimeStamp()) { // external dictionary was used + if (h.isValidDictTimeStamp() && h != mExtHeader) { + throw std::runtime_error(fmt::format("Mismatch in {} CTF dictionary: need {}, provided {}", mDet.getName(), h.asString(), mExtHeader.asString())); + } + } +} diff --git a/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFCoder.h b/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFCoder.h index 95f2b362fb0a0..492fd4d5cc098 100644 --- a/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFCoder.h +++ b/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFCoder.h @@ -80,6 +80,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& trigData, using ECB = CTF::base; ec->setHeader(helper.createHeader()); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -88,7 +89,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& trigData, ENCODECPV(helper.begin_bcIncTrig(), helper.end_bcIncTrig(), CTF::BLC_bcIncTrig, 0); ENCODECPV(helper.begin_orbitIncTrig(), helper.end_orbitIncTrig(), CTF::BLC_orbitIncTrig, 0); ENCODECPV(helper.begin_entriesTrig(), helper.end_entriesTrig(), CTF::BLC_entriesTrig, 0); - + ENCODECPV(helper.begin_posX(), helper.end_posX(), CTF::BLC_posX, 0); ENCODECPV(helper.begin_posZ(), helper.end_posZ(), CTF::BLC_posZ, 0); ENCODECPV(helper.begin_energy(), helper.end_energy(), CTF::BLC_energy, 0); @@ -102,6 +103,7 @@ template void CTFCoder::decode(const CTF::base& ec, VTRG& trigVec, VCLUSTER& cluVec) { auto header = ec.getHeader(); + checkDictVersion(static_cast(header)); ec.print(getPrefix()); std::vector bcInc, entries, posX, posZ; std::vector orbitInc; diff --git a/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFHelper.h b/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFHelper.h index 59956cc2d056b..506b0948d9f59 100644 --- a/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFHelper.h +++ b/Detectors/CPV/reconstruction/include/CPVReconstruction/CTFHelper.h @@ -33,7 +33,8 @@ class CTFHelper CTFHeader createHeader() { - CTFHeader h{uint32_t(mTrigData.size()), uint32_t(mCluData.size()), 0, 0}; + CTFHeader h{0, 1, 0, // dummy timestamp, version 1.0 + uint32_t(mTrigData.size()), uint32_t(mCluData.size()), 0, 0}; if (mTrigData.size()) { h.firstOrbit = mTrigData[0].getBCData().orbit; h.firstBC = mTrigData[0].getBCData().bc; diff --git a/Detectors/CTF/workflow/src/CTFWriterSpec.cxx b/Detectors/CTF/workflow/src/CTFWriterSpec.cxx index dc828eae5e564..9217c32dd4385 100644 --- a/Detectors/CTF/workflow/src/CTFWriterSpec.cxx +++ b/Detectors/CTF/workflow/src/CTFWriterSpec.cxx @@ -43,6 +43,7 @@ #include #include #include +#include using namespace o2::framework; @@ -155,6 +156,8 @@ size_t CTFWriterSpec::processDet(o2::framework::ProcessingContext& pc, DetID det } if (!mHeaders[det]) { // store 1st header mHeaders[det] = ctfImage.cloneHeader(); + auto& hb = *static_cast(mHeaders[det].get()); + hb.dictTimeStamp = uint32_t(std::time(nullptr)); } for (int ib = 0; ib < C::getNBlocks(); ib++) { const auto& bl = ctfImage.getBlock(ib); @@ -183,6 +186,9 @@ void CTFWriterSpec::storeDictionary(DetID det, CTFHeader& header) auto dictBlocks = C::createDictionaryBlocks(mFreqsAccumulation[det], mFreqsMetaData[det]); auto& h = C::get(dictBlocks.data())->getHeader(); h = *reinterpret_cast::type*>(mHeaders[det].get()); + auto& hb = static_cast(h); + hb = *static_cast(mHeaders[det].get()); + C::get(dictBlocks.data())->print(o2::utils::Str::concat_string("Storing dictionary for ", det.getName(), ": ")); C::get(dictBlocks.data())->appendToTree(*mDictTreeOut.get(), det.getName()); // cast to EncodedBlock // mFreqsAccumulation[det].clear(); diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFCoder.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFCoder.h index 77784b86604f9..a81f22b9adacd 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFCoder.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFCoder.h @@ -80,6 +80,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& trigData, using ECB = CTF::base; ec->setHeader(helper.createHeader()); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -88,7 +89,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& trigData, ENCODEEMC(helper.begin_bcIncTrig(), helper.end_bcIncTrig(), CTF::BLC_bcIncTrig, 0); ENCODEEMC(helper.begin_orbitIncTrig(), helper.end_orbitIncTrig(), CTF::BLC_orbitIncTrig, 0); ENCODEEMC(helper.begin_entriesTrig(), helper.end_entriesTrig(), CTF::BLC_entriesTrig, 0); - + ENCODEEMC(helper.begin_towerID(), helper.end_towerID(), CTF::BLC_towerID, 0); ENCODEEMC(helper.begin_time(), helper.end_time(), CTF::BLC_time, 0); ENCODEEMC(helper.begin_energy(), helper.end_energy(), CTF::BLC_energy, 0); @@ -101,7 +102,8 @@ void CTFCoder::encode(VEC& buff, const gsl::span& trigData, template void CTFCoder::decode(const CTF::base& ec, VTRG& trigVec, VCELL& cellVec) { - auto header = ec.getHeader(); + const auto& header = ec.getHeader(); + checkDictVersion(static_cast(header)); ec.print(getPrefix()); std::vector bcInc, entries, energy, cellTime, tower; std::vector orbitInc; diff --git a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFHelper.h b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFHelper.h index 8a732f49b8d76..924505f1cd1d6 100644 --- a/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFHelper.h +++ b/Detectors/EMCAL/reconstruction/include/EMCALReconstruction/CTFHelper.h @@ -33,7 +33,8 @@ class CTFHelper CTFHeader createHeader() { - CTFHeader h{uint32_t(mTrigData.size()), uint32_t(mCellData.size()), 0, 0}; + CTFHeader h{0, 1, 0, // dummy timestamp, version 1.0 + uint32_t(mTrigData.size()), uint32_t(mCellData.size()), 0, 0}; if (mTrigData.size()) { h.firstOrbit = mTrigData[0].getBCData().orbit; h.firstBC = mTrigData[0].getBCData().bc; diff --git a/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/CTFCoder.h b/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/CTFCoder.h index 97707c987a243..31685568401be 100644 --- a/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/CTFCoder.h +++ b/Detectors/FIT/FDD/reconstruction/include/FDDReconstruction/CTFCoder.h @@ -93,6 +93,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& digitVec, const g using ECB = CTF::base; ec->setHeader(cd.header); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -117,11 +118,12 @@ void CTFCoder::decode(const CTF::base& ec, VDIG& digitVec, VCHAN& channelVec) { CompressedDigits cd; cd.header = ec.getHeader(); + checkDictVersion(static_cast(cd.header)); ec.print(getPrefix()); #define DECODEFDD(part, slot) ec.decode(part, int(slot), mCoders[int(slot)].get()) // clang-format off DECODEFDD(cd.trigger, CTF::BLC_trigger); - DECODEFDD(cd.bcInc, CTF::BLC_bcInc); + DECODEFDD(cd.bcInc, CTF::BLC_bcInc); DECODEFDD(cd.orbitInc, CTF::BLC_orbitInc); DECODEFDD(cd.nChan, CTF::BLC_nChan); diff --git a/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/CTFCoder.h b/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/CTFCoder.h index e3f694d505916..67e88e8b55c8a 100644 --- a/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/CTFCoder.h +++ b/Detectors/FIT/FT0/reconstruction/include/FT0Reconstruction/CTFCoder.h @@ -96,6 +96,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& digitVec, const g using ECB = CTF::base; ec->setHeader(cd.header); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -120,6 +121,7 @@ void CTFCoder::decode(const CTF::base& ec, VDIG& digitVec, VCHAN& channelVec) { CompressedDigits cd; cd.header = ec.getHeader(); + checkDictVersion(static_cast(cd.header)); ec.print(getPrefix()); #define DECODEFT0(part, slot) ec.decode(part, int(slot), mCoders[int(slot)].get()) // clang-format off diff --git a/Detectors/FIT/FV0/reconstruction/include/FV0Reconstruction/CTFCoder.h b/Detectors/FIT/FV0/reconstruction/include/FV0Reconstruction/CTFCoder.h index 95354af50981c..e628061481c82 100644 --- a/Detectors/FIT/FV0/reconstruction/include/FV0Reconstruction/CTFCoder.h +++ b/Detectors/FIT/FV0/reconstruction/include/FV0Reconstruction/CTFCoder.h @@ -91,6 +91,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& digitVec, const using ECB = CTF::base; ec->setHeader(cd.header); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -113,10 +114,11 @@ void CTFCoder::decode(const CTF::base& ec, VDIG& digitVec, VCHAN& channelVec) { CompressedDigits cd; cd.header = ec.getHeader(); + checkDictVersion(static_cast(cd.header)); ec.print(getPrefix()); #define DECODEFV0(part, slot) ec.decode(part, int(slot), mCoders[int(slot)].get()) // clang-format off - DECODEFV0(cd.bcInc, CTF::BLC_bcInc); + DECODEFV0(cd.bcInc, CTF::BLC_bcInc); DECODEFV0(cd.orbitInc, CTF::BLC_orbitInc); DECODEFV0(cd.nChan, CTF::BLC_nChan); diff --git a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFCoder.h b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFCoder.h index 2ecee19995caf..0de11428c6513 100644 --- a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFCoder.h +++ b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFCoder.h @@ -81,6 +81,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& trigData, const using ECB = CTF::base; ec->setHeader(helper.createHeader()); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -89,7 +90,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& trigData, const ENCODEHMP(helper.begin_bcIncTrig(), helper.end_bcIncTrig(), CTF::BLC_bcIncTrig, 0); ENCODEHMP(helper.begin_orbitIncTrig(), helper.end_orbitIncTrig(), CTF::BLC_orbitIncTrig, 0); ENCODEHMP(helper.begin_entriesDig(), helper.end_entriesDig(), CTF::BLC_entriesDig, 0); - + ENCODEHMP(helper.begin_ChID(), helper.end_ChID(), CTF::BLC_ChID, 0); ENCODEHMP(helper.begin_Q(), helper.end_Q(), CTF::BLC_Q, 0); ENCODEHMP(helper.begin_Ph(), helper.end_Ph(), CTF::BLC_Ph, 0); @@ -105,6 +106,7 @@ template void CTFCoder::decode(const CTF::base& ec, VTRG& trigVec, VDIG& digVec) { auto header = ec.getHeader(); + checkDictVersion(static_cast(header)); ec.print(getPrefix()); std::vector bcInc, q; std::vector orbitInc, entriesDig; diff --git a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFHelper.h b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFHelper.h index 5864948577de8..21a816dd37675 100644 --- a/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFHelper.h +++ b/Detectors/HMPID/reconstruction/include/HMPIDReconstruction/CTFHelper.h @@ -44,7 +44,8 @@ class CTFHelper CTFHeader createHeader() { - CTFHeader h{uint32_t(mTrigRec.size()), uint32_t(mDigData.size()), 0, 0}; + CTFHeader h{0, 1, 0, // dummy timestamp, version 1.0 + uint32_t(mTrigRec.size()), uint32_t(mDigData.size()), 0, 0}; if (mTrigRec.size()) { h.firstOrbit = mTrigRec[0].getOrbit(); h.firstBC = mTrigRec[0].getBc(); diff --git a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/CTFCoder.h b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/CTFCoder.h index f98e1bc4b3a0f..72842b3aee32a 100644 --- a/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/CTFCoder.h +++ b/Detectors/ITSMFT/common/reconstruction/include/ITSMFTReconstruction/CTFCoder.h @@ -93,6 +93,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& rofRecVec, co using ECB = CTF::base; ec->setHeader(cc.header); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -119,6 +120,7 @@ void CTFCoder::decode(const CTF::base& ec, VROF& rofRecVec, VCLUS& cclusVec, VPA { CompressedClusters cc; cc.header = ec.getHeader(); + checkDictVersion(static_cast(cc.header)); ec.print(getPrefix()); #define DECODEITSMFT(part, slot) ec.decode(part, int(slot), mCoders[int(slot)].get()) // clang-format off @@ -126,7 +128,7 @@ void CTFCoder::decode(const CTF::base& ec, VROF& rofRecVec, VCLUS& cclusVec, VPA DECODEITSMFT(cc.bcIncROF, CTF::BLCbcIncROF); DECODEITSMFT(cc.orbitIncROF, CTF::BLCorbitIncROF); DECODEITSMFT(cc.nclusROF, CTF::BLCnclusROF); - // + // DECODEITSMFT(cc.chipInc, CTF::BLCchipInc); DECODEITSMFT(cc.chipMul, CTF::BLCchipMul); DECODEITSMFT(cc.row, CTF::BLCrow); @@ -187,7 +189,7 @@ void CTFCoder::decompress(const CompressedClusters& cc, VROF& rofRecVec, VCLUS& } // << this is the version with chipInc stored once per new chip - /* + /* // >> this is the version with chipInc stored for every pixel, requires entropy compression dealing with repeating symbols for (uint32_t icl = 0; icl < cc.nclusROF[irof]; icl++) { auto& clus = cclusVec[clCount]; diff --git a/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFCoder.h b/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFCoder.h index c1b39a608f11c..f732ca96c1dca 100644 --- a/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFCoder.h +++ b/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFCoder.h @@ -83,6 +83,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& rofData, cons using ECB = CTF::base; ec->setHeader(helper.createHeader()); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -107,6 +108,7 @@ template void CTFCoder::decode(const CTF::base& ec, VROF& rofVec, VCOL& digVec) { auto header = ec.getHeader(); + checkDictVersion(static_cast(header)); ec.print(getPrefix()); std::vector bcInc, nSamples; diff --git a/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFHelper.h b/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFHelper.h index 7b155b5f954aa..8c1aa99a3eb6a 100644 --- a/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFHelper.h +++ b/Detectors/MUON/MCH/CTF/include/MCHCTF/CTFHelper.h @@ -35,7 +35,8 @@ class CTFHelper CTFHeader createHeader() { - CTFHeader h{uint32_t(mROFData.size()), uint32_t(mDigData.size()), 0, 0}; + CTFHeader h{0, 1, 0, // dummy timestamp, version 1.0 + uint32_t(mROFData.size()), uint32_t(mDigData.size()), 0, 0}; if (mROFData.size()) { h.firstOrbit = mROFData[0].getBCData().orbit; h.firstBC = mROFData[0].getBCData().bc; diff --git a/Detectors/MUON/MID/CTF/include/MIDCTF/CTFCoder.h b/Detectors/MUON/MID/CTF/include/MIDCTF/CTFCoder.h index a11485b26bd6e..4080cc7f803ca 100644 --- a/Detectors/MUON/MID/CTF/include/MIDCTF/CTFCoder.h +++ b/Detectors/MUON/MID/CTF/include/MIDCTF/CTFCoder.h @@ -81,6 +81,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& rofData, cons using ECB = CTF::base; ec->setHeader(helper.createHeader()); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -103,6 +104,7 @@ template void CTFCoder::decode(const CTF::base& ec, VROF& rofVec, VCOL& colVec) { auto header = ec.getHeader(); + checkDictVersion(static_cast(header)); ec.print(getPrefix()); std::vector bcInc, entries, pattern; std::vector orbitInc; diff --git a/Detectors/MUON/MID/CTF/include/MIDCTF/CTFHelper.h b/Detectors/MUON/MID/CTF/include/MIDCTF/CTFHelper.h index a09da3041f51a..6269441ea9cae 100644 --- a/Detectors/MUON/MID/CTF/include/MIDCTF/CTFHelper.h +++ b/Detectors/MUON/MID/CTF/include/MIDCTF/CTFHelper.h @@ -35,7 +35,8 @@ class CTFHelper CTFHeader createHeader() { - CTFHeader h{uint32_t(mROFData.size()), uint32_t(mColData.size()), 0, 0}; + CTFHeader h{0, 1, 0, // dummy timestamp, version 1.0 + uint32_t(mROFData.size()), uint32_t(mColData.size()), 0, 0}; if (mROFData.size()) { h.firstOrbit = mROFData[0].interactionRecord.orbit; h.firstBC = mROFData[0].interactionRecord.bc; diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFCoder.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFCoder.h index 774b4845bba70..b07b578d3bcee 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFCoder.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFCoder.h @@ -80,6 +80,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& trigData, using ECB = CTF::base; ec->setHeader(helper.createHeader()); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -88,7 +89,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& trigData, ENCODEPHS(helper.begin_bcIncTrig(), helper.end_bcIncTrig(), CTF::BLC_bcIncTrig, 0); ENCODEPHS(helper.begin_orbitIncTrig(), helper.end_orbitIncTrig(), CTF::BLC_orbitIncTrig, 0); ENCODEPHS(helper.begin_entriesTrig(), helper.end_entriesTrig(), CTF::BLC_entriesTrig, 0); - + ENCODEPHS(helper.begin_packedID(), helper.end_packedID(), CTF::BLC_packedID, 0); ENCODEPHS(helper.begin_time(), helper.end_time(), CTF::BLC_time, 0); ENCODEPHS(helper.begin_energy(), helper.end_energy(), CTF::BLC_energy, 0); @@ -101,7 +102,8 @@ void CTFCoder::encode(VEC& buff, const gsl::span& trigData, template void CTFCoder::decode(const CTF::base& ec, VTRG& trigVec, VCELL& cellVec) { - auto header = ec.getHeader(); + const auto& header = ec.getHeader(); + checkDictVersion(static_cast(header)); ec.print(getPrefix()); std::vector bcInc, entries, energy, cellTime, packedID; std::vector orbitInc; diff --git a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFHelper.h b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFHelper.h index 438095206e48c..8b35228c78ff4 100644 --- a/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFHelper.h +++ b/Detectors/PHOS/reconstruction/include/PHOSReconstruction/CTFHelper.h @@ -33,7 +33,8 @@ class CTFHelper CTFHeader createHeader() { - CTFHeader h{uint32_t(mTrigData.size()), uint32_t(mCellData.size()), 0, 0}; + CTFHeader h{0, 1, 0, // dummy timestamp, version 1.0 + uint32_t(mTrigData.size()), uint32_t(mCellData.size()), 0, 0}; if (mTrigData.size()) { h.firstOrbit = mTrigData[0].getBCData().orbit; h.firstBC = mTrigData[0].getBCData().bc; diff --git a/Detectors/TOF/reconstruction/include/TOFReconstruction/CTFCoder.h b/Detectors/TOF/reconstruction/include/TOFReconstruction/CTFCoder.h index c93f2f679c6e0..f923a835c9a64 100644 --- a/Detectors/TOF/reconstruction/include/TOFReconstruction/CTFCoder.h +++ b/Detectors/TOF/reconstruction/include/TOFReconstruction/CTFCoder.h @@ -93,6 +93,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& rofRe using ECB = CTF::base; ec->setHeader(cc.header); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -121,6 +122,7 @@ void CTFCoder::decode(const CTF::base& ec, VROF& rofRecVec, VDIG& cdigVec, VPAT& CompressedInfos cc; ec.print(getPrefix()); cc.header = ec.getHeader(); + checkDictVersion(static_cast(cc.header)); #define DECODETOF(part, slot) ec.decode(part, int(slot), mCoders[int(slot)].get()) // clang-format off DECODETOF(cc.bcIncROF, CTF::BLCbcIncROF); @@ -128,7 +130,7 @@ void CTFCoder::decode(const CTF::base& ec, VROF& rofRecVec, VDIG& cdigVec, VPAT& DECODETOF(cc.ndigROF, CTF::BLCndigROF); DECODETOF(cc.ndiaROF, CTF::BLCndiaROF); DECODETOF(cc.ndiaCrate, CTF::BLCndiaCrate); - + DECODETOF(cc.timeFrameInc, CTF::BLCtimeFrameInc); DECODETOF(cc.timeTDCInc, CTF::BLCtimeTDCInc); DECODETOF(cc.stripID, CTF::BLCstripID); diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/CTFCoder.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/CTFCoder.h index 2bc787db513be..2bed0af0d7c55 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/CTFCoder.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/CTFCoder.h @@ -212,7 +212,9 @@ void CTFCoder::encode(VEC& buff, const CompressedClusters& ccl) if (mCombineColumns) { flags |= CTFHeader::CombinedColumns; } - ec->setHeader(CTFHeader{reinterpret_cast(ccl), flags}); + ec->setHeader(CTFHeader{0, 1, 0, // dummy timestamp, version 1.0 + ccl, flags}); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; @@ -295,8 +297,9 @@ void CTFCoder::decode(const CTF::base& ec, VEC& buffVec) CompressedClusters cc; CompressedClustersCounters& ccCount = cc; auto& header = ec.getHeader(); + checkDictVersion(static_cast(header)); checkDataDictionaryConsistency(header); - ccCount = reinterpret_cast(header); + ccCount = static_cast(header); CompressedClustersFlat* ccFlat = nullptr; size_t sizeCFlatBody = alignSize(ccFlat); size_t sz = sizeCFlatBody + estimateSize(cc); // total size of the buffVec accounting for the alignment diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFCoder.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFCoder.h index 9274f1871dc74..f019dac086615 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFCoder.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFCoder.h @@ -88,6 +88,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& trigData, using ECB = CTF::base; ec->setHeader(helper.createHeader()); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -120,6 +121,7 @@ template void CTFCoder::decode(const CTF::base& ec, VTRG& trigVec, VTRK& trkVec, VDIG& digVec) { auto header = ec.getHeader(); + checkDictVersion(static_cast(header)); ec.print(getPrefix()); std::vector bcInc, HCIDTrk, posTrk, CIDDig, ADCDig; std::vector orbitInc, entriesTrk, entriesDig, pidTrk; diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFHelper.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFHelper.h index 2c81ffc52ce93..745b54de672fb 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFHelper.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CTFHelper.h @@ -49,7 +49,8 @@ class CTFHelper CTFHeader createHeader() { - CTFHeader h{uint32_t(mTrigRec.size()), uint32_t(mTrkData.size()), uint32_t(mDigData.size()), 0, 0, 0}; + CTFHeader h{0, 1, 0, // dummy timestamp, version 1.0 + uint32_t(mTrigRec.size()), uint32_t(mTrkData.size()), uint32_t(mDigData.size()), 0, 0, 0}; if (mTrigRec.size()) { h.firstOrbit = mTrigRec[0].getBCData().orbit; h.firstBC = mTrigRec[0].getBCData().bc; diff --git a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFCoder.h b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFCoder.h index adba102907374..a17ad8808948f 100644 --- a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFCoder.h +++ b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFCoder.h @@ -87,6 +87,7 @@ void CTFCoder::encode(VEC& buff, const gsl::span& trigData, const using ECB = CTF::base; ec->setHeader(helper.createHeader()); + assignDictVersion(static_cast(ec->getHeader())); ec->getANSHeader().majorVersion = 0; ec->getANSHeader().minorVersion = 1; // at every encoding the buffer might be autoexpanded, so we don't work with fixed pointer ec @@ -116,6 +117,7 @@ template void CTFCoder::decode(const CTF::base& ec, VTRG& trigVec, VCHAN& chanVec, VPED& pedVec) { auto header = ec.getHeader(); + checkDictVersion(static_cast(header)); ec.print(getPrefix()); std::vector bcIncTrig, moduleTrig, nchanTrig, chanData, pedData, scalerInc, triggersHL, channelsHL; std::vector orbitIncTrig, orbitIncEOD; diff --git a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFHelper.h b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFHelper.h index 1bc590d84c7c8..bcf69073a1879 100644 --- a/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFHelper.h +++ b/Detectors/ZDC/reconstruction/include/ZDCReconstruction/CTFHelper.h @@ -39,7 +39,8 @@ class CTFHelper CTFHeader createHeader() { - CTFHeader h{uint32_t(mTrigData.size()), uint32_t(mChanData.size()), uint32_t(mEOData.size()), 0, 0, 0}; + CTFHeader h{0, 1, 0, // dummy timestamp, version 1.0 + uint32_t(mTrigData.size()), uint32_t(mChanData.size()), uint32_t(mEOData.size()), 0, 0, 0}; if (mTrigData.size()) { h.firstOrbit = mTrigData[0].ir.orbit; h.firstBC = mTrigData[0].ir.bc; From a7c7b1afc949e42590379cf01cd23caeafd9e46e Mon Sep 17 00:00:00 2001 From: shahoian Date: Fri, 16 Jul 2021 13:49:29 +0200 Subject: [PATCH 199/314] full_system_test.sh can run with externally provided CTF dictionary if called as CREATECTFDICT=0 $O2_ROOT/prodtests/full_system_test.sh --- prodtests/full_system_test.sh | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/prodtests/full_system_test.sh b/prodtests/full_system_test.sh index 1c63b70f9b7d0..c8fa149933a68 100755 --- a/prodtests/full_system_test.sh +++ b/prodtests/full_system_test.sh @@ -131,6 +131,10 @@ if [ $ENABLE_GPU_TEST != "0" ]; then STAGES+=" WITHGPU" fi STAGES+=" ASYNC" + +# give a possibility to run the FST with external existing dictionary (i.e. with CREATECTFDICT=0 full_system_test.sh) +[ ! -z "$CREATECTFDICT" ] && SYNCMODEDOCTFDICT="$CREATECTFDICT" || SYNCMODEDOCTFDICT=1 + for STAGE in $STAGES; do logfile=reco_${STAGE}.log @@ -151,7 +155,7 @@ for STAGE in $STAGES; do export CTFINPUT=1 export SAVECTF=0 else - export CREATECTFDICT=1 + export CREATECTFDICT=$SYNCMODEDOCTFDICT export GPUTYPE=CPU export SYNCMODE=1 export HOSTMEMSIZE=$TPCTRACKERSCRATCHMEMORY From 96a28920792a2d12af358c0a8fe65d699ec8983b Mon Sep 17 00:00:00 2001 From: Anton Alkin Date: Sat, 17 Jul 2021 09:21:27 +0200 Subject: [PATCH 200/314] DPL Analysis: add an exception on incorrect join (#6644) --- .../AnalysisSupport/src/AODJAlienReaderHelpers.cxx | 1 + Framework/Core/include/Framework/AnalysisHelpers.h | 13 ++++++++++--- Framework/Core/include/Framework/AnalysisManagers.h | 3 ++- Framework/Core/include/Framework/AnalysisTask.h | 1 + Framework/Core/include/Framework/TableBuilder.h | 4 +++- Framework/Core/include/Framework/TableTreeHelpers.h | 4 ++++ Framework/Core/src/AODReaderHelpers.cxx | 4 ++-- Framework/Core/src/ASoA.cxx | 10 +++++++++- Framework/Core/src/TableBuilder.cxx | 6 ++++++ Framework/Core/src/TableTreeHelpers.cxx | 8 +++++++- Framework/Core/test/test_ASoA.cxx | 1 + Framework/Core/test/test_IndexBuilder.cxx | 4 ++-- 12 files changed, 48 insertions(+), 11 deletions(-) diff --git a/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx b/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx index 7eec5f1209409..a028e019050bb 100644 --- a/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx +++ b/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx @@ -289,6 +289,7 @@ AlgorithmSpec AODJAlienReaderHelpers::rootFileReaderCallback() // add branches to read // fill the table auto colnames = getColumnNames(dh); + t2t.setLabel(tr->GetName()); if (colnames.size() == 0) { totalSizeCompressed += tr->GetZipBytes(); totalSizeUncompressed += tr->GetTotBytes(); diff --git a/Framework/Core/include/Framework/AnalysisHelpers.h b/Framework/Core/include/Framework/AnalysisHelpers.h index fd04f78b161d1..03dc82d7c326f 100644 --- a/Framework/Core/include/Framework/AnalysisHelpers.h +++ b/Framework/Core/include/Framework/AnalysisHelpers.h @@ -61,6 +61,11 @@ struct WritingCursor> { return true; } + void setLabel(const char* label) + { + mBuilder->setLabel(label); + } + /// reserve @a size rows when filling, so that we do not /// spend time reallocating the buffers. void reserve(int64_t size) @@ -206,7 +211,7 @@ struct Spawns : TableTransform - static auto indexBuilder(framework::pack, Key const&, std::tuple tables) + static auto indexBuilder(const char* label, framework::pack, Key const&, std::tuple tables) { static_assert(sizeof...(Cs) == sizeof...(T) + 1, "Number of columns does not coincide with number of supplied tables"); using tables_t = framework::pack; @@ -264,6 +269,7 @@ struct IndexExclusive { cursor(0, row.globalIndex(), values[framework::has_type_at_v(tables_t{})]...); } } + builder.setLabel(label); return builder.finalize(); } }; @@ -271,7 +277,7 @@ struct IndexExclusive { /// to T1 struct IndexSparse { template - static auto indexBuilder(framework::pack, Key const&, std::tuple tables) + static auto indexBuilder(const char* label, framework::pack, Key const&, std::tuple tables) { static_assert(sizeof...(Cs) == sizeof...(T) + 1, "Number of columns does not coincide with number of supplied tables"); using tables_t = framework::pack; @@ -329,6 +335,7 @@ struct IndexSparse { cursor(0, row.globalIndex(), values[framework::has_type_at_v(tables_t{})]...); } + builder.setLabel(label); return builder.finalize(); } }; @@ -364,7 +371,7 @@ struct Builds : TableTransform::metadata> { template auto build(framework::pack, Key const& key, std::tuple tables) { - this->table = std::make_shared(IP::indexBuilder(framework::pack{}, key, tables)); + this->table = std::make_shared(IP::indexBuilder(aod::MetadataTrait::metadata::tableLabel(), framework::pack{}, key, tables)); return (this->table != nullptr); } }; diff --git a/Framework/Core/include/Framework/AnalysisManagers.h b/Framework/Core/include/Framework/AnalysisManagers.h index b83fc94794edc..77955d9fa3f02 100644 --- a/Framework/Core/include/Framework/AnalysisManagers.h +++ b/Framework/Core/include/Framework/AnalysisManagers.h @@ -152,8 +152,9 @@ struct OutputManager> { what.resetCursor(context.outputs().make(what.ref())); return true; } - static bool finalize(ProcessingContext&, Produces&) + static bool finalize(ProcessingContext&, Produces
& what) { + what.setLabel(o2::aod::MetadataTrait
::metadata::tableLabel()); return true; } static bool postRun(EndOfStreamContext&, Produces
&) diff --git a/Framework/Core/include/Framework/AnalysisTask.h b/Framework/Core/include/Framework/AnalysisTask.h index ce403581627bf..14b5e8b37c3cd 100644 --- a/Framework/Core/include/Framework/AnalysisTask.h +++ b/Framework/Core/include/Framework/AnalysisTask.h @@ -31,6 +31,7 @@ #include #include +#include #include #include #include diff --git a/Framework/Core/include/Framework/TableBuilder.h b/Framework/Core/include/Framework/TableBuilder.h index aef7d184253f1..6215e8ed660bb 100644 --- a/Framework/Core/include/Framework/TableBuilder.h +++ b/Framework/Core/include/Framework/TableBuilder.h @@ -617,6 +617,8 @@ class TableBuilder } public: + void setLabel(const char* label); + TableBuilder(arrow::MemoryPool* pool = arrow::default_memory_pool()) : mHolders{nullptr}, mMemoryPool{pool} @@ -833,7 +835,7 @@ auto spawner(framework::pack columns, arrow::Table* atable, const char* na for (auto i = 0u; i < sizeof...(C); ++i) { arrays.push_back(std::make_shared(chunks[i])); } - + new_schema = new_schema->WithMetadata(std::make_shared(std::vector{std::string{"label"}}, std::vector{std::string{name}})); return arrow::Table::Make(new_schema, arrays); } diff --git a/Framework/Core/include/Framework/TableTreeHelpers.h b/Framework/Core/include/Framework/TableTreeHelpers.h index 307c167c70242..e33f0eb92e6d2 100644 --- a/Framework/Core/include/Framework/TableTreeHelpers.h +++ b/Framework/Core/include/Framework/TableTreeHelpers.h @@ -122,8 +122,12 @@ class TreeToTable private: std::shared_ptr mTable; std::vector mColumnNames; + std::string mTableLabel; public: + // set table label to be added into schema metadata + void setLabel(const char* label); + // add a column to be included in the arrow::table void addColumn(const char* colname); diff --git a/Framework/Core/src/AODReaderHelpers.cxx b/Framework/Core/src/AODReaderHelpers.cxx index fa283ebffe40f..7a67bf458bd8e 100644 --- a/Framework/Core/src/AODReaderHelpers.cxx +++ b/Framework/Core/src/AODReaderHelpers.cxx @@ -108,11 +108,11 @@ AlgorithmSpec AODReaderHelpers::indexBuilderCallback(std::vector requ using index_pack_t = typename metadata_t::index_pack_t; using sources = typename metadata_t::originals; if constexpr (metadata_t::exclusive == true) { - return o2::framework::IndexExclusive::indexBuilder(index_pack_t{}, + return o2::framework::IndexExclusive::indexBuilder(input.binding.c_str(), index_pack_t{}, extractTypedOriginal(pc), extractOriginalsTuple(sources{}, pc)); } else { - return o2::framework::IndexSparse::indexBuilder(index_pack_t{}, + return o2::framework::IndexSparse::indexBuilder(input.binding.c_str(), index_pack_t{}, extractTypedOriginal(pc), extractOriginalsTuple(sources{}, pc)); } diff --git a/Framework/Core/src/ASoA.cxx b/Framework/Core/src/ASoA.cxx index b4abcce128475..8d3ebd7e957b3 100644 --- a/Framework/Core/src/ASoA.cxx +++ b/Framework/Core/src/ASoA.cxx @@ -11,6 +11,8 @@ #include "Framework/ASoA.h" #include "ArrowDebugHelpers.h" +#include "Framework/RuntimeError.h" +#include namespace o2::soa { @@ -21,7 +23,13 @@ std::shared_ptr ArrowHelpers::joinTables(std::vectornum_rows() == tables[i + 1]->num_rows()); + if (tables[i]->num_rows() != tables[i + 1]->num_rows()) { + throw o2::framework::runtime_error_f("Tables %s and %s have different sizes (%d vs %d) and cannot be joined!", + tables[i]->schema()->metadata()->Get("label").ValueOrDie().c_str(), + tables[i + 1]->schema()->metadata()->Get("label").ValueOrDie().c_str(), + tables[i]->num_rows(), + tables[i + 1]->num_rows()); + } } std::vector> fields; std::vector> columns; diff --git a/Framework/Core/src/TableBuilder.cxx b/Framework/Core/src/TableBuilder.cxx index 81a7fb437c88d..92be7cc6e2f9e 100644 --- a/Framework/Core/src/TableBuilder.cxx +++ b/Framework/Core/src/TableBuilder.cxx @@ -21,6 +21,7 @@ #include #include #include +#include #if defined(__GNUC__) #pragma GCC diagnostic pop #endif @@ -74,4 +75,9 @@ void TableBuilder::validate(const int nColumns, std::vector const& } } +void TableBuilder::setLabel(const char* label) +{ + mSchema = mSchema->WithMetadata(std::make_shared(std::vector{std::string{"label"}}, std::vector{std::string{label}})); +} + } // namespace o2::framework diff --git a/Framework/Core/src/TableTreeHelpers.cxx b/Framework/Core/src/TableTreeHelpers.cxx index 6ef513e9b8644..ddf8539f13402 100644 --- a/Framework/Core/src/TableTreeHelpers.cxx +++ b/Framework/Core/src/TableTreeHelpers.cxx @@ -13,6 +13,7 @@ #include "Framework/Logger.h" #include "arrow/type_traits.h" +#include namespace o2::framework { @@ -837,6 +838,11 @@ void ColumnIterator::finish() } } +void TreeToTable::setLabel(const char* label) +{ + mTableLabel = label; +} + void TreeToTable::addColumn(const char* colname) { mColumnNames.push_back(colname); @@ -898,7 +904,7 @@ void TreeToTable::fill(TTree* tree) array_vector.push_back(colit->getArray()); schema_vector.push_back(colit->getSchema()); } - auto fields = std::make_shared(schema_vector); + auto fields = std::make_shared(schema_vector, std::make_shared(std::vector{std::string{"label"}}, std::vector{mTableLabel})); // create the final table // ta is of type std::shared_ptr diff --git a/Framework/Core/test/test_ASoA.cxx b/Framework/Core/test/test_ASoA.cxx index a3ed83fa0c4f0..f3ad2176aba58 100644 --- a/Framework/Core/test/test_ASoA.cxx +++ b/Framework/Core/test/test_ASoA.cxx @@ -22,6 +22,7 @@ #include "arrow/status.h" #include "gandiva/filter.h" #include +#include using namespace o2::framework; using namespace arrow; diff --git a/Framework/Core/test/test_IndexBuilder.cxx b/Framework/Core/test/test_IndexBuilder.cxx index 8fa9eb11e7ae0..351efdead9704 100644 --- a/Framework/Core/test/test_IndexBuilder.cxx +++ b/Framework/Core/test/test_IndexBuilder.cxx @@ -102,7 +102,7 @@ BOOST_AUTO_TEST_CASE(TestIndexBuilder) auto t4 = b4.finalize(); Categorys st4{t4}; - auto t5 = IndexExclusive::indexBuilder(typename IDXs::persistent_columns_t{}, st1, std::tie(st1, st2, st3, st4)); + auto t5 = IndexExclusive::indexBuilder("test1", typename IDXs::persistent_columns_t{}, st1, std::tie(st1, st2, st3, st4)); BOOST_REQUIRE_EQUAL(t5->num_rows(), 4); IDXs idxt{t5}; idxt.bindExternalIndices(&st1, &st2, &st3, &st4); @@ -112,7 +112,7 @@ BOOST_AUTO_TEST_CASE(TestIndexBuilder) BOOST_REQUIRE(row.category().pointId() == row.pointId()); } - auto t6 = IndexSparse::indexBuilder(typename IDX2s::persistent_columns_t{}, st1, std::tie(st2, st1, st3, st4)); + auto t6 = IndexSparse::indexBuilder("test2", typename IDX2s::persistent_columns_t{}, st1, std::tie(st2, st1, st3, st4)); BOOST_REQUIRE_EQUAL(t6->num_rows(), st2.size()); IDXs idxs{t6}; std::array fs{0, 1, 2, -1, -1, 4, -1}; From 2055961fe314ac10fcdf1b8e59882316ce71eae8 Mon Sep 17 00:00:00 2001 From: shahoian Date: Fri, 16 Jul 2021 23:52:13 +0200 Subject: [PATCH 201/314] thread-safe version of Gaussian fit with error extraction --- Common/MathUtils/include/MathUtils/fit.h | 72 +++++++++++++++++++++++- 1 file changed, 71 insertions(+), 1 deletion(-) diff --git a/Common/MathUtils/include/MathUtils/fit.h b/Common/MathUtils/include/MathUtils/fit.h index 3d15f6c4c91c8..c7ae065bf7982 100644 --- a/Common/MathUtils/include/MathUtils/fit.h +++ b/Common/MathUtils/include/MathUtils/fit.h @@ -33,7 +33,8 @@ #include "Fit/Fitter.h" #include "Fit/BinData.h" #include "Math/WrappedMultiTF1.h" - +#include +#include #include "Framework/Logger.h" namespace o2 @@ -264,6 +265,75 @@ Double_t fitGaus(const size_t nBins, const T* arr, const T xMin, const T xMax, s return chi2; } +// more optimal implementation of guassian fit via log-normal fit, appropriate for MT calls +template +double fitGaus(size_t nBins, const T* arr, const T xMin, const T xMax, std::array& param, + ROOT::Math::SMatrix>* covMat = nullptr) +{ + double binW = double(xMax - xMin) / nBins, x = xMin - 0.5 * binW, s0 = 0, s1 = 0, s2 = 0, s3 = 0, s4 = 0, sy0 = 0, sy1 = 0, sy2 = 0, syy = 0; + int np = 0; + for (size_t i = 0; i < nBins; i++) { + x += binW; + auto v = arr[i]; + if (v < 0) { + throw std::runtime_error("Log-normal fit is possible only with non-negative data"); + } + if (v > 0) { + double y = std::log(v), err2i = v, err2iX = err2i, err2iY = err2i * y; + s0 += err2iX; + s1 += (err2iX *= x); + s2 += (err2iX *= x); + s3 += (err2iX *= x); + s4 += (err2iX *= x); + sy0 += err2iY; + syy += err2iY * y; + sy1 += (err2iY *= x); + sy2 += (err2iY *= x); + np++; + } + } + if (np < 1) { + return -10; + } + if (np < 3) { + param[0] = std::exp(sy0 / s0); // recover center of gravity + param[1] = s1 / s0; // mean x; + param[2] = np == 1 ? binW / std::sqrt(12) : std::sqrt(std::abs(param[1] * param[1] - s2 / s0)); + return -np; + } + ROOT::Math::SMatrix> m33{}; + ROOT::Math::SVector v3{sy0, sy1, sy2}; + m33(0, 0) = s0; + m33(1, 0) = s1; + m33(1, 1) = m33(2, 0) = s2; + m33(2, 1) = s3; + m33(2, 2) = s4; + int res = 0; + auto m33i = m33.Inverse(res); + if (res) { + LOG(ERROR) << np << " points collected, matrix inversion failed " << m33; + return -1.; + } + auto v = m33i * v3; + double chi2 = v(0) * v(0) * s0 + v(1) * v(1) * s2 + v(2) * v(2) * s4 + syy + + 2. * (v(0) * v(1) * s1 + v(0) * v(2) * s2 + v(1) * v(2) * s3 - v(0) * sy0 - v(1) * sy1 - v(2) * sy2); + param[1] = -0.5 * v(1) / v(2); + param[2] = 1. / std::sqrt(-2. * v(2)); + param[0] = std::exp(v(0) - param[1] * param[1] * v(2)); + if (covMat) { + // build jacobian of transformation from log-normal to normal params + ROOT::Math::SMatrix> j33{}; + j33(0, 0) = param[0]; + j33(0, 1) = param[0] * param[1]; + j33(0, 2) = j33(0, 1) * param[1]; + j33(1, 1) = -0.5 / v(2); + j33(1, 2) = -param[1] / v(2); + j33(2, 2) = param[2] * j33(1, 1); + *covMat = ROOT::Math::Similarity(j33, m33i); + } + return np > 3 ? chi2 / (np - 3.) : 0.; +} + /// struct for returning statistical parameters /// /// \todo make type templated? From d8cd406c80d02b5f3179d3e0f91599b31acf36cd Mon Sep 17 00:00:00 2001 From: dsekihat Date: Sat, 17 Jul 2021 23:17:14 +0900 Subject: [PATCH 202/314] Analysis/PWGDQ: merge v0selector in DQ (#6634) * Analysis/PWGDQ: merge v0selector in DQ * Analysis/PWGDQ: remove unnecessary lines --- .../AnalysisDataModel/ReducedInfoTables.h | 13 ++++++++++ .../PWGDQ/include/PWGDQCore/CutsLibrary.h | 24 +++++++++++++++++++ Analysis/PWGDQ/include/PWGDQCore/VarManager.h | 11 +++++++++ Analysis/PWGDQ/src/VarManager.cxx | 10 ++++++++ Analysis/Tasks/PWGDQ/tableMaker.cxx | 24 ++++++++++++++++--- Analysis/Tasks/PWGDQ/v0selector.cxx | 20 +++------------- 6 files changed, 82 insertions(+), 20 deletions(-) diff --git a/Analysis/DataModel/include/AnalysisDataModel/ReducedInfoTables.h b/Analysis/DataModel/include/AnalysisDataModel/ReducedInfoTables.h index 6cfa8a79a71f9..5bf5bc20414ee 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/ReducedInfoTables.h +++ b/Analysis/DataModel/include/AnalysisDataModel/ReducedInfoTables.h @@ -201,6 +201,19 @@ using ReducedMuon = ReducedMuons::iterator; using ReducedMuonExtra = ReducedMuonsExtra::iterator; using ReducedMuonCov = ReducedMuonsCov::iterator; using Dilepton = Dileptons::iterator; + +namespace v0bits +{ +DECLARE_SOA_COLUMN(PIDBit, pidbit, uint8_t); //! +} // namespace v0bits + +// bit information for particle species. +DECLARE_SOA_TABLE(V0Bits, "AOD", "V0BITS", //! + v0bits::PIDBit); + +// iterators +using V0Bit = V0Bits::iterator; + } // namespace o2::aod #endif // O2_Analysis_ReducedInfoTables_H_ diff --git a/Analysis/PWGDQ/include/PWGDQCore/CutsLibrary.h b/Analysis/PWGDQ/include/PWGDQCore/CutsLibrary.h index db6575323bcaf..adcf3e2a26436 100644 --- a/Analysis/PWGDQ/include/PWGDQCore/CutsLibrary.h +++ b/Analysis/PWGDQ/include/PWGDQCore/CutsLibrary.h @@ -66,6 +66,20 @@ AnalysisCompositeCut* o2::aod::dqcuts::GetCompositeCut(const char* cutName) return cut; } + if (!nameStr.compare("PIDCalib")) { + cut->AddCut(GetAnalysisCut("PIDStandardKine")); // standard kine cuts usually are applied via Filter in the task + cut->AddCut(GetAnalysisCut("electronStandardQuality")); + cut->AddCut(GetAnalysisCut("standardPrimaryTrack")); + cut->AddCut(GetAnalysisCut("pidcalib_ele")); + return cut; + } + if (!nameStr.compare("NoPID")) { + cut->AddCut(GetAnalysisCut("PIDStandardKine")); // standard kine cuts usually are applied via Filter in the task + cut->AddCut(GetAnalysisCut("electronStandardQuality")); + cut->AddCut(GetAnalysisCut("standardPrimaryTrack")); + return cut; + } + //--------------------------------------------------------------------------------------- // NOTE: Below there are several TPC pid cuts used for studies of the dE/dx degradation // and its impact on the high lumi pp quarkonia triggers @@ -281,6 +295,11 @@ AnalysisCut* o2::aod::dqcuts::GetAnalysisCut(const char* cutName) cut->AddCut(VarManager::kEta, -0.8, 0.8); return cut; } + if (!nameStr.compare("PIDStandardKine")) { + cut->AddCut(VarManager::kPt, 0.1, 1000.0); + cut->AddCut(VarManager::kEta, -0.9, 0.9); + return cut; + } if (!nameStr.compare("TightGlobalTrack")) { cut->AddCut(VarManager::kIsSPDfirst, 0.5, 1.5); @@ -415,6 +434,11 @@ AnalysisCut* o2::aod::dqcuts::GetAnalysisCut(const char* cutName) return cut; } + if (!nameStr.compare("pidcalib_ele")) { + cut->AddCut(VarManager::kIsLegFromGamma, 0.5, 1.5, false); + return cut; + } + if (!nameStr.compare("muonQualityCuts")) { cut->AddCut(VarManager::kEta, -4.0, -2.5); cut->AddCut(VarManager::kMuonRAtAbsorberEnd, 17.6, 89.5); diff --git a/Analysis/PWGDQ/include/PWGDQCore/VarManager.h b/Analysis/PWGDQ/include/PWGDQCore/VarManager.h index 3590ff1908425..81a4fa8049081 100644 --- a/Analysis/PWGDQ/include/PWGDQCore/VarManager.h +++ b/Analysis/PWGDQ/include/PWGDQCore/VarManager.h @@ -180,6 +180,11 @@ class VarManager : public TObject kTOFnSigmaPi, kTOFnSigmaKa, kTOFnSigmaPr, + kIsLegFromGamma, + kIsLegFromK0S, + kIsLegFromLambda, + kIsLegFromAntiLambda, + kIsLegFromOmega, kNBarrelTrackVariables, // Muon track variables @@ -488,6 +493,12 @@ void VarManager::FillTrack(T const& track, float* values) if constexpr ((fillMap & ReducedTrack) > 0 && !((fillMap & Pair) > 0)) { values[kIsGlobalTrack] = track.filteringFlags() & (uint64_t(1) << 0); values[kIsGlobalTrackSDD] = track.filteringFlags() & (uint64_t(1) << 1); + + values[kIsLegFromGamma] = bool(track.filteringFlags() & (uint64_t(1) << 2)); + values[kIsLegFromK0S] = bool(track.filteringFlags() & (uint64_t(1) << 3)); + values[kIsLegFromLambda] = bool(track.filteringFlags() & (uint64_t(1) << 4)); + values[kIsLegFromAntiLambda] = bool(track.filteringFlags() & (uint64_t(1) << 5)); + values[kIsLegFromOmega] = bool(track.filteringFlags() & (uint64_t(1) << 6)); } } diff --git a/Analysis/PWGDQ/src/VarManager.cxx b/Analysis/PWGDQ/src/VarManager.cxx index 46220b68dc27b..b39d4e352121b 100644 --- a/Analysis/PWGDQ/src/VarManager.cxx +++ b/Analysis/PWGDQ/src/VarManager.cxx @@ -216,6 +216,16 @@ void VarManager::SetDefaultVarNames() fgVariableUnits[kTOFnSigmaKa] = ""; fgVariableNames[kTOFnSigmaPr] = "n #sigma_{p}^{TOF}"; fgVariableUnits[kTOFnSigmaPr] = ""; + fgVariableNames[kIsLegFromGamma] = "is leg from #gamma #rightarror e^{+}e^{-}"; + fgVariableUnits[kIsLegFromGamma] = ""; + fgVariableNames[kIsLegFromK0S] = "is leg from K_{S}^{0} #rightarror #pi^{+}#pi^{-}"; + fgVariableUnits[kIsLegFromK0S] = ""; + fgVariableNames[kIsLegFromLambda] = "is leg from #Lambda #rightarror p#pi^{-}"; + fgVariableUnits[kIsLegFromLambda] = ""; + fgVariableNames[kIsLegFromAntiLambda] = "is leg from #bar{#Lambda} #rightarrow #bar{p}#pi^{+}"; + fgVariableUnits[kIsLegFromAntiLambda] = ""; + fgVariableNames[kIsLegFromOmega] = "is leg from #Omega^{#mp} #rightarrow #LambdaKi^{#pm}"; + fgVariableUnits[kIsLegFromOmega] = ""; fgVariableNames[kMuonNClusters] = "muon n-clusters"; fgVariableUnits[kMuonNClusters] = ""; fgVariableNames[kMuonRAtAbsorberEnd] = "R at the end of the absorber"; diff --git a/Analysis/Tasks/PWGDQ/tableMaker.cxx b/Analysis/Tasks/PWGDQ/tableMaker.cxx index b1d22e396c496..c3a977c143c78 100644 --- a/Analysis/Tasks/PWGDQ/tableMaker.cxx +++ b/Analysis/Tasks/PWGDQ/tableMaker.cxx @@ -50,7 +50,7 @@ using MyBarrelTracks = soa::Join; + aod::pidTOFFullKa, aod::pidTOFFullPr, aod::pidTOFbeta, aod::V0Bits>; using MyEvents = soa::Join; using MyEventsNoCent = soa::Join; //using MyMuons = aod::Muons; @@ -187,6 +187,24 @@ struct TableMaker { if (track.isGlobalTrackSDD()) { trackFilteringTag |= (uint64_t(1) << 1); } + + //printf("track.pidbit() = %d\n",track.pidbit()); + if (bool(track.pidbit() & (1 << 0))) { //gamma->ee + trackFilteringTag |= (uint64_t(1) << 2); + } + if (bool(track.pidbit() & (1 << 1))) { //K0S->pipi + trackFilteringTag |= (uint64_t(1) << 3); + } + if (bool(track.pidbit() & (1 << 2))) { //Lambda->p pi- + trackFilteringTag |= (uint64_t(1) << 4); + } + if (bool(track.pidbit() & (1 << 3))) { //AntiLambda->bar{p} pi+ + trackFilteringTag |= (uint64_t(1) << 5); + } + if (bool(track.pidbit() & (1 << 4))) { //Omega->Lambda K + trackFilteringTag |= (uint64_t(1) << 6); + } + trackBasic(event.lastIndex(), track.globalIndex(), trackFilteringTag, track.pt(), track.eta(), track.phi(), track.sign()); trackBarrel(track.tpcInnerParam(), track.flags(), track.itsClusterMap(), track.itsChi2NCl(), track.tpcNClsFindable(), track.tpcNClsFindableMinusFound(), track.tpcNClsFindableMinusCrossedRows(), @@ -220,8 +238,8 @@ struct TableMaker { muonBasic(event.lastIndex(), trackFilteringTag, muon.pt(), muon.eta(), muon.phi(), muon.sign()); muonExtra(muon.nClusters(), muon.pDca(), muon.rAtAbsorberEnd(), - muon.chi2(), muon.chi2MatchMCHMID(), muon.chi2MatchMCHMFT(), - muon.matchScoreMCHMFT(), muon.matchMFTTrackID(), muon.matchMCHTrackID()); + muon.chi2(), muon.chi2MatchMCHMID(), muon.chi2MatchMCHMFT(), + muon.matchScoreMCHMFT(), muon.matchMFTTrackID(), muon.matchMCHTrackID()); muonCov(muon.x(), muon.y(), muon.z(), muon.phi(), muon.tgl(), muon.signed1Pt(), muon.cXX(), muon.cXY(), muon.cYY(), muon.cPhiX(), muon.cPhiY(), muon.cPhiPhi(), muon.cTglX(), muon.cTglY(), muon.cTglPhi(), muon.cTglTgl(), muon.c1PtX(), muon.c1PtY(), diff --git a/Analysis/Tasks/PWGDQ/v0selector.cxx b/Analysis/Tasks/PWGDQ/v0selector.cxx index aaaf3acb358e6..986f029d0fe61 100644 --- a/Analysis/Tasks/PWGDQ/v0selector.cxx +++ b/Analysis/Tasks/PWGDQ/v0selector.cxx @@ -34,6 +34,7 @@ #include "AnalysisDataModel/Centrality.h" #include "AnalysisCore/RecoDecay.h" #include "DetectorsVertexing/DCAFitterN.h" +#include "AnalysisDataModel/ReducedInfoTables.h" #include #include @@ -71,18 +72,6 @@ DECLARE_SOA_TABLE(ReducedV0s, "AOD", "REDUCEDV0", //! // iterators using ReducedV0 = ReducedV0s::iterator; -namespace v0bits -{ -DECLARE_SOA_COLUMN(PIDBit, pidbit, uint8_t); //! -} // namespace v0bits - -// basic track information -DECLARE_SOA_TABLE(V0Bits, "AOD", "V0BITS", //! - o2::soa::Index<>, v0bits::PIDBit); - -// iterators -using V0Bit = V0Bits::iterator; - } // namespace o2::aod struct v0selector { @@ -96,8 +85,8 @@ struct v0selector { kOmega = 4 }; - Produces v0Gamma; - Produces v0bits; + Produces v0Gamma; + Produces v0bits; float alphav0(const array& ppos, const array& pneg) { @@ -682,7 +671,6 @@ struct trackPIDQA { void process(soa::Join::iterator const& collision, soa::Join const& tracks) { - //printf("begining of process\n"); registry.fill(HIST("hEventCounter"), 1.0); //all if (!collision.alias()[kINT7]) { @@ -764,7 +752,6 @@ struct v0gammaQA { void process(soa::Join::iterator const& collision, aod::ReducedV0s const& v0Gammas) { - //printf("begining of process\n"); registry.fill(HIST("hEventCounter"), 1.0); //all if (!collision.alias()[kINT7]) { @@ -779,7 +766,6 @@ struct v0gammaQA { } for (auto& [g1, g2] : combinations(v0Gammas, v0Gammas)) { - //printf("fill 2 gammas\n"); ROOT::Math::PtEtaPhiMVector v1(g1.pt(), g1.eta(), g1.phi(), g1.mass()); ROOT::Math::PtEtaPhiMVector v2(g2.pt(), g2.eta(), g2.phi(), g2.mass()); ROOT::Math::PtEtaPhiMVector v12 = v1 + v2; From 1179c2a6787a7a7c38c1486cad5e4886194406d9 Mon Sep 17 00:00:00 2001 From: Andrey Erokhin Date: Fri, 16 Jul 2021 22:10:50 +0000 Subject: [PATCH 203/314] TPCReconstruction: Fix typo --- .../include/TPCReconstruction/DigitalCurrentClusterIntegrator.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/DigitalCurrentClusterIntegrator.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/DigitalCurrentClusterIntegrator.h index e1b597e3dab2e..c437f0d162526 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/DigitalCurrentClusterIntegrator.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/DigitalCurrentClusterIntegrator.h @@ -44,7 +44,7 @@ class DigitalCurrentClusterIntegrator } void integrateCluster(int sector, int row, float pad, unsigned int charge) { - int ipad = ipad + 0.5; + int ipad = pad + 0.5; if (ipad < 0) { ipad = 0; } From 91ec538cf1036e86efbe58845f78196a2ba80c73 Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Sun, 18 Jul 2021 09:32:55 +0300 Subject: [PATCH 204/314] MatchTPCITS: fix leftover declaration of variable See dc091dba2e910273d38d0a4dac48963b427f2adf which tried to move the declaration of itsROBin out of the loop --- Detectors/GlobalTracking/src/MatchTPCITS.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/GlobalTracking/src/MatchTPCITS.cxx b/Detectors/GlobalTracking/src/MatchTPCITS.cxx index e77d6a17aeecf..c474d7b43f485 100644 --- a/Detectors/GlobalTracking/src/MatchTPCITS.cxx +++ b/Detectors/GlobalTracking/src/MatchTPCITS.cxx @@ -891,7 +891,7 @@ void MatchTPCITS::doMatching(int sec) // estimate ITS 1st ROframe bin this track may match to: TPC track are sorted according to their // timeMax, hence the timeMax - MaxmNTPCBinsFullDrift are non-decreasing auto tmn = trefTPC.tBracket.getMax() - maxTDriftSafe; - int itsROBin = mITSTriggered ? time2ITSROFrameTrig(tmn, itsROBin) : time2ITSROFrameCont(tmn); + itsROBin = mITSTriggered ? time2ITSROFrameTrig(tmn, itsROBin) : time2ITSROFrameCont(tmn); if (itsROBin >= int(timeStartITS.size())) { // time of TPC track exceeds the max time of ITS in the cache break; From 0ae0acfa29949b17a17ad041066e49130e9822bf Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Sun, 18 Jul 2021 05:28:59 +0300 Subject: [PATCH 205/314] Remove leftover count increment Looks like it was forgotten when the code switched from range-based for loops b1d7bff365b78cbde6b087376b7704f3d9d6e744 std::string records; seems to have never been used --- Detectors/TRD/reconstruction/src/EventRecord.cxx | 3 --- 1 file changed, 3 deletions(-) diff --git a/Detectors/TRD/reconstruction/src/EventRecord.cxx b/Detectors/TRD/reconstruction/src/EventRecord.cxx index 199d48e1ff124..3f7db8f403505 100644 --- a/Detectors/TRD/reconstruction/src/EventRecord.cxx +++ b/Detectors/TRD/reconstruction/src/EventRecord.cxx @@ -243,11 +243,8 @@ std::vector& EventStorage::getDigits(InteractionRecord& ir) void EventStorage::printIR() { - std::string records; - int count = 0; for (int count = 0; count < mEventRecords.size(); ++count) { LOG(info) << "[" << count << "]" << mEventRecords[count].getBCData() << " "; - count++; } } From 8bbbf67c44f5b807438e3fe5e4efb0e642dd3242 Mon Sep 17 00:00:00 2001 From: shahoian Date: Sun, 18 Jul 2021 14:21:11 +0200 Subject: [PATCH 206/314] fix abs to std::abs in CaloRawFitterGS.cxx --- Detectors/PHOS/reconstruction/src/CaloRawFitterGS.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/PHOS/reconstruction/src/CaloRawFitterGS.cxx b/Detectors/PHOS/reconstruction/src/CaloRawFitterGS.cxx index 11b9a423c6f79..7dcf11b703be7 100644 --- a/Detectors/PHOS/reconstruction/src/CaloRawFitterGS.cxx +++ b/Detectors/PHOS/reconstruction/src/CaloRawFitterGS.cxx @@ -302,7 +302,7 @@ CaloRawFitterGS::FitStatus CaloRawFitterGS::evalFit(gsl::span Date: Sun, 18 Jul 2021 14:23:13 +0200 Subject: [PATCH 207/314] use reference instead of copy in the loop, CTP/Configuration --- DataFormats/Detectors/CTP/src/Configuration.cxx | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/DataFormats/Detectors/CTP/src/Configuration.cxx b/DataFormats/Detectors/CTP/src/Configuration.cxx index a59eb28386ad3..7050ded394240 100644 --- a/DataFormats/Detectors/CTP/src/Configuration.cxx +++ b/DataFormats/Detectors/CTP/src/Configuration.cxx @@ -258,27 +258,27 @@ void CTPConfiguration::printStream(std::ostream& stream) const { stream << "Configuration:" << mName << "\n Version:" << mVersion << std::endl; stream << "CTP BC masks:" << std::endl; - for (const auto i : mBCMasks) { + for (const auto& i : mBCMasks) { i.printStream(stream); } stream << "CTP inputs:" << std::endl; - for (const auto i : mInputs) { + for (const auto& i : mInputs) { i.printStream(stream); } stream << "CTP descriptors:" << std::endl; - for (const auto i : mDescriptors) { + for (const auto& i : mDescriptors) { i.printStream(stream); } stream << "CTP detectors:" << std::endl; - for (const auto i : mDetectors) { + for (const auto& i : mDetectors) { i.printStream(stream); } stream << "CTP clusters:" << std::endl; - for (const auto i : mClusters) { + for (const auto& i : mClusters) { i.printStream(stream); } stream << "CTP classes:" << std::endl; - for (const auto i : mCTPClasses) { + for (const auto& i : mCTPClasses) { i.printStream(stream); } } From 69224f0d2114279752d8aeab70104fdd946c45f2 Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Sun, 18 Jul 2021 17:07:59 +0300 Subject: [PATCH 208/314] DPL GUI: Fix format specifiers for (u)int64_t (#6662) --- Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx b/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx index eb948abb06f93..02f4a78e57234 100644 --- a/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx +++ b/Framework/GUISupport/src/FrameworkGUIDeviceInspector.cxx @@ -21,6 +21,7 @@ #include "Framework/DeviceController.h" #include "DebugGUI/imgui.h" +#include #include #include #include @@ -123,7 +124,7 @@ void optionsTable(const char* label, std::vector const& options ImGui::Text("%d (default)", option.defaultValue.get()); break; case VariantType::Int64: - ImGui::Text("%lld (default)", option.defaultValue.get()); + ImGui::Text("%" PRId64 " (default)", option.defaultValue.get()); break; case VariantType::UInt8: ImGui::Text("%d (default)", option.defaultValue.get()); @@ -135,7 +136,7 @@ void optionsTable(const char* label, std::vector const& options ImGui::Text("%d (default)", option.defaultValue.get()); break; case VariantType::UInt64: - ImGui::Text("%lld (default)", option.defaultValue.get()); + ImGui::Text("%" PRIu64 " (default)", option.defaultValue.get()); break; case VariantType::Float: ImGui::Text("%f (default)", option.defaultValue.get()); From 270a4a7e44e69ee22f147d4f1605ef98257a320c Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Mon, 19 Jul 2021 08:16:47 +0300 Subject: [PATCH 209/314] Do not ignore O2_BUILTIN_(UN)LIKELY parameter (#6671) --- Framework/Foundation/include/Framework/CompilerBuiltins.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Framework/Foundation/include/Framework/CompilerBuiltins.h b/Framework/Foundation/include/Framework/CompilerBuiltins.h index dade9fc8cc000..8906cdcacc332 100644 --- a/Framework/Foundation/include/Framework/CompilerBuiltins.h +++ b/Framework/Foundation/include/Framework/CompilerBuiltins.h @@ -29,8 +29,8 @@ #define O2_BUILTIN_LIKELY(x) __builtin_expect((x), 1) #define O2_BUILTIN_UNLIKELY(x) __builtin_expect((x), 0) #else -#define O2_BUILTIN_LIKELY(x) -#define O2_BUILTIN_UNLIKELY(x) +#define O2_BUILTIN_LIKELY(x) (x) +#define O2_BUILTIN_UNLIKELY(x) (x) #endif #if __GNUC__ From 6a9574d94c5213c629c4df2da276ff1d0845ab6d Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Mon, 19 Jul 2021 08:25:53 +0300 Subject: [PATCH 210/314] Add va_end (#6667) --- Framework/Foundation/src/RuntimeError.cxx | 1 + 1 file changed, 1 insertion(+) diff --git a/Framework/Foundation/src/RuntimeError.cxx b/Framework/Foundation/src/RuntimeError.cxx index 8848595a23924..6cdfbe10b3dda 100644 --- a/Framework/Foundation/src/RuntimeError.cxx +++ b/Framework/Foundation/src/RuntimeError.cxx @@ -62,6 +62,7 @@ RuntimeErrorRef runtime_error_f(const char* format, ...) va_list args; va_start(args, format); vsnprintf(gError[i].what, RuntimeError::MAX_RUNTIME_ERROR_SIZE, format, args); + va_end(args); gError[i].maxBacktrace = canDumpBacktrace() ? backtrace(gError[i].backtrace, RuntimeError::MAX_BACKTRACE_SIZE) : 0; return RuntimeErrorRef{i}; } From 6af9b8a940cbba220f6148a247d0ac56eb2a39cb Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Mon, 19 Jul 2021 10:03:52 +0300 Subject: [PATCH 211/314] Jet code: Prevent expensive copying (#6665) --- Analysis/Tasks/PWGJE/jetsubstructure.cxx | 4 ++-- Analysis/Tasks/SkimmingTutorials/jetProvider.cxx | 4 ++-- Analysis/Tasks/SkimmingTutorials/jetSpectraAnalyser.cxx | 2 +- Analysis/Tasks/SkimmingTutorials/jetSpectraReference.cxx | 4 ++-- Analysis/Tutorials/src/jetAnalysis.cxx | 2 +- 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/Analysis/Tasks/PWGJE/jetsubstructure.cxx b/Analysis/Tasks/PWGJE/jetsubstructure.cxx index 4213603acbaba..01f6dbec7a793 100644 --- a/Analysis/Tasks/PWGJE/jetsubstructure.cxx +++ b/Analysis/Tasks/PWGJE/jetsubstructure.cxx @@ -79,11 +79,11 @@ struct JetSubstructure { jetConstituents.clear(); jetReclustered.clear(); if (b_DoConstSub) { - for (const auto constituent : constituentsSub) { + for (const auto& constituent : constituentsSub) { fillConstituents(constituent, jetConstituents); } } else { - for (const auto constituentIndex : constituents) { + for (const auto& constituentIndex : constituents) { auto constituent = constituentIndex.track(); fillConstituents(constituent, jetConstituents); } diff --git a/Analysis/Tasks/SkimmingTutorials/jetProvider.cxx b/Analysis/Tasks/SkimmingTutorials/jetProvider.cxx index e67bdd9638e78..e7499a6a0bdf8 100644 --- a/Analysis/Tasks/SkimmingTutorials/jetProvider.cxx +++ b/Analysis/Tasks/SkimmingTutorials/jetProvider.cxx @@ -45,12 +45,12 @@ struct JetProviderTask { if (keepConstituents) { if (DoConstSub) { outputConstituents.reserve(constituentsSub.size()); - for (const auto constituent : constituentsSub) { + for (const auto& constituent : constituentsSub) { outputConstituents(outputJets.lastIndex(), constituent.pt(), constituent.eta(), constituent.phi()); } } else { outputConstituents.reserve(constituents.size()); - for (const auto constituentIndex : constituents) { + for (const auto& constituentIndex : constituents) { auto constituent = constituentIndex.track(); outputConstituents(outputJets.lastIndex(), constituent.pt(), constituent.eta(), constituent.phi()); } diff --git a/Analysis/Tasks/SkimmingTutorials/jetSpectraAnalyser.cxx b/Analysis/Tasks/SkimmingTutorials/jetSpectraAnalyser.cxx index 72af633027093..6f17e8960a884 100644 --- a/Analysis/Tasks/SkimmingTutorials/jetSpectraAnalyser.cxx +++ b/Analysis/Tasks/SkimmingTutorials/jetSpectraAnalyser.cxx @@ -46,7 +46,7 @@ struct JetSpectraAnalyser { { registry.fill(HIST("hJetPt"), jet.pt()); registry.fill(HIST("hNJetConstituents"), constituents.size()); - for (const auto constituent : constituents) { + for (const auto& constituent : constituents) { registry.fill(HIST("hConstituentPt"), constituent.pt()); } } diff --git a/Analysis/Tasks/SkimmingTutorials/jetSpectraReference.cxx b/Analysis/Tasks/SkimmingTutorials/jetSpectraReference.cxx index 7a1985d03d3c3..ceb7175334636 100644 --- a/Analysis/Tasks/SkimmingTutorials/jetSpectraReference.cxx +++ b/Analysis/Tasks/SkimmingTutorials/jetSpectraReference.cxx @@ -51,12 +51,12 @@ struct JetSpectraReference { registry.fill(HIST("hJetPt"), jet.pt()); if (b_DoConstSub) { registry.fill(HIST("hNJetConstituents"), constituentsSub.size()); - for (const auto constituent : constituentsSub) { + for (const auto& constituent : constituentsSub) { registry.fill(HIST("hConstituentPt"), constituent.pt()); } } else { registry.fill(HIST("hNJetConstituents"), constituents.size()); - for (const auto constituentIndex : constituents) { + for (const auto& constituentIndex : constituents) { auto constituent = constituentIndex.track(); registry.fill(HIST("hConstituentPt"), constituent.pt()); } diff --git a/Analysis/Tutorials/src/jetAnalysis.cxx b/Analysis/Tutorials/src/jetAnalysis.cxx index 15543075ed903..501c8c332b5b2 100644 --- a/Analysis/Tutorials/src/jetAnalysis.cxx +++ b/Analysis/Tutorials/src/jetAnalysis.cxx @@ -38,7 +38,7 @@ struct JetAnalysis { aod::JetConstituents const& constituents, aod::Tracks const& tracks) { hJetPt->Fill(jet.pt()); - for (const auto c : constituents) { + for (const auto& c : constituents) { LOGF(DEBUG, "jet %d: track id %d, track pt %g", jet.index(), c.trackId(), c.track().pt()); hConstPt->Fill(c.track().pt()); } From b30a97d62a7e7d030d6839201f5a21c636df8482 Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Mon, 19 Jul 2021 10:52:12 +0300 Subject: [PATCH 212/314] Remove dangling throw (#6669) --- Detectors/MUON/MCH/Raw/Common/src/SampaHeader.cxx | 2 -- 1 file changed, 2 deletions(-) diff --git a/Detectors/MUON/MCH/Raw/Common/src/SampaHeader.cxx b/Detectors/MUON/MCH/Raw/Common/src/SampaHeader.cxx index aedac48ff4fac..e5db6c93643a8 100644 --- a/Detectors/MUON/MCH/Raw/Common/src/SampaHeader.cxx +++ b/Detectors/MUON/MCH/Raw/Common/src/SampaHeader.cxx @@ -68,8 +68,6 @@ struct CHECKNOFBITS { } if (PARITY_NOFBITS != 1) { throw std::invalid_argument(fmt::format("PARITY_NOFBITS is {0}. Should be 1", PARITY_NOFBITS)); - - throw; } } }; From 4d3195ec7efb96589fc329732474ade3e7aa85dc Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Mon, 19 Jul 2021 10:55:00 +0300 Subject: [PATCH 213/314] Silence a potentially unused variable warning (#6651) Not sure if the warning is legit, but it's clear enough what one would need to look into. --- Framework/Core/include/Framework/TableBuilder.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Framework/Core/include/Framework/TableBuilder.h b/Framework/Core/include/Framework/TableBuilder.h index 6215e8ed660bb..b5eb8e19fadf5 100644 --- a/Framework/Core/include/Framework/TableBuilder.h +++ b/Framework/Core/include/Framework/TableBuilder.h @@ -790,7 +790,7 @@ template auto makeEmptyTable() { TableBuilder b; - auto writer = b.cursor(); + [[maybe_unused]] auto writer = b.cursor(); return b.finalize(); } From 296b6c422845592e02fad46dd21239990809173b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Jacazio?= Date: Mon, 19 Jul 2021 11:43:13 +0200 Subject: [PATCH 214/314] PWGPP: Update efficiency task (#6656) - Add efficiency of nuclei - Add plots of selection - Fix selection of PDG --- Analysis/Tasks/PWGPP/qaEfficiency.cxx | 178 +++++++++++++++++--------- 1 file changed, 117 insertions(+), 61 deletions(-) diff --git a/Analysis/Tasks/PWGPP/qaEfficiency.cxx b/Analysis/Tasks/PWGPP/qaEfficiency.cxx index dedad9adc4545..b1956dcdd42d5 100644 --- a/Analysis/Tasks/PWGPP/qaEfficiency.cxx +++ b/Analysis/Tasks/PWGPP/qaEfficiency.cxx @@ -30,7 +30,9 @@ void customize(std::vector& workflowOptions) {"eff-mu", VariantType::Int, 1, {"Efficiency for the Muon PDG code"}}, {"eff-pi", VariantType::Int, 1, {"Efficiency for the Pion PDG code"}}, {"eff-ka", VariantType::Int, 1, {"Efficiency for the Kaon PDG code"}}, - {"eff-pr", VariantType::Int, 1, {"Efficiency for the Proton PDG code"}}}; + {"eff-pr", VariantType::Int, 1, {"Efficiency for the Proton PDG code"}}, + {"eff-de", VariantType::Int, 0, {"Efficiency for the Deuteron PDG code"}}, + {"eff-he", VariantType::Int, 0, {"Efficiency for the Helium3 PDG code"}}}; std::swap(workflowOptions, options); } @@ -60,12 +62,13 @@ void makelogaxis(T h) h->GetXaxis()->Set(nbins, binp); } -/// Task to QA the efficiency of a particular particle defined by particlePDG +/// Task to QA the efficiency of a particular particle defined by its pdg code template struct QaTrackingEfficiency { - static constexpr PDG_t PDGs[5] = {kElectron, kMuonMinus, kPiPlus, kKPlus, kProton}; - static_assert(particle < 5 && "Maximum of particles reached"); - static constexpr int particlePDG = PDGs[particle]; + static constexpr int nSpecies = 8; + static constexpr int PDGs[nSpecies] = {kElectron, kMuonMinus, kPiPlus, kKPlus, kProton, 1000010020, 1000010030, 1000020030}; + static_assert(particle < nSpecies && "Maximum of particles reached"); + static constexpr int pdg = PDGs[particle]; // Particle selection Configurable etaMin{"eta-min", -3.f, "Lower limit in eta"}; Configurable etaMax{"eta-max", 3.f, "Upper limit in eta"}; @@ -95,44 +98,64 @@ struct QaTrackingEfficiency { { if (pdgSign != 0 && pdgSign != 1 && pdgSign != -1) { LOG(FATAL) << "Provide pdgSign as 0, 1, -1. Provided: " << pdgSign.value; - return; } const TString tagPt = Form("%s #it{#eta} [%.2f,%.2f] #it{#varphi} [%.2f,%.2f] Prim %i", o2::track::pid_constants::sNames[particle], etaMin.value, etaMax.value, phiMin.value, phiMax.value, selPrim.value); - const TString xPt = "#it{p}_{T} (GeV/#it{c})"; - AxisSpec axisPt{ptBins, ptMin, ptMax}; + const AxisSpec axisPt{ptBins, ptMin, ptMax, "#it{p}_{T} (GeV/#it{c})"}; const TString tagEta = Form("%s #it{p}_{T} [%.2f,%.2f] #it{#varphi} [%.2f,%.2f] Prim %i", o2::track::pid_constants::sNames[particle], ptMin.value, ptMax.value, phiMin.value, phiMax.value, selPrim.value); - const TString xEta = "#it{#eta}"; - AxisSpec axisEta{etaBins, etaMin, etaMax}; + const AxisSpec axisEta{etaBins, etaMin, etaMax, "#it{#eta}"}; const TString tagPhi = Form("%s #it{#eta} [%.2f,%.2f] #it{p}_{T} [%.2f,%.2f] Prim %i", o2::track::pid_constants::sNames[particle], etaMin.value, etaMax.value, ptMin.value, ptMax.value, selPrim.value); - const TString xPhi = "#it{#varphi} (rad)"; - AxisSpec axisPhi{phiBins, phiMin, phiMax}; + const AxisSpec axisPhi{phiBins, phiMin, phiMax, "#it{#varphi} (rad)"}; - histos.add("pt/num", "Numerator " + tagPt + ";" + xPt, kTH1D, {axisPt}); - histos.add("pt/den", "Denominator " + tagPt + ";" + xPt, kTH1D, {axisPt}); + const AxisSpec axisSel{9, 0.5, 9.5, "Selection"}; + histos.add("eventSelection", "Event Selection", kTH1D, {axisSel}); + histos.get(HIST("eventSelection"))->GetXaxis()->SetBinLabel(1, "Events read"); + histos.get(HIST("eventSelection"))->GetXaxis()->SetBinLabel(2, "Passed Contrib."); + histos.get(HIST("eventSelection"))->GetXaxis()->SetBinLabel(3, "Passed Position"); + + histos.add("trackSelection", "Track Selection", kTH1D, {axisSel}); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(1, "Tracks read"); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(2, "Passed #it{p}_{T}"); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(3, "Passed #it{#eta}"); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(4, "Passed #it{#varphi}"); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(5, "Passed Prim."); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(6, Form("Passed PDG %i", pdg)); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(7, "Passed Fake"); + + histos.add("partSelection", "Particle Selection", kTH1D, {axisSel}); + histos.get(HIST("partSelection"))->GetXaxis()->SetBinLabel(1, "Particles read"); + histos.get(HIST("partSelection"))->GetXaxis()->SetBinLabel(2, "Passed Ev. Reco."); + histos.get(HIST("partSelection"))->GetXaxis()->SetBinLabel(3, "Passed #it{p}_{T}"); + histos.get(HIST("partSelection"))->GetXaxis()->SetBinLabel(4, "Passed #it{#eta}"); + histos.get(HIST("partSelection"))->GetXaxis()->SetBinLabel(5, "Passed #it{#varphi}"); + histos.get(HIST("partSelection"))->GetXaxis()->SetBinLabel(6, "Passed Prim."); + histos.get(HIST("partSelection"))->GetXaxis()->SetBinLabel(7, Form("Passed PDG %i", pdg)); + + histos.add("pt/num", "Numerator " + tagPt, kTH1D, {axisPt}); + histos.add("pt/den", "Denominator " + tagPt, kTH1D, {axisPt}); if (logPt) { makelogaxis(histos.get(HIST("pt/num"))); makelogaxis(histos.get(HIST("pt/den"))); } - histos.add("eta/num", "Numerator " + tagEta + ";" + xEta, kTH1D, {axisEta}); - histos.add("eta/den", "Denominator " + tagEta + ";" + xEta, kTH1D, {axisEta}); + histos.add("eta/num", "Numerator " + tagEta, kTH1D, {axisEta}); + histos.add("eta/den", "Denominator " + tagEta, kTH1D, {axisEta}); - histos.add("phi/num", "Numerator " + tagPhi + ";" + xPhi, kTH1D, {axisPhi}); - histos.add("phi/den", "Denominator " + tagPhi + ";" + xPhi, kTH1D, {axisPhi}); + histos.add("phi/num", "Numerator " + tagPhi, kTH1D, {axisPhi}); + histos.add("phi/den", "Denominator " + tagPhi, kTH1D, {axisPhi}); list.setObject(new TList); if (makeEff) { @@ -153,12 +176,12 @@ struct QaTrackingEfficiency { list->Add(new TEfficiency(effname, efftitle, axisX->GetNbins(), axisX->GetXmin(), axisX->GetXmax(), axisY->GetNbins(), axisY->GetXmin(), axisY->GetXmax())); } }; - makeEfficiency("efficiencyVsPt", "Efficiency " + tagPt + ";" + xPt + ";Efficiency", HIST("pt/num")); + makeEfficiency("efficiencyVsPt", "Efficiency " + tagPt + ";#it{p}_{T} (GeV/#it{c});Efficiency", HIST("pt/num")); makeEfficiency("efficiencyVsP", "Efficiency " + tagPt + ";#it{p} (GeV/#it{c});Efficiency", HIST("pt/num")); - makeEfficiency("efficiencyVsEta", "Efficiency " + tagEta + ";" + xEta + ";Efficiency", HIST("eta/num")); - makeEfficiency("efficiencyVsPhi", "Efficiency " + tagPhi + ";" + xPhi + ";Efficiency", HIST("phi/num")); + makeEfficiency("efficiencyVsEta", "Efficiency " + tagEta + ";#it{#eta};Efficiency", HIST("eta/num")); + makeEfficiency("efficiencyVsPhi", "Efficiency " + tagPhi + ";#it{#varphi} (rad);Efficiency", HIST("phi/num")); - makeEfficiency2D("efficiencyVsPtVsEta", Form("Efficiency %s #it{#varphi} [%.2f,%.2f] Prim %i;%s;%s;Efficiency", o2::track::pid_constants::sNames[particle], phiMin.value, phiMax.value, selPrim.value, xPt.Data(), xEta.Data()), HIST("pt/num"), HIST("eta/num")); + makeEfficiency2D("efficiencyVsPtVsEta", Form("Efficiency %s #it{#varphi} [%.2f,%.2f] Prim %i;%s;%s;Efficiency", o2::track::pid_constants::sNames[particle], phiMin.value, phiMax.value, selPrim.value, "#it{p}_{T} (GeV/#it{c})", "#it{#eta}"), HIST("pt/num"), HIST("eta/num")); } } @@ -167,16 +190,64 @@ struct QaTrackingEfficiency { const o2::aod::McCollisions& mcCollisions, const o2::aod::McParticles& mcParticles) { + + auto rejectParticle = [&](auto p, auto h, const int& selBinOffset = 0) { + if ((p.pt() < ptMin || p.pt() > ptMax)) { // Check pt + return true; + } + histos.fill(h, 2 + selBinOffset); + if ((p.eta() < etaMin || p.eta() > etaMax)) { // Check eta + return true; + } + histos.fill(h, 3 + selBinOffset); + if ((p.phi() < phiMin || p.phi() > phiMax)) { // Check phi + return true; + } + histos.fill(h, 4 + selBinOffset); + if ((selPrim == 1) && (!MC::isPhysicalPrimary(mcParticles, p))) { // Requiring is physical primary + return true; + } + histos.fill(h, 5 + selBinOffset); + + // Selecting PDG code + switch (pdgSign) { + case 0: + if (abs(p.pdgCode()) != pdg) { + return true; + } + break; + case 1: + if (p.pdgCode() != pdg) { + return true; + } + break; + case -1: + if (p.pdgCode() != -pdg) { + return true; + } + break; + default: + LOG(FATAL) << "Provide pdgSign as 0, 1, -1. Provided: " << pdgSign.value; + break; + } + histos.fill(h, 6 + selBinOffset); + + return false; + }; + std::vector recoEvt(collisions.size()); int nevts = 0; for (const auto& collision : collisions) { + histos.fill(HIST("eventSelection"), 1); if (collision.numContrib() < nMinNumberOfContributors) { continue; } + histos.fill(HIST("eventSelection"), 2); const auto mcCollision = collision.mcCollision(); if ((mcCollision.posZ() < vertexZMin || mcCollision.posZ() > vertexZMax)) { continue; } + histos.fill(HIST("eventSelection"), 3); recoEvt[nevts++] = mcCollision.globalIndex(); } recoEvt.resize(nevts); @@ -184,17 +255,10 @@ struct QaTrackingEfficiency { std::vector recoTracks(tracks.size()); int ntrks = 0; for (const auto& track : tracks) { + histos.fill(HIST("trackSelection"), 1); const auto mcParticle = track.mcParticle(); - if ((mcParticle.pt() < ptMin || mcParticle.pt() > ptMax)) { // Check pt - continue; - } - if ((mcParticle.eta() < etaMin || mcParticle.eta() > etaMax)) { // Check eta - continue; - } - if ((mcParticle.phi() < phiMin || mcParticle.phi() > phiMax)) { // Check phi - continue; - } - if ((selPrim == 1) && (!MC::isPhysicalPrimary(mcParticles, mcParticle))) { // Requiring is physical primary + + if (rejectParticle(mcParticle, HIST("trackSelection"))) { continue; } @@ -210,16 +274,7 @@ struct QaTrackingEfficiency { continue; } } - // Selecting PDG code - if (pdgSign == 0 && abs(mcParticle.pdgCode()) != particlePDG) { - continue; - } else if (pdgSign == 1 && mcParticle.pdgCode() != particlePDG) { - continue; - } else if (pdgSign == -1 && mcParticle.pdgCode() != -particlePDG) { - continue; - } else { - continue; - } + histos.fill(HIST("trackSelection"), 7); histos.fill(HIST("pt/num"), mcParticle.pt()); histos.fill(HIST("eta/num"), mcParticle.eta()); histos.fill(HIST("phi/num"), mcParticle.phi()); @@ -227,32 +282,27 @@ struct QaTrackingEfficiency { } for (const auto& mcParticle : mcParticles) { + histos.fill(HIST("partSelection"), 1); const auto evtReconstructed = std::find(recoEvt.begin(), recoEvt.end(), mcParticle.mcCollision().globalIndex()) != recoEvt.end(); if (!evtReconstructed) { continue; } - if ((mcParticle.eta() < etaMin || mcParticle.eta() > etaMax)) { // Check eta - continue; - } - if ((mcParticle.phi() < phiMin || mcParticle.phi() > phiMax)) { // Check phi - continue; - } - if ((selPrim == 1) && (!MC::isPhysicalPrimary(mcParticles, mcParticle))) { // Requiring is physical primary + histos.fill(HIST("partSelection"), 2); + if (rejectParticle(mcParticle, HIST("partSelection"), 1)) { continue; } - if (abs(mcParticle.pdgCode()) == particlePDG) { // Checking PDG code - if (makeEff) { - const auto particleReconstructed = std::find(recoTracks.begin(), recoTracks.end(), mcParticle.globalIndex()) != recoTracks.end(); - static_cast(list->At(0))->Fill(particleReconstructed, mcParticle.pt()); - static_cast(list->At(1))->Fill(particleReconstructed, mcParticle.p()); - static_cast(list->At(2))->Fill(particleReconstructed, mcParticle.eta()); - static_cast(list->At(3))->Fill(particleReconstructed, mcParticle.phi()); - static_cast(list->At(4))->Fill(particleReconstructed, mcParticle.pt(), mcParticle.eta()); - } - histos.fill(HIST("pt/den"), mcParticle.pt()); - histos.fill(HIST("eta/den"), mcParticle.eta()); - histos.fill(HIST("phi/den"), mcParticle.phi()); + + if (makeEff) { + const auto particleReconstructed = std::find(recoTracks.begin(), recoTracks.end(), mcParticle.globalIndex()) != recoTracks.end(); + static_cast(list->At(0))->Fill(particleReconstructed, mcParticle.pt()); + static_cast(list->At(1))->Fill(particleReconstructed, mcParticle.p()); + static_cast(list->At(2))->Fill(particleReconstructed, mcParticle.eta()); + static_cast(list->At(3))->Fill(particleReconstructed, mcParticle.phi()); + static_cast(list->At(4))->Fill(particleReconstructed, mcParticle.pt(), mcParticle.eta()); } + histos.fill(HIST("pt/den"), mcParticle.pt()); + histos.fill(HIST("eta/den"), mcParticle.eta()); + histos.fill(HIST("phi/den"), mcParticle.phi()); } } }; @@ -275,5 +325,11 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) if (cfgc.options().get("eff-pr")) { w.push_back(adaptAnalysisTask>(cfgc, TaskName{"qa-tracking-efficiency-proton"})); } + if (cfgc.options().get("eff-de")) { + w.push_back(adaptAnalysisTask>(cfgc, TaskName{"qa-tracking-efficiency-deuteron"})); + } + if (cfgc.options().get("eff-he")) { + w.push_back(adaptAnalysisTask>(cfgc, TaskName{"qa-tracking-efficiency-helium3"})); + } return w; } From 605c93386ac56d15023ed0a73ce7d15a1605b630 Mon Sep 17 00:00:00 2001 From: Piotr Konopka Date: Mon, 19 Jul 2021 13:49:58 +0200 Subject: [PATCH 215/314] [QC-110] Performance improvements in Dispatcher (#6560) The Dispatcher::run() performs 45% faster with these changes for 1000 parts and 10% random sampling. highlights: - match inputs, not parts - const ref instead of move ref in Dispatcher::send() - reuse the found output route when matching - compute deviceID once - decide once per input (not part) and policy - create DataSamplingHeader once per policy --- .../include/DataSampling/DataSamplingPolicy.h | 2 +- .../include/DataSampling/Dispatcher.h | 7 ++- .../DataSampling/src/DataSamplingPolicy.cxx | 5 +- Utilities/DataSampling/src/Dispatcher.cxx | 59 ++++++++++++------- 4 files changed, 46 insertions(+), 27 deletions(-) diff --git a/Utilities/DataSampling/include/DataSampling/DataSamplingPolicy.h b/Utilities/DataSampling/include/DataSampling/DataSamplingPolicy.h index 59bd5302595e6..1ce6807c3cee4 100644 --- a/Utilities/DataSampling/include/DataSampling/DataSamplingPolicy.h +++ b/Utilities/DataSampling/include/DataSampling/DataSamplingPolicy.h @@ -73,7 +73,7 @@ class DataSamplingPolicy void setFairMQOutputChannel(std::string); /// \brief Returns true if this policy requires data with given InputSpec. - bool match(const framework::ConcreteDataMatcher& input) const; + const framework::OutputSpec* match(const framework::ConcreteDataMatcher& input) const; /// \brief Returns true if user-defined conditions of sampling are fulfilled. bool decide(const o2::framework::DataRef&); /// \brief Returns Output for given InputSpec to pass data forward. diff --git a/Utilities/DataSampling/include/DataSampling/Dispatcher.h b/Utilities/DataSampling/include/DataSampling/Dispatcher.h index 7b01d70c15438..7c7ab88556c40 100644 --- a/Utilities/DataSampling/include/DataSampling/Dispatcher.h +++ b/Utilities/DataSampling/include/DataSampling/Dispatcher.h @@ -25,6 +25,8 @@ #include "Framework/DeviceSpec.h" #include "Framework/Task.h" +#include "DataSampling/DataSamplingHeader.h" + class FairMQDevice; namespace o2::monitoring @@ -63,12 +65,13 @@ class Dispatcher : public framework::Task framework::Options getOptions(); private: - DataSamplingHeader prepareDataSamplingHeader(const DataSamplingPolicy& policy, const framework::DeviceSpec& spec); + DataSamplingHeader prepareDataSamplingHeader(const DataSamplingPolicy& policy); header::Stack extractAdditionalHeaders(const char* inputHeaderStack) const; void reportStats(monitoring::Monitoring& monitoring) const; - void send(framework::DataAllocator& dataAllocator, const framework::DataRef& inputData, framework::Output&& output) const; + void send(framework::DataAllocator& dataAllocator, const framework::DataRef& inputData, const framework::Output& output) const; std::string mName; + DataSamplingHeader::DeviceIDType mDeviceID = "invalid"; std::string mReconfigurationSource; // policies should be shared between all pipeline threads std::vector> mPolicies; diff --git a/Utilities/DataSampling/src/DataSamplingPolicy.cxx b/Utilities/DataSampling/src/DataSamplingPolicy.cxx index 154058a70bf8f..cfd6e97683904 100644 --- a/Utilities/DataSampling/src/DataSamplingPolicy.cxx +++ b/Utilities/DataSampling/src/DataSamplingPolicy.cxx @@ -103,9 +103,10 @@ DataSamplingPolicy DataSamplingPolicy::fromConfiguration(const ptree& config) return policy; } -bool DataSamplingPolicy::match(const ConcreteDataMatcher& input) const +const framework::OutputSpec* DataSamplingPolicy::match(const ConcreteDataMatcher& input) const { - return mPaths.find(input) != mPaths.end(); + const auto it = mPaths.find(input); + return it != mPaths.end() ? &(it->second) : nullptr; } bool DataSamplingPolicy::decide(const o2::framework::DataRef& dataRef) diff --git a/Utilities/DataSampling/src/Dispatcher.cxx b/Utilities/DataSampling/src/Dispatcher.cxx index a644db4b85e8c..976bb171e555d 100644 --- a/Utilities/DataSampling/src/Dispatcher.cxx +++ b/Utilities/DataSampling/src/Dispatcher.cxx @@ -70,30 +70,48 @@ void Dispatcher::init(InitContext& ctx) << policyConfig.second.get_optional("id").value_or("") << "'"; } } + + auto spec = ctx.services().get(); + mDeviceID.runtimeInit(spec.id.substr(0, DataSamplingHeader::deviceIDTypeSize).c_str()); } void Dispatcher::run(ProcessingContext& ctx) { - for (const auto& input : InputRecordWalker(ctx.inputs())) { + // todo: consider matching (and deciding) in completion policy to save some time + // it is not trivial though, we would have to share state with the customize() method, + // which is not possible atm. + + for (auto inputIt = ctx.inputs().begin(); inputIt != ctx.inputs().end(); inputIt++) { - const auto* inputHeader = header::get(input.header); + const DataRef& firstPart = inputIt.getByPos(0); + if (firstPart.header == nullptr) { + continue; + } + const auto* inputHeader = header::get(firstPart.header); ConcreteDataMatcher inputMatcher{inputHeader->dataOrigin, inputHeader->dataDescription, inputHeader->subSpecification}; for (auto& policy : mPolicies) { - // todo: consider getting the outputSpec in match to improve performance - // todo: consider matching (and deciding) in completion policy to save some time - - if (policy->match(inputMatcher) && policy->decide(input)) { - // We copy every header which is not DataHeader or DataProcessingHeader, - // so that custom data-dependent headers are passed forward, - // and we add a DataSamplingHeader. - header::Stack headerStack{ - std::move(extractAdditionalHeaders(input.header)), - std::move(prepareDataSamplingHeader(*policy.get(), ctx.services().get()))}; - - Output output = policy->prepareOutput(inputMatcher, input.spec->lifetime); - output.metaHeader = std::move(header::Stack{std::move(output.metaHeader), std::move(headerStack)}); - send(ctx.outputs(), input, std::move(output)); + if (auto route = policy->match(inputMatcher); route != nullptr && policy->decide(firstPart)) { + auto dsheader = prepareDataSamplingHeader(*policy); + for (const auto& part : inputIt) { + if (part.header != nullptr) { + // We copy every header which is not DataHeader or DataProcessingHeader, + // so that custom data-dependent headers are passed forward, + // and we add a DataSamplingHeader. + header::Stack headerStack{ + std::move(extractAdditionalHeaders(part.header)), + dsheader}; + + auto routeAsConcreteDataType = DataSpecUtils::asConcreteDataTypeMatcher(*route); + Output output{ + routeAsConcreteDataType.origin, + routeAsConcreteDataType.description, + inputMatcher.subSpec, + part.spec->lifetime, + std::move(headerStack)}; + send(ctx.outputs(), part, output); + } + } } } } @@ -117,18 +135,15 @@ void Dispatcher::reportStats(Monitoring& monitoring) const monitoring.send({dispatcherTotalAcceptedMessages, "Dispatcher_messages_passed"}); } -DataSamplingHeader Dispatcher::prepareDataSamplingHeader(const DataSamplingPolicy& policy, const DeviceSpec& spec) +DataSamplingHeader Dispatcher::prepareDataSamplingHeader(const DataSamplingPolicy& policy) { uint64_t sampleTime = static_cast(std::chrono::duration_cast(std::chrono::system_clock::now().time_since_epoch()).count()); - DataSamplingHeader::DeviceIDType id; - id.runtimeInit(spec.id.substr(0, DataSamplingHeader::deviceIDTypeSize).c_str()); - return { sampleTime, policy.getTotalAcceptedMessages(), policy.getTotalEvaluatedMessages(), - id}; + mDeviceID}; } header::Stack Dispatcher::extractAdditionalHeaders(const char* inputHeaderStack) const @@ -146,7 +161,7 @@ header::Stack Dispatcher::extractAdditionalHeaders(const char* inputHeaderStack) return headerStack; } -void Dispatcher::send(DataAllocator& dataAllocator, const DataRef& inputData, Output&& output) const +void Dispatcher::send(DataAllocator& dataAllocator, const DataRef& inputData, const Output& output) const { const auto* inputHeader = header::get(inputData.header); dataAllocator.snapshot(output, inputData.payload, inputHeader->payloadSize, inputHeader->payloadSerializationMethod); From 796c682b594705535a26eaeb10ac8c97b8cc224c Mon Sep 17 00:00:00 2001 From: Piotr Konopka Date: Mon, 19 Jul 2021 13:51:53 +0200 Subject: [PATCH 216/314] Return optional port in DataSampling::PortForPolicy (#6282) * Return optional port in DataSampling::PortForPolicy * Fix test failure --- .../include/DataSampling/DataSampling.h | 5 ++-- Utilities/DataSampling/src/DataSampling.cxx | 13 +++++++---- .../DataSampling/test/test_DataSampling.cxx | 23 +++++++++++++++++++ .../DataSampling/test/test_DataSampling.json | 7 ++++-- 4 files changed, 39 insertions(+), 9 deletions(-) diff --git a/Utilities/DataSampling/include/DataSampling/DataSampling.h b/Utilities/DataSampling/include/DataSampling/DataSampling.h index 65e7986797f67..dbc1c37301fad 100644 --- a/Utilities/DataSampling/include/DataSampling/DataSampling.h +++ b/Utilities/DataSampling/include/DataSampling/DataSampling.h @@ -21,6 +21,7 @@ #include "Framework/InputSpec.h" #include #include +#include namespace o2::configuration { @@ -104,9 +105,9 @@ class DataSampling /// \brief Provides OutputSpecs of given DataSamplingPolicy static std::vector OutputSpecsForPolicy(configuration::ConfigurationInterface* const config, const std::string& policyName); /// \brief Provides the port to be used for a proxy of given DataSamplingPolicy - static uint16_t PortForPolicy(configuration::ConfigurationInterface* const config, const std::string& policyName); + static std::optional PortForPolicy(configuration::ConfigurationInterface* const config, const std::string& policyName); /// \brief Provides the port to be used for a proxy of given DataSamplingPolicy - static uint16_t PortForPolicy(const std::string& policiesSource, const std::string& policyName); + static std::optional PortForPolicy(const std::string& policiesSource, const std::string& policyName); /// \brief Provides the machines where given DataSamplingPolicy is enabled static std::vector MachinesForPolicy(configuration::ConfigurationInterface* const config, const std::string& policyName); /// \brief Provides the port to be used for a proxy of given DataSamplingPolicy diff --git a/Utilities/DataSampling/src/DataSampling.cxx b/Utilities/DataSampling/src/DataSampling.cxx index 56c7ee545ebe1..62d943b34cfc0 100644 --- a/Utilities/DataSampling/src/DataSampling.cxx +++ b/Utilities/DataSampling/src/DataSampling.cxx @@ -169,18 +169,19 @@ std::vector DataSampling::OutputSpecsForPolicy(ConfigurationInterfac return outputs; } -uint16_t DataSampling::PortForPolicy(configuration::ConfigurationInterface* const config, const std::string& policyName) +std::optional DataSampling::PortForPolicy(configuration::ConfigurationInterface* const config, const std::string& policyName) { auto policiesTree = config->getRecursive("dataSamplingPolicies"); for (auto&& policyConfig : policiesTree) { if (policyConfig.second.get("id") == policyName) { - return policyConfig.second.get("port"); + auto boostOptionalPort = policyConfig.second.get_optional("port"); + return boostOptionalPort.has_value() ? std::optional(boostOptionalPort.value()) : std::nullopt; } } throw std::runtime_error("Could not find the policy '" + policyName + "'"); } -uint16_t DataSampling::PortForPolicy(const std::string& policiesSource, const std::string& policyName) +std::optional DataSampling::PortForPolicy(const std::string& policiesSource, const std::string& policyName) { std::unique_ptr config = ConfigurationFactory::getConfiguration(policiesSource); return PortForPolicy(config.get(), policyName); @@ -192,8 +193,10 @@ std::vector DataSampling::MachinesForPolicy(configuration::Configur auto policiesTree = config->getRecursive("dataSamplingPolicies"); for (auto&& policyConfig : policiesTree) { if (policyConfig.second.get("id") == policyName) { - for (const auto& machine : policyConfig.second.get_child("machines")) { - machines.emplace_back(machine.second.get("")); + if (policyConfig.second.count("machines") > 0) { + for (const auto& machine : policyConfig.second.get_child("machines")) { + machines.emplace_back(machine.second.get("")); + } } return machines; } diff --git a/Utilities/DataSampling/test/test_DataSampling.cxx b/Utilities/DataSampling/test/test_DataSampling.cxx index 9eedc4157a987..613f48ae55fb4 100644 --- a/Utilities/DataSampling/test/test_DataSampling.cxx +++ b/Utilities/DataSampling/test/test_DataSampling.cxx @@ -186,6 +186,29 @@ BOOST_AUTO_TEST_CASE(InputSpecsForPolicy) BOOST_CHECK_EQUAL(inputs.size(), 2); } +BOOST_AUTO_TEST_CASE(MultinodeUtilities) +{ + std::string configFilePath = "json:/" + std::string(getenv("O2_ROOT")) + "/share/tests/test_DataSampling.json"; + + { + BOOST_CHECK_THROW(DataSampling::PortForPolicy(configFilePath, "no such policy"), std::runtime_error); + BOOST_CHECK_THROW(DataSampling::MachinesForPolicy(configFilePath, "no such policy"), std::runtime_error); + } + { + auto port = DataSampling::PortForPolicy(configFilePath, "tpcclusters"); + BOOST_CHECK(!port.has_value()); + auto machines = DataSampling::MachinesForPolicy(configFilePath, "tpcclusters"); + BOOST_CHECK(machines.empty()); + } + { + auto port = DataSampling::PortForPolicy(configFilePath, "tpcraw"); + BOOST_REQUIRE(port.has_value()); + BOOST_CHECK_EQUAL(port.value(), 1234); + auto machines = DataSampling::MachinesForPolicy(configFilePath, "tpcraw"); + BOOST_CHECK_EQUAL(machines.size(), 2); + } +} + BOOST_AUTO_TEST_CASE(DataSamplingEmptyConfig) { std::string configFilePath = "json:/" + std::string(getenv("O2_ROOT")) + "/share/tests/test_DataSamplingEmpty.json"; diff --git a/Utilities/DataSampling/test/test_DataSampling.json b/Utilities/DataSampling/test/test_DataSampling.json index f1d6acfbf8ffb..090f8f4f9497e 100644 --- a/Utilities/DataSampling/test/test_DataSampling.json +++ b/Utilities/DataSampling/test/test_DataSampling.json @@ -3,14 +3,17 @@ { "id": "tpcclusters", "active": "true", - "machines": [], "query" : "clusters:TPC/CLUSTERS;clusters_p:TPC/CLUSTERS_P", "samplingConditions": [] }, { "id": "tpcraw", "active": "true", - "machines": [], + "machines": [ + "machineA", + "machineB" + ], + "port": "1234", "query": "clusters:TPC/RAWDATA", "samplingConditions": [] } From 95123db05fb99ce03252c12dae9790e82a09c424 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Mon, 19 Jul 2021 17:01:30 +0200 Subject: [PATCH 217/314] Fix compilation issue on macOS (#6683) Requires explicit cast, apparently. --- Analysis/Tasks/PWGPP/qaEfficiency.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Analysis/Tasks/PWGPP/qaEfficiency.cxx b/Analysis/Tasks/PWGPP/qaEfficiency.cxx index b1956dcdd42d5..a171e1277a318 100644 --- a/Analysis/Tasks/PWGPP/qaEfficiency.cxx +++ b/Analysis/Tasks/PWGPP/qaEfficiency.cxx @@ -210,7 +210,7 @@ struct QaTrackingEfficiency { histos.fill(h, 5 + selBinOffset); // Selecting PDG code - switch (pdgSign) { + switch ((int)pdgSign) { case 0: if (abs(p.pdgCode()) != pdg) { return true; From 12547a5420bd5288c33884f4d1e224939f375ba6 Mon Sep 17 00:00:00 2001 From: sartozza <35900978+sartozza@users.noreply.github.com> Date: Mon, 19 Jul 2021 20:10:55 +0200 Subject: [PATCH 218/314] "Update femtodream: V0 selection class and Math class" (#6628) * [o2femtodream] Reader and pair task and corresponding histogramming o2FemtoDream: adding Math class and update of Container to produce only histograms for Pair Configuring the init in container for histograms with ConfigurableAxis Update on FemtoMath * [o2femtodream] Extend the data type to incorporate more information * Adding class for V0 selection * adding V0 selection --- .../FemtoDream/femtoDreamProducerTask.cxx | 128 ++++++++-- .../include/FemtoDream/FemtoDerived.h | 45 +++- .../include/FemtoDream/FemtoDreamContainer.h | 99 ++++++++ .../include/FemtoDream/FemtoDreamMath.h | 86 +++++++ .../FemtoDream/FemtoDreamPairCleaner.h | 53 ++++ .../FemtoDream/FemtoDreamParticleHisto.h | 61 +++++ .../FemtoDream/FemtoDreamTrackSelection.h | 26 +- .../FemtoDream/FemtoDreamV0Selection.h | 240 ++++++++++++++++++ 8 files changed, 719 insertions(+), 19 deletions(-) create mode 100644 Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamContainer.h create mode 100644 Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamMath.h create mode 100644 Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamPairCleaner.h create mode 100644 Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamParticleHisto.h create mode 100644 Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamV0Selection.h diff --git a/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx index c2ca713ee0471..c8343725aa51c 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx +++ b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx @@ -15,6 +15,7 @@ #include "include/FemtoDream/FemtoDreamCollisionSelection.h" #include "include/FemtoDream/FemtoDreamTrackSelection.h" +#include "include/FemtoDream/FemtoDreamV0Selection.h" #include "include/FemtoDream/FemtoDerived.h" #include "Framework/AnalysisDataModel.h" #include "Framework/AnalysisTask.h" @@ -26,6 +27,10 @@ #include "AnalysisDataModel/EventSelection.h" #include "AnalysisDataModel/Multiplicity.h" #include "ReconstructionDataFormats/Track.h" +#include "AnalysisCore/trackUtilities.h" +#include "AnalysisDataModel/StrangenessTables.h" +#include "Math/Vector4D.h" +#include "TMath.h" using namespace o2; using namespace o2::analysis::femtoDream; @@ -37,14 +42,33 @@ namespace o2::aod using FilteredFullCollision = soa::Filtered>::iterator; -using FilteredFullTracks = soa::Filtered>; +using FilteredFullTracks = soa::Join; +using FilteredFullV0s = soa::Filtered; /// predefined Join table for o2::aod::V0s = soa::Join to be used when we add v0Filter } // namespace o2::aod +/// \todo fix how to pass array to setSelection, getRow() passing a different type! +// static constexpr float arrayV0Sel[3][3] = {{100.f, 100.f, 100.f}, {0.2f, 0.2f, 0.2f}, {100.f, 100.f, 100.f}}; +// unsigned int rows = sizeof(arrayV0Sel) / sizeof(arrayV0Sel[0]); +// unsigned int columns = sizeof(arrayV0Sel[0]) / sizeof(arrayV0Sel[0][0]); + +template +int getRowDaughters(int daughID, T const& vecID) +{ + int rowInPrimaryTrackTableDaugh = -1; + for (size_t i = 0; i < vecID.size(); i++) { + if (vecID.at(i) == daughID) { + rowInPrimaryTrackTableDaugh = i; + break; + } + } + return rowInPrimaryTrackTableDaugh; +} + struct femtoDreamProducerTask { Produces outputCollision; @@ -64,9 +88,6 @@ struct femtoDreamProducerTask { FemtoDreamTrackSelection trackCuts; Configurable> ConfTrkCharge{"ConfTrkCharge", std::vector{-1, 1}, "Trk sel: Charge"}; - Configurable> ConfTrkPtmin{"ConfTrkPtmin", std::vector{0.4f, 0.6f, 0.5f}, "Trk sel: Min. pT (GeV/c)"}; - Configurable> ConfTrkPtmax{"ConfTrkPtmax", std::vector{4.05f, 999.f}, "Trk sel: Max. pT (GeV/c)"}; - Configurable> ConfTrkEta{"ConfTrkEta", std::vector{0.8f, 0.7f, 0.9f}, "Trk sel: Max. eta"}; Configurable> ConfTrkTPCnclsMin{"ConfTrkTPCnclsMin", std::vector{80.f, 70.f, 60.f}, "Trk sel: Min. nCls TPC"}; Configurable> ConfTrkTPCfCls{"ConfTrkTPCfCls", std::vector{0.7f, 0.83f, 0.9f}, "Trk sel: Min. ratio crossed rows/findable"}; Configurable> ConfTrkTPCsCls{"ConfTrkTPCsCls", std::vector{0.1f, 160.f}, "Trk sel: Max. TPC shared cluster"}; @@ -86,6 +107,30 @@ struct femtoDreamProducerTask { (aod::track::pt < TrackMinSelPtMax.value) && (nabs(aod::track::eta) < TrackMinSelEtaMax.value); + FemtoDreamV0Selection v0Cuts; + /// \todo fix how to pass array to setSelection, getRow() passing a different type! + // Configurable> ConfV0Selection{"ConfV0Selection", {arrayV0Sel[0], 3, 3, + // {"V0 sel: Max. distance from Vtx (cm)", + // "V0 sel: Min. transverse radius (cm)", + // "V0 sel: Max. transverse radius (cm)"}, + // {"lower", "default", "upper"}}, "Labeled array for V0 selection"}; + + Configurable> ConfDCAV0DaughMax{"ConfDCAV0DaughMax", std::vector{1.2f, 1.5f}, "V0 sel: Max. DCA daugh from SV (cm)"}; + Configurable> ConfCPAV0Min{"ConfCPAV0Min", std::vector{0.9f, 0.995f}, "V0 sel: Min. CPA"}; + MutableConfigurable V0DecVtxMax{"V0DecVtxMax", 100.f, "V0 sel: Max. distance from Vtx (cm)"}; + MutableConfigurable V0TranRadV0Min{"V0TranRadV0Min", 0.2f, "V0 sel: Min. transverse radius (cm)"}; + MutableConfigurable V0TranRadV0Max{"V0TranRadV0Max", 100.f, "V0 sel: Max. transverse radius (cm)"}; + + Configurable> ConfV0DaughTPCnclsMin{"ConfV0DaughTPCnclsMin", std::vector{80.f, 70.f, 60.f}, "V0 Daugh sel: Min. nCls TPC"}; + Configurable> ConfV0DaughDCAMax{"ConfV0DaughDCAMax", std::vector{0.05f, 0.06f}, "V0 Daugh sel: Max. DCA Daugh to PV (cm)"}; + Configurable> ConfV0DaughPIDnSigmaMax{"ConfV0DaughPIDnSigmaMax", std::vector{5.f, 4.f}, "V0 Daugh sel: Max. PID nSigma TPC"}; + + /// \todo should we add filter on min value pT/eta of V0 and daughters? + Filter v0Filter = (nabs(aod::v0data::x) < V0DecVtxMax.value) && + (nabs(aod::v0data::y) < V0DecVtxMax.value) && + (nabs(aod::v0data::z) < V0DecVtxMax.value); + // (aod::v0data::v0radius > V0TranRadV0Min.value); to be added, not working for now do not know why + HistogramRegistry qaRegistry{"QAHistos", {}, OutputObjHandlingPolicy::QAObject}; void init(InitContext&) @@ -94,13 +139,9 @@ struct femtoDreamProducerTask { colCuts.init(&qaRegistry); trackCuts.setSelection(ConfTrkCharge, femtoDreamTrackSelection::kSign, femtoDreamSelection::kEqual); - trackCuts.setSelection(ConfTrkPtmin, femtoDreamTrackSelection::kpTMin, femtoDreamSelection::kLowerLimit); - trackCuts.setSelection(ConfTrkPtmax, femtoDreamTrackSelection::kpTMax, femtoDreamSelection::kUpperLimit); - trackCuts.setSelection(ConfTrkEta, femtoDreamTrackSelection::kEtaMax, femtoDreamSelection::kAbsUpperLimit); trackCuts.setSelection(ConfTrkTPCnclsMin, femtoDreamTrackSelection::kTPCnClsMin, femtoDreamSelection::kLowerLimit); trackCuts.setSelection(ConfTrkTPCfCls, femtoDreamTrackSelection::kTPCfClsMin, femtoDreamSelection::kLowerLimit); trackCuts.setSelection(ConfTrkTPCsCls, femtoDreamTrackSelection::kTPCsClsMax, femtoDreamSelection::kUpperLimit); - trackCuts.setSelection(ConfTrkDCAxyMax, femtoDreamTrackSelection::kDCAxyMax, femtoDreamSelection::kAbsUpperLimit); trackCuts.setSelection(ConfTrkDCAzMax, femtoDreamTrackSelection::kDCAzMax, femtoDreamSelection::kAbsUpperLimit); trackCuts.setSelection(ConfTrkPIDnSigmaMax, femtoDreamTrackSelection::kPIDnSigmaMax, femtoDreamSelection::kAbsUpperLimit); trackCuts.setPIDSpecies(ConfTrkTPIDspecies); @@ -115,12 +156,27 @@ struct femtoDreamProducerTask { if (trackCuts.getNSelections(femtoDreamTrackSelection::kEtaMax) > 0) { TrackMinSelEtaMax.value = trackCuts.getMinimalSelection(femtoDreamTrackSelection::kEtaMax, femtoDreamSelection::kAbsUpperLimit); } + + /// \todo fix how to pass array to setSelection, getRow() passing a different type! + // v0Cuts.setSelection(ConfV0Selection->getRow(0), femtoDreamV0Selection::kDecVtxMax, femtoDreamSelection::kAbsUpperLimit); + + v0Cuts.setSelection(ConfDCAV0DaughMax, femtoDreamV0Selection::kDCAV0DaughMax, femtoDreamSelection::kUpperLimit); + v0Cuts.setSelection(ConfCPAV0Min, femtoDreamV0Selection::kCPAV0Min, femtoDreamSelection::kLowerLimit); + v0Cuts.setChildCuts(femtoDreamV0Selection::kPosTrack, ConfTrkCharge, femtoDreamTrackSelection::kSign, femtoDreamSelection::kEqual); + v0Cuts.setChildCuts(femtoDreamV0Selection::kPosTrack, ConfV0DaughTPCnclsMin, femtoDreamTrackSelection::kTPCnClsMin, femtoDreamSelection::kLowerLimit); + v0Cuts.setChildCuts(femtoDreamV0Selection::kPosTrack, ConfV0DaughDCAMax, femtoDreamTrackSelection::kDCAzMax, femtoDreamSelection::kAbsUpperLimit); + v0Cuts.setChildCuts(femtoDreamV0Selection::kPosTrack, ConfV0DaughPIDnSigmaMax, femtoDreamTrackSelection::kPIDnSigmaMax, femtoDreamSelection::kAbsUpperLimit); + v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfTrkCharge, femtoDreamTrackSelection::kSign, femtoDreamSelection::kEqual); + v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfV0DaughTPCnclsMin, femtoDreamTrackSelection::kTPCnClsMin, femtoDreamSelection::kLowerLimit); + v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfV0DaughDCAMax, femtoDreamTrackSelection::kDCAzMax, femtoDreamSelection::kAbsUpperLimit); + v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfV0DaughPIDnSigmaMax, femtoDreamTrackSelection::kPIDnSigmaMax, femtoDreamSelection::kAbsUpperLimit); + v0Cuts.init(&qaRegistry); } void process(aod::FilteredFullCollision const& col, - aod::FilteredFullTracks const& tracks) + aod::FilteredFullTracks const& tracks, + o2::aod::V0Datas const& fullV0s) /// \todo with FilteredFullV0s { - if (!colCuts.isSelected(col)) { return; } @@ -130,6 +186,12 @@ struct femtoDreamProducerTask { colCuts.fillQA(col); outputCollision(vtxZ, mult, spher); + int childIDs[2] = {0, 0}; + std::vector tmpIDtrack; + float temptrack[2]; + std::vector temptrackPt; + std::vector tempPostrackPt; + for (auto& track : tracks) { if (!trackCuts.isSelectedMinimal(track)) { continue; @@ -138,7 +200,11 @@ struct femtoDreamProducerTask { auto cutContainer = trackCuts.getCutContainer(track); if (cutContainer > 0) { trackCuts.fillCutQA(track, cutContainer); - outputTracks(outputCollision.lastIndex(), track.pt(), track.eta(), track.phi(), cutContainer, track.dcaXY()); + outputTracks(outputCollision.lastIndex(), track.pt(), track.eta(), track.phi(), aod::femtodreamparticle::ParticleType::kTrack, cutContainer, track.dcaXY(), childIDs); + tmpIDtrack.push_back(track.globalIndex()); + temptrackPt.push_back(track.pt()); + temptrack[0] = outputTracks.lastIndex(); + temptrack[1] = track.pt(); if (ConfDebugOutput) { outputDebugTracks(outputCollision.lastIndex(), track.sign(), track.tpcNClsFound(), @@ -149,6 +215,36 @@ struct femtoDreamProducerTask { } } } + + for (auto& v0 : fullV0s) { + auto postrack = v0.posTrack_as(); + auto negtrack = v0.negTrack_as(); ///\tocheck funnily enough if we apply the filter the sign of Pos and Neg track is always negative + if (!v0Cuts.isSelectedMinimal(col, v0, postrack, negtrack)) { + continue; + } + v0Cuts.fillQA(col, v0); ///\todo fill QA also for daughters + auto cutContainerV0 = v0Cuts.getCutContainer(col, v0, postrack, negtrack); + if ((cutContainerV0.at(0) > 0) && (cutContainerV0.at(1) > 0) && (cutContainerV0.at(2) > 0)) { + int postrackID = v0.posTrackId(); + int rowInPrimaryTrackTablePos = -1; + rowInPrimaryTrackTablePos = getRowDaughters(postrackID, tmpIDtrack); + childIDs[0] = rowInPrimaryTrackTablePos; + childIDs[1] = 0; + ROOT::Math::PxPyPzMVector postrackVec(v0.pxpos(), v0.pypos(), v0.pzpos(), 0.); + ROOT::Math::PxPyPzMVector negtrackVec(v0.pxneg(), v0.pyneg(), v0.pzneg(), 0.); + outputTracks(outputCollision.lastIndex(), postrackVec.Pt(), postrackVec.Eta(), postrackVec.Phi(), aod::femtodreamparticle::ParticleType::kV0Child, cutContainerV0.at(1), 0., childIDs); + const int rowOfPosTrack = outputTracks.lastIndex(); + int negtrackID = v0.negTrackId(); + int rowInPrimaryTrackTableNeg = -1; + rowInPrimaryTrackTableNeg = getRowDaughters(negtrackID, tmpIDtrack); + childIDs[0] = 0; + childIDs[1] = rowInPrimaryTrackTableNeg; + outputTracks(outputCollision.lastIndex(), negtrackVec.Pt(), negtrackVec.Eta(), negtrackVec.Phi(), aod::femtodreamparticle::ParticleType::kV0Child, cutContainerV0.at(2), 0., childIDs); + const int rowOfNegTrack = outputTracks.lastIndex(); + int indexChildID[2] = {rowOfPosTrack, rowOfNegTrack}; + outputTracks(outputCollision.lastIndex(), v0.pt(), v0.eta(), v0.phi(), aod::femtodreamparticle::ParticleType::kV0, cutContainerV0.at(0), v0.v0cosPA(col.posX(), col.posY(), col.posZ()), indexChildID); + } + } } }; diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDerived.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDerived.h index b0055dd562da0..109d5e768c832 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDerived.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDerived.h @@ -13,14 +13,17 @@ #define ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODERIVED_H_ #include "Framework/ASoA.h" +#include "MathUtils/Utils.h" +#include "Framework/DataTypes.h" #include "AnalysisDataModel/Multiplicity.h" #include "Framework/AnalysisDataModel.h" +#include "Framework/Expressions.h" #include "AnalysisDataModel/TrackSelectionTables.h" #include "AnalysisDataModel/PID/PIDResponse.h" +#include namespace o2::aod { - namespace femtodreamcollision { DECLARE_SOA_COLUMN(MultV0M, multV0M, float); @@ -35,12 +38,43 @@ using FemtoDreamCollision = FemtoDreamCollisions::iterator; namespace femtodreamparticle { +enum ParticleType { + kTrack, + kV0, + kV0Child, + kCascade, + kCascadeBachelor +}; + DECLARE_SOA_INDEX_COLUMN(FemtoDreamCollision, femtoDreamCollision); DECLARE_SOA_COLUMN(Pt, pt, float); DECLARE_SOA_COLUMN(Eta, eta, float); DECLARE_SOA_COLUMN(Phi, phi, float); +DECLARE_SOA_COLUMN(PartType, partType, uint8_t); DECLARE_SOA_COLUMN(Cut, cut, uint64_t); DECLARE_SOA_COLUMN(TempFitVar, tempFitVar, float); +DECLARE_SOA_COLUMN(Indices, indices, int[2]); + +DECLARE_SOA_DYNAMIC_COLUMN(Theta, theta, + [](float eta) -> float { + return 2.f * std::atan(std::exp(-eta)); + }); +DECLARE_SOA_DYNAMIC_COLUMN(Px, px, //! Momentum in x in GeV/c + [](float pt, float phi) -> float { + return pt * std::sin(phi); + }); +DECLARE_SOA_DYNAMIC_COLUMN(Py, py, //! Momentum in y in GeV/c + [](float pt, float phi) -> float { + return pt * std::cos(phi); + }); +DECLARE_SOA_DYNAMIC_COLUMN(Pz, pz, //! Momentum in z in GeV/c + [](float pt, float eta) -> float { + return pt * std::sinh(eta); + }); +DECLARE_SOA_DYNAMIC_COLUMN(P, p, //! Momentum in z in GeV/c + [](float pt, float eta) -> float { + return pt * std::cosh(eta); + }); // debug variables DECLARE_SOA_COLUMN(Sign, sign, int8_t); DECLARE_SOA_COLUMN(TPCNClsFound, tpcNClsFound, uint8_t); @@ -57,8 +91,15 @@ DECLARE_SOA_TABLE(FemtoDreamParticles, "AOD", "FEMTODREAMPARTS", femtodreamparticle::Pt, femtodreamparticle::Eta, femtodreamparticle::Phi, + femtodreamparticle::PartType, femtodreamparticle::Cut, - femtodreamparticle::TempFitVar); + femtodreamparticle::TempFitVar, + femtodreamparticle::Indices, + femtodreamparticle::Theta, + femtodreamparticle::Px, + femtodreamparticle::Py, + femtodreamparticle::Pz, + femtodreamparticle::P); using FemtoDreamParticle = FemtoDreamParticles::iterator; DECLARE_SOA_TABLE(FemtoDreamDebugParticles, "AOD", "FEMTODEBUGPARTS", diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamContainer.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamContainer.h new file mode 100644 index 0000000000000..c1e53fb67d027 --- /dev/null +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamContainer.h @@ -0,0 +1,99 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file FemtoDreamContainer.h +/// \brief Definition of the FemtoDreamContainer +/// \author Andi Mathis, TU München, andreas.mathis@ph.tum.de +/// \author Valentina Mantovani Sarti, valentina.mantovani-sarti@tum.de + +#ifndef ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMCONTAINER_H_ +#define ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMCONTAINER_H_ + +#include "Framework/HistogramRegistry.h" +#include "FemtoDreamMath.h" + +#include "Math/Vector4D.h" +#include "TLorentzVector.h" +#include "TMath.h" +#include "TDatabasePDG.h" + +namespace o2::analysis::femtoDream +{ + +namespace femtoDreamContainer +{ +enum Observable { kstar }; +} + +/// \class FemtoDreamContainer +/// \brief Container for all histogramming related to the correlation function. The two +/// particles of the pair are passed here, and the correlation function and QA histograms +/// are filled according to the specified observable +class FemtoDreamContainer +{ + public: + template + void init(o2::framework::HistogramRegistry* registry, femtoDreamContainer::Observable obs, T& kstarBins, T& multBins, T& kTBins, T& mTBins) + { + mHistogramRegistry = registry; + std::string femtoObs; + if (mFemtoObs == femtoDreamContainer::Observable::kstar) { + femtoObs = "#it{k*} (GeV/#it{c})"; + } + std::vector tmpVecMult = multBins; + framework::AxisSpec multAxis = {tmpVecMult, "Multiplicity"}; + framework::AxisSpec femtoObsAxis = {kstarBins, femtoObs.c_str()}; + framework::AxisSpec kTAxis = {kTBins, "#it{k}_{T} (GeV/#it{c})"}; + framework::AxisSpec mTAxis = {mTBins, "#it{m}_{T} (GeV/#it{c}^{2})"}; + + mHistogramRegistry->add("relPairDist", ("; " + femtoObs + "; Entries").c_str(), o2::framework::kTH1F, {femtoObsAxis}); + mHistogramRegistry->add("relPairkT", "; #it{k}_{T} (GeV/#it{c}); Entries", o2::framework::kTH1F, {kTAxis}); + mHistogramRegistry->add("relPairkstarkT", ("; " + femtoObs + "; #it{k}_{T} (GeV/#it{c})").c_str(), o2::framework::kTH2F, {femtoObsAxis, kTAxis}); + mHistogramRegistry->add("relPairkstarmT", ("; " + femtoObs + "; #it{m}_{T} (GeV/#it{c}^{2})").c_str(), o2::framework::kTH2F, {femtoObsAxis, mTAxis}); + mHistogramRegistry->add("relPairkstarMult", ("; " + femtoObs + "; Multiplicity").c_str(), o2::framework::kTH2F, {femtoObsAxis, multAxis}); + } + + void setPDGCodes(const int pdg1, const int pdg2) + { + mMassOne = TDatabasePDG::Instance()->GetParticle(pdg1)->Mass(); + mMassTwo = TDatabasePDG::Instance()->GetParticle(pdg2)->Mass(); + } + + template + void setPair(T const& part1, T const& part2, const int mult) + { + float femtoObs; + if (mFemtoObs == femtoDreamContainer::Observable::kstar) { + femtoObs = FemtoDreamMath::getkstar(part1, mMassOne, part2, mMassTwo); + } + const float kT = FemtoDreamMath::getkT(part1, mMassOne, part2, mMassTwo); + const float mT = FemtoDreamMath::getmT(part1, mMassOne, part2, mMassTwo); + + if (mHistogramRegistry) { + mHistogramRegistry->fill(HIST("relPairDist"), femtoObs); + mHistogramRegistry->fill(HIST("relPairkT"), kT); + mHistogramRegistry->fill(HIST("relPairkstarkT"), femtoObs, kT); + mHistogramRegistry->fill(HIST("relPairkstarmT"), femtoObs, mT); + mHistogramRegistry->fill(HIST("relPairkstarMult"), femtoObs, mult); + } + } + + protected: + femtoDreamContainer::Observable mFemtoObs = femtoDreamContainer::Observable::kstar; + o2::framework::HistogramRegistry* mHistogramRegistry = nullptr; + + float mMassOne = 0.f; + float mMassTwo = 0.f; +}; + +} // namespace o2::analysis::femtoDream + +#endif /* ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMCONTAINER_H_ */ diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamMath.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamMath.h new file mode 100644 index 0000000000000..db29a9067bb58 --- /dev/null +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamMath.h @@ -0,0 +1,86 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file FemtoDreamMath.h +/// \brief Definition of the FemtoDreamMath Container for math calculations of quantities related to pairs +/// \author Valentina Mantovani Sarti, TU München, valentina.mantovani-sarti@tum.de + +#ifndef ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMMATH_H_ +#define ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMMATH_H_ + +#include "Math/Vector4D.h" +#include "Math/Boost.h" +#include "TLorentzVector.h" +#include "TMath.h" + +#include + +namespace o2::analysis +{ +namespace femtoDream +{ + +/// \class FemtoDreamMath +/// \brief Container for math calculations of quantities related to pairs + +class FemtoDreamMath +{ + public: + template + static float getkstar(const T& part1, const float mass1, const T& part2, const float mass2) + { + ROOT::Math::PtEtaPhiMVector vecpart1(part1.pt(), part1.eta(), part1.phi(), mass1); + ROOT::Math::PtEtaPhiMVector vecpart2(part2.pt(), part2.eta(), part2.phi(), mass2); + + ROOT::Math::PtEtaPhiMVector trackSum = vecpart1 + vecpart2; + + float beta = trackSum.Beta(); + float betax = beta * std::cos(trackSum.Phi()) * std::sin(trackSum.Theta()); + float betay = beta * std::sin(trackSum.Phi()) * std::sin(trackSum.Theta()); + float betaz = beta * std::cos(trackSum.Theta()); + + ROOT::Math::PxPyPzMVector PartOneCMS(vecpart1); + ROOT::Math::PxPyPzMVector PartTwoCMS(vecpart2); + + ROOT::Math::Boost boostPRF = ROOT::Math::Boost(-betax, -betay, -betaz); + PartOneCMS = boostPRF(PartOneCMS); + PartTwoCMS = boostPRF(PartTwoCMS); + + ROOT::Math::PxPyPzMVector trackRelK = PartOneCMS - PartTwoCMS; + return 0.5 * trackRelK.P(); + } + + template + static float getkT(const T& part1, const float mass1, const T& part2, const float mass2) + { + ROOT::Math::PtEtaPhiMVector vecpart1(part1.pt(), part1.eta(), part1.phi(), mass1); + ROOT::Math::PtEtaPhiMVector vecpart2(part2.pt(), part2.eta(), part2.phi(), mass2); + + ROOT::Math::PtEtaPhiMVector trackSum = vecpart1 + vecpart2; + return 0.5 * trackSum.Pt(); + } + + template + static float getmT(const T& part1, const float mass1, const T& part2, const float mass2) + { + ROOT::Math::PtEtaPhiMVector vecpart1(part1.pt(), part1.eta(), part1.phi(), mass1); + ROOT::Math::PtEtaPhiMVector vecpart2(part2.pt(), part2.eta(), part2.phi(), mass2); + + ROOT::Math::PtEtaPhiMVector trackSum = vecpart1 + vecpart2; + float averageMass = 0.5 * (mass1 + mass2); + return std::sqrt(std::pow(getkT(part1, mass1, part2, mass2), 2.) + std::pow(averageMass, 2.)); + } +}; + +} /* namespace femtoDream */ +} /* namespace o2::analysis */ + +#endif /* ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMMATH_H_ */ diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamPairCleaner.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamPairCleaner.h new file mode 100644 index 0000000000000..79d855cab21ca --- /dev/null +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamPairCleaner.h @@ -0,0 +1,53 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file FemtoDreamPairCleaner.h +/// \brief FemtoDreamPairCleaner - Makes sure only proper candidates are paired +/// \author Andi Mathis, TU München, andreas.mathis@ph.tum.de + +#ifndef ANALYSIS_TASKS_PWGCF_O2FEMTODREAM_INCLUDE_O2FEMTODREAM_FEMTODREAMPAIRCLEANER_H_ +#define ANALYSIS_TASKS_PWGCF_O2FEMTODREAM_INCLUDE_O2FEMTODREAM_FEMTODREAMPAIRCLEANER_H_ + +#include "Framework/HistogramRegistry.h" +#include + +using namespace o2::framework; + +namespace o2::femtoDream +{ + +namespace femtoDreamPairCleaner +{ +enum CleanConf { kStrict, + kLoose, + kDeltaEtaDeltaPhiStar }; +} + +class FemtoDreamPairCleaner +{ + public: + virtual ~FemtoDreamPairCleaner() = default; + + void init(femtoDreamPairCleaner::CleanConf conf, HistogramRegistry* registry) + { + if (registry) { + mHistogramRegistry = registry; + } + } + + private: + HistogramRegistry* mHistogramRegistry; ///< For QA output + + ClassDefNV(FemtoDreamPairCleaner, 1); +}; +} // namespace o2::femtoDream + +#endif /* ANALYSIS_TASKS_PWGCF_O2FEMTODREAM_INCLUDE_O2FEMTODREAM_FEMTODREAMPAIRCLEANER_H_ */ diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamParticleHisto.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamParticleHisto.h new file mode 100644 index 0000000000000..898570887b187 --- /dev/null +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamParticleHisto.h @@ -0,0 +1,61 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file FemtoDreamParticleHisto.h +/// \brief FemtoDreamParticleHisto - Histogram class for tracks +/// \author Andi Mathis, TU München, andreas.mathis@ph.tum.de + +#ifndef ANALYSIS_TASKS_PWGCF_O2FEMTODREAM_INCLUDE_O2FEMTODREAM_FEMTODREAMPARTICLEHISTO_H_ +#define ANALYSIS_TASKS_PWGCF_O2FEMTODREAM_INCLUDE_O2FEMTODREAM_FEMTODREAMPARTICLEHISTO_H_ + +#include "Framework/HistogramRegistry.h" +#include + +using namespace o2::framework; + +namespace o2::analysis::femtoDream +{ +class FemtoDreamParticleHisto +{ + public: + virtual ~FemtoDreamParticleHisto() = default; + + void init(HistogramRegistry* registry) + { + if (registry) { + mHistogramRegistry = registry; + /// \todo how to do the naming for track - track combinations? + mHistogramRegistry->add("Tracks/pThist", "; #it{p}_{T} (GeV/#it{c}); Entries", kTH1F, {{1000, 0, 10}}); + mHistogramRegistry->add("Tracks/etahist", "; #eta; Entries", kTH1F, {{1000, -1, 1}}); + mHistogramRegistry->add("Tracks/phihist", "; #phi; Entries", kTH1F, {{1000, 0, 2. * M_PI}}); + mHistogramRegistry->add("Tracks/dcaXYhist", "; #it{p}_{T} (GeV/#it{c}); DCA_{xy} (cm)", kTH2F, {{100, 0, 10}, {501, -3, 3}}); + } + } + + template + void fillQA(T const& track) + { + if (mHistogramRegistry) { + mHistogramRegistry->fill(HIST("TrackCuts/pThist"), track.pt()); + mHistogramRegistry->fill(HIST("TrackCuts/etahist"), track.eta()); + mHistogramRegistry->fill(HIST("TrackCuts/phihist"), track.phi()); + mHistogramRegistry->fill(HIST("TrackCuts/dcaXYhist"), track.pt(), track.tempFitVar()); + } + } + + private: + HistogramRegistry* mHistogramRegistry; ///< For QA output + + ClassDefNV(FemtoDreamParticleHisto, 1); +}; +} // namespace o2::analysis::femtoDream + +#endif /* ANALYSIS_TASKS_PWGCF_O2FEMTODREAM_INCLUDE_O2FEMTODREAM_FEMTODREAMPARTICLEHISTO_H_ */ diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h index 53fe85facfc65..00a1622e84730 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h @@ -41,6 +41,7 @@ enum TrackSel { kSign, kTPCsClsMax, kDCAxyMax, kDCAzMax, + kDCAMin, kPIDnSigmaMax }; } @@ -106,6 +107,7 @@ void FemtoDreamTrackSelection::init(HistogramRegistry* registry) mHistogramRegistry->add("TrackCuts/tpcnsharedhist", "; TPC shared clusters; Entries", kTH1F, {{163, 0, 163}}); mHistogramRegistry->add("TrackCuts/dcaXYhist", "; #it{p}_{T} (GeV/#it{c}); DCA_{xy} (cm)", kTH2F, {{100, 0, 10}, {301, -1.5, 1.5}}); mHistogramRegistry->add("TrackCuts/dcaZhist", "; #it{p}_{T} (GeV/#it{c}); DCA_{z} (cm)", kTH2F, {{100, 0, 10}, {301, -1.5, 1.5}}); + mHistogramRegistry->add("TrackCuts/dcahist", "; #it{p}_{T} (GeV/#it{c}); DCA (cm)", kTH1F, {{301, 0., 1.5}}); mHistogramRegistry->add("TrackCuts/tpcdEdx", "; #it{p} (GeV/#it{c}); TPC Signal", kTH2F, {{100, 0, 10}, {1000, 0, 1000}}); mHistogramRegistry->add("TrackCuts/tofSignal", "; #it{p} (GeV/#it{c}); TOF Signal", kTH2F, {{100, 0, 10}, {1000, 0, 100e3}}); @@ -119,6 +121,7 @@ void FemtoDreamTrackSelection::init(HistogramRegistry* registry) const int nTPCsMaxSel = getNSelections(femtoDreamTrackSelection::kTPCsClsMax); const int nDCAxyMaxSel = getNSelections(femtoDreamTrackSelection::kDCAxyMax); const int nDCAzMaxSel = getNSelections(femtoDreamTrackSelection::kDCAzMax); + const int nDCAMinSel = getNSelections(femtoDreamTrackSelection::kDCAMin); const int nPIDnSigmaSel = getNSelections(femtoDreamTrackSelection::kPIDnSigmaMax); if (nChargeSel > 0) { @@ -151,6 +154,9 @@ void FemtoDreamTrackSelection::init(HistogramRegistry* registry) if (nDCAzMaxSel > 0) { mHistogramRegistry->add("TrackCutsQA/dcaZMax", "; Cut; DCA_{z} (cm)", kTH2F, {{nDCAzMaxSel, 0, static_cast(nDCAzMaxSel)}, {51, -1.5, 1.5}}); } + if (nDCAMinSel > 0) { + mHistogramRegistry->add("TrackCutsQA/dcaMin", "; Cut; DCA (cm)", kTH2F, {{nDCAMinSel, 0, static_cast(nDCAMinSel)}, {26, 0., 1.5}}); + } if (nPIDnSigmaSel > 0) { int nSpecies = mPIDspecies.size(); mHistogramRegistry->add("TrackCutsQA/pidCombnsigmaMax", "; #it{n}_{#sigma, comb.}; Cut", kTH2F, {{nPIDnSigmaSel * nSpecies, 0, static_cast(nSpecies * nPIDnSigmaSel)}, {60, 0, 6}}); @@ -232,7 +238,7 @@ bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track) const auto tpcNClsS = track.tpcNClsShared(); const auto dcaXY = track.dcaXY(); const auto dcaZ = track.dcaZ(); - + const auto dca = std::sqrt(pow(dcaXY, 2.) + pow(dcaZ, 2.)); /// check whether the most open cuts are fulfilled - most of this should have already be done by the filters const static int nPtMinSel = getNSelections(femtoDreamTrackSelection::kpTMin); @@ -244,6 +250,7 @@ bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track) const static int nTPCsMaxSel = getNSelections(femtoDreamTrackSelection::kTPCsClsMax); const static int nDCAxyMaxSel = getNSelections(femtoDreamTrackSelection::kDCAxyMax); const static int nDCAzMaxSel = getNSelections(femtoDreamTrackSelection::kDCAzMax); + const static int nDCAMinSel = getNSelections(femtoDreamTrackSelection::kDCAMin); const static float pTMin = getMinimalSelection(femtoDreamTrackSelection::kpTMin, femtoDreamSelection::kLowerLimit); const static float pTMax = getMinimalSelection(femtoDreamTrackSelection::kpTMax, femtoDreamSelection::kUpperLimit); @@ -254,6 +261,7 @@ bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track) const static float sTPCMax = getMinimalSelection(femtoDreamTrackSelection::kTPCsClsMax, femtoDreamSelection::kUpperLimit); const static float dcaXYMax = getMinimalSelection(femtoDreamTrackSelection::kDCAxyMax, femtoDreamSelection::kAbsUpperLimit); const static float dcaZMax = getMinimalSelection(femtoDreamTrackSelection::kDCAzMax, femtoDreamSelection::kAbsUpperLimit); + const static float dcaMin = getMinimalSelection(femtoDreamTrackSelection::kDCAMin, femtoDreamSelection::kAbsLowerLimit); if (nPtMinSel > 0 && pT < pTMin) { return false; @@ -282,6 +290,9 @@ bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track) if (nDCAzMaxSel > 0 && std::abs(dcaZ) > dcaZMax) { return false; } + if (nDCAMinSel > 0 && std::abs(dca) < dcaMin) { + return false; + } return true; } @@ -299,6 +310,8 @@ uint64_t FemtoDreamTrackSelection::getCutContainer(T const& track) const auto tpcNClsS = track.tpcNClsShared(); const auto dcaXY = track.dcaXY(); const auto dcaZ = track.dcaZ(); + const auto dca = std::sqrt(pow(dcaXY, 2.) + pow(dcaZ, 2.)); + std::vector pidTPC, pidTOF; for (auto it : mPIDspecies) { pidTPC.push_back(getNsigmaTPC(track, it)); @@ -349,6 +362,9 @@ uint64_t FemtoDreamTrackSelection::getCutContainer(T const& track) case (femtoDreamTrackSelection::kDCAzMax): observable = dcaZ; break; + case (femtoDreamTrackSelection::kDCAMin): + observable = dca; + break; case (femtoDreamTrackSelection::kPIDnSigmaMax): break; } @@ -371,6 +387,7 @@ void FemtoDreamTrackSelection::fillQA(T const& track) mHistogramRegistry->fill(HIST("TrackCuts/tpcnsharedhist"), track.tpcNClsShared()); mHistogramRegistry->fill(HIST("TrackCuts/dcaXYhist"), track.pt(), track.dcaXY()); mHistogramRegistry->fill(HIST("TrackCuts/dcaZhist"), track.pt(), track.dcaZ()); + mHistogramRegistry->fill(HIST("TrackCuts/dcahist"), std::sqrt(pow(track.dcaXY(), 2.) + pow(track.dcaZ(), 2.))); mHistogramRegistry->fill(HIST("TrackCuts/tpcdEdx"), track.tpcInnerParam(), track.tpcSignal()); mHistogramRegistry->fill(HIST("TrackCuts/tofSignal"), track.p(), track.tofSignal()); } @@ -390,6 +407,8 @@ void FemtoDreamTrackSelection::fillCutQA(T const& track, uint64_t cutContainer) const auto tpcNClsS = track.tpcNClsShared(); const auto dcaXY = track.dcaXY(); const auto dcaZ = track.dcaZ(); + const auto dca = std::sqrt(pow(dcaXY, 2.) + pow(dcaZ, 2.)); + std::vector pidTPC, pidTOF; for (auto it : mPIDspecies) { pidTPC.push_back(getNsigmaTPC(track, it)); @@ -478,6 +497,11 @@ void FemtoDreamTrackSelection::fillCutQA(T const& track, uint64_t cutContainer) mHistogramRegistry->fill(HIST("TrackCutsQA/dcaZMax"), currentTrackSelCounter, dcaZ); } break; + case (femtoDreamTrackSelection::kDCAMin): + if (isTrue) { + mHistogramRegistry->fill(HIST("TrackCutsQA/dcaMin"), currentTrackSelCounter, dca); + } + break; case (femtoDreamTrackSelection::kPIDnSigmaMax): break; } diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamV0Selection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamV0Selection.h new file mode 100644 index 0000000000000..f4ec033dba5a5 --- /dev/null +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamV0Selection.h @@ -0,0 +1,240 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file FemtoDreamV0Selection.h +/// \brief Definition of the FemtoDreamV0Selection +/// \author Valentina Mantovani Sarti, TU München valentina.mantovani-sarti@tum.de and Andi Mathis, TU München, andreas.mathis@ph.tum.de + +#ifndef ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMV0SELECTION_H_ +#define ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMV0SELECTION_H_ + +#include "FemtoDreamObjectSelection.h" +#include "FemtoDreamTrackSelection.h" +#include "FemtoDreamSelection.h" + +#include "ReconstructionDataFormats/PID.h" +#include "AnalysisCore/RecoDecay.h" +#include "Framework/HistogramRegistry.h" +#include +#include + +using namespace o2::framework; + +namespace o2::analysis +{ +namespace femtoDream +{ +namespace femtoDreamV0Selection +{ +enum V0Sel { kpTV0Min, + kpTV0Max, + kDCAV0DaughMax, + kCPAV0Min, + kTranRadV0Min, + kTranRadV0Max, + kDecVtxMax }; +enum ChildTrackType { kPosTrack, + kNegTrack }; +} // namespace femtoDreamV0Selection + +/// \class FemtoDreamV0Selection +/// \brief Cut class to contain and execute all cuts applied to V0s +class FemtoDreamV0Selection : public FemtoDreamObjectSelection +{ + public: + /// Initializes histograms for the task + void init(HistogramRegistry* registry); + + template + bool isSelectedMinimal(C const& col, V const& v0, T const& posTrack, T const& negTrack); + + template + std::vector getCutContainer(C const& col, V const& v0, T const& posTrack, T const& negTrack); + + template + void fillQA(C const& col, V const& v0); + + template + void setChildCuts(femtoDreamV0Selection::ChildTrackType child, T1 selVal, T2 selVar, femtoDreamSelection::SelectionType selType) + { + if (child == femtoDreamV0Selection::kPosTrack) { + PosDaughTrack.setSelection(selVal, selVar, selType); + } else if (child == femtoDreamV0Selection::kNegTrack) { + NegDaughTrack.setSelection(selVal, selVar, selType); + } + } + + private: + FemtoDreamTrackSelection PosDaughTrack; + FemtoDreamTrackSelection NegDaughTrack; + + ClassDefNV(FemtoDreamV0Selection, 1); +}; // namespace femtoDream + +void FemtoDreamV0Selection::init(HistogramRegistry* registry) +{ + if (registry) { + mHistogramRegistry = registry; + fillSelectionHistogram("V0Cuts/cuthist"); + + /// \todo this should be an automatic check in the parent class, and the return type should be templated + int nSelections = getNSelections(); + if (8 * sizeof(uint64_t) < nSelections) { + LOGF(error, "Number of selections to large for your container - quitting!"); + } + /// \todo initialize histograms for children tracks of v0s + mHistogramRegistry->add("V0Cuts/pThist", "; #it{p}_{T} (GeV/#it{c}); Entries", kTH1F, {{1000, 0, 10}}); + mHistogramRegistry->add("V0Cuts/etahist", "; #eta; Entries", kTH1F, {{1000, -1, 1}}); + mHistogramRegistry->add("V0Cuts/phihist", "; #phi; Entries", kTH1F, {{1000, 0, 2. * M_PI}}); + mHistogramRegistry->add("V0Cuts/dcaDauToVtx", "; DCADaug_{Vtx} (cm); Entries", kTH1F, {{1000, 0, 10}}); + mHistogramRegistry->add("V0Cuts/transRadius", "; #it{r}_{xy} (cm); Entries", kTH1F, {{1500, 0, 150}}); + mHistogramRegistry->add("V0Cuts/decayVtxXPV", "; #it{iVtx}_{x} (cm); Entries", kTH1F, {{2000, 0, 200}}); + mHistogramRegistry->add("V0Cuts/decayVtxYPV", "; #it{iVtx}_{y} (cm)); Entries", kTH1F, {{2000, 0, 200}}); + mHistogramRegistry->add("V0Cuts/decayVtxZPV", "; #it{iVtx}_{z} (cm); Entries", kTH1F, {{2000, 0, 200}}); + mHistogramRegistry->add("V0Cuts/cpa", "; #it{cos(#alpha)}; Entries", kTH1F, {{1000, 0.9, 1.}}); + mHistogramRegistry->add("V0Cuts/cpapTBins", "; #it{p}_{T} (GeV/#it{c}); #it{cos(#alpha)}", kTH2F, {{8, 0.3, 4.3}, {1000, 0.9, 1.}}); + } +} + +template +bool FemtoDreamV0Selection::isSelectedMinimal(C const& col, V const& v0, T const& posTrack, T const& negTrack) +{ + const auto signPos = posTrack.sign(); + const auto signNeg = negTrack.sign(); + // printf("pos sign = %i --- neg sign = %i\n", signPos, signNeg); + if (signPos < 0 || signNeg > 0) { + printf("-Something wrong in isSelectedMinimal--\n"); + printf("ERROR - Wrong sign for V0 daughters\n"); + } + const float pT = v0.pt(); + const std::vector decVtx = {v0.x(), v0.y(), v0.z()}; + const float tranRad = v0.v0radius(); + const float dcaDaughv0 = v0.dcaV0daughters(); + const float cpav0 = v0.v0cosPA(col.posX(), col.posY(), col.posZ()); + + /// check whether the most open cuts are fulfilled - most of this should have already be done by the filters + const static int nPtV0MinSel = getNSelections(femtoDreamV0Selection::kpTV0Min); + const static int nPtV0MaxSel = getNSelections(femtoDreamV0Selection::kpTV0Max); + const static int nDCAV0DaughMax = getNSelections(femtoDreamV0Selection::kDCAV0DaughMax); + const static int nCPAV0Min = getNSelections(femtoDreamV0Selection::kCPAV0Min); + const static int nTranRadV0Min = getNSelections(femtoDreamV0Selection::kTranRadV0Min); + const static int nTranRadV0Max = getNSelections(femtoDreamV0Selection::kTranRadV0Max); + const static int nDecVtxMax = getNSelections(femtoDreamV0Selection::kDecVtxMax); + + const static float pTV0Min = getMinimalSelection(femtoDreamV0Selection::kpTV0Min, femtoDreamSelection::kLowerLimit); + const static float pTV0Max = getMinimalSelection(femtoDreamV0Selection::kpTV0Max, femtoDreamSelection::kUpperLimit); + const static float DCAV0DaughMax = getMinimalSelection(femtoDreamV0Selection::kDCAV0DaughMax, femtoDreamSelection::kUpperLimit); + const static float CPAV0Min = getMinimalSelection(femtoDreamV0Selection::kCPAV0Min, femtoDreamSelection::kLowerLimit); + const static float TranRadV0Min = getMinimalSelection(femtoDreamV0Selection::kTranRadV0Min, femtoDreamSelection::kLowerLimit); + const static float TranRadV0Max = getMinimalSelection(femtoDreamV0Selection::kTranRadV0Max, femtoDreamSelection::kUpperLimit); + const static float DecVtxMax = getMinimalSelection(femtoDreamV0Selection::kDecVtxMax, femtoDreamSelection::kAbsUpperLimit); + + if (nPtV0MinSel > 0 && pT < pTV0Min) { + return false; + } + if (nPtV0MaxSel > 0 && pT > pTV0Max) { + return false; + } + if (nDCAV0DaughMax > 0 && dcaDaughv0 > DCAV0DaughMax) { + return false; + } + if (nCPAV0Min > 0 && cpav0 < CPAV0Min) { + return false; + } + if (nTranRadV0Min > 0 && tranRad < TranRadV0Min) { + return false; + } + if (nTranRadV0Max > 0 && tranRad > TranRadV0Max) { + return false; + } + for (int i = 0; i < decVtx.size(); i++) { + if (nDecVtxMax > 0 && decVtx.at(i) > DecVtxMax) { + return false; + } + } + if (!PosDaughTrack.isSelectedMinimal(posTrack)) { + return false; + } + if (!NegDaughTrack.isSelectedMinimal(negTrack)) { + return false; + } + return true; +} + +/// the CosPA of V0 needs as argument the posXYZ of collisions vertex so we need to pass the collsion as well +template +std::vector FemtoDreamV0Selection::getCutContainer(C const& col, V const& v0, T const& posTrack, T const& negTrack) +{ + uint64_t outputPosTrack = PosDaughTrack.getCutContainer(posTrack); + uint64_t outputNegTrack = NegDaughTrack.getCutContainer(negTrack); + uint64_t output = 0; + size_t counter = 0; + + const auto pT = v0.pt(); + const auto tranRad = v0.v0radius(); + const auto dcaDaughv0 = v0.dcaV0daughters(); + const auto cpav0 = v0.v0cosPA(col.posX(), col.posY(), col.posZ()); + const std::vector decVtx = {v0.x(), v0.y(), v0.z()}; + + float observable; + for (auto& sel : mSelections) { + const auto selVariable = sel.getSelectionVariable(); + if (selVariable == femtoDreamV0Selection::kDecVtxMax) { + for (size_t i = 0; i < decVtx.size(); ++i) { + auto decVtxValue = decVtx.at(i); + sel.checkSelectionSetBit(decVtxValue, output, counter); + } + } else { + switch (selVariable) { + case (femtoDreamV0Selection::kpTV0Min): + case (femtoDreamV0Selection::kpTV0Max): + observable = pT; + break; + case (femtoDreamV0Selection::kDCAV0DaughMax): + observable = dcaDaughv0; + break; + case (femtoDreamV0Selection::kCPAV0Min): + observable = cpav0; + break; + case (femtoDreamV0Selection::kTranRadV0Min): + case (femtoDreamV0Selection::kTranRadV0Max): + observable = tranRad; + break; + case (femtoDreamV0Selection::kDecVtxMax): + break; + } + sel.checkSelectionSetBit(observable, output, counter); + } + } + return {{outputPosTrack, outputNegTrack, output}}; +} + +template +void FemtoDreamV0Selection::fillQA(C const& col, V const& v0) +{ + if (mHistogramRegistry) { + mHistogramRegistry->fill(HIST("V0Cuts/pThist"), v0.pt()); + mHistogramRegistry->fill(HIST("V0Cuts/etahist"), v0.eta()); + mHistogramRegistry->fill(HIST("V0Cuts/phihist"), v0.phi()); + mHistogramRegistry->fill(HIST("V0Cuts/dcaDauToVtx"), v0.dcaV0daughters()); + mHistogramRegistry->fill(HIST("V0Cuts/transRadius"), v0.v0radius()); + mHistogramRegistry->fill(HIST("V0Cuts/decayVtxXPV"), v0.x()); + mHistogramRegistry->fill(HIST("V0Cuts/decayVtxYPV"), v0.y()); + mHistogramRegistry->fill(HIST("V0Cuts/decayVtxZPV"), v0.z()); + mHistogramRegistry->fill(HIST("V0Cuts/cpa"), v0.v0cosPA(col.posX(), col.posY(), col.posZ())); + mHistogramRegistry->fill(HIST("V0Cuts/cpapTBins"), v0.pt(), v0.v0cosPA(col.posX(), col.posY(), col.posZ())); + } +} + +} // namespace femtoDream +} // namespace o2::analysis + +#endif /* ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMV0SELECTION_H_ */ From c965aa040f37bc2ca227508c85ae0765a1259132 Mon Sep 17 00:00:00 2001 From: wiechula Date: Mon, 19 Jul 2021 12:07:08 +0200 Subject: [PATCH 219/314] TPC: make canvas own histograms In case of calling a draw function which does not direclty return the hitogram pointers, but it is drawn directly on a canvase, make the canvas own the histogram, such that it will be deleted when deleting the canvase or calling Clear(). --- Detectors/TPC/base/src/Painter.cxx | 21 +++++++++++++++++---- 1 file changed, 17 insertions(+), 4 deletions(-) diff --git a/Detectors/TPC/base/src/Painter.cxx b/Detectors/TPC/base/src/Painter.cxx index 79f6206a34f28..05073b3e65c62 100644 --- a/Detectors/TPC/base/src/Painter.cxx +++ b/Detectors/TPC/base/src/Painter.cxx @@ -167,6 +167,12 @@ TCanvas* painter::draw(const CalDet& calDet, int nbins1D, float xMin1D, float // reset the buffer size TH1::SetDefaultBufferSize(bufferSize); + // associate histograms to canvas + hAside1D->SetBit(TObject::kCanDelete); + hCside1D->SetBit(TObject::kCanDelete); + hAside2D->SetBit(TObject::kCanDelete); + hCside2D->SetBit(TObject::kCanDelete); + return c; } @@ -181,6 +187,9 @@ TCanvas* painter::draw(const CalArray& calArray) hist->Draw("colz"); + // associate histograms to canvas + hist->SetBit(TObject::kCanDelete); + return c; } @@ -342,14 +351,14 @@ std::vector painter::makeSummaryCanvases(const CalDet& calDet, int cROCs1D = new TCanvas(fmt::format("c_ROCs_{}_1D", calName).data(), fmt::format("{} values for each ROC", calName).data(), 1400, 1000); cROCs2D = new TCanvas(fmt::format("c_ROCs_{}_2D", calName).data(), fmt::format("{} values for each ROC", calName).data(), 1400, 1000); } - vecCanvases.emplace_back(cSides); - vecCanvases.emplace_back(cROCs1D); - vecCanvases.emplace_back(cROCs2D); - cSides = draw(calDet, nbins1D, xMin1D, xMax1D, cSides); cROCs1D->DivideSquare(nROCs); cROCs2D->DivideSquare(nROCs); + vecCanvases.emplace_back(cSides); + vecCanvases.emplace_back(cROCs1D); + vecCanvases.emplace_back(cROCs2D); + // ===| produce plots for each ROC |=== size_t pad = 1; for (size_t iroc = 0; iroc < calDet.getData().size(); ++iroc) { @@ -381,6 +390,10 @@ std::vector painter::makeSummaryCanvases(const CalDet& calDet, int h2D->Draw("colz"); ++pad; + + // associate histograms to canvas + h1D->SetBit(TObject::kCanDelete); + h2D->SetBit(TObject::kCanDelete); } return vecCanvases; From 75f92bb5cd11415e8759b023628b2cd8530418cb Mon Sep 17 00:00:00 2001 From: Antonio FRANCO Date: Mon, 19 Jul 2021 09:44:19 +0200 Subject: [PATCH 220/314] Remove obsolete functions form Geo.cxx --- Detectors/HMPID/base/include/HMPIDBase/Geo.h | 3 -- Detectors/HMPID/base/src/Geo.cxx | 56 +------------------- 2 files changed, 1 insertion(+), 58 deletions(-) diff --git a/Detectors/HMPID/base/include/HMPIDBase/Geo.h b/Detectors/HMPID/base/include/HMPIDBase/Geo.h index fe830c500769b..104c8f2142301 100644 --- a/Detectors/HMPID/base/include/HMPIDBase/Geo.h +++ b/Detectors/HMPID/base/include/HMPIDBase/Geo.h @@ -118,9 +118,6 @@ class Geo static constexpr int MAXXPHOTO = 79; static constexpr int MAXYPHOTO = 47; - static void Module2Equipment(int Mod, int Row, int Col, int* Equi, int* Colu, int* Dilo, int* Chan); - static void Equipment2Module(int Equi, int Colu, int Dilo, int Chan, int* Mod, int* Row, int* Col); - // from //static constexpr Bool_t FEAWITHMASKS[NSECTORS] = // // TOF sectors with Nino masks: 0, 8, 9, 10, 16 diff --git a/Detectors/HMPID/base/src/Geo.cxx b/Detectors/HMPID/base/src/Geo.cxx index 9764764d11989..ad8d66d425c80 100644 --- a/Detectors/HMPID/base/src/Geo.cxx +++ b/Detectors/HMPID/base/src/Geo.cxx @@ -12,7 +12,7 @@ /// /// \file Geo.h /// \author Antonio Franco - INFN Bari -/// \version 1.0 +/// \version 1.1 /// \date 15/02/2021 #include "HMPIDBase/Geo.h" @@ -35,58 +35,4 @@ void Geo::Init() { LOG(INFO) << "hmpid::Geo: Initialization of HMPID parameters"; } -// =================== General Purposes HMPID Functions ======================= -/// Functions to translate coordinates : from Module,Col,Row to Equipment,Col,Dilogic,Channel -/// Digit coordinates " Mod,Row,Col := Mod = {0..6} Row = {0..159} Col = {0..143} -/// (0,0) Left Bottom -/// -/// Hardware coordinates Equ,Col,Dil,Cha := Equ = {0..13} Col = {0..23} Dil = {0..9} Cha = {0..47} -/// -/// (0,0,0,0) Right Top (1,0,0,0) Left Bottom -/// -/// Module2Equipment : Convert coordinates system -/// This was replaced with that defined in DIGIT class -/// (Module, Row, Col -> Equi, Colu, Dilo, Chan) -/// **** OBSOLETE **** -void Geo::Module2Equipment(int Mod, int Row, int Col, int* Equi, int* Colu, int* Dilo, int* Chan) -{ - int y2a[6] = {5, 3, 1, 0, 2, 4}; - int ch, ax, ay; - if (ax > Geo::MAXHALFXROWS) { - *Equi = ch * Geo::EQUIPMENTSPERMODULE + 1; - ax = ax - Geo::HALFXROWS; - } else { - *Equi = ch * Geo::EQUIPMENTSPERMODULE; - ax = Geo::MAXHALFXROWS - ax; - ay = Geo::MAXYCOLS - ay; - } - *Dilo = ax / Geo::DILOPADSROWS; - *Colu = ay / Geo::DILOPADSCOLS; - *Chan = (ax % Geo::DILOPADSROWS) * Geo::DILOPADSCOLS + y2a[ay % Geo::DILOPADSCOLS]; - return; -} - -/// Equipment2Module : Convert coordinates system -/// This was replaced with that defined in DIGIT class -/// (Equi, Colu, Dilo, Chan -> Module, Row, Col) -/// **** OBSOLETE **** -void Geo::Equipment2Module(int Equi, int Colu, int Dilo, int Chan, int* Mod, int* Row, int* Col) -{ - if (Equi < 0 || Equi >= Geo::MAXEQUIPMENTS || Colu < 0 || Colu >= Geo::N_COLUMNS || - Dilo < 0 || Dilo >= Geo::N_DILOGICS || Chan < 0 || Chan >= Geo::N_CHANNELS) { - return; - } - - int a2y[6] = {3, 2, 4, 1, 5, 0}; //pady for a given padress (for single DILOGIC chip) - int ch = Equi / Geo::EQUIPMENTSPERMODULE; // The Module - int tmp = (23 - Colu) / Geo::N_COLXSEGMENT; - int pc = (Equi % Geo::EQUIPMENTSPERMODULE) ? 5 - 2 * tmp : 2 * tmp; // The PhotoCatode - int px = (Geo::N_DILOGICS - Dilo) * Geo::DILOPADSROWS - Chan / Geo::DILOPADSCOLS - 1; - tmp = (Equi % Geo::EQUIPMENTSPERMODULE) ? Colu : (23 - Colu); - int py = Geo::DILOPADSCOLS * (tmp % Geo::DILOPADSROWS) + a2y[Chan % Geo::DILOPADSCOLS]; - *Mod = ch; - *Row = px; - *Col = py; - return; -} From 151e0ab1df8e49c660fd679fd0109cf844af9075 Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Mon, 19 Jul 2021 04:25:44 +0300 Subject: [PATCH 221/314] Fix invalid iterator use UB mCache.pop_front() invalidates iterators to the first element. Here, the current loop iterator value is always iterator to the first element, so, in loop exit condition comparison against past-the-end iterator, the loop iterator will be invalid. Using invalid iterators in comparison may have undefined behavior. --- Detectors/FIT/FV0/simulation/src/Digitizer.cxx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Detectors/FIT/FV0/simulation/src/Digitizer.cxx b/Detectors/FIT/FV0/simulation/src/Digitizer.cxx index 17b008db00799..86cf912f5b0b4 100644 --- a/Detectors/FIT/FV0/simulation/src/Digitizer.cxx +++ b/Detectors/FIT/FV0/simulation/src/Digitizer.cxx @@ -206,7 +206,8 @@ void Digitizer::flush(std::vector& digitsBC, std::vector& digitsTrig, o2::dataformats::MCTruthContainer& labels) { - for (auto const& bc : mCache) { + while (!mCache.empty()) { + auto const& bc = mCache.front(); if (mIntRecord.differenceInBC(bc) > NBC2Cache) { // Build events that are separated by NBC2Cache BCs from current BC storeBC(bc, digitsBC, digitsCh, digitsTrig, labels); mCache.pop_front(); From c6cf6e9b1daae24c9a3c67651f7c69bb85a01cf2 Mon Sep 17 00:00:00 2001 From: shahoian Date: Mon, 19 Jul 2021 11:33:55 +0200 Subject: [PATCH 222/314] Safer way to erase TimeSlots --- .../include/DetectorsCalibration/TimeSlotCalibration.h | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) diff --git a/Detectors/Calibration/include/DetectorsCalibration/TimeSlotCalibration.h b/Detectors/Calibration/include/DetectorsCalibration/TimeSlotCalibration.h index 0dcfbffd9b6c9..8272dff3abdc4 100644 --- a/Detectors/Calibration/include/DetectorsCalibration/TimeSlotCalibration.h +++ b/Detectors/Calibration/include/DetectorsCalibration/TimeSlotCalibration.h @@ -181,7 +181,7 @@ void TimeSlotCalibration::checkSlotsToFinalize(TFType tf, int } } else { // check if some slots are done - for (auto slot = mSlots.begin(); slot != mSlots.end(); slot++) { + for (auto slot = mSlots.begin(); slot != mSlots.end();) { //if (maxDelay == 0 || (slot->getTFEnd() + maxDelay) < tf) { if ((slot->getTFEnd() + maxDelay) < tf) { if (hasEnoughData(*slot)) { @@ -197,12 +197,9 @@ void TimeSlotCalibration::checkSlotsToFinalize(TFType tf, int } mLastClosedTF = slot->getTFEnd() + 1; // will not accept any TF below this LOG(INFO) << "closing slot " << slot->getTFStart() << " <= TF <= " << slot->getTFEnd(); - mSlots.erase(slot); + slot = mSlots.erase(slot); } else { - break; - } - if (mSlots.empty()) { // since erasing the very last entry may invalidate mSlots.end() - break; + break; // all following slots will be even closer to the new TF } } } From 7056c01b24a3ca4b0a71293d8c94e0e04a7b0945 Mon Sep 17 00:00:00 2001 From: Matteo Concas Date: Fri, 16 Jul 2021 19:01:19 +0200 Subject: [PATCH 223/314] Set configurable GPU device from CLI Set device number in outfile name --- GPU/GPUbenchmark/Shared/Kernels.h | 2 +- GPU/GPUbenchmark/Shared/Utils.h | 1 + GPU/GPUbenchmark/benchmark.cxx | 9 +++------ GPU/GPUbenchmark/cuda/Kernels.cu | 16 ++++++++++++---- 4 files changed, 17 insertions(+), 11 deletions(-) diff --git a/GPU/GPUbenchmark/Shared/Kernels.h b/GPU/GPUbenchmark/Shared/Kernels.h index a4e7f71440347..a504893c05069 100644 --- a/GPU/GPUbenchmark/Shared/Kernels.h +++ b/GPU/GPUbenchmark/Shared/Kernels.h @@ -50,7 +50,7 @@ class GPUbenchmark final int nStreams, int nLaunches, int blocks, int threads, T&... args); // Main interface - void globalInit(const int deviceId); // Allocate scratch buffers and compute runtime parameters + void globalInit(); // Allocate scratch buffers and compute runtime parameters void run(); // Execute all specified callbacks void globalFinalize(); // Cleanup void printDevices(); // Dump info diff --git a/GPU/GPUbenchmark/Shared/Utils.h b/GPU/GPUbenchmark/Shared/Utils.h index 6d3400aa9a6ec..64e176a25674b 100644 --- a/GPU/GPUbenchmark/Shared/Utils.h +++ b/GPU/GPUbenchmark/Shared/Utils.h @@ -47,6 +47,7 @@ enum class SplitLevel { struct benchmarkOpts { benchmarkOpts() = default; + int deviceId = 0; float chunkReservedGB = 1.f; int nRegions = 2; float freeMemoryFractionToAllocate = 0.95f; diff --git a/GPU/GPUbenchmark/benchmark.cxx b/GPU/GPUbenchmark/benchmark.cxx index 7ee638594f9e3..62d61bceb5fc1 100644 --- a/GPU/GPUbenchmark/benchmark.cxx +++ b/GPU/GPUbenchmark/benchmark.cxx @@ -21,11 +21,7 @@ bool parseArgs(o2::benchmark::benchmarkOpts& conf, int argc, const char* argv[]) bpo::options_description options("Benchmark options"); options.add_options()( "help,h", "Print help message.")( - "chunkSize,c", bpo::value()->default_value(1.f), "Size of scratch partitions (GB).")( - "regions,r", bpo::value()->default_value(2), "Number of memory regions to partition RAM in.")( - "freeMemFraction,f", bpo::value()->default_value(0.95f), "Fraction of free memory to be allocated (min: 0.f, max: 1.f).")( - "launches,l", bpo::value()->default_value(10), "Number of iterations in reading kernels.")( - "ntests,n", bpo::value()->default_value(1), "Number of times each test is run."); + "device,d", bpo::value()->default_value(0), "Id of the device to run test on, EPN targeted.")("chunkSize,c", bpo::value()->default_value(1.f), "Size of scratch partitions (GB).")("regions,r", bpo::value()->default_value(2), "Number of memory regions to partition RAM in.")("freeMemFraction,f", bpo::value()->default_value(0.95f), "Fraction of free memory to be allocated (min: 0.f, max: 1.f).")("launches,l", bpo::value()->default_value(10), "Number of iterations in reading kernels.")("ntests,n", bpo::value()->default_value(1), "Number of times each test is run."); try { bpo::store(parse_command_line(argc, argv, options), vm); if (vm.count("help")) { @@ -42,6 +38,7 @@ bool parseArgs(o2::benchmark::benchmarkOpts& conf, int argc, const char* argv[]) return false; } + conf.deviceId = vm["device"].as(); conf.freeMemoryFractionToAllocate = vm["freeMemFraction"].as(); conf.chunkReservedGB = vm["chunkSize"].as(); conf.nRegions = vm["regions"].as(); @@ -62,7 +59,7 @@ int main(int argc, const char* argv[]) return -1; } - std::shared_ptr writer = std::make_shared(); + std::shared_ptr writer = std::make_shared(std::to_string(opts.deviceId) + "_benchmark_results.root"); o2::benchmark::GPUbenchmark bm_char{opts, writer}; bm_char.run(); diff --git a/GPU/GPUbenchmark/cuda/Kernels.cu b/GPU/GPUbenchmark/cuda/Kernels.cu index 8af91423c12e5..4d5f7e3fa7f3f 100644 --- a/GPU/GPUbenchmark/cuda/Kernels.cu +++ b/GPU/GPUbenchmark/cuda/Kernels.cu @@ -296,6 +296,7 @@ float GPUbenchmark::benchmarkSync(void (*kernel)(T...), int nLaunches, int blocks, int threads, T&... args) // run for each chunk (id is passed in variadic args) { cudaEvent_t start, stop; + GPUCHECK(cudaSetDevice(mOptions.deviceId)); GPUCHECK(cudaEventCreate(&start)); GPUCHECK(cudaEventCreate(&stop)); @@ -320,7 +321,7 @@ std::vector GPUbenchmark::benchmarkAsync(void (*kernel)(int, std::vector starts(nStreams), stops(nStreams); std::vector streams(nStreams); std::vector results(nStreams); - + GPUCHECK(cudaSetDevice(mOptions.deviceId)); for (auto iStream{0}; iStream < nStreams; ++iStream) { // one stream per chunk GPUCHECK(cudaStreamCreate(&(streams.at(iStream)))); GPUCHECK(cudaEventCreate(&(starts[iStream]))); @@ -357,14 +358,15 @@ void GPUbenchmark::printDevices() } template -void GPUbenchmark::globalInit(const int deviceId) +void GPUbenchmark::globalInit() { cudaDeviceProp props; size_t free; // Fetch and store features - GPUCHECK(cudaGetDeviceProperties(&props, deviceId)); + GPUCHECK(cudaGetDeviceProperties(&props, mOptions.deviceId)); GPUCHECK(cudaMemGetInfo(&free, &mState.totalMemory)); + GPUCHECK(cudaSetDevice(mOptions.deviceId)); mState.chunkReservedGB = mOptions.chunkReservedGB; mState.iterations = mOptions.kernelLaunches; @@ -394,6 +396,7 @@ void GPUbenchmark::readInit() { std::cout << ">>> Initializing read benchmarks with \e[1m" << mOptions.nTests << "\e[0m runs and \e[1m" << mOptions.kernelLaunches << "\e[0m kernel launches" << std::endl; mState.hostReadResultsVector.resize(mState.getMaxChunks()); + GPUCHECK(cudaSetDevice(mOptions.deviceId)); GPUCHECK(cudaMalloc(reinterpret_cast(&(mState.deviceReadResultsPtr)), mState.getMaxChunks() * sizeof(chunk_type))); } @@ -528,6 +531,7 @@ void GPUbenchmark::writeInit() { std::cout << ">>> Initializing write benchmarks with \e[1m" << mOptions.nTests << "\e[0m runs and \e[1m" << mOptions.kernelLaunches << "\e[0m kernel launches" << std::endl; mState.hostWriteResultsVector.resize(mState.getMaxChunks()); + GPUCHECK(cudaSetDevice(mOptions.deviceId)); GPUCHECK(cudaMalloc(reinterpret_cast(&(mState.deviceWriteResultsPtr)), mState.getMaxChunks() * sizeof(chunk_type))); } @@ -651,6 +655,7 @@ void GPUbenchmark::writeConcurrent(SplitLevel sl, int nRegions) template void GPUbenchmark::writeFinalize() { + GPUCHECK(cudaSetDevice(mOptions.deviceId)); GPUCHECK(cudaMemcpy(mState.hostWriteResultsVector.data(), mState.deviceWriteResultsPtr, mState.getMaxChunks() * sizeof(chunk_type), cudaMemcpyDeviceToHost)); GPUCHECK(cudaFree(mState.deviceWriteResultsPtr)); std::cout << " └ done." << std::endl; @@ -662,6 +667,7 @@ void GPUbenchmark::copyInit() { std::cout << ">>> Initializing copy benchmarks with \e[1m" << mOptions.nTests << "\e[0m runs and \e[1m" << mOptions.kernelLaunches << "\e[0m kernel launches" << std::endl; mState.hostCopyInputsVector.resize(mState.getMaxChunks()); + GPUCHECK(cudaSetDevice(mOptions.deviceId)); GPUCHECK(cudaMalloc(reinterpret_cast(&(mState.deviceCopyInputsPtr)), mState.getMaxChunks() * sizeof(chunk_type))); GPUCHECK(cudaMemset(mState.deviceCopyInputsPtr, 1, mState.getMaxChunks() * sizeof(chunk_type))); } @@ -787,6 +793,7 @@ void GPUbenchmark::copyConcurrent(SplitLevel sl, int nRegions) template void GPUbenchmark::copyFinalize() { + GPUCHECK(cudaSetDevice(mOptions.deviceId)); GPUCHECK(cudaMemcpy(mState.hostCopyInputsVector.data(), mState.deviceCopyInputsPtr, mState.getMaxChunks() * sizeof(chunk_type), cudaMemcpyDeviceToHost)); GPUCHECK(cudaFree(mState.deviceCopyInputsPtr)); std::cout << " └ done." << std::endl; @@ -795,13 +802,14 @@ void GPUbenchmark::copyFinalize() template void GPUbenchmark::globalFinalize() { + GPUCHECK(cudaSetDevice(mOptions.deviceId)); GPUCHECK(cudaFree(mState.scratchPtr)); } template void GPUbenchmark::run() { - globalInit(0); + globalInit(); readInit(); // Reading in whole memory From 88c5f3c42ac8181c5b8d26b91947779dc6772bab Mon Sep 17 00:00:00 2001 From: Matteo Concas Date: Sun, 18 Jul 2021 12:05:17 +0200 Subject: [PATCH 224/314] Add toggle for test types --- GPU/GPUbenchmark/Shared/Utils.h | 7 +++ GPU/GPUbenchmark/benchmark.cxx | 24 ++++++++++- GPU/GPUbenchmark/cuda/Kernels.cu | 74 +++++++++++++++++++------------- 3 files changed, 73 insertions(+), 32 deletions(-) diff --git a/GPU/GPUbenchmark/Shared/Utils.h b/GPU/GPUbenchmark/Shared/Utils.h index 64e176a25674b..9c8c4fcee2ebc 100644 --- a/GPU/GPUbenchmark/Shared/Utils.h +++ b/GPU/GPUbenchmark/Shared/Utils.h @@ -34,6 +34,12 @@ #define GB (1024 * 1024 * 1024) +enum class Test { + Read, + Write, + Copy +}; + namespace o2 { namespace benchmark @@ -48,6 +54,7 @@ struct benchmarkOpts { benchmarkOpts() = default; int deviceId = 0; + std::vector tests = {Test::Read, Test::Write, Test::Copy}; float chunkReservedGB = 1.f; int nRegions = 2; float freeMemoryFractionToAllocate = 0.95f; diff --git a/GPU/GPUbenchmark/benchmark.cxx b/GPU/GPUbenchmark/benchmark.cxx index 62d61bceb5fc1..ac6d6d20fdd04 100644 --- a/GPU/GPUbenchmark/benchmark.cxx +++ b/GPU/GPUbenchmark/benchmark.cxx @@ -21,7 +21,13 @@ bool parseArgs(o2::benchmark::benchmarkOpts& conf, int argc, const char* argv[]) bpo::options_description options("Benchmark options"); options.add_options()( "help,h", "Print help message.")( - "device,d", bpo::value()->default_value(0), "Id of the device to run test on, EPN targeted.")("chunkSize,c", bpo::value()->default_value(1.f), "Size of scratch partitions (GB).")("regions,r", bpo::value()->default_value(2), "Number of memory regions to partition RAM in.")("freeMemFraction,f", bpo::value()->default_value(0.95f), "Fraction of free memory to be allocated (min: 0.f, max: 1.f).")("launches,l", bpo::value()->default_value(10), "Number of iterations in reading kernels.")("ntests,n", bpo::value()->default_value(1), "Number of times each test is run."); + "device,d", bpo::value()->default_value(0), "Id of the device to run test on, EPN targeted.")( + "test,t", bpo::value>()->multitoken()->default_value(std::vector{"read", "write", "copy"}, "read, write, copy"), "Tests to be performed.")( + "chunkSize,c", bpo::value()->default_value(1.f), "Size of scratch partitions (GB).")( + "regions,r", bpo::value()->default_value(2), "Number of memory regions to partition RAM in.")( + "freeMemFraction,f", bpo::value()->default_value(0.95f), "Fraction of free memory to be allocated (min: 0.f, max: 1.f).")( + "launches,l", bpo::value()->default_value(10), "Number of iterations in reading kernels.")( + "nruns,n", bpo::value()->default_value(1), "Number of times each test is run."); try { bpo::store(parse_command_line(argc, argv, options), vm); if (vm.count("help")) { @@ -43,7 +49,21 @@ bool parseArgs(o2::benchmark::benchmarkOpts& conf, int argc, const char* argv[]) conf.chunkReservedGB = vm["chunkSize"].as(); conf.nRegions = vm["regions"].as(); conf.kernelLaunches = vm["launches"].as(); - conf.nTests = vm["ntests"].as(); + conf.nTests = vm["nruns"].as(); + + conf.tests.clear(); + for (auto& test : vm["test"].as>()) { + if (test == "read") { + conf.tests.push_back(Test::Read); + } else if (test == "write") { + conf.tests.push_back(Test::Write); + } else if (test == "copy") { + conf.tests.push_back(Test::Copy); + } else { + std::cerr << "Unkonwn test: " << test << std::endl; + exit(1); + } + } return true; } diff --git a/GPU/GPUbenchmark/cuda/Kernels.cu b/GPU/GPUbenchmark/cuda/Kernels.cu index 4d5f7e3fa7f3f..409e5bbf9857a 100644 --- a/GPU/GPUbenchmark/cuda/Kernels.cu +++ b/GPU/GPUbenchmark/cuda/Kernels.cu @@ -761,7 +761,7 @@ void GPUbenchmark::copyConcurrent(SplitLevel sl, int nRegions) break; } case SplitLevel::Threads: { - mResultWriter.get()->addBenchmarkEntry("conc_copy_MB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("conc_copy_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -811,35 +811,49 @@ void GPUbenchmark::run() { globalInit(); - readInit(); - // Reading in whole memory - readSequential(SplitLevel::Blocks); - readSequential(SplitLevel::Threads); - - // Reading in memory regions - readConcurrent(SplitLevel::Blocks); - readConcurrent(SplitLevel::Threads); - readFinalize(); - - writeInit(); - // Write on whole memory - writeSequential(SplitLevel::Blocks); - writeSequential(SplitLevel::Threads); - - // Write on memory regions - writeConcurrent(SplitLevel::Blocks); - writeConcurrent(SplitLevel::Threads); - writeFinalize(); - - copyInit(); - // Copy from input buffer (size = nChunks) on whole memory - copySequential(SplitLevel::Blocks); - copySequential(SplitLevel::Threads); - - // Copy from input buffer (size = nChunks) on memory regions - copyConcurrent(SplitLevel::Blocks); - copyConcurrent(SplitLevel::Threads); - copyFinalize(); + for (auto& test : mOptions.tests) { + switch (test) { + case Test::Read: { + readInit(); + // Reading in whole memory + readSequential(SplitLevel::Blocks); + readSequential(SplitLevel::Threads); + + // Reading in memory regions + readConcurrent(SplitLevel::Blocks); + readConcurrent(SplitLevel::Threads); + readFinalize(); + + break; + } + case Test::Write: { + writeInit(); + // Write on whole memory + writeSequential(SplitLevel::Blocks); + writeSequential(SplitLevel::Threads); + + // Write on memory regions + writeConcurrent(SplitLevel::Blocks); + writeConcurrent(SplitLevel::Threads); + writeFinalize(); + + break; + } + case Test::Copy: { + copyInit(); + // Copy from input buffer (size = nChunks) on whole memory + copySequential(SplitLevel::Blocks); + copySequential(SplitLevel::Threads); + + // Copy from input buffer (size = nChunks) on memory regions + copyConcurrent(SplitLevel::Blocks); + copyConcurrent(SplitLevel::Threads); + copyFinalize(); + + break; + } + } + } GPUbenchmark::globalFinalize(); } From 476bf969dc84f2225be571b52083c1544ad30116 Mon Sep 17 00:00:00 2001 From: Matteo Concas Date: Sun, 18 Jul 2021 22:36:34 +0200 Subject: [PATCH 225/314] Add macro to visualize result --- GPU/GPUbenchmark/CMakeLists.txt | 4 +- GPU/GPUbenchmark/Shared/Kernels.h | 8 +-- GPU/GPUbenchmark/cuda/Kernels.cu | 24 +++---- GPU/GPUbenchmark/macro/showBenchmarks.C | 86 +++++++++++++++++++++++++ 4 files changed, 105 insertions(+), 17 deletions(-) create mode 100644 GPU/GPUbenchmark/macro/showBenchmarks.C diff --git a/GPU/GPUbenchmark/CMakeLists.txt b/GPU/GPUbenchmark/CMakeLists.txt index e008ab4cc0f41..ef26bedb98e9e 100644 --- a/GPU/GPUbenchmark/CMakeLists.txt +++ b/GPU/GPUbenchmark/CMakeLists.txt @@ -55,4 +55,6 @@ if(HIP_ENABLED) # Need to add gpu target also to link flags due to gpu-rdc option target_link_options(${targetName} PUBLIC --amdgpu-target=${HIP_AMDGPUTARGET}) endif() -endif() \ No newline at end of file +endif() + +o2_add_test_root_macro(macro/showBenchmarks.C) \ No newline at end of file diff --git a/GPU/GPUbenchmark/Shared/Kernels.h b/GPU/GPUbenchmark/Shared/Kernels.h index a504893c05069..06e6cbb9839fa 100644 --- a/GPU/GPUbenchmark/Shared/Kernels.h +++ b/GPU/GPUbenchmark/Shared/Kernels.h @@ -50,10 +50,10 @@ class GPUbenchmark final int nStreams, int nLaunches, int blocks, int threads, T&... args); // Main interface - void globalInit(); // Allocate scratch buffers and compute runtime parameters - void run(); // Execute all specified callbacks - void globalFinalize(); // Cleanup - void printDevices(); // Dump info + void globalInit(); // Allocate scratch buffers and compute runtime parameters + void run(); // Execute all specified callbacks + void globalFinalize(); // Cleanup + void printDevices(); // Dump info // Initializations/Finalizations of tests. Not to be measured, in principle used for report void readInit(); diff --git a/GPU/GPUbenchmark/cuda/Kernels.cu b/GPU/GPUbenchmark/cuda/Kernels.cu index 409e5bbf9857a..eaab7cd8a8186 100644 --- a/GPU/GPUbenchmark/cuda/Kernels.cu +++ b/GPU/GPUbenchmark/cuda/Kernels.cu @@ -411,7 +411,7 @@ void GPUbenchmark::readSequential(SplitLevel sl) auto capacity{mState.getPartitionCapacity()}; for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { // loop on the number of times we perform same measurement - std::cout << std::setw(2) << " ├ Sequential read, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + std::cout << std::setw(2) << " ├ (" << getType() << ") Seq read, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; for (auto iChunk{0}; iChunk < mState.getMaxChunks(); ++iChunk) { // loop over single chunks separately auto result = benchmarkSync(&gpu::readChunkSBKernel, mState.getNKernelLaunches(), @@ -437,7 +437,7 @@ void GPUbenchmark::readSequential(SplitLevel sl) auto capacity{mState.getPartitionCapacity()}; for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { // loop on the number of times we perform same measurement - std::cout << std::setw(2) << " ├ Sequential read, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + std::cout << std::setw(2) << " ├ (" << getType() << ") Seq read, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; for (auto iChunk{0}; iChunk < mState.getMaxChunks(); ++iChunk) { // loop over single chunks separately auto result = benchmarkSync(&gpu::readChunkMBKernel, mState.getNKernelLaunches(), @@ -470,7 +470,7 @@ void GPUbenchmark::readConcurrent(SplitLevel sl, int nRegions) auto capacity{mState.getPartitionCapacity()}; for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { - std::cout << " ├ Concurrent read, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + std::cout << " ├ (" << getType() << ") Conc read, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; auto results = benchmarkAsync(&gpu::readChunkSBKernel, mState.getMaxChunks(), // nStreams mState.getNKernelLaunches(), @@ -496,7 +496,7 @@ void GPUbenchmark::readConcurrent(SplitLevel sl, int nRegions) auto capacity{mState.getPartitionCapacity()}; for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { - std::cout << " ├ Concurrent read, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + std::cout << " ├ (" << getType() << ") Conc read, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; auto results = benchmarkAsync(&gpu::readChunkMBKernel, mState.getMaxChunks(), // nStreams mState.getNKernelLaunches(), @@ -546,7 +546,7 @@ void GPUbenchmark::writeSequential(SplitLevel sl) auto capacity{mState.getPartitionCapacity()}; for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { // loop on the number of times we perform same measurement - std::cout << std::setw(2) << " ├ Sequential write, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + std::cout << std::setw(2) << " ├ (" << getType() << ") Seq write, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; for (auto iChunk{0}; iChunk < mState.getMaxChunks(); ++iChunk) { // loop over single chunks separately auto result = benchmarkSync(&gpu::writeChunkSBKernel, mState.getNKernelLaunches(), @@ -572,7 +572,7 @@ void GPUbenchmark::writeSequential(SplitLevel sl) auto capacity{mState.getPartitionCapacity()}; for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { // loop on the number of times we perform same measurement - std::cout << std::setw(2) << " ├ Sequential write, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + std::cout << std::setw(2) << " ├ (" << getType() << ") Seq write, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; for (auto iChunk{0}; iChunk < mState.getMaxChunks(); ++iChunk) { // loop over single chunks separately auto result = benchmarkSync(&gpu::writeChunkMBKernel, mState.getNKernelLaunches(), @@ -605,7 +605,7 @@ void GPUbenchmark::writeConcurrent(SplitLevel sl, int nRegions) auto capacity{mState.getPartitionCapacity()}; for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { - std::cout << " ├ Concurrent write, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + std::cout << " ├ (" << getType() << ") Conc write, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; auto results = benchmarkAsync(&gpu::writeChunkSBKernel, mState.getMaxChunks(), // nStreams mState.getNKernelLaunches(), @@ -631,7 +631,7 @@ void GPUbenchmark::writeConcurrent(SplitLevel sl, int nRegions) auto capacity{mState.getPartitionCapacity()}; for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { - std::cout << " ├ Concurrent write, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + std::cout << " ├ (" << getType() << ") Conc write, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; auto results = benchmarkAsync(&gpu::writeChunkMBKernel, mState.getMaxChunks(), // nStreams mState.getNKernelLaunches(), @@ -683,7 +683,7 @@ void GPUbenchmark::copySequential(SplitLevel sl) auto capacity{mState.getPartitionCapacity()}; for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { // loop on the number of times we perform same measurement - std::cout << std::setw(2) << " ├ Sequential copy, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + std::cout << std::setw(2) << " ├ (" << getType() << ") Seq copy, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; for (auto iChunk{0}; iChunk < mState.getMaxChunks(); ++iChunk) { // loop over single chunks separately auto result = benchmarkSync(&gpu::copyChunkSBKernel, mState.getNKernelLaunches(), @@ -709,7 +709,7 @@ void GPUbenchmark::copySequential(SplitLevel sl) auto capacity{mState.getPartitionCapacity()}; for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { // loop on the number of times we perform same measurement - std::cout << std::setw(2) << " ├ Sequential copy, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + std::cout << std::setw(2) << " ├ (" << getType() << ") Seq copy, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; for (auto iChunk{0}; iChunk < mState.getMaxChunks(); ++iChunk) { // loop over single chunks separately auto result = benchmarkSync(&gpu::copyChunkMBKernel, mState.getNKernelLaunches(), @@ -742,7 +742,7 @@ void GPUbenchmark::copyConcurrent(SplitLevel sl, int nRegions) auto capacity{mState.getPartitionCapacity()}; for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { - std::cout << " ├ Concurrent copy, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + std::cout << " ├ (" << getType() << ") Conc copy, sing block (" << measurement + 1 << "/" << mOptions.nTests << "):"; auto results = benchmarkAsync(&gpu::copyChunkSBKernel, mState.getMaxChunks(), // nStreams mState.getNKernelLaunches(), @@ -768,7 +768,7 @@ void GPUbenchmark::copyConcurrent(SplitLevel sl, int nRegions) auto capacity{mState.getPartitionCapacity()}; for (auto measurement{0}; measurement < mOptions.nTests; ++measurement) { - std::cout << " ├ Concurrent copy, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; + std::cout << " ├ (" << getType() << ") Conc copy, mult block (" << measurement + 1 << "/" << mOptions.nTests << "):"; auto results = benchmarkAsync(&gpu::copyChunkMBKernel, mState.getMaxChunks(), // nStreams mState.getNKernelLaunches(), diff --git a/GPU/GPUbenchmark/macro/showBenchmarks.C b/GPU/GPUbenchmark/macro/showBenchmarks.C new file mode 100644 index 0000000000000..281fc17b6d28d --- /dev/null +++ b/GPU/GPUbenchmark/macro/showBenchmarks.C @@ -0,0 +1,86 @@ +#if !defined(__CLING__) || defined(__ROOTCLING__) +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#endif + +int nBins{500}; +float minHist{0.f}, maxHist{1e4}; +void showBenchmarks(const TString fileName = "0_benchmark_results.root") +{ + auto f = TFile::Open(fileName.Data(), "read"); + std::unordered_map um_trees; + std::vector> histograms; + std::vector results; + std::vector tests = {"read", "write", "copy"}; + std::vector types = {"char", "int", "unsigned_long"}; + std::vector modes = {"seq", "conc"}; + std::vector patterns = {"SB", "MB"}; + + for (auto&& keyAsObj : *f->GetListOfKeys()) { + auto tName = ((TKey*)keyAsObj)->GetName(); + um_trees[tName] = (TTree*)f->Get(tName); + } + std::cout << "Found " << um_trees.size() << " trees.\n"; + + // Main loop + for (auto& keyPair : um_trees) { + for (auto& test : tests) { + if (keyPair.first.find(test) != std::string::npos) { + for (auto& mode : modes) { + if (keyPair.first.find(mode) != std::string::npos) { + for (auto& type : types) { + if (keyPair.first.find(type) != std::string::npos) { + for (auto& pattern : patterns) { + if (keyPair.first.find(pattern) != std::string::npos) { + // Single Tree entry, we know test, type, mode, pattern + std::vector* measures = 0; + TBranch* elapsed; + keyPair.second->SetBranchAddress("elapsed", &measures, &elapsed); + elapsed->GetEntry(keyPair.second->LoadTree(0)); + auto nChunk = measures->size(); + histograms.emplace_back(nChunk); + for (int iHist{0}; iHist < (int)nChunk; ++iHist) { + histograms.back()[iHist] = new TH1F(Form("Chunk_%d_%s", iHist, keyPair.first.c_str()), Form("Chunk_%d_%s;ms", iHist, keyPair.first.c_str()), 500, 0, 1e4); + } + for (size_t iEntry(0); iEntry < (size_t)keyPair.second->GetEntriesFast(); ++iEntry) { + auto tentry = keyPair.second->LoadTree(iEntry); + elapsed->GetEntry(tentry); + for (int iHist{0}; iHist < (int)nChunk; ++iHist) { + histograms.back()[iHist]->Fill((*measures)[iHist]); + } + } + + std::vector xCoord(nChunk), exCoord(nChunk), yCoord(nChunk), eyCoord(nChunk); + + for (size_t i{0}; i < nChunk; ++i) { + xCoord[i] = (float)i; + yCoord[i] = histograms.back()[i]->GetMean(); + eyCoord[i] = histograms.back()[i]->GetRMS(); + exCoord[i] = 0.f; + } + TCanvas* c = new TCanvas(Form("c%s", keyPair.first.c_str()), Form("%s", keyPair.first.c_str())); + c->cd(); + TGraphErrors* g = new TGraphErrors(nChunk, xCoord.data(), yCoord.data(), exCoord.data(), eyCoord.data()); + g->GetYaxis()->SetRangeUser(0, 5000); + g->GetXaxis()->SetRangeUser(-2.f, nChunk); + g->SetTitle(Form("%s, N_{test}=%d;chunk_id;elapsed (ms)", keyPair.first.c_str(), (int)keyPair.second->GetEntriesFast())); + g->SetFillColor(40); + g->Draw("AB"); + } + } + } + } + } + } + } + } + } +} \ No newline at end of file From 88c12c059c1d7fb485d96fa2eaf887fc3e7f14c3 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Tue, 20 Jul 2021 09:01:15 +0200 Subject: [PATCH 226/314] DPL: misc cleanups (#6682) * Fix pessimizing moves * Cleanup namespace in MessageContext.h --- .../include/Framework/DataDescriptorMatcher.h | 2 +- .../Core/include/Framework/MessageContext.h | 16 +++++++--------- 2 files changed, 8 insertions(+), 10 deletions(-) diff --git a/Framework/Core/include/Framework/DataDescriptorMatcher.h b/Framework/Core/include/Framework/DataDescriptorMatcher.h index 95c5696bca6fd..f7f95ab335154 100644 --- a/Framework/Core/include/Framework/DataDescriptorMatcher.h +++ b/Framework/Core/include/Framework/DataDescriptorMatcher.h @@ -265,7 +265,7 @@ class DataDescriptorMatcher DataDescriptorMatcher& operator=(DataDescriptorMatcher&& other) = default; /// Unary operator on a node - DataDescriptorMatcher(Op op, Node&& lhs, Node&& rhs = std::move(ConstantValueMatcher{false})); + DataDescriptorMatcher(Op op, Node&& lhs, Node&& rhs = ConstantValueMatcher{false}); inline ~DataDescriptorMatcher() = default; diff --git a/Framework/Core/include/Framework/MessageContext.h b/Framework/Core/include/Framework/MessageContext.h index cd3a4910ca423..499b53d133cc6 100644 --- a/Framework/Core/include/Framework/MessageContext.h +++ b/Framework/Core/include/Framework/MessageContext.h @@ -8,8 +8,8 @@ // In applying this license CERN does not waive the privileges and immunities // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#ifndef FRAMEWORK_MESSAGECONTEXT_H -#define FRAMEWORK_MESSAGECONTEXT_H +#ifndef O2_FRAMEWORK_MESSAGECONTEXT_H_ +#define O2_FRAMEWORK_MESSAGECONTEXT_H_ #include "Framework/DispatchControl.h" #include "Framework/FairMQDeviceProxy.h" @@ -32,10 +32,9 @@ class FairMQDevice; -namespace o2 -{ -namespace framework +namespace o2::framework { + class Output; class MessageContext @@ -472,7 +471,7 @@ class MessageContext if (mDispatchControl.trigger == nullptr || mDispatchControl.trigger(*header)) { std::unordered_map outputs; for (auto& message : mScheduledMessages) { - FairMQParts parts = std::move(message->finalize()); + FairMQParts parts = message->finalize(); assert(message->empty()); assert(parts.Size() == 2); for (auto& part : parts) { @@ -551,6 +550,5 @@ class MessageContext DispatchControl mDispatchControl; std::unordered_map> mChannelRefs; }; -} // namespace framework -} // namespace o2 -#endif // FRAMEWORK_MESSAGECONTEXT_H +} // namespace o2::framework +#endif // O2_FRAMEWORK_MESSAGECONTEXT_H_ From 501e0ba038791457d2da89131929091aa53e70bf Mon Sep 17 00:00:00 2001 From: Anton Alkin Date: Tue, 20 Jul 2021 09:02:50 +0200 Subject: [PATCH 227/314] DPL Analysis: fix and update table builder (#6676) * remove include; move non-templated code to cxx * make sure empty tables keep labels --- Framework/Core/include/Framework/AnalysisManagers.h | 2 +- Framework/Core/include/Framework/AnalysisTask.h | 3 +-- Framework/Core/include/Framework/TableBuilder.h | 11 ++++++++--- Framework/Core/src/TableBuilder.cxx | 7 +++++++ 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/Framework/Core/include/Framework/AnalysisManagers.h b/Framework/Core/include/Framework/AnalysisManagers.h index 77955d9fa3f02..c35e8f2496601 100644 --- a/Framework/Core/include/Framework/AnalysisManagers.h +++ b/Framework/Core/include/Framework/AnalysisManagers.h @@ -241,7 +241,7 @@ struct OutputManager> { auto original_table = soa::ArrowHelpers::joinTables(extractOriginals(what.sources_pack(), pc)); if (original_table->schema()->fields().empty() == true) { using base_table_t = typename Spawns::base_table_t; - original_table = makeEmptyTable(); + original_table = makeEmptyTable(aod::MetadataTrait::extension_t>::metadata::tableLabel()); } what.extension = std::make_shared::extension_t>(o2::framework::spawner(what.pack(), original_table.get(), aod::MetadataTrait::extension_t>::metadata::tableLabel())); diff --git a/Framework/Core/include/Framework/AnalysisTask.h b/Framework/Core/include/Framework/AnalysisTask.h index 14b5e8b37c3cd..50ad5dad9b57c 100644 --- a/Framework/Core/include/Framework/AnalysisTask.h +++ b/Framework/Core/include/Framework/AnalysisTask.h @@ -31,7 +31,6 @@ #include #include -#include #include #include #include @@ -155,7 +154,7 @@ struct AnalysisDataProcessorBuilder { if constexpr (soa::is_type_with_metadata_v>) { auto table = record.get(aod::MetadataTrait::metadata::tableLabel())->asArrowTable(); if (table->num_rows() == 0) { - table = makeEmptyTable(); + table = makeEmptyTable(aod::MetadataTrait::metadata::tableLabel()); } return table; } else if constexpr (soa::is_type_with_originals_v) { diff --git a/Framework/Core/include/Framework/TableBuilder.h b/Framework/Core/include/Framework/TableBuilder.h index b5eb8e19fadf5..e6842c3f9a033 100644 --- a/Framework/Core/include/Framework/TableBuilder.h +++ b/Framework/Core/include/Framework/TableBuilder.h @@ -96,6 +96,8 @@ O2_ARROW_STL_CONVERSION(double, DoubleType) O2_ARROW_STL_CONVERSION(std::string, StringType) } // namespace detail +void addLabelToSchema(std::shared_ptr& schema, const char* label); + struct BuilderUtils { template static arrow::Status appendToList(std::unique_ptr& builder, T* data, int size = 1) @@ -787,10 +789,11 @@ class TableBuilder }; template -auto makeEmptyTable() +auto makeEmptyTable(const char* name) { TableBuilder b; [[maybe_unused]] auto writer = b.cursor(); + b.setLabel(name); return b.finalize(); } @@ -798,8 +801,9 @@ auto makeEmptyTable() template auto spawner(framework::pack columns, arrow::Table* atable, const char* name) { + std::string s = std::string{name} + "Extension"; if (atable->num_rows() == 0) { - return makeEmptyTable>(); + return makeEmptyTable>(s.c_str()); } static auto new_schema = o2::soa::createSchemaFromColumns(columns); static auto projectors = framework::expressions::createProjectors(columns, atable->schema()); @@ -835,7 +839,8 @@ auto spawner(framework::pack columns, arrow::Table* atable, const char* na for (auto i = 0u; i < sizeof...(C); ++i) { arrays.push_back(std::make_shared(chunks[i])); } - new_schema = new_schema->WithMetadata(std::make_shared(std::vector{std::string{"label"}}, std::vector{std::string{name}})); + + addLabelToSchema(new_schema, s.c_str()); return arrow::Table::Make(new_schema, arrays); } diff --git a/Framework/Core/src/TableBuilder.cxx b/Framework/Core/src/TableBuilder.cxx index 92be7cc6e2f9e..54b779d01dc80 100644 --- a/Framework/Core/src/TableBuilder.cxx +++ b/Framework/Core/src/TableBuilder.cxx @@ -48,6 +48,13 @@ void ArrayFromVector(const std::vector& values, std::shared_ptr& schema, const char* label) +{ + schema = schema->WithMetadata( + std::make_shared( + std::vector{std::string{"label"}}, + std::vector{std::string{label}})); +} std::shared_ptr TableBuilder::finalize() From 2a66ccb8d3fcddac4bb6e5037bbc27af81415bef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Jacazio?= Date: Tue, 20 Jul 2021 09:14:00 +0200 Subject: [PATCH 228/314] Add description of PID tables (#6678) --- .../AnalysisDataModel/PID/PIDResponse.h | 166 +++++++++--------- 1 file changed, 83 insertions(+), 83 deletions(-) diff --git a/Analysis/DataModel/include/AnalysisDataModel/PID/PIDResponse.h b/Analysis/DataModel/include/AnalysisDataModel/PID/PIDResponse.h index fafe6fc389f72..bb0363d067188 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/PID/PIDResponse.h +++ b/Analysis/DataModel/include/AnalysisDataModel/PID/PIDResponse.h @@ -34,8 +34,8 @@ DECLARE_SOA_COLUMN(BetaError, betaerror, float); //! Uncertainty on the TOF beta DECLARE_SOA_COLUMN(ExpBetaEl, expbetael, float); //! Expected beta of electron DECLARE_SOA_COLUMN(ExpBetaElError, expbetaelerror, float); //! Expected uncertainty on the beta of electron // -DECLARE_SOA_COLUMN(SeparationBetaEl, separationbetael, float); //! -DECLARE_SOA_DYNAMIC_COLUMN(DiffBetaEl, diffbetael, //! +DECLARE_SOA_COLUMN(SeparationBetaEl, separationbetael, float); //! Separation computed with the expected beta for electrons +DECLARE_SOA_DYNAMIC_COLUMN(DiffBetaEl, diffbetael, //! Difference between the measured and the expected beta for electrons [](float beta, float expbetael) -> float { return beta - expbetael; }); } // namespace pidtofbeta @@ -61,25 +61,25 @@ DECLARE_SOA_DYNAMIC_COLUMN(TOFExpSignalDiffHe, tofExpSignalDiffHe, //! Differenc DECLARE_SOA_DYNAMIC_COLUMN(TOFExpSignalDiffAl, tofExpSignalDiffAl, //! Difference between signal and expected for alpha [](float nsigma, float sigma) -> float { return nsigma * sigma; }); // Expected sigma -DECLARE_SOA_COLUMN(TOFExpSigmaEl, tofExpSigmaEl, float); //! -DECLARE_SOA_COLUMN(TOFExpSigmaMu, tofExpSigmaMu, float); //! -DECLARE_SOA_COLUMN(TOFExpSigmaPi, tofExpSigmaPi, float); //! -DECLARE_SOA_COLUMN(TOFExpSigmaKa, tofExpSigmaKa, float); //! -DECLARE_SOA_COLUMN(TOFExpSigmaPr, tofExpSigmaPr, float); //! -DECLARE_SOA_COLUMN(TOFExpSigmaDe, tofExpSigmaDe, float); //! -DECLARE_SOA_COLUMN(TOFExpSigmaTr, tofExpSigmaTr, float); //! -DECLARE_SOA_COLUMN(TOFExpSigmaHe, tofExpSigmaHe, float); //! -DECLARE_SOA_COLUMN(TOFExpSigmaAl, tofExpSigmaAl, float); //! +DECLARE_SOA_COLUMN(TOFExpSigmaEl, tofExpSigmaEl, float); //! Expected resolution with the TOF detector for electron +DECLARE_SOA_COLUMN(TOFExpSigmaMu, tofExpSigmaMu, float); //! Expected resolution with the TOF detector for muon +DECLARE_SOA_COLUMN(TOFExpSigmaPi, tofExpSigmaPi, float); //! Expected resolution with the TOF detector for pion +DECLARE_SOA_COLUMN(TOFExpSigmaKa, tofExpSigmaKa, float); //! Expected resolution with the TOF detector for kaon +DECLARE_SOA_COLUMN(TOFExpSigmaPr, tofExpSigmaPr, float); //! Expected resolution with the TOF detector for proton +DECLARE_SOA_COLUMN(TOFExpSigmaDe, tofExpSigmaDe, float); //! Expected resolution with the TOF detector for deuteron +DECLARE_SOA_COLUMN(TOFExpSigmaTr, tofExpSigmaTr, float); //! Expected resolution with the TOF detector for triton +DECLARE_SOA_COLUMN(TOFExpSigmaHe, tofExpSigmaHe, float); //! Expected resolution with the TOF detector for helium3 +DECLARE_SOA_COLUMN(TOFExpSigmaAl, tofExpSigmaAl, float); //! Expected resolution with the TOF detector for alpha // NSigma -DECLARE_SOA_COLUMN(TOFNSigmaEl, tofNSigmaEl, float); //! -DECLARE_SOA_COLUMN(TOFNSigmaMu, tofNSigmaMu, float); //! -DECLARE_SOA_COLUMN(TOFNSigmaPi, tofNSigmaPi, float); //! -DECLARE_SOA_COLUMN(TOFNSigmaKa, tofNSigmaKa, float); //! -DECLARE_SOA_COLUMN(TOFNSigmaPr, tofNSigmaPr, float); //! -DECLARE_SOA_COLUMN(TOFNSigmaDe, tofNSigmaDe, float); //! -DECLARE_SOA_COLUMN(TOFNSigmaTr, tofNSigmaTr, float); //! -DECLARE_SOA_COLUMN(TOFNSigmaHe, tofNSigmaHe, float); //! -DECLARE_SOA_COLUMN(TOFNSigmaAl, tofNSigmaAl, float); //! +DECLARE_SOA_COLUMN(TOFNSigmaEl, tofNSigmaEl, float); //! Nsigma separation with the TOF detector for electron +DECLARE_SOA_COLUMN(TOFNSigmaMu, tofNSigmaMu, float); //! Nsigma separation with the TOF detector for muon +DECLARE_SOA_COLUMN(TOFNSigmaPi, tofNSigmaPi, float); //! Nsigma separation with the TOF detector for pion +DECLARE_SOA_COLUMN(TOFNSigmaKa, tofNSigmaKa, float); //! Nsigma separation with the TOF detector for kaon +DECLARE_SOA_COLUMN(TOFNSigmaPr, tofNSigmaPr, float); //! Nsigma separation with the TOF detector for proton +DECLARE_SOA_COLUMN(TOFNSigmaDe, tofNSigmaDe, float); //! Nsigma separation with the TOF detector for deuteron +DECLARE_SOA_COLUMN(TOFNSigmaTr, tofNSigmaTr, float); //! Nsigma separation with the TOF detector for triton +DECLARE_SOA_COLUMN(TOFNSigmaHe, tofNSigmaHe, float); //! Nsigma separation with the TOF detector for helium3 +DECLARE_SOA_COLUMN(TOFNSigmaAl, tofNSigmaAl, float); //! Nsigma separation with the TOF detector for alpha } // namespace pidtof // Macro to convert the stored Nsigmas to floats @@ -97,25 +97,25 @@ constexpr float binned_max = 6.35; constexpr float binned_min = -6.35; constexpr float bin_width = (binned_max - binned_min) / nbins; // NSigma with reduced size 8 bit -DECLARE_SOA_COLUMN(TOFNSigmaStoreEl, tofNSigmaStoreEl, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TOFNSigmaStoreMu, tofNSigmaStoreMu, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TOFNSigmaStorePi, tofNSigmaStorePi, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TOFNSigmaStoreKa, tofNSigmaStoreKa, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TOFNSigmaStorePr, tofNSigmaStorePr, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TOFNSigmaStoreDe, tofNSigmaStoreDe, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TOFNSigmaStoreTr, tofNSigmaStoreTr, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TOFNSigmaStoreHe, tofNSigmaStoreHe, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TOFNSigmaStoreAl, tofNSigmaStoreAl, binned_nsigma_t); //! +DECLARE_SOA_COLUMN(TOFNSigmaStoreEl, tofNSigmaStoreEl, binned_nsigma_t); //! Stored binned nsigma with the TOF detector for electron +DECLARE_SOA_COLUMN(TOFNSigmaStoreMu, tofNSigmaStoreMu, binned_nsigma_t); //! Stored binned nsigma with the TOF detector for muon +DECLARE_SOA_COLUMN(TOFNSigmaStorePi, tofNSigmaStorePi, binned_nsigma_t); //! Stored binned nsigma with the TOF detector for pion +DECLARE_SOA_COLUMN(TOFNSigmaStoreKa, tofNSigmaStoreKa, binned_nsigma_t); //! Stored binned nsigma with the TOF detector for kaon +DECLARE_SOA_COLUMN(TOFNSigmaStorePr, tofNSigmaStorePr, binned_nsigma_t); //! Stored binned nsigma with the TOF detector for proton +DECLARE_SOA_COLUMN(TOFNSigmaStoreDe, tofNSigmaStoreDe, binned_nsigma_t); //! Stored binned nsigma with the TOF detector for deuteron +DECLARE_SOA_COLUMN(TOFNSigmaStoreTr, tofNSigmaStoreTr, binned_nsigma_t); //! Stored binned nsigma with the TOF detector for triton +DECLARE_SOA_COLUMN(TOFNSigmaStoreHe, tofNSigmaStoreHe, binned_nsigma_t); //! Stored binned nsigma with the TOF detector for helium3 +DECLARE_SOA_COLUMN(TOFNSigmaStoreAl, tofNSigmaStoreAl, binned_nsigma_t); //! Stored binned nsigma with the TOF detector for alpha // NSigma with reduced size in [binned_min, binned_max] bin size bin_width -DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaEl, tofNSigmaEl); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaMu, tofNSigmaMu); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaPi, tofNSigmaPi); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaKa, tofNSigmaKa); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaPr, tofNSigmaPr); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaDe, tofNSigmaDe); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaTr, tofNSigmaTr); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaHe, tofNSigmaHe); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaAl, tofNSigmaAl); //! +DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaEl, tofNSigmaEl); //! Unwrapped (float) nsigma with the TOF detector for electron +DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaMu, tofNSigmaMu); //! Unwrapped (float) nsigma with the TOF detector for muon +DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaPi, tofNSigmaPi); //! Unwrapped (float) nsigma with the TOF detector for pion +DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaKa, tofNSigmaKa); //! Unwrapped (float) nsigma with the TOF detector for kaon +DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaPr, tofNSigmaPr); //! Unwrapped (float) nsigma with the TOF detector for proton +DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaDe, tofNSigmaDe); //! Unwrapped (float) nsigma with the TOF detector for deuteron +DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaTr, tofNSigmaTr); //! Unwrapped (float) nsigma with the TOF detector for triton +DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaHe, tofNSigmaHe); //! Unwrapped (float) nsigma with the TOF detector for helium3 +DEFINE_UNWRAP_NSIGMA_COLUMN(TOFNSigmaAl, tofNSigmaAl); //! Unwrapped (float) nsigma with the TOF detector for alpha } // namespace pidtof_tiny @@ -168,44 +168,44 @@ DECLARE_SOA_TABLE(pidTOFAl, "AOD", "pidTOFAl", //! Table of the TOF response wit namespace pidtpc { // Expected signals -DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffEl, tpcExpSignalDiffEl, //! +DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffEl, tpcExpSignalDiffEl, //! Difference between signal and expected for electron [](float nsigma, float sigma) -> float { return nsigma * sigma; }); -DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffMu, tpcExpSignalDiffMu, //! +DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffMu, tpcExpSignalDiffMu, //! Difference between signal and expected for muon [](float nsigma, float sigma) -> float { return nsigma * sigma; }); -DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffPi, tpcExpSignalDiffPi, //! +DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffPi, tpcExpSignalDiffPi, //! Difference between signal and expected for pion [](float nsigma, float sigma) -> float { return nsigma * sigma; }); -DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffKa, tpcExpSignalDiffKa, //! +DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffKa, tpcExpSignalDiffKa, //! Difference between signal and expected for kaon [](float nsigma, float sigma) -> float { return nsigma * sigma; }); -DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffPr, tpcExpSignalDiffPr, //! +DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffPr, tpcExpSignalDiffPr, //! Difference between signal and expected for proton [](float nsigma, float sigma) -> float { return nsigma * sigma; }); -DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffDe, tpcExpSignalDiffDe, //! +DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffDe, tpcExpSignalDiffDe, //! Difference between signal and expected for deuteron [](float nsigma, float sigma) -> float { return nsigma * sigma; }); -DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffTr, tpcExpSignalDiffTr, //! +DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffTr, tpcExpSignalDiffTr, //! Difference between signal and expected for triton [](float nsigma, float sigma) -> float { return nsigma * sigma; }); -DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffHe, tpcExpSignalDiffHe, //! +DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffHe, tpcExpSignalDiffHe, //! Difference between signal and expected for helium3 [](float nsigma, float sigma) -> float { return nsigma * sigma; }); -DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffAl, tpcExpSignalDiffAl, //! +DECLARE_SOA_DYNAMIC_COLUMN(TPCExpSignalDiffAl, tpcExpSignalDiffAl, //! Difference between signal and expected for alpha [](float nsigma, float sigma) -> float { return nsigma * sigma; }); // Expected sigma -DECLARE_SOA_COLUMN(TPCExpSigmaEl, tpcExpSigmaEl, float); //! -DECLARE_SOA_COLUMN(TPCExpSigmaMu, tpcExpSigmaMu, float); //! -DECLARE_SOA_COLUMN(TPCExpSigmaPi, tpcExpSigmaPi, float); //! -DECLARE_SOA_COLUMN(TPCExpSigmaKa, tpcExpSigmaKa, float); //! -DECLARE_SOA_COLUMN(TPCExpSigmaPr, tpcExpSigmaPr, float); //! -DECLARE_SOA_COLUMN(TPCExpSigmaDe, tpcExpSigmaDe, float); //! -DECLARE_SOA_COLUMN(TPCExpSigmaTr, tpcExpSigmaTr, float); //! -DECLARE_SOA_COLUMN(TPCExpSigmaHe, tpcExpSigmaHe, float); //! -DECLARE_SOA_COLUMN(TPCExpSigmaAl, tpcExpSigmaAl, float); //! +DECLARE_SOA_COLUMN(TPCExpSigmaEl, tpcExpSigmaEl, float); //! Expected resolution with the TPC detector for electron +DECLARE_SOA_COLUMN(TPCExpSigmaMu, tpcExpSigmaMu, float); //! Expected resolution with the TPC detector for muon +DECLARE_SOA_COLUMN(TPCExpSigmaPi, tpcExpSigmaPi, float); //! Expected resolution with the TPC detector for pion +DECLARE_SOA_COLUMN(TPCExpSigmaKa, tpcExpSigmaKa, float); //! Expected resolution with the TPC detector for kaon +DECLARE_SOA_COLUMN(TPCExpSigmaPr, tpcExpSigmaPr, float); //! Expected resolution with the TPC detector for proton +DECLARE_SOA_COLUMN(TPCExpSigmaDe, tpcExpSigmaDe, float); //! Expected resolution with the TPC detector for deuteron +DECLARE_SOA_COLUMN(TPCExpSigmaTr, tpcExpSigmaTr, float); //! Expected resolution with the TPC detector for triton +DECLARE_SOA_COLUMN(TPCExpSigmaHe, tpcExpSigmaHe, float); //! Expected resolution with the TPC detector for helium3 +DECLARE_SOA_COLUMN(TPCExpSigmaAl, tpcExpSigmaAl, float); //! Expected resolution with the TPC detector for alpha // NSigma -DECLARE_SOA_COLUMN(TPCNSigmaEl, tpcNSigmaEl, float); //! -DECLARE_SOA_COLUMN(TPCNSigmaMu, tpcNSigmaMu, float); //! -DECLARE_SOA_COLUMN(TPCNSigmaPi, tpcNSigmaPi, float); //! -DECLARE_SOA_COLUMN(TPCNSigmaKa, tpcNSigmaKa, float); //! -DECLARE_SOA_COLUMN(TPCNSigmaPr, tpcNSigmaPr, float); //! -DECLARE_SOA_COLUMN(TPCNSigmaDe, tpcNSigmaDe, float); //! -DECLARE_SOA_COLUMN(TPCNSigmaTr, tpcNSigmaTr, float); //! -DECLARE_SOA_COLUMN(TPCNSigmaHe, tpcNSigmaHe, float); //! -DECLARE_SOA_COLUMN(TPCNSigmaAl, tpcNSigmaAl, float); //! +DECLARE_SOA_COLUMN(TPCNSigmaEl, tpcNSigmaEl, float); //! Nsigma separation with the TPC detector for electron +DECLARE_SOA_COLUMN(TPCNSigmaMu, tpcNSigmaMu, float); //! Nsigma separation with the TPC detector for muon +DECLARE_SOA_COLUMN(TPCNSigmaPi, tpcNSigmaPi, float); //! Nsigma separation with the TPC detector for pion +DECLARE_SOA_COLUMN(TPCNSigmaKa, tpcNSigmaKa, float); //! Nsigma separation with the TPC detector for kaon +DECLARE_SOA_COLUMN(TPCNSigmaPr, tpcNSigmaPr, float); //! Nsigma separation with the TPC detector for proton +DECLARE_SOA_COLUMN(TPCNSigmaDe, tpcNSigmaDe, float); //! Nsigma separation with the TPC detector for deuteron +DECLARE_SOA_COLUMN(TPCNSigmaTr, tpcNSigmaTr, float); //! Nsigma separation with the TPC detector for triton +DECLARE_SOA_COLUMN(TPCNSigmaHe, tpcNSigmaHe, float); //! Nsigma separation with the TPC detector for helium3 +DECLARE_SOA_COLUMN(TPCNSigmaAl, tpcNSigmaAl, float); //! Nsigma separation with the TPC detector for alpha } // namespace pidtpc namespace pidtpc_tiny @@ -218,25 +218,25 @@ constexpr float binned_max = 6.35; constexpr float binned_min = -6.35; constexpr float bin_width = (binned_max - binned_min) / nbins; // NSigma with reduced size -DECLARE_SOA_COLUMN(TPCNSigmaStoreEl, tpcNSigmaStoreEl, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TPCNSigmaStoreMu, tpcNSigmaStoreMu, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TPCNSigmaStorePi, tpcNSigmaStorePi, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TPCNSigmaStoreKa, tpcNSigmaStoreKa, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TPCNSigmaStorePr, tpcNSigmaStorePr, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TPCNSigmaStoreDe, tpcNSigmaStoreDe, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TPCNSigmaStoreTr, tpcNSigmaStoreTr, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TPCNSigmaStoreHe, tpcNSigmaStoreHe, binned_nsigma_t); //! -DECLARE_SOA_COLUMN(TPCNSigmaStoreAl, tpcNSigmaStoreAl, binned_nsigma_t); //! +DECLARE_SOA_COLUMN(TPCNSigmaStoreEl, tpcNSigmaStoreEl, binned_nsigma_t); //! Stored binned nsigma with the TPC detector for electron +DECLARE_SOA_COLUMN(TPCNSigmaStoreMu, tpcNSigmaStoreMu, binned_nsigma_t); //! Stored binned nsigma with the TPC detector for muon +DECLARE_SOA_COLUMN(TPCNSigmaStorePi, tpcNSigmaStorePi, binned_nsigma_t); //! Stored binned nsigma with the TPC detector for pion +DECLARE_SOA_COLUMN(TPCNSigmaStoreKa, tpcNSigmaStoreKa, binned_nsigma_t); //! Stored binned nsigma with the TPC detector for kaon +DECLARE_SOA_COLUMN(TPCNSigmaStorePr, tpcNSigmaStorePr, binned_nsigma_t); //! Stored binned nsigma with the TPC detector for proton +DECLARE_SOA_COLUMN(TPCNSigmaStoreDe, tpcNSigmaStoreDe, binned_nsigma_t); //! Stored binned nsigma with the TPC detector for deuteron +DECLARE_SOA_COLUMN(TPCNSigmaStoreTr, tpcNSigmaStoreTr, binned_nsigma_t); //! Stored binned nsigma with the TPC detector for triton +DECLARE_SOA_COLUMN(TPCNSigmaStoreHe, tpcNSigmaStoreHe, binned_nsigma_t); //! Stored binned nsigma with the TPC detector for helium3 +DECLARE_SOA_COLUMN(TPCNSigmaStoreAl, tpcNSigmaStoreAl, binned_nsigma_t); //! Stored binned nsigma with the TPC detector for alpha // NSigma with reduced size in [binned_min, binned_max] bin size bin_width -DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaEl, tpcNSigmaEl); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaMu, tpcNSigmaMu); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaPi, tpcNSigmaPi); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaKa, tpcNSigmaKa); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaPr, tpcNSigmaPr); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaDe, tpcNSigmaDe); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaTr, tpcNSigmaTr); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaHe, tpcNSigmaHe); //! -DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaAl, tpcNSigmaAl); //! +DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaEl, tpcNSigmaEl); //! Unwrapped (float) nsigma with the TPC detector for electron +DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaMu, tpcNSigmaMu); //! Unwrapped (float) nsigma with the TPC detector for muon +DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaPi, tpcNSigmaPi); //! Unwrapped (float) nsigma with the TPC detector for pion +DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaKa, tpcNSigmaKa); //! Unwrapped (float) nsigma with the TPC detector for kaon +DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaPr, tpcNSigmaPr); //! Unwrapped (float) nsigma with the TPC detector for proton +DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaDe, tpcNSigmaDe); //! Unwrapped (float) nsigma with the TPC detector for deuteron +DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaTr, tpcNSigmaTr); //! Unwrapped (float) nsigma with the TPC detector for triton +DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaHe, tpcNSigmaHe); //! Unwrapped (float) nsigma with the TPC detector for helium3 +DEFINE_UNWRAP_NSIGMA_COLUMN(TPCNSigmaAl, tpcNSigmaAl); //! Unwrapped (float) nsigma with the TPC detector for alpha } // namespace pidtpc_tiny From 41601c9150ccc3007d9e762f93e8d9297bc69671 Mon Sep 17 00:00:00 2001 From: Ole Schmidt Date: Mon, 19 Jul 2021 10:12:05 +0200 Subject: [PATCH 229/314] TRD raw reader can dump to file --- Detectors/TRD/reconstruction/CMakeLists.txt | 1 + Detectors/TRD/reconstruction/src/DataReader.cxx | 8 ++++++++ .../io/include/TRDWorkflowIO/TRDDigitWriterSpec.h | 2 +- Detectors/TRD/workflow/io/src/TRDDigitWriterSpec.cxx | 4 ++-- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/Detectors/TRD/reconstruction/CMakeLists.txt b/Detectors/TRD/reconstruction/CMakeLists.txt index e93ec61dfccde..7e39dfb87f0b9 100644 --- a/Detectors/TRD/reconstruction/CMakeLists.txt +++ b/Detectors/TRD/reconstruction/CMakeLists.txt @@ -23,6 +23,7 @@ o2_add_library(TRDReconstruction PUBLIC_LINK_LIBRARIES O2::TRDBase O2::DataFormatsTRD O2::DataFormatsTPC + O2::TRDWorkflowIO O2::ReconstructionDataFormats O2::DetectorsRaw O2::rANS diff --git a/Detectors/TRD/reconstruction/src/DataReader.cxx b/Detectors/TRD/reconstruction/src/DataReader.cxx index 4ad80a8f96da1..b79ead8772ef2 100644 --- a/Detectors/TRD/reconstruction/src/DataReader.cxx +++ b/Detectors/TRD/reconstruction/src/DataReader.cxx @@ -22,6 +22,8 @@ #include "DetectorsRaw/HBFUtilsInitializer.h" #include "Framework/Logger.h" #include "DetectorsRaw/RDHUtils.h" +#include "TRDWorkflowIO/TRDTrackletWriterSpec.h" +#include "TRDWorkflowIO/TRDDigitWriterSpec.h" // add workflow options, note that customization needs to be declared before // including Framework/runDataProcessing @@ -36,6 +38,7 @@ void customize(std::vector& workflowOptions) {"trd-datareader-compresseddata", VariantType::Bool, false, {"The incoming data is compressed or not"}}, {"ignore-dist-stf", VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}, {"trd-datareader-fixdigitcorruptdata", VariantType::Bool, false, {"Fix the erroneous data at the end of digits"}}, + {"enable-root-output", VariantType::Bool, false, {"Write the data to file"}}, {"trd-datareader-enablebyteswapdata", VariantType::Bool, false, {"byteswap the incoming data, raw data needs it and simulation does not."}}}; o2::raw::HBFUtilsInitializer::addConfigOption(options); @@ -90,6 +93,11 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) algoSpec, Options{}}); + if (cfgc.options().get("enable-root-output")) { + workflow.emplace_back(o2::trd::getTRDDigitWriterSpec(false, false)); + workflow.emplace_back(o2::trd::getTRDTrackletWriterSpec(false)); + } + // configure dpl timer to inject correct firstTFOrbit: start from the 1st orbit of TF containing 1st sampled orbit o2::raw::HBFUtilsInitializer hbfIni(cfgc, workflow); diff --git a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDDigitWriterSpec.h b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDDigitWriterSpec.h index 827928a2c2118..52ed6f9a2e6fd 100644 --- a/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDDigitWriterSpec.h +++ b/Detectors/TRD/workflow/io/include/TRDWorkflowIO/TRDDigitWriterSpec.h @@ -22,7 +22,7 @@ struct DataProcessorSpec; namespace trd { -o2::framework::DataProcessorSpec getTRDDigitWriterSpec(bool mctruth = true); +o2::framework::DataProcessorSpec getTRDDigitWriterSpec(bool mctruth = true, bool writeTrigRec = true); } // end namespace trd } // end namespace o2 diff --git a/Detectors/TRD/workflow/io/src/TRDDigitWriterSpec.cxx b/Detectors/TRD/workflow/io/src/TRDDigitWriterSpec.cxx index c24f24ab82a8a..62b71333585bf 100644 --- a/Detectors/TRD/workflow/io/src/TRDDigitWriterSpec.cxx +++ b/Detectors/TRD/workflow/io/src/TRDDigitWriterSpec.cxx @@ -29,7 +29,7 @@ namespace trd template using BranchDefinition = framework::MakeRootTreeWriterSpec::BranchDefinition; -o2::framework::DataProcessorSpec getTRDDigitWriterSpec(bool mctruth) +o2::framework::DataProcessorSpec getTRDDigitWriterSpec(bool mctruth, bool writeTrigRec) { using InputSpec = framework::InputSpec; using MakeRootTreeWriterSpec = framework::MakeRootTreeWriterSpec; @@ -75,7 +75,7 @@ o2::framework::DataProcessorSpec getTRDDigitWriterSpec(bool mctruth) // setting a custom callback for closing the writer MakeRootTreeWriterSpec::CustomClose(finishWriting), BranchDefinition>{InputSpec{"input", "TRD", "DIGITS"}, "TRDDigit"}, - BranchDefinition>{InputSpec{"trinput", "TRD", "TRGRDIG"}, "TriggerRecord"}, + BranchDefinition>{InputSpec{"trinput", "TRD", "TRGRDIG"}, "TriggerRecord", (writeTrigRec ? 1 : 0)}, std::move(labelsdef))(); } From 70bbaf8a3e2f64566825b26f1b2e2b41a5c0f854 Mon Sep 17 00:00:00 2001 From: Ole Schmidt Date: Mon, 19 Jul 2021 16:01:52 +0200 Subject: [PATCH 230/314] Add README for TRD reco workflow --- Detectors/TRD/workflow/README.md | 44 ++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 Detectors/TRD/workflow/README.md diff --git a/Detectors/TRD/workflow/README.md b/Detectors/TRD/workflow/README.md new file mode 100644 index 0000000000000..847e16943b6d5 --- /dev/null +++ b/Detectors/TRD/workflow/README.md @@ -0,0 +1,44 @@ + + +# DPL workflows for the TRD + +## TRD reconstruction workflow +The TRD reconstruction workflow requires TRD tracklets, TRD trigger records and as additional input either TPC tracks, ITS-TPC matches, or both. +Take a look at the Input data section to see how to generate the input from a simulation. + +The reconstruction workflow consists of the following DPL processors: + +* `TRDTrackletReader` +* `tpc-track-reader` +* `itstpc-track-reader` +* `trd-globaltracking[TPC_ITS-TPC]` using [o2::gpu::GPUTRDTracker_t](../../../../tree/dev/GPU/GPUTracking/TRDTracking/GPUTRDTracker.h) +* `trd-trackbased-calib` using [o2::trd::TrackBasedCalib](../../../../tree/dev/Detectors/TRD/calibration/include/TRDCalibration/TrackBasedCalib.h) +* `trd-track-writer-tpc` +* `trd-track-writer-tpcits` +* `TRDCalibWriter` + +The different track reader and writer are only added to the workflow if the respective tracking source is configured. The workflow is started with the command: +`o2-trd-global-tracking`. Available options are: +* `--disable-mc` disable MC labels (the MC labels are currently ignored by the reconstruction workflow in anycase) +* `--disable-root-input` the input is provided by another DPL device +* `--disable-root-output` the output is not written to file +* `--tracking-sources ITS-TPC,TPC` a comma-seperated list of sources to use for the tracking. Default is `ALL` which results in the same workflow as `ITS-TPC,TPC` +* `--filter-trigrec` if enabled, the trigger records for which no ITS information is available are ignored. Per default on in the synchronous reconstruction, since there is no matching to TPC-only tracks in that case. +* `--configKeyValues "GPU_rec_trd.nSigmaTerrITSTPC=4;"` only one example for the different options for the TRD tracker. All are listed in [GPUSettingsList.h](../../../../tree/dev/GPU/GPUTracking/Definitions/GPUSettingsList.h). Search for GPUSettingsRecTRD + + +## Input data +Since the TRD reconstruction requires either ITS-TPC or TPC tracks to run there are some additional steps to be taken next to the simulation and digitization of an example data sample: +These commands will generate a small pp data sample with 10 events: +* `o2-sim -n 10 -g pythia8pp --skipModules ZDC` +* `o2-sim-digitizer-workflow -b` this will create both TRD digits and TRD tracklets +* `o2-tpc-reco-workflow -b --input-type digits --output-type clusters,tracks --configKeyValues "GPU_proc.ompThreads=4;" --shm-segment-size 10000000000 --run` +* `o2-its-reco-workflow -b --trackerCA --tracking-mode async --shm-segment-size 10000000000 --run` +* `o2-tpcits-match-workflow -b --tpc-track-reader tpctracks.root --tpc-native-cluster-reader "--infile tpc-native-clusters.root" --shm-segment-size 10000000000 --run` +* `o2-trd-tracklet-transformer -b --filter-trigrec` if the trigger filter is active here, it must also be active for the TRD tracking. Otherwise an error will be thrown +* `o2-trd-global-tracking -b --filter-trigrec` + +Of course one can also concatenate the workflows. For example:`o2-trd-tracklet-transformer -b --disable-root-output | o2-trd-global-tracking -b`. This will create the calibrated tracklets on-the-fly and not create the `trdcalibratedtracklets.root` file. + From 16f8040fc852b2e7e921372572b6cbec1317f08e Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Tue, 20 Jul 2021 13:42:33 +0300 Subject: [PATCH 231/314] Use array delete --- Analysis/PWGDQ/src/HistogramManager.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Analysis/PWGDQ/src/HistogramManager.cxx b/Analysis/PWGDQ/src/HistogramManager.cxx index b1656b6010b05..d7906910be3b1 100644 --- a/Analysis/PWGDQ/src/HistogramManager.cxx +++ b/Analysis/PWGDQ/src/HistogramManager.cxx @@ -76,7 +76,7 @@ HistogramManager::~HistogramManager() // De-constructor // delete fMainList; - delete fUsedVars; + delete[] fUsedVars; } //_______________________________________________________________________________ From 5c9b29f43f3bdcc83aa4d6126cdc783009976d05 Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Tue, 20 Jul 2021 15:00:22 +0200 Subject: [PATCH 232/314] adjust jobutils error detection pattern --- Utilities/Tools/jobutils.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/Utilities/Tools/jobutils.sh b/Utilities/Tools/jobutils.sh index 3dcc685683240..2f7e0f4a8d7e1 100644 --- a/Utilities/Tools/jobutils.sh +++ b/Utilities/Tools/jobutils.sh @@ -184,6 +184,7 @@ taskwrapper() { -e \"libc++abi.*terminating\" \ -e \"There was a crash.\" \ -e \"arrow.*Check failed\" \ + -e \"terminate called after\" \ -e \"\*\*\* Error in\"" # <--- LIBC fatal error messages grepcommand="grep -a -H ${pattern} $logfile ${JOBUTILS_JOB_SUPERVISEDFILES} >> encountered_exceptions_list 2>/dev/null" From 6c7e4ee002ec45cc1bed2705bb2b5ad1d64bb5d2 Mon Sep 17 00:00:00 2001 From: cortesep <57937610+cortesep@users.noreply.github.com> Date: Tue, 20 Jul 2021 23:18:52 +0200 Subject: [PATCH 233/314] Fix fp conversion and bc addressing (#6672) * Bug fix from @anerokhi * Fix floating point conversion * Bug fix from @anerokhi and @shahor02 * Better comments * Avoid trivial assignment * Better comments * Corrected behavior for first bunches * Clang format --- .../ZDC/include/DataFormatsZDC/ZDCEnergy.h | 2 +- Detectors/ZDC/simulation/src/Digits2Raw.cxx | 13 ++++++------- 2 files changed, 7 insertions(+), 8 deletions(-) diff --git a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ZDCEnergy.h b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ZDCEnergy.h index c07baadf64b42..09179e76c1bf1 100644 --- a/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ZDCEnergy.h +++ b/DataFormats/Detectors/ZDC/include/DataFormatsZDC/ZDCEnergy.h @@ -37,7 +37,7 @@ struct ZDCEnergy { } inline void set(uint8_t ch, float energy) { - float escaled = (energy + EnergyOffset) / EnergyUnit; + double escaled = (energy + EnergyOffset) / EnergyUnit; value = 0; if (escaled > 0) { if (escaled > EnergyMask) { diff --git a/Detectors/ZDC/simulation/src/Digits2Raw.cxx b/Detectors/ZDC/simulation/src/Digits2Raw.cxx index 4255db71e14f7..ffe2f55800667 100644 --- a/Detectors/ZDC/simulation/src/Digits2Raw.cxx +++ b/Detectors/ZDC/simulation/src/Digits2Raw.cxx @@ -591,13 +591,12 @@ void Digits2Raw::emptyBunches(std::bitset<3564>& bunchPattern) const int LHCMaxBunches = o2::constants::lhc::LHCMaxBunches; mNEmpty = 0; for (int32_t ib = 0; ib < LHCMaxBunches; ib++) { - int32_t mb = (ib + 31) % LHCMaxBunches; // beam gas from back of calorimeter - int32_t m1 = (ib + 1) % LHCMaxBunches; // previous bunch - int32_t cb = ib; // current bunch crossing - int32_t p1 = (ib - 1) % LHCMaxBunches; // colliding + 1 - int32_t p2 = (ib + 1) % LHCMaxBunches; // colliding + 2 - int32_t p3 = (ib + 1) % LHCMaxBunches; // colliding + 3 - if (bunchPattern[mb] || bunchPattern[m1] || bunchPattern[cb] || bunchPattern[p1] || bunchPattern[p2] || bunchPattern[p3]) { + int32_t mb = (ib + 31) % LHCMaxBunches; // beam gas from back of calorimeter (31 bc earlier than a colliding bunch) + int32_t m1 = (ib + 1) % LHCMaxBunches; // next bunch is colliding (position -1) + int32_t p1 = (ib - 1 + LHCMaxBunches) % LHCMaxBunches; // current bc is 1 bc after colliding (position +1) + int32_t p2 = (ib - 2 + LHCMaxBunches) % LHCMaxBunches; // current bc is 2 bc after colliding + int32_t p3 = (ib - 3 + LHCMaxBunches) % LHCMaxBunches; // current bc is 3 bc after colliding + if (bunchPattern[mb] || bunchPattern[m1] || bunchPattern[ib] || bunchPattern[p1] || bunchPattern[p2] || bunchPattern[p3]) { mEmpty[ib] = mNEmpty; } else { mNEmpty++; From 77c3ab6c61d050f2fedf1897287146d88f54eb77 Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Wed, 21 Jul 2021 08:41:36 +0300 Subject: [PATCH 234/314] Make building without tests possible again (#6699) --- Framework/Core/CMakeLists.txt | 2 ++ Framework/GUISupport/CMakeLists.txt | 2 +- run/CMakeLists.txt | 2 ++ 3 files changed, 5 insertions(+), 1 deletion(-) diff --git a/Framework/Core/CMakeLists.txt b/Framework/Core/CMakeLists.txt index 07582b035fa21..54d8411fbc78b 100644 --- a/Framework/Core/CMakeLists.txt +++ b/Framework/Core/CMakeLists.txt @@ -305,6 +305,7 @@ foreach(w COMMAND_LINE_ARGS ${DPL_WORKFLOW_TESTS_EXTRA_OPTIONS} --run --shm-segment-size 20000000) endforeach() +if (BUILD_TESTING) # TODO: DanglingInput test not working for the moment [ERROR] Unable to relay # part. [WARN] Incoming data is already obsolete, not relaying. set_property(TEST test_Framework_test_DanglingInputs PROPERTY DISABLED TRUE) @@ -312,6 +313,7 @@ set_property(TEST test_Framework_test_DanglingInputs PROPERTY DISABLED TRUE) # TODO: investigate the problem and re-enable set_property(TEST test_Framework_test_BoostSerializedProcessing PROPERTY DISABLED TRUE) +endif() # specific tests which needs command line options o2_add_test( diff --git a/Framework/GUISupport/CMakeLists.txt b/Framework/GUISupport/CMakeLists.txt index f789baf2915af..6fc3ef3e48e13 100644 --- a/Framework/GUISupport/CMakeLists.txt +++ b/Framework/GUISupport/CMakeLists.txt @@ -46,7 +46,7 @@ endforeach() # environment assertion fired X11: The DISPLAY environment variable is missing # glfw-3.2.1/src/window.c:579: glfwGetFramebufferSize: Assertion `window != # ((void *)0)' failed. -if(NOT APPLE) +if(NOT APPLE AND BUILD_TESTING) set_property(TEST test_Framework_test_SimpleTracksED PROPERTY DISABLED TRUE) set_property(TEST test_Framework_test_CustomGUIGL PROPERTY DISABLED TRUE) set_property(TEST test_Framework_test_CustomGUISokol PROPERTY DISABLED TRUE) diff --git a/run/CMakeLists.txt b/run/CMakeLists.txt index 7d0440a81b5c9..315c033fc2ea3 100644 --- a/run/CMakeLists.txt +++ b/run/CMakeLists.txt @@ -94,6 +94,7 @@ message(STATUS "SIMENV = ${SIMENV}") o2_name_target(sim NAME o2simExecutable IS_EXE) o2_name_target(sim-serial NAME o2simSerialExecutable IS_EXE) +if (BUILD_TESTING) o2_add_test_command(NAME o2sim_G4 WORKING_DIRECTORY ${SIMTESTDIR} TIMEOUT 400 @@ -228,5 +229,6 @@ o2_add_test_command(NAME o2sim_G4_checklogs set_tests_properties(o2sim_G3_checklogs PROPERTIES FIXTURES_REQUIRED G4) +endif() install(FILES o2-sim-client.py PERMISSIONS GROUP_READ GROUP_EXECUTE OWNER_EXECUTE OWNER_WRITE OWNER_READ WORLD_EXECUTE WORLD_READ DESTINATION ${CMAKE_INSTALL_BINDIR}) From 17245c894be5d80c2d04f54f7f4f0c7895e67c87 Mon Sep 17 00:00:00 2001 From: Nazar Burmasov Date: Wed, 21 Jul 2021 17:23:49 +0300 Subject: [PATCH 235/314] Rework filling process for MC track labels --- .../AODProducerWorkflowSpec.h | 21 +- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 255 ++++++++---------- 2 files changed, 121 insertions(+), 155 deletions(-) diff --git a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h index 5196be80146ad..c7aff889bab6c 100644 --- a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h +++ b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h @@ -168,6 +168,8 @@ class AODProducerWorkflowDPL : public Task std::unordered_map mGIDToTableID; int mTableTrID{0}; + TripletsMap_t mToStore; + std::shared_ptr mDataRequest; // truncation is enabled by default @@ -228,10 +230,11 @@ class AODProducerWorkflowDPL : public Task }; // helper struct for mc track labels + // using -1 as dummies for AOD struct MCLabels { - uint32_t labelID = std::numeric_limits::max(); - uint32_t labelITS = std::numeric_limits::max(); - uint32_t labelTPC = std::numeric_limits::max(); + uint32_t labelID = -1; + uint32_t labelITS = -1; + uint32_t labelTPC = -1; uint16_t labelMask = 0; uint8_t mftLabelMask = 0; }; @@ -268,12 +271,12 @@ class AODProducerWorkflowDPL : public Task mftTracksCursorType& mftTracksCursor); template - void fillMCParticlesTable(o2::steer::MCKinematicsReader& mcReader, const MCParticlesCursorType& mcParticlesCursor, - gsl::span& mcTruthITS, - gsl::span& mcTruthMFT, - gsl::span& mcTruthTPC, - TripletsMap_t& toStore, - std::vector> const& mccolidtoeventsource); + void fillMCParticlesTable(o2::steer::MCKinematicsReader& mcReader, + const MCParticlesCursorType& mcParticlesCursor, + gsl::span& primVer2TRefs, + gsl::span& GIndices, + o2::globaltracking::RecoContainer& data, + std::vector> const& mccolid_to_eventandsource); // helper for tpc clusters void countTPCClusters(const o2::tpc::TrackTPC& track, diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index 61a14f40f9df0..25c312532d1d1 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -277,43 +277,50 @@ void AODProducerWorkflowDPL::fillTrackTablesPerCollision(int collisionID, } template -void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& mcReader, const MCParticlesCursorType& mcParticlesCursor, - gsl::span& mcTruthITS, - gsl::span& mcTruthMFT, - gsl::span& mcTruthTPC, - TripletsMap_t& toStore, +void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& mcReader, + const MCParticlesCursorType& mcParticlesCursor, + gsl::span& primVer2TRefs, + gsl::span& GIndices, + o2::globaltracking::RecoContainer& data, std::vector> const& mccolid_to_eventandsource) { // mark reconstructed MC particles to store them into the table - for (int i = 0; i < mcTruthITS.size(); i++) { - auto& mcTruth = mcTruthITS[i]; - if (!mcTruth.isValid()) { - continue; - } - int source = mcTruth.getSourceID(); - int event = mcTruth.getEventID(); - int particle = mcTruth.getTrackID(); - toStore[Triplet_t(source, event, particle)] = 1; - } - for (int i = 0; i < mcTruthMFT.size(); i++) { - auto& mcTruth = mcTruthMFT[i]; - if (!mcTruth.isValid()) { - continue; - } - int source = mcTruth.getSourceID(); - int event = mcTruth.getEventID(); - int particle = mcTruth.getTrackID(); - toStore[Triplet_t(source, event, particle)] = 1; - } - for (int i = 0; i < mcTruthTPC.size(); i++) { - auto& mcTruth = mcTruthTPC[i]; - if (!mcTruth.isValid()) { - continue; + for (auto& trackRef : primVer2TRefs) { + for (int src = GIndex::NSources; src--;) { + int start = trackRef.getFirstEntryOfSource(src); + int end = start + trackRef.getEntriesOfSource(src); + for (int ti = start; ti < end; ti++) { + auto& trackIndex = GIndices[ti]; + if (GIndex::includesSource(src, mInputSources)) { + auto mcTruth = data.getTrackMCLabel(trackIndex); + if (!mcTruth.isValid()) { + continue; + } + int source = mcTruth.getSourceID(); + int event = mcTruth.getEventID(); + int particle = mcTruth.getTrackID(); + mToStore[Triplet_t(source, event, particle)] = 1; + // treating contributors of global tracks + auto contributorsGID = data.getSingleDetectorRefs(trackIndex); + if (contributorsGID[GIndex::Source::ITS].isIndexSet() && contributorsGID[GIndex::Source::TPC].isIndexSet()) { + auto mcTruthITS = data.getTrackMCLabel(contributorsGID[GIndex::Source::ITS]); + if (mcTruthITS.isValid()) { + source = mcTruthITS.getSourceID(); + event = mcTruthITS.getEventID(); + particle = mcTruthITS.getTrackID(); + mToStore[Triplet_t(source, event, particle)] = 1; + } + auto mcTruthTPC = data.getTrackMCLabel(contributorsGID[GIndex::Source::TPC]); + if (mcTruthTPC.isValid()) { + source = mcTruthTPC.getSourceID(); + event = mcTruthTPC.getEventID(); + particle = mcTruthTPC.getTrackID(); + mToStore[Triplet_t(source, event, particle)] = 1; + } + } + } + } } - int source = mcTruth.getSourceID(); - int event = mcTruth.getEventID(); - int particle = mcTruth.getTrackID(); - toStore[Triplet_t(source, event, particle)] = 1; } int tableIndex = 1; for (int mccolid = 0; mccolid < mccolid_to_eventandsource.size(); ++mccolid) { @@ -326,31 +333,31 @@ void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& for (int particle = mcParticles.size() - 1; particle >= 0; particle--) { int mother0 = mcParticles[particle].getMotherTrackId(); if (mother0 == -1) { - toStore[Triplet_t(source, event, particle)] = 1; + mToStore[Triplet_t(source, event, particle)] = 1; } - if (toStore.find(Triplet_t(source, event, particle)) == toStore.end()) { + if (mToStore.find(Triplet_t(source, event, particle)) == mToStore.end()) { continue; } if (mother0 != -1) { - toStore[Triplet_t(source, event, mother0)] = 1; + mToStore[Triplet_t(source, event, mother0)] = 1; } int mother1 = mcParticles[particle].getSecondMotherTrackId(); if (mother1 != -1) { - toStore[Triplet_t(source, particle, mother1)] = 1; + mToStore[Triplet_t(source, particle, mother1)] = 1; } int daughter0 = mcParticles[particle].getFirstDaughterTrackId(); if (daughter0 != -1) { - toStore[Triplet_t(source, event, daughter0)] = 1; + mToStore[Triplet_t(source, event, daughter0)] = 1; } int daughterL = mcParticles[particle].getLastDaughterTrackId(); if (daughterL != -1) { - toStore[Triplet_t(source, event, daughterL)] = 1; + mToStore[Triplet_t(source, event, daughterL)] = 1; } } // enumerate reconstructed mc particles and their relatives to get mother/daughter relations for (int particle = 0; particle < mcParticles.size(); particle++) { - auto mapItem = toStore.find(Triplet_t(source, event, particle)); - if (mapItem != toStore.end()) { + auto mapItem = mToStore.find(Triplet_t(source, event, particle)); + if (mapItem != mToStore.end()) { mapItem->second = tableIndex - 1; tableIndex++; } @@ -359,40 +366,40 @@ void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& // if all mc particles are stored, all mc particles will be enumerated if (!mRecoOnly) { for (int particle = 0; particle < mcParticles.size(); particle++) { - toStore[Triplet_t(source, event, particle)] = tableIndex - 1; + mToStore[Triplet_t(source, event, particle)] = tableIndex - 1; tableIndex++; } } // fill survived mc tracks into the table for (int particle = 0; particle < mcParticles.size(); particle++) { - if (toStore.find(Triplet_t(source, event, particle)) == toStore.end()) { + if (mToStore.find(Triplet_t(source, event, particle)) == mToStore.end()) { continue; } int statusCode = 0; uint8_t flags = 0; float weight = 0.f; int mcMother0 = mcParticles[particle].getMotherTrackId(); - auto item = toStore.find(Triplet_t(source, event, mcMother0)); + auto item = mToStore.find(Triplet_t(source, event, mcMother0)); int mother0 = -1; - if (item != toStore.end()) { + if (item != mToStore.end()) { mother0 = item->second; } int mcMother1 = mcParticles[particle].getSecondMotherTrackId(); int mother1 = -1; - item = toStore.find(Triplet_t(source, event, mcMother1)); - if (item != toStore.end()) { + item = mToStore.find(Triplet_t(source, event, mcMother1)); + if (item != mToStore.end()) { mother1 = item->second; } int mcDaughter0 = mcParticles[particle].getFirstDaughterTrackId(); int daughter0 = -1; - item = toStore.find(Triplet_t(source, event, mcDaughter0)); - if (item != toStore.end()) { + item = mToStore.find(Triplet_t(source, event, mcDaughter0)); + if (item != mToStore.end()) { daughter0 = item->second; } int mcDaughterL = mcParticles[particle].getLastDaughterTrackId(); int daughterL = -1; - item = toStore.find(Triplet_t(source, event, mcDaughterL)); - if (item != toStore.end()) { + item = mToStore.find(Triplet_t(source, event, mcDaughterL)); + if (item != mToStore.end()) { daughterL = item->second; } mcParticlesCursor(0, @@ -543,14 +550,7 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) auto ft0ChData = recoData.getFT0ChannelsData(); auto ft0RecPoints = recoData.getFT0RecPoints(); - auto tracksTPCMCTruth = recoData.getTPCTracksMCLabels(); - auto tracksITSMCTruth = recoData.getITSTracksMCLabels(); - auto tracksMFTMCTruth = recoData.getMFTTracksMCLabels(); - LOG(DEBUG) << "FOUND " << primVertices.size() << " primary vertices"; - LOG(DEBUG) << "FOUND " << tracksTPCMCTruth.size() << " TPC labels"; - LOG(DEBUG) << "FOUND " << tracksMFTMCTruth.size() << " MFT labels"; - LOG(DEBUG) << "FOUND " << tracksITSMCTruth.size() << " ITS labels"; LOG(DEBUG) << "FOUND " << ft0RecPoints.size() << " FT0 rec. points"; auto& bcBuilder = pc.outputs().make(Output{"AOD", "BC"}); @@ -859,12 +859,11 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) bcsMap.clear(); // filling mc particles table - TripletsMap_t toStore; - fillMCParticlesTable(mcReader, mcParticlesCursor, - tracksITSMCTruth, - tracksMFTMCTruth, - tracksTPCMCTruth, - toStore, + fillMCParticlesTable(mcReader, + mcParticlesCursor, + primVer2TRefs, + primVerGIs, + recoData, mccolid_to_eventandsource); // ------------------------------------------------------ @@ -874,104 +873,68 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) // bit 13 -- ITS and TPC labels are not equal // bit 14 -- isNoise() == true // bit 15 -- isFake() == true - // labelID = std::numeric_limits::max() -- label is not set + // labelID = -1 -- label is not set // need to go through labels in the same order as for tracks - // todo: fill labels in the same way as tracks, using reco container for (auto& trackRef : primVer2TRefs) { for (int src = GIndex::NSources; src--;) { int start = trackRef.getFirstEntryOfSource(src); int end = start + trackRef.getEntriesOfSource(src); for (int ti = start; ti < end; ti++) { auto& trackIndex = primVerGIs[ti]; - MCLabels labelHolder; - // its labels - if (src == GIndex::Source::ITS) { - auto& mcTruthITS = tracksITSMCTruth[trackIndex.getIndex()]; - if (mcTruthITS.isValid()) { - labelHolder.labelID = toStore.at(Triplet_t(mcTruthITS.getSourceID(), mcTruthITS.getEventID(), mcTruthITS.getTrackID())); - } - if (mcTruthITS.isFake()) { - labelHolder.labelMask |= (0x1 << 15); - } - if (mcTruthITS.isNoise()) { - labelHolder.labelMask |= (0x1 << 14); - } - mcTrackLabelCursor(0, - labelHolder.labelID, - labelHolder.labelMask); - } - // tpc labels - if (src == GIndex::Source::TPC) { - auto& mcTruthTPC = tracksTPCMCTruth[trackIndex.getIndex()]; - if (mcTruthTPC.isValid()) { - labelHolder.labelID = toStore.at(Triplet_t(mcTruthTPC.getSourceID(), mcTruthTPC.getEventID(), mcTruthTPC.getTrackID())); - } - if (mcTruthTPC.isFake()) { - labelHolder.labelMask |= (0x1 << 15); - } - if (mcTruthTPC.isNoise()) { - labelHolder.labelMask |= (0x1 << 14); - } - mcTrackLabelCursor(0, - labelHolder.labelID, - labelHolder.labelMask); - } - // its-tpc and its-tpc-tof labels - // todo: - // probably need to store both its and tpc labels - // for now filling only TPC label - if ((src == GIndex::Source::ITSTPC || src == GIndex::Source::ITSTPCTOF)) { - auto contributorsGID = recoData.getSingleDetectorRefs(trackIndex); - auto& mcTruthITS = tracksITSMCTruth[contributorsGID[GIndex::Source::ITS].getIndex()]; - auto& mcTruthTPC = tracksTPCMCTruth[contributorsGID[GIndex::Source::TPC].getIndex()]; - // its-contributor label - if (contributorsGID[GIndex::Source::ITS].isIndexSet()) { - if (mcTruthITS.isValid()) { - labelHolder.labelITS = toStore.at(Triplet_t(mcTruthITS.getSourceID(), mcTruthITS.getEventID(), mcTruthITS.getTrackID())); + if (GIndex::includesSource(src, mInputSources)) { + auto mcTruth = recoData.getTrackMCLabel(trackIndex); + MCLabels labelHolder; + if (src == GIndex::Source::MFT) { // treating mft labels separately + if (mcTruth.isValid()) { // if not set, -1 will be stored + labelHolder.labelID = mToStore.at(Triplet_t(mcTruth.getSourceID(), mcTruth.getEventID(), mcTruth.getTrackID())); } - } - if (contributorsGID[GIndex::Source::TPC].isIndexSet()) { - if (mcTruthTPC.isValid()) { - labelHolder.labelTPC = toStore.at(Triplet_t(mcTruthTPC.getSourceID(), mcTruthTPC.getEventID(), mcTruthTPC.getTrackID())); + if (mcTruth.isFake()) { + labelHolder.mftLabelMask |= (0x1 << 7); } + if (mcTruth.isNoise()) { + labelHolder.mftLabelMask |= (0x1 << 6); + } + mcMFTTrackLabelCursor(0, + labelHolder.labelID, + labelHolder.mftLabelMask); + } else { + if (mcTruth.isValid()) { // if not set, -1 will be stored + labelHolder.labelID = mToStore.at(Triplet_t(mcTruth.getSourceID(), mcTruth.getEventID(), mcTruth.getTrackID())); + } + // treating possible mismatches for global tracks + auto contributorsGID = recoData.getSingleDetectorRefs(trackIndex); + if (contributorsGID[GIndex::Source::ITS].isIndexSet() && contributorsGID[GIndex::Source::TPC].isIndexSet()) { + auto mcTruthITS = recoData.getTrackMCLabel(contributorsGID[GIndex::Source::ITS]); + if (mcTruthITS.isValid()) { + labelHolder.labelITS = mToStore.at(Triplet_t(mcTruthITS.getSourceID(), mcTruthITS.getEventID(), mcTruthITS.getTrackID())); + } + auto mcTruthTPC = recoData.getTrackMCLabel(contributorsGID[GIndex::Source::TPC]); + if (mcTruthTPC.isValid()) { + labelHolder.labelTPC = mToStore.at(Triplet_t(mcTruthTPC.getSourceID(), mcTruthTPC.getEventID(), mcTruthTPC.getTrackID())); + labelHolder.labelID = labelHolder.labelTPC; + } + if (labelHolder.labelITS != labelHolder.labelTPC) { + LOG(DEBUG) << "ITS-TPC MCTruth: labelIDs do not match at " << trackIndex.getIndex() << ", src = " << src; + labelHolder.labelMask |= (0x1 << 13); + } + } + if (mcTruth.isFake()) { + labelHolder.labelMask |= (0x1 << 15); + } + if (mcTruth.isNoise()) { + labelHolder.labelMask |= (0x1 << 14); + } + mcTrackLabelCursor(0, + labelHolder.labelID, + labelHolder.labelMask); } - labelHolder.labelID = labelHolder.labelTPC; - if (mcTruthITS.isFake() || mcTruthTPC.isFake()) { - labelHolder.labelMask |= (0x1 << 15); - } - if (mcTruthITS.isNoise() || mcTruthTPC.isNoise()) { - labelHolder.labelMask |= (0x1 << 14); - } - if (labelHolder.labelITS != labelHolder.labelTPC) { - LOG(DEBUG) << "ITS-TPC MCTruth: labelIDs do not match at " << trackIndex.getIndex(); - labelHolder.labelMask |= (0x1 << 13); - } - mcTrackLabelCursor(0, - labelHolder.labelID, - labelHolder.labelMask); - } - // mft labels - if (src == GIndex::Source::MFT) { - auto& mcTruthMFT = tracksMFTMCTruth[trackIndex.getIndex()]; - if (mcTruthMFT.isValid()) { - labelHolder.labelID = toStore.at(Triplet_t(mcTruthMFT.getSourceID(), mcTruthMFT.getEventID(), mcTruthMFT.getTrackID())); - } - if (mcTruthMFT.isFake()) { - labelHolder.mftLabelMask |= (0x1 << 7); - } - if (mcTruthMFT.isNoise()) { - labelHolder.mftLabelMask |= (0x1 << 6); - } - mcMFTTrackLabelCursor(0, - labelHolder.labelID, - labelHolder.mftLabelMask); } } } } - toStore.clear(); + mToStore.clear(); pc.outputs().snapshot(Output{"TFN", "TFNumber", 0, Lifetime::Timeframe}, tfNumber); From 1cd95bce05efa9d27c04b1937fe67cec1f4acb33 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Wed, 21 Jul 2021 17:27:16 +0200 Subject: [PATCH 236/314] DPL: use old value for maxMemory (#6702) --- Framework/Core/src/ArrowSupport.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Framework/Core/src/ArrowSupport.cxx b/Framework/Core/src/ArrowSupport.cxx index 66c16958be645..b54e610b4b700 100644 --- a/Framework/Core/src/ArrowSupport.cxx +++ b/Framework/Core/src/ArrowSupport.cxx @@ -345,7 +345,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() if (vm.count("aod-memory-rate-limit")) { config->maxMemory = std::stoll(vm["aod-memory-rate-limit"].as()) / 1000000; } else { - config->maxMemory = readers * 400; + config->maxMemory = readers * 500; } static bool once = false; // Until we guarantee this is called only once... From d33bfe7f521f9b90e8ef3b9186e0ce24aadb85fc Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Thu, 22 Jul 2021 00:14:17 +0200 Subject: [PATCH 237/314] DPL: use C++20 aggregate initialisers for services (#6701) Simplifies too much to still be negleted, at least in backend code. --- .../Core/include/Framework/ServiceSpec.h | 8 +- Framework/Core/src/CommonMessageBackends.cxx | 127 ++--- Framework/Core/src/CommonServices.cxx | 526 +++++------------- 3 files changed, 203 insertions(+), 458 deletions(-) diff --git a/Framework/Core/include/Framework/ServiceSpec.h b/Framework/Core/include/Framework/ServiceSpec.h index 29a916fd757e3..a861fd7f9b105 100644 --- a/Framework/Core/include/Framework/ServiceSpec.h +++ b/Framework/Core/include/Framework/ServiceSpec.h @@ -98,11 +98,11 @@ using ServiceDriverInit = std::function #include +// This is to allow C++20 aggregate initialisation +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wpedantic" + namespace o2::framework { @@ -41,94 +45,63 @@ struct ProcessingContext; o2::framework::ServiceSpec CommonMessageBackends::fairMQBackendSpec() { - return ServiceSpec{"fairmq-backend", - [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions&) -> ServiceHandle { - auto& device = services.get(); - auto context = new MessageContext(FairMQDeviceProxy{device.device()}); - auto& spec = services.get(); + return ServiceSpec{ + .name = "fairmq-backend", + .init = [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions&) -> ServiceHandle { + auto& device = services.get(); + auto context = new MessageContext(FairMQDeviceProxy{device.device()}); + auto& spec = services.get(); - auto dispatcher = [&device](FairMQParts&& parts, std::string const& channel, unsigned int index) { - DataProcessor::doSend(*device.device(), std::move(parts), channel.c_str(), index); - }; + auto dispatcher = [&device](FairMQParts&& parts, std::string const& channel, unsigned int index) { + DataProcessor::doSend(*device.device(), std::move(parts), channel.c_str(), index); + }; - auto matcher = [policy = spec.dispatchPolicy](o2::header::DataHeader const& header) { - if (policy.triggerMatcher == nullptr) { - return true; - } - return policy.triggerMatcher(Output{header}); - }; + auto matcher = [policy = spec.dispatchPolicy](o2::header::DataHeader const& header) { + if (policy.triggerMatcher == nullptr) { + return true; + } + return policy.triggerMatcher(Output{header}); + }; - if (spec.dispatchPolicy.action == DispatchPolicy::DispatchOp::WhenReady) { - context->init(DispatchControl{dispatcher, matcher}); - } - return ServiceHandle{TypeIdHelpers::uniqueId(), context}; - }, - CommonServices::noConfiguration(), - CommonMessageBackendsHelpers::clearContext(), - CommonMessageBackendsHelpers::sendCallback(), - nullptr, - nullptr, - CommonMessageBackendsHelpers::clearContextEOS(), - CommonMessageBackendsHelpers::sendCallbackEOS(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + if (spec.dispatchPolicy.action == DispatchPolicy::DispatchOp::WhenReady) { + context->init(DispatchControl{dispatcher, matcher}); + } + return ServiceHandle{TypeIdHelpers::uniqueId(), context}; + }, + .configure = CommonServices::noConfiguration(), + .preProcessing = CommonMessageBackendsHelpers::clearContext(), + .postProcessing = CommonMessageBackendsHelpers::sendCallback(), + .preEOS = CommonMessageBackendsHelpers::clearContextEOS(), + .postEOS = CommonMessageBackendsHelpers::sendCallbackEOS(), + .kind = ServiceKind::Serial}; } o2::framework::ServiceSpec CommonMessageBackends::stringBackendSpec() { - return ServiceSpec{"string-backend", - CommonMessageBackendsHelpers::createCallback(), - CommonServices::noConfiguration(), - CommonMessageBackendsHelpers::clearContext(), - CommonMessageBackendsHelpers::sendCallback(), - nullptr, - nullptr, - CommonMessageBackendsHelpers::clearContextEOS(), - CommonMessageBackendsHelpers::sendCallbackEOS(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + return ServiceSpec{ + .name = "string-backend", + .init = CommonMessageBackendsHelpers::createCallback(), + .configure = CommonServices::noConfiguration(), + .preProcessing = CommonMessageBackendsHelpers::clearContext(), + .postProcessing = CommonMessageBackendsHelpers::sendCallback(), + .preEOS = CommonMessageBackendsHelpers::clearContextEOS(), + .postEOS = CommonMessageBackendsHelpers::sendCallbackEOS(), + .kind = ServiceKind::Serial}; } o2::framework::ServiceSpec CommonMessageBackends::rawBufferBackendSpec() { - return ServiceSpec{"raw-backend", - CommonMessageBackendsHelpers::createCallback(), - CommonServices::noConfiguration(), - CommonMessageBackendsHelpers::clearContext(), - CommonMessageBackendsHelpers::sendCallback(), - nullptr, - nullptr, - CommonMessageBackendsHelpers::clearContextEOS(), - CommonMessageBackendsHelpers::sendCallbackEOS(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + return ServiceSpec{ + .name = "raw-backend", + .init = CommonMessageBackendsHelpers::createCallback(), + .configure = CommonServices::noConfiguration(), + .preProcessing = CommonMessageBackendsHelpers::clearContext(), + .postProcessing = CommonMessageBackendsHelpers::sendCallback(), + .preEOS = CommonMessageBackendsHelpers::clearContextEOS(), + .postEOS = CommonMessageBackendsHelpers::sendCallbackEOS(), + .kind = ServiceKind::Serial}; } } // namespace o2::framework + +#pragma GCC diagnostic pop diff --git a/Framework/Core/src/CommonServices.cxx b/Framework/Core/src/CommonServices.cxx index dc206872c442c..86ec23a44ae2f 100644 --- a/Framework/Core/src/CommonServices.cxx +++ b/Framework/Core/src/CommonServices.cxx @@ -55,6 +55,10 @@ using Metric = o2::monitoring::Metric; using Key = o2::monitoring::tags::Key; using Value = o2::monitoring::tags::Value; +// This is to allow C++20 aggregate initialisation +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wpedantic" + namespace o2::framework { @@ -67,126 +71,83 @@ struct ServiceKindExtractor { #define MONITORING_QUEUE_SIZE 100 o2::framework::ServiceSpec CommonServices::monitoringSpec() { - return ServiceSpec{"monitoring", - [](ServiceRegistry& registry, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { - void* service = nullptr; - bool isWebsocket = strncmp(options.GetPropertyAsString("driver-client-backend").c_str(), "ws://", 4) == 0; - bool isDefault = options.GetPropertyAsString("monitoring-backend") == "default"; - bool useDPL = (isWebsocket && isDefault) || options.GetPropertyAsString("monitoring-backend") == "dpl://"; - o2::monitoring::Monitoring* monitoring; - if (useDPL) { - monitoring = new Monitoring(); - monitoring->addBackend(std::make_unique(registry)); - } else { - auto backend = isDefault ? "infologger://" : options.GetPropertyAsString("monitoring-backend"); - monitoring = MonitoringFactory::Get(backend).release(); - } - service = monitoring; - monitoring->enableBuffering(MONITORING_QUEUE_SIZE); - assert(registry.get().name.empty() == false); - monitoring->addGlobalTag("dataprocessor_id", registry.get().name); - try { - auto run = registry.get().device()->fConfig->GetProperty("runNumber", "unspecified"); - monitoring->setRunNumber(stoul(run)); - } catch (...) { - } - return ServiceHandle{TypeIdHelpers::uniqueId(), service}; - }, - noConfiguration(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - [](ServiceRegistry& registry, void* service) { + return ServiceSpec{ + .name = "monitoring", + .init = [](ServiceRegistry& registry, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { + void* service = nullptr; + bool isWebsocket = strncmp(options.GetPropertyAsString("driver-client-backend").c_str(), "ws://", 4) == 0; + bool isDefault = options.GetPropertyAsString("monitoring-backend") == "default"; + bool useDPL = (isWebsocket && isDefault) || options.GetPropertyAsString("monitoring-backend") == "dpl://"; + o2::monitoring::Monitoring* monitoring; + if (useDPL) { + monitoring = new Monitoring(); + monitoring->addBackend(std::make_unique(registry)); + } else { + auto backend = isDefault ? "infologger://" : options.GetPropertyAsString("monitoring-backend"); + monitoring = MonitoringFactory::Get(backend).release(); + } + service = monitoring; + monitoring->enableBuffering(MONITORING_QUEUE_SIZE); + assert(registry.get().name.empty() == false); + monitoring->addGlobalTag("dataprocessor_id", registry.get().name); + try { + auto run = registry.get().device()->fConfig->GetProperty("runNumber", "unspecified"); + monitoring->setRunNumber(stoul(run)); + } catch (...) { + } + return ServiceHandle{TypeIdHelpers::uniqueId(), service}; + }, + .configure = noConfiguration(), + .exit = [](ServiceRegistry& registry, void* service) { Monitoring* monitoring = reinterpret_cast(service); - delete monitoring; - }, - nullptr, - ServiceKind::Serial}; + delete monitoring; }, + .kind = ServiceKind::Serial}; } o2::framework::ServiceSpec CommonServices::datatakingContextSpec() { - return ServiceSpec{"datataking-contex", - simpleServiceInit(), - noConfiguration(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - [](ServiceRegistry& services, void* service) { - auto& context = services.get(); - context.runNumber = services.get().device()->fConfig->GetProperty("runNumber", "unspecified"); - // FIXME: we actually need to get the orbit, not only to know where it is - std::string orbitResetTimeUrl = services.get().device()->fConfig->GetProperty("orbit-reset-time", "ccdb://CTP/Calib/OrbitResetTime"); - auto is_number = [](const std::string& s) -> bool { - return !s.empty() && std::all_of(s.begin(), s.end(), ::isdigit); - }; - - if (orbitResetTimeUrl.rfind("file://") == 0) { - // FIXME: read it from a file - context.orbitResetTime = 490917600; - } else if (orbitResetTimeUrl.rfind("http://") == 0) { - // FIXME: read it from ccdb - context.orbitResetTime = 490917600; - } else if (is_number(orbitResetTimeUrl)) { - context.orbitResetTime = std::stoull(orbitResetTimeUrl.data()); - // FIXME: specify it from the command line - } else { - context.orbitResetTime = 490917600; - } - context.nOrbitsPerTF = services.get().device()->fConfig->GetProperty("Norbits_per_TF", 128); - }, - nullptr, - nullptr, - ServiceKind::Serial}; + return ServiceSpec{ + .name = "datataking-contex", + .init = simpleServiceInit(), + .configure = noConfiguration(), + .start = [](ServiceRegistry& services, void* service) { + auto& context = services.get(); + context.runNumber = services.get().device()->fConfig->GetProperty("runNumber", "unspecified"); + // FIXME: we actually need to get the orbit, not only to know where it is + std::string orbitResetTimeUrl = services.get().device()->fConfig->GetProperty("orbit-reset-time", "ccdb://CTP/Calib/OrbitResetTime"); + auto is_number = [](const std::string& s) -> bool { + return !s.empty() && std::all_of(s.begin(), s.end(), ::isdigit); + }; + + if (orbitResetTimeUrl.rfind("file://") == 0) { + // FIXME: read it from a file + context.orbitResetTime = 490917600; + } else if (orbitResetTimeUrl.rfind("http://") == 0) { + // FIXME: read it from ccdb + context.orbitResetTime = 490917600; + } else if (is_number(orbitResetTimeUrl)) { + context.orbitResetTime = std::stoull(orbitResetTimeUrl.data()); + // FIXME: specify it from the command line + } else { + context.orbitResetTime = 490917600; + } + context.nOrbitsPerTF = services.get().device()->fConfig->GetProperty("Norbits_per_TF", 128); + }, + .kind = ServiceKind::Serial}; } o2::framework::ServiceSpec CommonServices::infologgerContextSpec() { - return ServiceSpec{"infologger-contex", - simpleServiceInit(), - noConfiguration(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - [](ServiceRegistry& services, void* service) { - auto& infoLoggerContext = services.get(); - auto run = services.get().device()->fConfig->GetProperty("runNumber", "unspecified"); - infoLoggerContext.setField(InfoLoggerContext::FieldName::Run, run); - }, - nullptr, - nullptr, - ServiceKind::Serial}; + return ServiceSpec{ + .name = "infologger-contex", + .init = simpleServiceInit(), + .configure = noConfiguration(), + .start = [](ServiceRegistry& services, void* service) { + auto& infoLoggerContext = services.get(); + auto run = services.get().device()->fConfig->GetProperty("runNumber", "unspecified"); + infoLoggerContext.setField(InfoLoggerContext::FieldName::Run, run); + }, + .kind = ServiceKind::Serial}; } // Creates the sink for FairLogger / InfoLogger integration @@ -251,49 +212,34 @@ auto createInfoLoggerSinkHelper(InfoLogger* logger, InfoLoggerContext* ctx) o2::framework::ServiceSpec CommonServices::infologgerSpec() { - return ServiceSpec{"infologger", - [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { - auto infoLoggerMode = options.GetPropertyAsString("infologger-mode"); - if (infoLoggerMode != "") { - setenv("O2_INFOLOGGER_MODE", infoLoggerMode.c_str(), 1); - } - auto infoLoggerService = new InfoLogger; - auto infoLoggerContext = &services.get(); - infoLoggerContext->setField(InfoLoggerContext::FieldName::Facility, std::string("dpl/") + services.get().name); - infoLoggerContext->setField(InfoLoggerContext::FieldName::System, std::string("DPL")); - infoLoggerService->setContext(*infoLoggerContext); - - auto infoLoggerSeverity = options.GetPropertyAsString("infologger-severity"); - if (infoLoggerSeverity != "") { - fair::Logger::AddCustomSink("infologger", infoLoggerSeverity, createInfoLoggerSinkHelper(infoLoggerService, infoLoggerContext)); - } - return ServiceHandle{TypeIdHelpers::uniqueId(), infoLoggerService}; - }, - noConfiguration(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + return ServiceSpec{ + .name = "infologger", + .init = [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { + auto infoLoggerMode = options.GetPropertyAsString("infologger-mode"); + if (infoLoggerMode != "") { + setenv("O2_INFOLOGGER_MODE", infoLoggerMode.c_str(), 1); + } + auto infoLoggerService = new InfoLogger; + auto infoLoggerContext = &services.get(); + infoLoggerContext->setField(InfoLoggerContext::FieldName::Facility, std::string("dpl/") + services.get().name); + infoLoggerContext->setField(InfoLoggerContext::FieldName::System, std::string("DPL")); + infoLoggerService->setContext(*infoLoggerContext); + + auto infoLoggerSeverity = options.GetPropertyAsString("infologger-severity"); + if (infoLoggerSeverity != "") { + fair::Logger::AddCustomSink("infologger", infoLoggerSeverity, createInfoLoggerSinkHelper(infoLoggerService, infoLoggerContext)); + } + return ServiceHandle{TypeIdHelpers::uniqueId(), infoLoggerService}; + }, + .configure = noConfiguration(), + .kind = ServiceKind::Serial}; } o2::framework::ServiceSpec CommonServices::configurationSpec() { return ServiceSpec{ - "configuration", - [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { + .name = "configuration", + .init = [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { auto backend = options.GetPropertyAsString("configuration"); if (backend == "command-line") { return ServiceHandle{0, nullptr}; @@ -301,31 +247,15 @@ o2::framework::ServiceSpec CommonServices::configurationSpec() return ServiceHandle{TypeIdHelpers::uniqueId(), ConfigurationFactory::getConfiguration(backend).release()}; }, - noConfiguration(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Global}; + .configure = noConfiguration(), + .kind = ServiceKind::Global}; } o2::framework::ServiceSpec CommonServices::driverClientSpec() { return ServiceSpec{ - "driverClient", - [](ServiceRegistry& services, DeviceState& state, fair::mq::ProgOptions& options) -> ServiceHandle { + .name = "driverClient", + .init = [](ServiceRegistry& services, DeviceState& state, fair::mq::ProgOptions& options) -> ServiceHandle { auto backend = options.GetPropertyAsString("driver-client-backend"); if (backend == "stdout://") { return ServiceHandle{TypeIdHelpers::uniqueId(), @@ -335,163 +265,67 @@ o2::framework::ServiceSpec CommonServices::driverClientSpec() return ServiceHandle{TypeIdHelpers::uniqueId(), new WSDriverClient(services, state, ip.c_str(), port)}; }, - noConfiguration(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Global}; + .configure = noConfiguration(), + .kind = ServiceKind::Global}; } o2::framework::ServiceSpec CommonServices::controlSpec() { return ServiceSpec{ - "control", - [](ServiceRegistry& services, DeviceState& state, fair::mq::ProgOptions& options) -> ServiceHandle { + .name = "control", + .init = [](ServiceRegistry& services, DeviceState& state, fair::mq::ProgOptions& options) -> ServiceHandle { return ServiceHandle{TypeIdHelpers::uniqueId(), new ControlService(services, state)}; }, - noConfiguration(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + .configure = noConfiguration(), + .kind = ServiceKind::Serial}; } o2::framework::ServiceSpec CommonServices::rootFileSpec() { return ServiceSpec{ - "localrootfile", - simpleServiceInit(), - noConfiguration(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + .name = "localrootfile", + .init = simpleServiceInit(), + .configure = noConfiguration(), + .kind = ServiceKind::Serial}; } o2::framework::ServiceSpec CommonServices::parallelSpec() { return ServiceSpec{ - "parallel", - [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { + .name = "parallel", + .init = [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { auto& spec = services.get(); return ServiceHandle{TypeIdHelpers::uniqueId(), new ParallelContext(spec.rank, spec.nSlots)}; }, - noConfiguration(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + .configure = noConfiguration(), + .kind = ServiceKind::Serial}; } o2::framework::ServiceSpec CommonServices::timesliceIndex() { return ServiceSpec{ - "timesliceindex", - simpleServiceInit(), - noConfiguration(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + .name = "timesliceindex", + .init = simpleServiceInit(), + .configure = noConfiguration(), + .kind = ServiceKind::Serial}; } o2::framework::ServiceSpec CommonServices::callbacksSpec() { return ServiceSpec{ - "callbacks", - simpleServiceInit(), - noConfiguration(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + .name = "callbacks", + .init = simpleServiceInit(), + .configure = noConfiguration(), + .kind = ServiceKind::Serial}; } o2::framework::ServiceSpec CommonServices::dataRelayer() { return ServiceSpec{ - "datarelayer", - [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { + .name = "datarelayer", + .init = [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { auto& spec = services.get(); return ServiceHandle{TypeIdHelpers::uniqueId(), new DataRelayer(spec.completionPolicy, @@ -499,24 +333,8 @@ o2::framework::ServiceSpec CommonServices::dataRelayer() services.get(), services.get())}; }, - noConfiguration(), - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + .configure = noConfiguration(), + .kind = ServiceKind::Serial}; } struct TracingInfrastructure { @@ -526,34 +344,18 @@ struct TracingInfrastructure { o2::framework::ServiceSpec CommonServices::tracingSpec() { return ServiceSpec{ - "tracing", - [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { + .name = "tracing", + .init = [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { return ServiceHandle{TypeIdHelpers::uniqueId(), new TracingInfrastructure()}; }, - noConfiguration(), - [](ProcessingContext&, void* service) { + .configure = noConfiguration(), + .preProcessing = [](ProcessingContext&, void* service) { TracingInfrastructure* t = reinterpret_cast(service); - t->processingCount += 1; - }, - [](ProcessingContext&, void* service) { + t->processingCount += 1; }, + .postProcessing = [](ProcessingContext&, void* service) { TracingInfrastructure* t = reinterpret_cast(service); - t->processingCount += 1; - }, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + t->processingCount += 1; }, + .kind = ServiceKind::Serial}; } // FIXME: allow configuring the default number of threads per device @@ -563,37 +365,22 @@ o2::framework::ServiceSpec CommonServices::tracingSpec() o2::framework::ServiceSpec CommonServices::threadPool(int numWorkers) { return ServiceSpec{ - "threadpool", - [numWorkers](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { + .name = "threadpool", + .init = [numWorkers](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { ThreadPool* pool = new ThreadPool(); pool->poolSize = numWorkers; return ServiceHandle{TypeIdHelpers::uniqueId(), pool}; }, - [numWorkers](InitContext&, void* service) -> void* { + .configure = [numWorkers](InitContext&, void* service) -> void* { ThreadPool* t = reinterpret_cast(service); t->poolSize = numWorkers; return service; }, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - [numWorkers](ServiceRegistry& service) -> void { + .postForkParent = [numWorkers](ServiceRegistry& service) -> void { auto numWorkersS = std::to_string(numWorkers); setenv("UV_THREADPOOL_SIZE", numWorkersS.c_str(), 0); }, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + .kind = ServiceKind::Serial}; } namespace @@ -670,41 +457,25 @@ auto flushMetrics(ServiceRegistry& registry, DataProcessingStats& stats) -> void o2::framework::ServiceSpec CommonServices::dataProcessingStats() { return ServiceSpec{ - "data-processing-stats", - [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { + .name = "data-processing-stats", + .init = [](ServiceRegistry& services, DeviceState&, fair::mq::ProgOptions& options) -> ServiceHandle { DataProcessingStats* stats = new DataProcessingStats(); return ServiceHandle{TypeIdHelpers::uniqueId(), stats}; }, - noConfiguration(), - nullptr, - nullptr, - [](DanglingContext& context, void* service) { + .configure = noConfiguration(), + .preDangling = [](DanglingContext& context, void* service) { DataProcessingStats* stats = (DataProcessingStats*)service; sendRelayerMetrics(context.services(), *stats); - flushMetrics(context.services(), *stats); - }, - [](DanglingContext& context, void* service) { + flushMetrics(context.services(), *stats); }, + .postDangling = [](DanglingContext& context, void* service) { DataProcessingStats* stats = (DataProcessingStats*)service; sendRelayerMetrics(context.services(), *stats); - flushMetrics(context.services(), *stats); - }, - [](EndOfStreamContext& context, void* service) { + flushMetrics(context.services(), *stats); }, + .preEOS = [](EndOfStreamContext& context, void* service) { DataProcessingStats* stats = (DataProcessingStats*)service; sendRelayerMetrics(context.services(), *stats); - flushMetrics(context.services(), *stats); - }, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - nullptr, - ServiceKind::Serial}; + flushMetrics(context.services(), *stats); }, + .kind = ServiceKind::Serial}; } std::vector CommonServices::defaultServices(int numThreads) @@ -734,3 +505,4 @@ std::vector CommonServices::defaultServices(int numThreads) } } // namespace o2::framework +#pragma GCC diagnostic pop From 090b4149ac4ab998a0bc6883f4fdce8c702d0182 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Jacazio?= Date: Thu, 22 Jul 2021 10:33:50 +0200 Subject: [PATCH 238/314] PWGPP: apply reco. ev. cut on tracks as well (#6706) --- Analysis/Tasks/PWGPP/qaEfficiency.cxx | 79 ++++++++++++++------------- 1 file changed, 40 insertions(+), 39 deletions(-) diff --git a/Analysis/Tasks/PWGPP/qaEfficiency.cxx b/Analysis/Tasks/PWGPP/qaEfficiency.cxx index a171e1277a318..18c7efc1e2907 100644 --- a/Analysis/Tasks/PWGPP/qaEfficiency.cxx +++ b/Analysis/Tasks/PWGPP/qaEfficiency.cxx @@ -128,12 +128,13 @@ struct QaTrackingEfficiency { histos.add("trackSelection", "Track Selection", kTH1D, {axisSel}); histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(1, "Tracks read"); - histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(2, "Passed #it{p}_{T}"); - histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(3, "Passed #it{#eta}"); - histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(4, "Passed #it{#varphi}"); - histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(5, "Passed Prim."); - histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(6, Form("Passed PDG %i", pdg)); - histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(7, "Passed Fake"); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(2, "Passed Ev. Reco."); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(3, "Passed #it{p}_{T}"); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(4, "Passed #it{#eta}"); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(5, "Passed #it{#varphi}"); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(6, "Passed Prim."); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(7, Form("Passed PDG %i", pdg)); + histos.get(HIST("trackSelection"))->GetXaxis()->SetBinLabel(8, "Passed Fake"); histos.add("partSelection", "Particle Selection", kTH1D, {axisSel}); histos.get(HIST("partSelection"))->GetXaxis()->SetBinLabel(1, "Particles read"); @@ -191,23 +192,47 @@ struct QaTrackingEfficiency { const o2::aod::McParticles& mcParticles) { - auto rejectParticle = [&](auto p, auto h, const int& selBinOffset = 0) { + std::vector recoEvt(collisions.size()); + int nevts = 0; + for (const auto& collision : collisions) { + histos.fill(HIST("eventSelection"), 1); + if (collision.numContrib() < nMinNumberOfContributors) { + continue; + } + histos.fill(HIST("eventSelection"), 2); + const auto mcCollision = collision.mcCollision(); + if ((mcCollision.posZ() < vertexZMin || mcCollision.posZ() > vertexZMax)) { + continue; + } + histos.fill(HIST("eventSelection"), 3); + recoEvt[nevts++] = mcCollision.globalIndex(); + } + recoEvt.resize(nevts); + + auto rejectParticle = [&](auto p, auto h) { + histos.fill(h, 1); + const auto evtReconstructed = std::find(recoEvt.begin(), recoEvt.end(), p.mcCollision().globalIndex()) != recoEvt.end(); + if (!evtReconstructed) { // Check that the event is reconstructed + return true; + } + + histos.fill(h, 2); if ((p.pt() < ptMin || p.pt() > ptMax)) { // Check pt return true; } - histos.fill(h, 2 + selBinOffset); + histos.fill(h, 3); if ((p.eta() < etaMin || p.eta() > etaMax)) { // Check eta return true; } - histos.fill(h, 3 + selBinOffset); + histos.fill(h, 4); if ((p.phi() < phiMin || p.phi() > phiMax)) { // Check phi return true; } - histos.fill(h, 4 + selBinOffset); + histos.fill(h, 5); if ((selPrim == 1) && (!MC::isPhysicalPrimary(mcParticles, p))) { // Requiring is physical primary return true; } - histos.fill(h, 5 + selBinOffset); + histos.fill(h, 6); // Selecting PDG code switch ((int)pdgSign) { @@ -230,34 +255,15 @@ struct QaTrackingEfficiency { LOG(FATAL) << "Provide pdgSign as 0, 1, -1. Provided: " << pdgSign.value; break; } - histos.fill(h, 6 + selBinOffset); + histos.fill(h, 7); return false; }; - std::vector recoEvt(collisions.size()); - int nevts = 0; - for (const auto& collision : collisions) { - histos.fill(HIST("eventSelection"), 1); - if (collision.numContrib() < nMinNumberOfContributors) { - continue; - } - histos.fill(HIST("eventSelection"), 2); - const auto mcCollision = collision.mcCollision(); - if ((mcCollision.posZ() < vertexZMin || mcCollision.posZ() > vertexZMax)) { - continue; - } - histos.fill(HIST("eventSelection"), 3); - recoEvt[nevts++] = mcCollision.globalIndex(); - } - recoEvt.resize(nevts); - std::vector recoTracks(tracks.size()); int ntrks = 0; for (const auto& track : tracks) { - histos.fill(HIST("trackSelection"), 1); const auto mcParticle = track.mcParticle(); - if (rejectParticle(mcParticle, HIST("trackSelection"))) { continue; } @@ -274,7 +280,8 @@ struct QaTrackingEfficiency { continue; } } - histos.fill(HIST("trackSelection"), 7); + + histos.fill(HIST("trackSelection"), 8); histos.fill(HIST("pt/num"), mcParticle.pt()); histos.fill(HIST("eta/num"), mcParticle.eta()); histos.fill(HIST("phi/num"), mcParticle.phi()); @@ -282,13 +289,7 @@ struct QaTrackingEfficiency { } for (const auto& mcParticle : mcParticles) { - histos.fill(HIST("partSelection"), 1); - const auto evtReconstructed = std::find(recoEvt.begin(), recoEvt.end(), mcParticle.mcCollision().globalIndex()) != recoEvt.end(); - if (!evtReconstructed) { - continue; - } - histos.fill(HIST("partSelection"), 2); - if (rejectParticle(mcParticle, HIST("partSelection"), 1)) { + if (rejectParticle(mcParticle, HIST("partSelection"))) { continue; } From 74698c3f4b2b6bcdc0bd5057a5f4ea370947560b Mon Sep 17 00:00:00 2001 From: akalweit Date: Thu, 22 Jul 2021 10:37:37 +0200 Subject: [PATCH 239/314] Preparing nuclei-task for pilot testbeam and MC validation (#6698) --- Analysis/Tasks/PWGLF/CMakeLists.txt | 5 + .../Tasks/PWGLF/NucleiSpectraEfficiency.cxx | 180 ++++++++++++++++++ Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx | 82 ++++++-- 3 files changed, 248 insertions(+), 19 deletions(-) create mode 100644 Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx diff --git a/Analysis/Tasks/PWGLF/CMakeLists.txt b/Analysis/Tasks/PWGLF/CMakeLists.txt index 6a98714c539e1..e62e39b142330 100644 --- a/Analysis/Tasks/PWGLF/CMakeLists.txt +++ b/Analysis/Tasks/PWGLF/CMakeLists.txt @@ -49,6 +49,11 @@ o2_add_dpl_workflow(nuclei-spectra PUBLIC_LINK_LIBRARIES O2::Framework O2::DetectorsBase O2::AnalysisDataModel O2::AnalysisCore COMPONENT_NAME Analysis) +o2_add_dpl_workflow(nuclei-efficiency + SOURCES NucleiSpectraEfficiency.cxx + PUBLIC_LINK_LIBRARIES O2::Framework O2::DetectorsBase O2::AnalysisDataModel O2::AnalysisCore + COMPONENT_NAME Analysis) + o2_add_dpl_workflow(lambdakzerobuilder SOURCES lambdakzerobuilder.cxx PUBLIC_LINK_LIBRARIES O2::Framework O2::DetectorsBase O2::AnalysisDataModel O2::AnalysisCore O2::DetectorsVertexing O2::AnalysisTasksUtils diff --git a/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx b/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx new file mode 100644 index 0000000000000..1ae0af8787f9c --- /dev/null +++ b/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx @@ -0,0 +1,180 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. +// O2 includes + +#include "ReconstructionDataFormats/Track.h" +#include "Framework/AnalysisTask.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/ASoAHelpers.h" +#include "AnalysisCore/MC.h" +#include "AnalysisDataModel/PID/PIDResponse.h" +#include "AnalysisDataModel/TrackSelectionTables.h" + +#include "AnalysisDataModel/EventSelection.h" +#include "AnalysisDataModel/TrackSelectionTables.h" +#include "AnalysisDataModel/Centrality.h" + +#include "Framework/HistogramRegistry.h" + +#include +#include +#include + +#include + +using namespace o2; +using namespace o2::framework; +using namespace o2::framework::expressions; + +void customize(std::vector& workflowOptions) +{ + std::vector options{ + {"add-vertex", VariantType::Int, 1, {"Vertex plots"}}, + {"add-gen", VariantType::Int, 1, {"Generated plots"}}, + {"add-rec", VariantType::Int, 1, {"Reconstructed plots"}}}; + std::swap(workflowOptions, options); +} + +#include "Framework/runDataProcessing.h" // important to declare after the options + +struct NucleiSpectraEfficienctyVtx { + OutputObj histVertexTrueZ{TH1F("histVertexTrueZ", "MC true z position of z-vertex; vertex z (cm)", 100, -20., 20.)}; + + void process(aod::McCollision const& mcCollision) + { + histVertexTrueZ->Fill(mcCollision.posZ()); + } +}; + +struct NucleiSpectraEfficiencyGen { + + HistogramRegistry spectra{"spectraGen", {}, OutputObjHandlingPolicy::AnalysisObject, true, true}; + + void init(o2::framework::InitContext&) + { + std::vector ptBinning = {0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, + 1.8, 2.0, 2.2, 2.4, 2.8, 3.2, 3.6, 4., 5., 6., 8., 10., 12., 14.}; + std::vector centBinning = {0., 1., 5., 10., 20., 30., 40., 50., 70., 100.}; + // + AxisSpec ptAxis = {ptBinning, "#it{p}_{T} (GeV/#it{c})"}; + AxisSpec centAxis = {centBinning, "V0M (%)"}; + // + spectra.add("histGenPt", "generated particles", HistType::kTH1F, {ptAxis}); + } + + void process(aod::McCollision const& mcCollision, aod::McParticles& mcParticles) + { + // + // loop over generated particles and fill generated particles + // + for (auto& mcParticleGen : mcParticles) { + if (mcParticleGen.pdgCode() != -1000020030) { + continue; + } + if (!MC::isPhysicalPrimary(mcParticles, mcParticleGen)) { + continue; + } + if (abs(mcParticleGen.y()) > 0.5) { + continue; + } + spectra.fill(HIST("histGenPt"), mcParticleGen.pt()); + } + } +}; + +struct NucleiSpectraEfficiencyRec { + + HistogramRegistry spectra{"spectraRec", {}, OutputObjHandlingPolicy::AnalysisObject, true, true}; + + void init(o2::framework::InitContext&) + { + std::vector ptBinning = {0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, + 1.8, 2.0, 2.2, 2.4, 2.8, 3.2, 3.6, 4., 5., 6., 8., 10., 12., 14.}; + std::vector centBinning = {0., 1., 5., 10., 20., 30., 40., 50., 70., 100.}; + // + AxisSpec ptAxis = {ptBinning, "#it{p}_{T} (GeV/#it{c})"}; + AxisSpec centAxis = {centBinning, "V0M (%)"}; + // + spectra.add("histRecVtxZ", "collision z position", HistType::kTH1F, {{600, -20., +20., "z position (cm)"}}); + spectra.add("histRecPt", "reconstructed particles", HistType::kTH1F, {ptAxis}); + spectra.add("histTpcSignal", "Specific energy loss", HistType::kTH2F, {{600, -6., 6., "#it{p} (GeV/#it{c})"}, {1400, 0, 1400, "d#it{E} / d#it{X} (a. u.)"}}); + spectra.add("histTpcNsigma", "n-sigma TPC", HistType::kTH2F, {ptAxis, {200, -100., +100., "n#sigma_{He} (a. u.)"}}); + } + + Configurable cfgCutVertex{"cfgCutVertex", 10.0f, "Accepted z-vertex range"}; + Configurable cfgCutEta{"cfgCutEta", 0.8f, "Eta range for tracks"}; + Configurable nsigmacutLow{"nsigmacutLow", -10.0, "Value of the Nsigma cut"}; + Configurable nsigmacutHigh{"nsigmacutHigh", +10.0, "Value of the Nsigma cut"}; + + Filter collisionFilter = nabs(aod::collision::posZ) < cfgCutVertex; + Filter trackFilter = (nabs(aod::track::eta) < cfgCutEta) && (aod::track::isGlobalTrack == (uint8_t) true); + + using TrackCandidates = soa::Filtered>; + + void process(soa::Filtered>::iterator const& collision, + TrackCandidates const& tracks, aod::McParticles& mcParticles, aod::McCollisions const& mcCollisions) + { + // + // check the vertex-z distribution + // + spectra.fill(HIST("histRecVtxZ"), collision.posZ()); + // + // loop over reconstructed particles and fill reconstructed tracks + // + for (auto track : tracks) { + TLorentzVector lorentzVector{}; + lorentzVector.SetPtEtaPhiM(track.pt() * 2.0, track.eta(), track.phi(), constants::physics::MassHelium3); + if (lorentzVector.Rapidity() < -0.5 || lorentzVector.Rapidity() > 0.5) { + continue; + } + // + // fill QA histograms + // + float nSigmaHe3 = track.tpcNSigmaHe(); + nSigmaHe3 += 94.222101 * TMath::Exp(-0.905203 * track.tpcInnerParam()); + // + spectra.fill(HIST("histTpcSignal"), track.tpcInnerParam() * track.sign(), track.tpcSignal()); + spectra.fill(HIST("histTpcNsigma"), track.tpcInnerParam(), nSigmaHe3); + // + // fill histograms + // + if (nSigmaHe3 > nsigmacutLow && nSigmaHe3 < nsigmacutHigh) { + // check on perfect PID + if (track.mcParticle().pdgCode() != -1000020030) { + continue; + } + // fill reconstructed histogram + spectra.fill(HIST("histRecPt"), track.pt() * 2.0); + } + } + } +}; + +WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) +{ + const bool vertex = cfgc.options().get("add-vertex"); + const bool gen = cfgc.options().get("add-gen"); + const bool rec = cfgc.options().get("add-rec"); + // + WorkflowSpec workflow{}; + // + if (vertex) { + workflow.push_back(adaptAnalysisTask(cfgc, TaskName{"nuclei-efficiency-vtx"})); + } + if (gen) { + workflow.push_back(adaptAnalysisTask(cfgc, TaskName{"nuclei-efficiency-gen"})); + } + if (rec) { + workflow.push_back(adaptAnalysisTask(cfgc, TaskName{"nuclei-efficiency-rec"})); + } + // + return workflow; +} diff --git a/Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx b/Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx index b527167fb828f..8939f7c00a765 100644 --- a/Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx +++ b/Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx @@ -25,6 +25,8 @@ #include "Framework/HistogramRegistry.h" #include +#include +#include #include @@ -32,7 +34,7 @@ using namespace o2; using namespace o2::framework; using namespace o2::framework::expressions; -struct NucleiSpecraTask { +struct NucleiSpectraTask { HistogramRegistry spectra{"spectra", {}, OutputObjHandlingPolicy::AnalysisObject, true, true}; @@ -44,24 +46,27 @@ struct NucleiSpecraTask { AxisSpec ptAxis = {ptBinning, "#it{p}_{T} (GeV/#it{c})"}; AxisSpec centAxis = {centBinning, "V0M (%)"}; - spectra.add("fCollZpos", "collision z position", HistType::kTH1F, {{600, -20., +20., "z position (cm)"}}); - spectra.add("fKeepEvent", "skimming histogram", HistType::kTH1F, {{2, -0.5, +1.5, "true: keep event, false: reject event"}}); - spectra.add("fTPCsignal", "Specific energy loss", HistType::kTH2F, {{600, -3., 3, "#it{p} (GeV/#it{c})"}, {1400, 0, 1400, "d#it{E} / d#it{X} (a. u.)"}}); - spectra.add("fTPCcounts", "n-sigma TPC", HistType::kTH2F, {ptAxis, {200, -100., +100., "n#sigma_{He} (a. u.)"}}); + spectra.add("histRecVtxZData", "collision z position", HistType::kTH1F, {{600, -20., +20., "z position (cm)"}}); + spectra.add("histKeepEventData", "skimming histogram", HistType::kTH1F, {{2, -0.5, +1.5, "true: keep event, false: reject event"}}); + spectra.add("histTpcSignalData", "Specific energy loss", HistType::kTH2F, {{600, -6., 6., "#it{p} (GeV/#it{c})"}, {1400, 0, 1400, "d#it{E} / d#it{X} (a. u.)"}}); + spectra.add("histTofSignalData", "TOF signal", HistType::kTH2F, {{600, -6., 6., "#it{p} (GeV/#it{c})"}, {500, 0.0, 1.0, "#beta (TOF)"}}); + spectra.add("histTpcNsigmaData", "n-sigma TPC", HistType::kTH2F, {ptAxis, {200, -100., +100., "n#sigma_{He} (a. u.)"}}); + spectra.add("histDcaVsPtData", "dca vs Pt", HistType::kTH2F, {ptAxis, {400, -0.2, 0.2, "dca"}}); + spectra.add("histInvMassData", "Invariant mass", HistType::kTH1F, {{600, 5.0, +15., "inv. mass GeV/c^{2}"}}); } - Configurable yMin{"yMin", -0.8, "Maximum rapidity"}; - Configurable yMax{"yMax", 0.8, "Minimum rapidity"}; + Configurable yMin{"yMin", -0.5, "Maximum rapidity"}; + Configurable yMax{"yMax", 0.5, "Minimum rapidity"}; Configurable cfgCutVertex{"cfgCutVertex", 10.0f, "Accepted z-vertex range"}; Configurable cfgCutEta{"cfgCutEta", 0.8f, "Eta range for tracks"}; - Configurable nsigmacutLow{"nsigmacutLow", -30.0, "Value of the Nsigma cut"}; - Configurable nsigmacutHigh{"nsigmacutHigh", +3., "Value of the Nsigma cut"}; + Configurable nsigmacutLow{"nsigmacutLow", -10.0, "Value of the Nsigma cut"}; + Configurable nsigmacutHigh{"nsigmacutHigh", +10.0, "Value of the Nsigma cut"}; Filter collisionFilter = nabs(aod::collision::posZ) < cfgCutVertex; Filter trackFilter = (nabs(aod::track::eta) < cfgCutEta) && (aod::track::isGlobalTrack == (uint8_t) true); - using TrackCandidates = soa::Filtered>; + using TrackCandidates = soa::Filtered>; void process(soa::Filtered>::iterator const& collision, TrackCandidates const& tracks) { @@ -70,37 +75,76 @@ struct NucleiSpecraTask { // bool keepEvent = kFALSE; // - spectra.fill(HIST("fCollZpos"), collision.posZ()); + spectra.fill(HIST("histRecVtxZData"), collision.posZ()); + // + std::vector posTracks; + std::vector negTracks; // for (auto track : tracks) { // start loop over tracks - TLorentzVector cutVector{}; - cutVector.SetPtEtaPhiM(track.pt() * 2.0, track.eta(), track.phi(), constants::physics::MassHelium3); - if (cutVector.Rapidity() < yMin || cutVector.Rapidity() > yMax) { + TLorentzVector lorentzVector{}; + lorentzVector.SetPtEtaPhiM(track.pt() * 2.0, track.eta(), track.phi(), constants::physics::MassHelium3); + if (lorentzVector.Rapidity() < yMin || lorentzVector.Rapidity() > yMax) { continue; } // // fill QA histograms // - spectra.fill(HIST("fTPCsignal"), track.tpcInnerParam() * track.sign(), track.tpcSignal()); - spectra.fill(HIST("fTPCcounts"), track.tpcInnerParam(), track.tpcNSigmaHe()); + float nSigmaHe3 = track.tpcNSigmaHe(); + nSigmaHe3 += 94.222101 * TMath::Exp(-0.905203 * track.tpcInnerParam()); + // + spectra.fill(HIST("histTpcSignalData"), track.tpcInnerParam() * track.sign(), track.tpcSignal()); + spectra.fill(HIST("histTpcNsigmaData"), track.tpcInnerParam(), nSigmaHe3); // // check offline-trigger (skimming) condidition // - if (track.tpcNSigmaHe() > nsigmacutLow && track.tpcNSigmaHe() < nsigmacutHigh) { + if (nSigmaHe3 > nsigmacutLow && nSigmaHe3 < nsigmacutHigh) { keepEvent = kTRUE; + if (track.sign() < 0) { + spectra.fill(HIST("histDcaVsPtData"), track.pt(), track.dcaXY()); + } + // + // store tracks for invariant mass calculation + // + if (track.sign() < 0) { + negTracks.push_back(lorentzVector); + } + if (track.sign() > 0) { + posTracks.push_back(lorentzVector); + } + // + // calculate beta + // + if (!track.hasTOF()) { + continue; + } + Float_t tofTime = track.tofSignal(); + Float_t tofLength = track.length(); + Float_t beta = tofLength / (TMath::C() * 1e-10 * tofTime); + spectra.fill(HIST("histTofSignalData"), track.tpcInnerParam() * track.sign(), beta); } } // end loop over tracks // // fill trigger (skimming) results // - spectra.fill(HIST("fKeepEvent"), keepEvent); + spectra.fill(HIST("histKeepEventData"), keepEvent); + // + // calculate invariant mass + // + for (Int_t iPos = 0; iPos < posTracks.size(); iPos++) { + TLorentzVector& vecPos = posTracks[iPos]; + for (Int_t jNeg = 0; jNeg < negTracks.size(); jNeg++) { + TLorentzVector& vecNeg = negTracks[jNeg]; + TLorentzVector vecMother = vecPos + vecNeg; + spectra.fill(HIST("histInvMassData"), vecMother.M()); + } + } } }; WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) { return WorkflowSpec{ - adaptAnalysisTask(cfgc, TaskName{"nuclei-spectra"})}; + adaptAnalysisTask(cfgc, TaskName{"nuclei-spectra"})}; } From 56111e3fe5676e3ce3dd71b7490498a9b3ad99bf Mon Sep 17 00:00:00 2001 From: Matthias Richter Date: Mon, 21 Jun 2021 12:41:14 +0200 Subject: [PATCH 240/314] Make raw page data generator for DPLUtils unit tests a separate class There will be more unit tests and micro benchmarks using the data generator. --- Framework/Utils/CMakeLists.txt | 28 ++--- Framework/Utils/test/RawPageTestData.cxx | 93 ++++++++++++++++ Framework/Utils/test/RawPageTestData.h | 70 ++++++++++++ Framework/Utils/test/test_DPLRawParser.cxx | 121 ++------------------- 4 files changed, 187 insertions(+), 125 deletions(-) create mode 100644 Framework/Utils/test/RawPageTestData.cxx create mode 100644 Framework/Utils/test/RawPageTestData.h diff --git a/Framework/Utils/CMakeLists.txt b/Framework/Utils/CMakeLists.txt index bf2fecb35f84d..50bae3d0478e0 100644 --- a/Framework/Utils/CMakeLists.txt +++ b/Framework/Utils/CMakeLists.txt @@ -18,6 +18,7 @@ o2_add_library(DPLUtils src/RawParser.cxx test/DPLBroadcasterMerger.cxx test/DPLOutputTest.cxx + test/RawPageTestData.cxx PUBLIC_LINK_LIBRARIES O2::Framework) o2_add_executable(raw-proxy @@ -54,12 +55,6 @@ o2_add_test(DPLOutput LABELS long dplutils COMMAND_LINE_ARGS ${DPL_WORKFLOW_TESTS_EXTRA_OPTIONS} --run) -o2_add_test(RootTreeWriter - SOURCES test/test_RootTreeWriter.cxx - PUBLIC_LINK_LIBRARIES O2::DPLUtils - COMPONENT_NAME DPLUtils - LABELS dplutils) - o2_add_test(RootTreeWriterWorkflow NO_BOOST_TEST SOURCES test/test_RootTreeWriterWorkflow.cxx @@ -76,17 +71,18 @@ o2_add_test(RootTreeReader LABELS dplutils COMMAND_LINE_ARGS ${DPL_WORKFLOW_TESTS_EXTRA_OPTIONS} --run) -o2_add_test(RawParser - SOURCES test/test_RawParser.cxx - PUBLIC_LINK_LIBRARIES O2::DPLUtils - COMPONENT_NAME DPLUtils - LABELS dplutils) -o2_add_test(DPLRawParser - SOURCES test/test_DPLRawParser.cxx - PUBLIC_LINK_LIBRARIES O2::DPLUtils - COMPONENT_NAME DPLUtils - LABELS dplutils) +foreach(t + RootTreeWriter + RawParser + DPLRawParser + ) + o2_add_test(${t} + SOURCES test/test_${t}.cxx + PUBLIC_LINK_LIBRARIES O2::DPLUtils + COMPONENT_NAME DPLUtils + LABELS dplutils) +endforeach() if (TARGET benchmark::benchmark) foreach(b diff --git a/Framework/Utils/test/RawPageTestData.cxx b/Framework/Utils/test/RawPageTestData.cxx new file mode 100644 index 0000000000000..7df0617ce98db --- /dev/null +++ b/Framework/Utils/test/RawPageTestData.cxx @@ -0,0 +1,93 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// @file RawPageTestData.cxx +/// @author Matthias Richter +/// @since 2021-06-21 +/// @brief Raw page test data generator + +#include "RawPageTestData.h" +#include "Headers/Stack.h" +#include + +namespace o2::framework +{ +namespace test +{ + +DataSet createData(std::vector const& inputspecs, std::vector const& dataheaders, AmendRawDataHeader amendRdh) +{ + // Create the routes we want for the InputRecord + size_t i = 0; + auto createRoute = [&i](std::string const& source, InputSpec const& spec) { + return InputRoute{ + spec, + i++, + source}; + }; + + std::vector schema; + for (auto const& spec : inputspecs) { + auto routename = spec.binding + "_source"; + schema.emplace_back(createRoute(routename, spec)); + } + + std::random_device rd; + std::uniform_int_distribution<> testvals(0, 42); + auto randval = [&rd, &testvals]() { + return testvals(rd); + }; + std::vector checkValues; + DataSet::Messages messages; + + auto initRawPage = [&checkValues, &amendRdh](char* buffer, size_t size, auto value) { + char* wrtptr = buffer; + while (wrtptr < buffer + size) { + auto* header = reinterpret_cast(wrtptr); + *header = RAWDataHeader(); + if (amendRdh) { + amendRdh(*header); + } + header->offsetToNext = PAGESIZE; + *reinterpret_cast(wrtptr + header->headerSize) = value; + wrtptr += PAGESIZE; + checkValues.emplace_back(value); + ++value; + } + }; + + auto createMessage = [&messages, &initRawPage, &randval](DataHeader dh) { + DataProcessingHeader dph{0, 1}; + Stack stack{dh, dph}; + if (dh.splitPayloadParts == 0 || dh.splitPayloadIndex == 0) { + // add new message collection + messages.emplace_back(); + } + messages.back().emplace_back(std::make_unique>(stack.size())); + memcpy(messages.back().back()->data(), stack.data(), messages.back().back()->size()); + messages.back().emplace_back(std::make_unique>(dh.payloadSize)); + int value = randval(); + initRawPage(messages.back().back()->data(), messages.back().back()->size(), value); + }; + + // create messages for the provided dataheaders + for (auto header : dataheaders) { + for (DataHeader::SplitPayloadIndexType index = 0; index == 0 || index < header.splitPayloadParts; index++) { + header.splitPayloadIndex = index; + createMessage(header); + } + } + + return {std::move(schema), std::move(messages), std::move(checkValues)}; +} + +} // namespace test +} // namespace o2::framework diff --git a/Framework/Utils/test/RawPageTestData.h b/Framework/Utils/test/RawPageTestData.h new file mode 100644 index 0000000000000..71a11bad014f0 --- /dev/null +++ b/Framework/Utils/test/RawPageTestData.h @@ -0,0 +1,70 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// @file RawPageTestData.h +/// @author Matthias Richter +/// @since 2021-06-21 +/// @brief Raw page test data generator + +#ifndef FRAMEWORK_UTILS_RAWPAGETESTDATA_H +#define FRAMEWORK_UTILS_RAWPAGETESTDATA_H + +#include "Framework/InputRecord.h" +#include "Framework/InputSpan.h" +#include "Headers/RAWDataHeader.h" +#include "Headers/DataHeader.h" +#include +#include + +using DataHeader = o2::header::DataHeader; +using Stack = o2::header::Stack; +using RAWDataHeaderV6 = o2::header::RAWDataHeaderV6; + +namespace o2::framework +{ +namespace test +{ +using RAWDataHeader = RAWDataHeaderV6; +static const size_t PAGESIZE = 8192; + +/// @class DataSet +/// @brief Simple helper struct to keep the InputRecord and ownership of messages +/// together with some test data. +struct DataSet { + // not nice with the double vector but for quick unit test ok + using Messages = std::vector>>>; + DataSet(std::vector&& s, Messages&& m, std::vector&& v) + : schema{std::move(s)}, + messages{std::move(m)}, + span{[this](size_t i, size_t part) { + auto header = static_cast(this->messages[i].at(2 * part)->data()); + auto payload = static_cast(this->messages[i].at(2 * part + 1)->data()); + return DataRef{nullptr, header, payload}; + }, + [this](size_t i) { return i < this->messages.size() ? messages[i].size() / 2 : 0; }, this->messages.size()}, + record{schema, span}, + values{std::move(v)} + { + } + + std::vector schema; + Messages messages; + InputSpan span; + InputRecord record; + std::vector values; +}; + +using AmendRawDataHeader = std::function; +DataSet createData(std::vector const& inputspecs, std::vector const& dataheaders, AmendRawDataHeader amendRdh = nullptr); + +} // namespace test +} // namespace o2::framework +#endif // FRAMEWORK_UTILS_RAWPAGETESTDATA_H diff --git a/Framework/Utils/test/test_DPLRawParser.cxx b/Framework/Utils/test/test_DPLRawParser.cxx index e9ef61f8e6dd1..befaace1c94e4 100644 --- a/Framework/Utils/test/test_DPLRawParser.cxx +++ b/Framework/Utils/test/test_DPLRawParser.cxx @@ -14,133 +14,36 @@ #define BOOST_TEST_DYN_LINK #include #include "DPLUtils/DPLRawParser.h" +#include "RawPageTestData.h" #include "Framework/InputRecord.h" -#include "Framework/InputSpan.h" #include "Framework/WorkflowSpec.h" // o2::framework::select #include "Headers/DataHeader.h" -#include "Headers/Stack.h" #include #include #include using namespace o2::framework; using DataHeader = o2::header::DataHeader; -using Stack = o2::header::Stack; -using RAWDataHeaderV4 = o2::header::RAWDataHeaderV4; - -static const size_t PAGESIZE = 8192; - -// simple helper struct to keep the InputRecord and ownership of messages -struct DataSet { - // not nice with the double vector but for quick unit test ok - using Messages = std::vector>>>; - DataSet(std::vector&& s, Messages&& m, std::vector&& v) - : schema{std::move(s)}, - messages{std::move(m)}, - span{[this](size_t i, size_t part) { - BOOST_REQUIRE(i < this->messages.size()); - BOOST_REQUIRE(part < this->messages[i].size() / 2); - auto header = static_cast(this->messages[i].at(2 * part)->data()); - auto payload = static_cast(this->messages[i].at(2 * part + 1)->data()); - return DataRef{nullptr, header, payload}; - }, - [this](size_t i) { return i < this->messages.size() ? messages[i].size() / 2 : 0; }, this->messages.size()}, - record{schema, span}, - values{std::move(v)} - { - BOOST_REQUIRE(messages.size() == schema.size()); - } - - std::vector schema; - Messages messages; - InputSpan span; - InputRecord record; - std::vector values; -}; +auto const PAGESIZE = test::PAGESIZE; +using DataSet = test::DataSet; DataSet createData() { - // Create the routes we want for the InputRecord std::vector inputspecs = { InputSpec{"tpc0", "TPC", "RAWDATA", 0, Lifetime::Timeframe}, InputSpec{"its1", "ITS", "RAWDATA", 0, Lifetime::Timeframe}, InputSpec{"its1", "ITS", "RAWDATA", 1, Lifetime::Timeframe}}; - size_t i = 0; - auto createRoute = [&i](const char* source, InputSpec& spec) { - return InputRoute{ - spec, - i++, - source}; - }; - - std::vector schema = { - createRoute("tpc_source", inputspecs[0]), - createRoute("its_source", inputspecs[1]), - createRoute("tof_source", inputspecs[2])}; - - std::vector checkValues; - DataSet::Messages messages; - - auto initRawPage = [&checkValues](char* buffer, size_t size, int value) { - char* wrtptr = buffer; - while (wrtptr < buffer + size) { - auto* header = reinterpret_cast(wrtptr); - *header = RAWDataHeaderV4(); - header->offsetToNext = PAGESIZE; - *reinterpret_cast(wrtptr + header->headerSize) = value; - wrtptr += PAGESIZE; - checkValues.emplace_back(value); - ++value; - } - }; - - auto createMessage = [&messages, &initRawPage](DataHeader dh, int value) { - DataProcessingHeader dph{0, 1}; - Stack stack{dh, dph}; - if (dh.splitPayloadParts == 0 || dh.splitPayloadIndex == 0) { - // add new message collection - messages.emplace_back(); - } - messages.back().emplace_back(std::make_unique>(stack.size())); - memcpy(messages.back().back()->data(), stack.data(), messages.back().back()->size()); - messages.back().emplace_back(std::make_unique>(dh.payloadSize)); - initRawPage(messages.back().back()->data(), messages.back().back()->size(), value); - }; - // we create message for the 3 input routes, the messages have different page size // and the second messages has 3 parts, each with the same page size // the test value is written as payload after the RDH and all values are cached for // later checking when parsing the data set - DataHeader dh1; - dh1.dataDescription = "RAWDATA"; - dh1.dataOrigin = "TPC"; - dh1.subSpecification = 0; - dh1.payloadSerializationMethod = o2::header::gSerializationMethodNone; - dh1.payloadSize = 5 * PAGESIZE; - DataHeader dh2; - dh2.dataDescription = "RAWDATA"; - dh2.dataOrigin = "ITS"; - dh2.subSpecification = 0; - dh2.payloadSerializationMethod = o2::header::gSerializationMethodNone; - dh2.payloadSize = 3 * PAGESIZE; - dh2.splitPayloadParts = 3; - dh2.splitPayloadIndex = 0; - DataHeader dh3; - dh3.dataDescription = "RAWDATA"; - dh3.dataOrigin = "ITS"; - dh3.subSpecification = 1; - dh3.payloadSerializationMethod = o2::header::gSerializationMethodNone; - dh3.payloadSize = 4 * PAGESIZE; - createMessage(dh1, 10); - createMessage(dh2, 20); - dh2.splitPayloadIndex++; - createMessage(dh2, 23); - dh2.splitPayloadIndex++; - createMessage(dh2, 26); - createMessage(dh3, 30); + std::vector dataheaders; + dataheaders.emplace_back("RAWDATA", "TPC", 0, 5 * PAGESIZE); + dataheaders.emplace_back("RAWDATA", "ITS", 0, 3 * PAGESIZE, 0, 3); + dataheaders.emplace_back("RAWDATA", "ITS", 1, 4 * PAGESIZE); - return {std::move(schema), std::move(messages), std::move(checkValues)}; + return test::createData(inputspecs, dataheaders); } BOOST_AUTO_TEST_CASE(test_DPLRawParser) @@ -157,8 +60,8 @@ BOOST_AUTO_TEST_CASE(test_DPLRawParser) for (auto it = parser.begin(), end = parser.end(); it != end; ++it, ++count) { LOG(INFO) << "data " << count << " " << *((int*)it.data()); // now check the iterator API - // retrieving RDH v4 - auto const* rdh = it.get_if(); + // retrieving RDH + auto const* rdh = it.get_if(); // retrieving the raw pointer of the page auto const* raw = it.raw(); // retrieving payload pointer of the page @@ -168,10 +71,10 @@ BOOST_AUTO_TEST_CASE(test_DPLRawParser) // offset of payload in the raw page size_t offset = it.offset(); BOOST_REQUIRE(rdh != nullptr); - BOOST_REQUIRE(offset == sizeof(o2::header::RAWDataHeaderV4)); + BOOST_REQUIRE(offset == sizeof(test::RAWDataHeader)); BOOST_REQUIRE(payload == raw + offset); BOOST_REQUIRE(*reinterpret_cast(payload) == dataset.values[count]); - BOOST_REQUIRE(payloadSize == PAGESIZE - sizeof(o2::header::RAWDataHeaderV4)); + BOOST_REQUIRE(payloadSize == PAGESIZE - sizeof(test::RAWDataHeader)); auto const* dh = it.o2DataHeader(); if (last != dh) { // this is a special wrapper to print the RDU info and table header, this will From 2ca1b77978788260cea66aad4ad44c8ab0bfc42b Mon Sep 17 00:00:00 2001 From: Matthias Richter Date: Sat, 10 Jul 2021 13:24:06 +0200 Subject: [PATCH 241/314] Adding DPL parser tool for raw page sequences provided by DPL input. The DPLRawPageSequencer can be used to find sequences of consecutive raw pages with a similar property, e.g. the FEE ID. The actual check and callback to handle a sequence can be provided by lambda functions. The raw pages within one buffer/message are expected to have the full length except the last page which can be smaller. The fixed spacing allows fast scanning by binary search. Corresponding unit test is emulating variable-length sequences of raw pages. fixup! Adding DPL parser tool for raw page sequences provided by DPL input. --- Framework/Utils/CMakeLists.txt | 1 + .../include/DPLUtils/DPLRawPageSequencer.h | 167 ++++++++++++++++++ .../Utils/test/test_DPLRawPageSequencer.cxx | 114 ++++++++++++ 3 files changed, 282 insertions(+) create mode 100644 Framework/Utils/include/DPLUtils/DPLRawPageSequencer.h create mode 100644 Framework/Utils/test/test_DPLRawPageSequencer.cxx diff --git a/Framework/Utils/CMakeLists.txt b/Framework/Utils/CMakeLists.txt index 50bae3d0478e0..b8baa6cc14d83 100644 --- a/Framework/Utils/CMakeLists.txt +++ b/Framework/Utils/CMakeLists.txt @@ -76,6 +76,7 @@ foreach(t RootTreeWriter RawParser DPLRawParser + DPLRawPageSequencer ) o2_add_test(${t} SOURCES test/test_${t}.cxx diff --git a/Framework/Utils/include/DPLUtils/DPLRawPageSequencer.h b/Framework/Utils/include/DPLUtils/DPLRawPageSequencer.h new file mode 100644 index 0000000000000..ee1302810249d --- /dev/null +++ b/Framework/Utils/include/DPLUtils/DPLRawPageSequencer.h @@ -0,0 +1,167 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. +#ifndef FRAMEWORK_UTILS_DPLRAWPAGESEQUENCER_H +#define FRAMEWORK_UTILS_DPLRAWPAGESEQUENCER_H + +/// @file DPLRawPageSequencer.h +/// @author Matthias Richter +/// @since 2021-07-09 +/// @brief A parser and sequencer utility for raw pages within DPL input + +#include "DPLUtils/RawParser.h" +#include "Framework/DataRef.h" +#include "Framework/DataRefUtils.h" +#include "Framework/Logger.h" +#include "Framework/InputRecordWalker.h" +#include "Headers/DataHeader.h" +#include // std::declval + +namespace o2::framework +{ +class InputRecord; + +/// @class DPLRawPageSequencer +/// @brief This utility handles transparently the DPL inputs and triggers +/// a customizable action on sequences of consecutive raw pages following +/// similar RDH features, e.g. the same FEE ID. +/// +/// A DPL processor will receive raw pages accumulated on three levels: +/// 1) the DPL processor has one or more input route(s) +/// 2) multiple parts per input route (split payloads or multiple input +/// specs matching the same route spec +/// 3) variable number of raw pages in one payload +/// +/// The DPLRawPageSequencer loops transparently over all inputs matching +/// the optional filter, and partitions input buffers into sequences of +/// raw pages matching the provided predicate by binary search. +/// +/// Note: binary search requires that all raw pages must have a fixed +/// length, only the last page can be shorter. +/// +/// Usage: +/// auto isSameRdh = [](const char* left, const char* right) -> bool { +/// // implement the condition here +/// return left == right; +/// }; +/// std::vector> pages; +/// auto insertPages = [&pages](const char* ptr, size_t n) -> void { +/// // as an example, the sequences are simply stored in a vector +/// pages.emplace_back(ptr, n); +/// }; +/// DPLRawPageSequencer(inputs)(isSameRdh, insertPages); +/// +/// TODO: +/// - support configurable page length +class DPLRawPageSequencer +{ + public: + using rawparser_type = RawParser<8192>; + using buffer_type = typename rawparser_type::buffer_type; + + DPLRawPageSequencer() = delete; + DPLRawPageSequencer(InputRecord& inputs, std::vector filterSpecs = {}) : mInput(inputs, filterSpecs) {} + + template + void operator()(Predicate&& pred, Inserter&& inserter) + { + return binary(std::forward(pred), std::forward(inserter)); + } + + template + void binary(Predicate pred, Inserter inserter) + { + for (auto const& ref : mInput) { + auto size = DataRefUtils::getPayloadSize(ref); + auto const pageSize = rawparser_type::max_size; + auto nPages = size / pageSize + (size % pageSize ? 1 : 0); + if (nPages == 0) { + continue; + } + // FIXME: automatic type from inserter/predicate? + const char* iterator = ref.payload; + + auto check = [&pred, &pageSize, payload = ref.payload](size_t left, size_t right) -> bool { + return pred(payload + left * pageSize, payload + right * pageSize); + }; + auto insert = [&inserter, &pageSize, payload = ref.payload](size_t pos, size_t n) -> void { + inserter(payload + pos * pageSize, n); + }; + // binary search the next different page based on the check predicate + auto search = [&check](size_t first, size_t n) -> size_t { + auto count = n; + auto pos = first; + while (count > 0) { + auto step = count / 2; + if (check(first, pos + step)) { + // still the same + pos += step; + count = n - (pos - first); + } else { + if (step == 1) { + pos += step; + break; + } + count = step; + } + } + return pos; + }; + + size_t p = 0; + do { + // insert the full block if the last RDH matches the position + if (check(p, nPages - 1)) { + insert(p, nPages - p); + break; + } + auto q = search(p, nPages - p); + insert(p, q - p); + p = q; + } while (p < nPages); + // if payloads are consecutive in memory we could apply this algorithm even over + // O2 message boundaries + } + } + + template + void forward(Predicate check, Inserter inserter) + { + for (auto const& ref : mInput) { + auto size = DataRefUtils::getPayloadSize(ref); + o2::framework::RawParser parser(ref.payload, size); + const char* ptr = nullptr; + int count = 0; + for (auto it = parser.begin(); it != parser.end(); it++) { + const char* current = reinterpret_cast(it.raw()); + if (ptr == nullptr) { + ptr = current; + } else if (check(ptr, current) == false) { + if (count) { + inserter(ptr, count); + } + count = 0; + ptr = current; + } + count++; + } + if (count) { + inserter(ptr, count); + } + } + } + + private: + InputRecordWalker mInput; +}; + +} // namespace o2::framework + +#endif //FRAMEWORK_UTILS_DPLRAWPAGESEQUENCER_H diff --git a/Framework/Utils/test/test_DPLRawPageSequencer.cxx b/Framework/Utils/test/test_DPLRawPageSequencer.cxx new file mode 100644 index 0000000000000..671efb18f5159 --- /dev/null +++ b/Framework/Utils/test/test_DPLRawPageSequencer.cxx @@ -0,0 +1,114 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// @file test_DPLRawPageSequencer.h +/// @author Matthias Richter +/// @since 2021-07-09 +/// @brief Unit test for the DPL raw page sequencer utility + +#define BOOST_TEST_MODULE Test Framework Utils DPLRawPageSequencer +#define BOOST_TEST_MAIN +#define BOOST_TEST_DYN_LINK +#include +#include "DPLUtils/DPLRawPageSequencer.h" +#include "RawPageTestData.h" +#include "Framework/InputRecord.h" +#include "Headers/DataHeader.h" +#include +#include +#include +#include + +using namespace o2::framework; +using DataHeader = o2::header::DataHeader; +auto const PAGESIZE = test::PAGESIZE; + +BOOST_AUTO_TEST_CASE(test_DPLRawPageSequencer) +{ + const int nPages = 64; + const int nParts = 16; + std::vector inputspecs = { + InputSpec{"tpc", "TPC", "RAWDATA", 0, Lifetime::Timeframe}}; + + std::vector dataheaders; + dataheaders.emplace_back("RAWDATA", "TPC", 0, nPages * PAGESIZE, 0, nParts); + + std::random_device rd; + std::uniform_int_distribution<> lengthDist(1, nPages); + auto randlength = [&rd, &lengthDist]() { + return lengthDist(rd); + }; + + int rdhCount = 0; + // whenever a new id is created, it is done from the current counter + // position, so we also have the possibility to calculate the length + std::vector feeids; + auto nextlength = randlength(); + auto createFEEID = [&rdhCount, &feeids, &nPages, &randlength, &nextlength]() { + if (rdhCount % nPages == 0 || rdhCount - feeids.back() > nextlength) { + feeids.emplace_back(rdhCount); + nextlength = randlength(); + } + return feeids.back(); + }; + auto amendRdh = [&rdhCount, createFEEID](test::RAWDataHeader& rdh) { + rdh.feeId = createFEEID(); + rdhCount++; + }; + + auto dataset = test::createData(inputspecs, dataheaders, amendRdh); + InputRecord& inputs = dataset.record; + BOOST_REQUIRE(dataset.messages.size() > 0); + BOOST_REQUIRE(dataset.messages[0].at(0) != nullptr); + BOOST_REQUIRE(inputs.size() > 0); + BOOST_CHECK((*inputs.begin()).header == dataset.messages[0].at(0)->data()); + BOOST_REQUIRE(rdhCount == nPages * nParts); + DPLRawPageSequencer parser(inputs); + + auto isSameRdh = [](const char* left, const char* right) -> bool { + if (left == right) { + return true; + } + if (left == nullptr || right == nullptr) { + return true; + } + + return reinterpret_cast(left)->feeId == reinterpret_cast(right)->feeId; + }; + std::vector> pages; + auto insertPages = [&pages](const char* ptr, size_t n) -> void { + pages.emplace_back(ptr, n); + }; + parser(isSameRdh, insertPages); + + // a second parsing step based on forward search + std::vector> pagesByForwardSearch; + auto insertForwardPages = [&pagesByForwardSearch](const char* ptr, size_t n) -> void { + pagesByForwardSearch.emplace_back(ptr, n); + }; + DPLRawPageSequencer(inputs).forward(isSameRdh, insertForwardPages); + + LOG(INFO) << "called RDH amend: " << rdhCount; + LOG(INFO) << "created " << feeids.size() << " id(s), got " << pages.size() << " page(s)"; + BOOST_REQUIRE(pages.size() == feeids.size()); + BOOST_REQUIRE(pages.size() == pagesByForwardSearch.size()); + + feeids.emplace_back(rdhCount); + auto lastId = feeids.front(); + for (auto i = 0; i < pages.size(); i++) { + auto length = feeids[i + 1] - feeids[i]; + BOOST_CHECK_MESSAGE(pages[i].second == length, "sequence " << i << " at " << feeids[i] << " length " << length << ": got " << pages[i].second); + BOOST_CHECK_MESSAGE(pages[i].first == pagesByForwardSearch[i].first && pages[i].second == pagesByForwardSearch[i].second, + "mismatch with forward search at sequence " << i + << " [" << (void*)pages[i].first << "," << (void*)pagesByForwardSearch[i].first << "]" + << " [" << pages[i].second << "," << pagesByForwardSearch[i].second << "]"); + } +} From 47571f05ad84fb04da94c3835377c40a8e1ea3b9 Mon Sep 17 00:00:00 2001 From: Matthias Richter Date: Sat, 10 Jul 2021 13:24:36 +0200 Subject: [PATCH 242/314] Minor bugfix, declaring class member storing template feature as static const --- Framework/Utils/include/DPLUtils/RawParser.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Framework/Utils/include/DPLUtils/RawParser.h b/Framework/Utils/include/DPLUtils/RawParser.h index 6ccea0d34b0f1..8d0384ba4194a 100644 --- a/Framework/Utils/include/DPLUtils/RawParser.h +++ b/Framework/Utils/include/DPLUtils/RawParser.h @@ -353,7 +353,7 @@ class RawParser { public: using buffer_type = unsigned char; - size_t max_size = MAX_SIZE; + static size_t const max_size = MAX_SIZE; using self_type = RawParser; RawParser() = delete; From 6eeacf16794989922d66670bfcebdda6acd59a05 Mon Sep 17 00:00:00 2001 From: Matthias Richter Date: Wed, 21 Jul 2021 09:15:34 +0200 Subject: [PATCH 243/314] Adding benchmark for DPLRawPageOrganizer With on average 4 sequences of variable length per page the binary and forward search give the following result. The parameter denotes the number of raw pages in one message. 16 messages are emulated with random sequence length. -------------------------------------------------------------------------- Benchmark Time CPU Iterations -------------------------------------------------------------------------- BM_DPLRawPageSequencerBinary/64 2726 ns 2725 ns 316405 BM_DPLRawPageSequencerBinary/512 5313 ns 5313 ns 142040 BM_DPLRawPageSequencerBinary/1024 6564 ns 6564 ns 100000 BM_DPLRawPageSequencerForward/64 21699 ns 21699 ns 32390 BM_DPLRawPageSequencerForward/512 339023 ns 339022 ns 1945 BM_DPLRawPageSequencerForward/1024 1036609 ns 1036533 ns 580 --- Framework/Utils/CMakeLists.txt | 1 + .../test/benchmark_DPLRawPageSequencer.cxx | 103 ++++++++++++++++++ 2 files changed, 104 insertions(+) create mode 100644 Framework/Utils/test/benchmark_DPLRawPageSequencer.cxx diff --git a/Framework/Utils/CMakeLists.txt b/Framework/Utils/CMakeLists.txt index b8baa6cc14d83..55721d8963256 100644 --- a/Framework/Utils/CMakeLists.txt +++ b/Framework/Utils/CMakeLists.txt @@ -88,6 +88,7 @@ endforeach() if (TARGET benchmark::benchmark) foreach(b RawParser + DPLRawPageSequencer ) o2_add_test(benchmark_${b} NAME test_Framework_benchmark_${b} SOURCES test/benchmark_${b}.cxx diff --git a/Framework/Utils/test/benchmark_DPLRawPageSequencer.cxx b/Framework/Utils/test/benchmark_DPLRawPageSequencer.cxx new file mode 100644 index 0000000000000..72f68cacbabda --- /dev/null +++ b/Framework/Utils/test/benchmark_DPLRawPageSequencer.cxx @@ -0,0 +1,103 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// @file benchmark_DPLRawPageSequencer.h +/// @author Matthias Richter +/// @since 2021-07-21 +/// @brief Unit test for the DPL raw page sequencer utility + +#include + +#include "DPLUtils/DPLRawPageSequencer.h" +#include "RawPageTestData.h" +#include +#include + +using namespace o2::framework; +auto const PAGESIZE = test::PAGESIZE; + +auto createData(int nPages) +{ + const int nParts = 16; + std::vector inputspecs = { + InputSpec{"tpc", "TPC", "RAWDATA", 0, Lifetime::Timeframe}}; + + std::vector dataheaders; + dataheaders.emplace_back("RAWDATA", "TPC", 0, nPages * PAGESIZE, 0, nParts); + + std::random_device rd; + std::uniform_int_distribution<> lengthDist(1, nPages); + auto randlength = [&rd, &lengthDist]() { + return lengthDist(rd); + }; + + int rdhCount = 0; + // whenever a new id is created, it is done from the current counter + // position, so we also have the possibility to calculate the length + std::vector fees; + auto nextlength = randlength(); + auto createFEEID = [&rdhCount, &fees, &nPages, &randlength, &nextlength]() { + if (rdhCount % nPages == 0 || rdhCount - fees.back() > nextlength) { + fees.emplace_back(rdhCount); + nextlength = randlength(); + } + return fees.back(); + }; + auto amendRdh = [&rdhCount, createFEEID](test::RAWDataHeader& rdh) { + rdh.feeId = createFEEID(); + rdhCount++; + }; + + return test::createData(inputspecs, dataheaders, amendRdh); +} + +static void BM_DPLRawPageSequencerBinary(benchmark::State& state) +{ + auto isSameRdh = [](const char* left, const char* right) -> bool { + if (left == right) { + return true; + } + + return reinterpret_cast(left)->feeId == reinterpret_cast(right)->feeId; + }; + std::vector> pages; + auto insertPages = [&pages](const char* ptr, size_t n) -> void { + pages.emplace_back(ptr, n); + }; + auto dataset = createData(state.range(0)); + for (auto _ : state) { + DPLRawPageSequencer(dataset.record).binary(isSameRdh, insertPages); + } +} + +static void BM_DPLRawPageSequencerForward(benchmark::State& state) +{ + auto isSameRdh = [](const char* left, const char* right) -> bool { + if (left == right) { + return true; + } + + return reinterpret_cast(left)->feeId == reinterpret_cast(right)->feeId; + }; + std::vector> pages; + auto insertPages = [&pages](const char* ptr, size_t n) -> void { + pages.emplace_back(ptr, n); + }; + auto dataset = createData(state.range(0)); + for (auto _ : state) { + DPLRawPageSequencer(dataset.record).forward(isSameRdh, insertPages); + } +} + +BENCHMARK(BM_DPLRawPageSequencerBinary)->Arg(64)->Arg(512)->Arg(1024); +BENCHMARK(BM_DPLRawPageSequencerForward)->Arg(64)->Arg(512)->Arg(1024); + +BENCHMARK_MAIN(); From 3393bcd76f66c27e27bc68347b03c25a802d525b Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Thu, 22 Jul 2021 14:51:56 +0200 Subject: [PATCH 244/314] DPL: websocket RFC requires encoding using network byte order (#6710) --- Framework/Core/src/HTTPParser.cxx | 8 ++-- Framework/Core/src/HTTPParser.h | 37 +++++++++++++++++++ .../Foundation/include/Framework/Endian.h | 26 +++++++++++++ 3 files changed, 67 insertions(+), 4 deletions(-) create mode 100644 Framework/Foundation/include/Framework/Endian.h diff --git a/Framework/Core/src/HTTPParser.cxx b/Framework/Core/src/HTTPParser.cxx index 8c97d18aa4daf..feafb9818fd86 100644 --- a/Framework/Core/src/HTTPParser.cxx +++ b/Framework/Core/src/HTTPParser.cxx @@ -65,14 +65,14 @@ void encode_websocket_frames(std::vector& outputs, char const* src, si WebSocketFrameShort* header = (WebSocketFrameShort*)buffer; memset(buffer, 0, headerSize); header->len = 126; - header->len16 = size; + header->len16 = htons(size); } else { headerSize = sizeof(WebSocketFrameHuge); buffer = (char*)malloc(headerSize + size); WebSocketFrameHuge* header = (WebSocketFrameHuge*)buffer; memset(buffer, 0, headerSize); header->len = 127; - header->len64 = size; + header->len64 = htonll(size); } size_t fullHeaderSize = (mask ? 4 : 0) + headerSize; startPayload = buffer + fullHeaderSize; @@ -143,11 +143,11 @@ void decode_websocket(char* start, size_t size, WebSocketHandler& handler) headerSize = 2 + (header->mask ? 4 : 0); } else if (header->len == 126) { WebSocketFrameShort* headerSmall = (WebSocketFrameShort*)cur; - payloadSize = headerSmall->len16; + payloadSize = ntohs(headerSmall->len16); headerSize = 2 + 2 + (header->mask ? 4 : 0); } else if (header->len == 127) { WebSocketFrameHuge* headerSmall = (WebSocketFrameHuge*)cur; - payloadSize = headerSmall->len64; + payloadSize = ntohs(headerSmall->len64); headerSize = 2 + 8 + (header->mask ? 4 : 0); } size_t availableSize = size - (cur - start); diff --git a/Framework/Core/src/HTTPParser.h b/Framework/Core/src/HTTPParser.h index fbb3e0e27424e..14f3872de6e0f 100644 --- a/Framework/Core/src/HTTPParser.h +++ b/Framework/Core/src/HTTPParser.h @@ -12,6 +12,7 @@ #ifndef O2_FRAMEWORK_HTTPPARSER_H_ #define O2_FRAMEWORK_HTTPPARSER_H_ +#include "Framework/Endian.h" #include #include #include @@ -22,6 +23,15 @@ namespace o2::framework { struct __attribute__((__packed__)) WebSocketFrameTiny { +#if O2_HOST_BYTE_ORDER == O2_LITTLE_ENDIAN + unsigned char opcode : 4; + unsigned char rsv3 : 1; + unsigned char rsv2 : 1; + unsigned char rsv1 : 1; + unsigned char fin : 1; + unsigned char len : 7; + unsigned char mask : 1; +#elif O2_HOST_BYTE_ORDER == O2_BIG_ENDIAN unsigned char fin : 1; unsigned char rsv1 : 1; unsigned char rsv2 : 1; @@ -29,9 +39,21 @@ struct __attribute__((__packed__)) WebSocketFrameTiny { unsigned char opcode : 4; unsigned char mask : 1; unsigned char len : 7; +#else +#error Uknown endiannes +#endif }; struct __attribute__((__packed__)) WebSocketFrameShort { +#if O2_HOST_BYTE_ORDER == O2_LITTLE_ENDIAN + unsigned char opcode : 4; + unsigned char rsv3 : 1; + unsigned char rsv2 : 1; + unsigned char rsv1 : 1; + unsigned char fin : 1; + unsigned char len : 7; + unsigned char mask : 1; +#elif O2_HOST_BYTE_ORDER == O2_BIG_ENDIAN unsigned char fin : 1; unsigned char rsv1 : 1; unsigned char rsv2 : 1; @@ -39,10 +61,22 @@ struct __attribute__((__packed__)) WebSocketFrameShort { unsigned char opcode : 4; unsigned char mask : 1; unsigned char len : 7; +#else +#error Uknown endiannes +#endif uint16_t len16; }; struct __attribute__((__packed__)) WebSocketFrameHuge { +#if O2_HOST_BYTE_ORDER == O2_LITTLE_ENDIAN + unsigned char opcode : 4; + unsigned char rsv3 : 1; + unsigned char rsv2 : 1; + unsigned char rsv1 : 1; + unsigned char fin : 1; + unsigned char len : 7; + unsigned char mask : 1; +#elif O2_HOST_BYTE_ORDER == O2_BIG_ENDIAN unsigned char fin : 1; unsigned char rsv1 : 1; unsigned char rsv2 : 1; @@ -50,6 +84,9 @@ struct __attribute__((__packed__)) WebSocketFrameHuge { unsigned char opcode : 4; unsigned char mask : 1; unsigned char len : 7; +#else +#error Uknown endiannes +#endif uint64_t len64; }; diff --git a/Framework/Foundation/include/Framework/Endian.h b/Framework/Foundation/include/Framework/Endian.h new file mode 100644 index 0000000000000..16b45500c26cb --- /dev/null +++ b/Framework/Foundation/include/Framework/Endian.h @@ -0,0 +1,26 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#ifndef O2_FRAMEWORK_ENDIAN_H_ +#define O2_FRAMEWORK_ENDIAN_H_ + +// Lookup file for __BYTE_ORDER +#ifdef __APPLE__ +#include +#else +#include +#define ntohll be64toh +#define htonll htobe64 +#endif +#define O2_HOST_BYTE_ORDER __BYTE_ORDER +#define O2_BIG_ENDIAN __BIG_ENDIAN +#define O2_LITTLE_ENDIAN __LITTLE_ENDIAN +#endif // O2_FRAMEWORK_ENDIAN_H_ From 3e6d7055d2d36eac5f7edaaa58e73dc1c91a51e7 Mon Sep 17 00:00:00 2001 From: Roberto Preghenella Date: Thu, 22 Jul 2021 15:10:58 +0200 Subject: [PATCH 245/314] Allow to set continueMode for GeneratorFromO2Kine --- Generators/include/Generators/GeneratorFromFile.h | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Generators/include/Generators/GeneratorFromFile.h b/Generators/include/Generators/GeneratorFromFile.h index 61aeb5fb2c9d7..13b6239189a38 100644 --- a/Generators/include/Generators/GeneratorFromFile.h +++ b/Generators/include/Generators/GeneratorFromFile.h @@ -80,6 +80,8 @@ class GeneratorFromO2Kine : public o2::eventgen::Generator // Set from which event to start void SetStartEvent(int start); + void setContinueMode(bool val) { mContinueMode = val; }; + private: /** methods that can be overridden **/ void updateHeader(o2::dataformats::MCEventHeader* eventHeader) override; From 494c7d0b3ebb12d5b491a4e3fe84d00ce3076b9a Mon Sep 17 00:00:00 2001 From: shahoian Date: Thu, 22 Jul 2021 13:21:59 +0200 Subject: [PATCH 246/314] CTFs written *.root.part file and renamed to *.root on file close in order to avoid premature migration to EOS --- Detectors/CTF/workflow/src/CTFWriterSpec.cxx | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/Detectors/CTF/workflow/src/CTFWriterSpec.cxx b/Detectors/CTF/workflow/src/CTFWriterSpec.cxx index 9217c32dd4385..4391183f0e365 100644 --- a/Detectors/CTF/workflow/src/CTFWriterSpec.cxx +++ b/Detectors/CTF/workflow/src/CTFWriterSpec.cxx @@ -115,7 +115,7 @@ class CTFWriterSpec : public o2::framework::Task std::string mDictDir = ""; std::string mCTFDir = ""; - + std::string mCurrentCTFFileName = ""; std::unique_ptr mCTFFileOut; std::unique_ptr mCTFTreeOut; @@ -129,10 +129,13 @@ class CTFWriterSpec : public o2::framework::Task std::array, DetID::nDetectors> mFreqsAccumulation; std::array, DetID::nDetectors> mFreqsMetaData; std::array, DetID::nDetectors> mHeaders; - TStopwatch mTimer; + + static const std::string TMPFileEnding; }; +const std::string CTFWriterSpec::TMPFileEnding{".part"}; + //___________________________________________________________________ // process data of particular detector template @@ -343,7 +346,8 @@ void CTFWriterSpec::prepareTFTreeAndFile(const o2::header::DataHeader* dh) } if (needToOpen) { closeTFTreeAndFile(); - mCTFFileOut.reset(TFile::Open(o2::utils::Str::concat_string(mCTFDir, o2::base::NameConf::getCTFFileName(dh->runNumber, dh->firstTForbit, dh->tfCounter)).c_str(), "recreate")); + mCurrentCTFFileName = o2::utils::Str::concat_string(mCTFDir, o2::base::NameConf::getCTFFileName(dh->runNumber, dh->firstTForbit, dh->tfCounter)); + mCTFFileOut.reset(TFile::Open(o2::utils::Str::concat_string(mCurrentCTFFileName, TMPFileEnding).c_str(), "recreate")); // to prevent premature external usage, use temporary name mCTFTreeOut = std::make_unique(std::string(o2::base::NameConf::CTFTREENAME).c_str(), "O2 CTF tree"); mNCTFFiles++; } @@ -357,6 +361,9 @@ void CTFWriterSpec::closeTFTreeAndFile() mCTFTreeOut.reset(); mCTFFileOut->Close(); mCTFFileOut.reset(); + if (!TMPFileEnding.empty()) { + std::filesystem::rename(o2::utils::Str::concat_string(mCurrentCTFFileName, TMPFileEnding), mCurrentCTFFileName); + } mNAccCTF = 0; } mAccCTFSize = 0; From 4951982ed03268c77ecc454e1d26932e8ec60494 Mon Sep 17 00:00:00 2001 From: Markus Fasel Date: Thu, 22 Jul 2021 10:43:59 +0200 Subject: [PATCH 247/314] [EMCAL-701] Add protection for missing / empty timeframes Implementation according to AliceO2Group/AliceO2#5786 --- .../EMCALWorkflow/RawToCellConverterSpec.h | 5 +- .../include/EMCALWorkflow/RecoWorkflow.h | 2 + .../workflow/src/RawToCellConverterSpec.cxx | 63 ++++++++++++++----- Detectors/EMCAL/workflow/src/RecoWorkflow.cxx | 3 +- .../EMCAL/workflow/src/emc-reco-workflow.cxx | 6 +- 5 files changed, 60 insertions(+), 19 deletions(-) diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/RawToCellConverterSpec.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/RawToCellConverterSpec.h index 4c7480c0b430b..0e9c8af7ab370 100644 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/RawToCellConverterSpec.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/RawToCellConverterSpec.h @@ -66,6 +66,9 @@ class RawToCellConverterSpec : public framework::Task int getNoiseThreshold() { return mNoiseThreshold; } private: + bool isLostTimeframe(framework::ProcessingContext& ctx) const; + void sendData(framework::ProcessingContext& ctx, const std::vector& cells, const std::vector& triggers, const std::vector& decodingErrors) const; + int mNoiseThreshold = 0; ///< Noise threshold in raw fit int mNumErrorMessages = 0; ///< Current number of error messages int mErrorMessagesSuppressed = 0; ///< Counter of suppressed error messages @@ -81,7 +84,7 @@ class RawToCellConverterSpec : public framework::Task /// \brief Creating DataProcessorSpec for the EMCAL Cell Converter Spec /// /// Refer to RawToCellConverterSpec::run for input and output specs -framework::DataProcessorSpec getRawToCellConverterSpec(); +framework::DataProcessorSpec getRawToCellConverterSpec(bool askDISTSTF); } // namespace reco_workflow diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/RecoWorkflow.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/RecoWorkflow.h index b7337982d4754..dd3c54340a52f 100644 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/RecoWorkflow.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/RecoWorkflow.h @@ -46,12 +46,14 @@ enum struct OutputType { Digits, ///< EMCAL digits /// \brief create the workflow for EMCAL reconstruction /// \param propagateMC If true MC labels are propagated to the output files +/// \param askDISTSTF If true the Raw->Cell converter subscribes to FLP/DISTSUBTIMEFRAME /// \param enableDigitsPrinter If true /// \param cfgInput Input objects processed in the workflow /// \param cfgOutput Output objects created in the workflow /// \return EMCAL reconstruction workflow for the configuration provided /// \ingroup EMCALwokflow framework::WorkflowSpec getWorkflow(bool propagateMC = true, + bool askDISTSTF = true, bool enableDigitsPrinter = false, std::string const& cfgInput = "digits", // std::string const& cfgOutput = "clusters", // diff --git a/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx b/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx index 21c659452f66c..f492c2b68a4e3 100644 --- a/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx +++ b/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx @@ -77,15 +77,25 @@ void RawToCellConverterSpec::run(framework::ProcessingContext& ctx) { LOG(DEBUG) << "[EMCALRawToCellConverter - run] called"; const double CONVADCGEV = 0.016; // Conversion from ADC counts to energy: E = 16 MeV / ADC + constexpr auto originEMC = o2::header::gDataOriginEMC; + constexpr auto descRaw = o2::header::gDataDescriptionRawData; + + mOutputCells.clear(); + mOutputTriggerRecords.clear(); + mOutputDecoderErrors.clear(); + + if (isLostTimeframe(ctx)) { + sendData(ctx, mOutputCells, mOutputTriggerRecords, mOutputDecoderErrors); + return; + } // Cache cells from for bunch crossings as the component reads timeframes from many links consecutively std::map>> cellBuffer; // Internal cell buffer std::map triggerBuffer; - mOutputDecoderErrors.clear(); - + std::vector filter{{"filter", framework::ConcreteDataTypeMatcher(originEMC, descRaw)}}; int firstEntry = 0; - for (const auto& rawData : framework::InputRecordWalker(ctx.inputs())) { + for (const auto& rawData : framework::InputRecordWalker(ctx.inputs(), filter)) { // Skip SOX headers auto rdhblock = reinterpret_cast(rawData.payload); @@ -231,8 +241,6 @@ void RawToCellConverterSpec::run(framework::ProcessingContext& ctx) } // Loop over BCs, sort cells with increasing tower ID and write to output containers - mOutputCells.clear(); - mOutputTriggerRecords.clear(); for (auto [bc, cells] : cellBuffer) { mOutputTriggerRecords.emplace_back(bc, triggerBuffer[bc], mOutputCells.size(), cells->size()); if (cells->size()) { @@ -245,22 +253,49 @@ void RawToCellConverterSpec::run(framework::ProcessingContext& ctx) } LOG(DEBUG) << "[EMCALRawToCellConverter - run] Writing " << mOutputCells.size() << " cells ..."; - ctx.outputs().snapshot(framework::Output{"EMC", "CELLS", 0, framework::Lifetime::Timeframe}, mOutputCells); - ctx.outputs().snapshot(framework::Output{"EMC", "CELLSTRGR", 0, framework::Lifetime::Timeframe}, mOutputTriggerRecords); - ctx.outputs().snapshot(framework::Output{"EMC", "DECODERERR", 0, framework::Lifetime::Timeframe}, mOutputDecoderErrors); + sendData(ctx, mOutputCells, mOutputTriggerRecords, mOutputDecoderErrors); } -o2::framework::DataProcessorSpec o2::emcal::reco_workflow::getRawToCellConverterSpec() +bool RawToCellConverterSpec::isLostTimeframe(framework::ProcessingContext& ctx) const { - std::vector inputs; + constexpr auto originEMC = header::gDataOriginEMC; + o2::framework::InputSpec dummy{"dummy", + framework::ConcreteDataMatcher{originEMC, + header::gDataDescriptionRawData, + 0xDEADBEEF}}; + for (const auto& ref : o2::framework::InputRecordWalker(ctx.inputs(), {dummy})) { + const auto dh = o2::framework::DataRefUtils::getHeader(ref); + if (dh->payloadSize == 0) { + return true; + } + } + return false; +} + +void RawToCellConverterSpec::sendData(framework::ProcessingContext& ctx, const std::vector& cells, const std::vector& triggers, const std::vector& decodingErrors) const +{ + constexpr auto originEMC = o2::header::gDataOriginEMC; + ctx.outputs().snapshot(framework::Output{originEMC, "CELLS", 0, framework::Lifetime::Timeframe}, cells); + ctx.outputs().snapshot(framework::Output{originEMC, "CELLSTRGR", 0, framework::Lifetime::Timeframe}, triggers); + ctx.outputs().snapshot(framework::Output{originEMC, "DECODERERR", 0, framework::Lifetime::Timeframe}, decodingErrors); +} + +o2::framework::DataProcessorSpec o2::emcal::reco_workflow::getRawToCellConverterSpec(bool askDISTSTF) +{ + constexpr auto originEMC = o2::header::gDataOriginEMC; std::vector outputs; - outputs.emplace_back("EMC", "CELLS", 0, o2::framework::Lifetime::Timeframe); - outputs.emplace_back("EMC", "CELLSTRGR", 0, o2::framework::Lifetime::Timeframe); - outputs.emplace_back("EMC", "DECODERERR", 0, o2::framework::Lifetime::Timeframe); + outputs.emplace_back(originEMC, "CELLS", 0, o2::framework::Lifetime::Timeframe); + outputs.emplace_back(originEMC, "CELLSTRGR", 0, o2::framework::Lifetime::Timeframe); + outputs.emplace_back(originEMC, "DECODERERR", 0, o2::framework::Lifetime::Timeframe); + + std::vector inputs{{"stf", o2::framework::ConcreteDataTypeMatcher{originEMC, o2::header::gDataDescriptionRawData}, o2::framework::Lifetime::Optional}}; + if (askDISTSTF) { + inputs.emplace_back("stdDist", "FLP", "DISTSUBTIMEFRAME", 0, o2::framework::Lifetime::Timeframe); + } return o2::framework::DataProcessorSpec{"EMCALRawToCellConverterSpec", - o2::framework::select("A:EMC/RAWDATA"), + inputs, outputs, o2::framework::adaptFromTask(), o2::framework::Options{ diff --git a/Detectors/EMCAL/workflow/src/RecoWorkflow.cxx b/Detectors/EMCAL/workflow/src/RecoWorkflow.cxx index 97b71150a52fb..608dd626c7720 100644 --- a/Detectors/EMCAL/workflow/src/RecoWorkflow.cxx +++ b/Detectors/EMCAL/workflow/src/RecoWorkflow.cxx @@ -46,6 +46,7 @@ namespace reco_workflow { o2::framework::WorkflowSpec getWorkflow(bool propagateMC, + bool askDISTSTF, bool enableDigitsPrinter, std::string const& cfgInput, std::string const& cfgOutput, @@ -168,7 +169,7 @@ o2::framework::WorkflowSpec getWorkflow(bool propagateMC, specs.emplace_back(o2::emcal::reco_workflow::getCellConverterSpec(propagateMC)); } else if (inputType == InputType::Raw) { // raw data will come from upstream - specs.emplace_back(o2::emcal::reco_workflow::getRawToCellConverterSpec()); + specs.emplace_back(o2::emcal::reco_workflow::getRawToCellConverterSpec(askDISTSTF)); } } diff --git a/Detectors/EMCAL/workflow/src/emc-reco-workflow.cxx b/Detectors/EMCAL/workflow/src/emc-reco-workflow.cxx index 42066a364f76e..0215919b33330 100644 --- a/Detectors/EMCAL/workflow/src/emc-reco-workflow.cxx +++ b/Detectors/EMCAL/workflow/src/emc-reco-workflow.cxx @@ -37,7 +37,7 @@ void customize(std::vector& workflowOptions) {"disable-root-output", o2::framework::VariantType::Bool, false, {"do not initialize root file writers"}}, {"configKeyValues", o2::framework::VariantType::String, "", {"Semicolon separated key=value strings"}}, {"disable-mc", o2::framework::VariantType::Bool, false, {"disable sending of MC information"}}, - }; + {"ignore-dist-stf", o2::framework::VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}}; o2::raw::HBFUtilsInitializer::addConfigOption(options); @@ -60,9 +60,9 @@ void customize(std::vector& workflowOptions) /// This function hooks up the the workflow specifications into the DPL driver. o2::framework::WorkflowSpec defineDataProcessing(o2::framework::ConfigContext const& cfgc) { - //bla o2::conf::ConfigurableParam::updateFromString(cfgc.options().get("configKeyValues")); - auto wf = o2::emcal::reco_workflow::getWorkflow(not cfgc.options().get("disable-mc"), // + auto wf = o2::emcal::reco_workflow::getWorkflow(!cfgc.options().get("disable-mc"), // + !cfgc.options().get("ignore-dist-stf"), cfgc.options().get("enable-digits-printer"), // cfgc.options().get("input-type"), // cfgc.options().get("output-type"), // From 9fbdb2e4c22576584ec3c253d4bbd9fd611fe387 Mon Sep 17 00:00:00 2001 From: afurs Date: Wed, 21 Jul 2021 17:18:17 +0200 Subject: [PATCH 248/314] FIT: update from FEE, new field in raw data --- .../include/DataFormatsFIT/RawEventData.h | 32 +++++++++---------- .../Detectors/FIT/common/src/RawEventData.cxx | 1 + .../FIT/raw/include/FITRaw/DigitBlockFIT.h | 13 +++++--- 3 files changed, 25 insertions(+), 21 deletions(-) diff --git a/DataFormats/Detectors/FIT/common/include/DataFormatsFIT/RawEventData.h b/DataFormats/Detectors/FIT/common/include/DataFormatsFIT/RawEventData.h index 41c2231e70182..e256409d5c99c 100644 --- a/DataFormats/Detectors/FIT/common/include/DataFormatsFIT/RawEventData.h +++ b/DataFormats/Detectors/FIT/common/include/DataFormatsFIT/RawEventData.h @@ -101,22 +101,22 @@ struct TCMdata { static constexpr size_t PayloadPerGBTword = 10; static constexpr size_t MinNelements = 1; static constexpr size_t MaxNelements = 1; - uint64_t orA : 1, // 0 bit (0 byte) - orC : 1, //1 bit - sCen : 1, //2 bit - cen : 1, //3 bit - vertex : 1, //4 bit - laser : 1, //5 bit - reservedField1 : 1, //6 bit - dataIsValid : 1, //7 bit - nChanA : 7, //8 bit(1 byte) - reservedField2 : 1, //15 bit - nChanC : 7, //16 bit(2 byte) - reservedField3 : 1; // 23 bit - int64_t amplA : 17, //24 bit (3 byte) - reservedField4 : 1, //41 bit - amplC : 17, //42 bit. - reservedField5 : 1, //59 bit. + uint64_t orA : 1, // 0 bit (0 byte) + orC : 1, //1 bit + sCen : 1, //2 bit + cen : 1, //3 bit + vertex : 1, //4 bit + laser : 1, //5 bit + outputsAreBlocked : 1, //6 bit + dataIsValid : 1, //7 bit + nChanA : 7, //8 bit(1 byte) + reservedField2 : 1, //15 bit + nChanC : 7, //16 bit(2 byte) + reservedField3 : 1; // 23 bit + int64_t amplA : 17, //24 bit (3 byte) + reservedField4 : 1, //41 bit + amplC : 17, //42 bit. + reservedField5 : 1, //59 bit. //in standard case(without __atribute__((packed)) macros, or packing by using union) //here will be empty 4 bits, end next field("timeA") will start from 64 bit. timeA : 9, //60 bit diff --git a/DataFormats/Detectors/FIT/common/src/RawEventData.cxx b/DataFormats/Detectors/FIT/common/src/RawEventData.cxx index 7d3c4615c084d..9b4c4449d31d3 100644 --- a/DataFormats/Detectors/FIT/common/src/RawEventData.cxx +++ b/DataFormats/Detectors/FIT/common/src/RawEventData.cxx @@ -54,6 +54,7 @@ void TCMdata::print() const LOG(INFO) << "cen: " << cen; LOG(INFO) << "vertex: " << vertex; LOG(INFO) << "laser: " << laser; + LOG(INFO) << "outputsAreBlocked: " << outputsAreBlocked; LOG(INFO) << "dataIsValid: " << dataIsValid; LOG(INFO) << "nChanA: " << nChanA; LOG(INFO) << "nChanC: " << nChanC; diff --git a/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h b/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h index 5805c30eb99a3..aadb0b9ca44fb 100644 --- a/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h +++ b/Detectors/FIT/raw/include/FITRaw/DigitBlockFIT.h @@ -83,8 +83,8 @@ auto ConvertDigit2TCMData(const DigitType& digit, TCMDataType& tcmData) -> std:: tcmData.cen = digit.mTriggers.getCen(); tcmData.vertex = digit.mTriggers.getVertex(); tcmData.laser = bool(digit.mTriggers.triggersignals & (1 << 5)); - tcmData.dataIsValid = bool(digit.mTriggers.triggersignals & (1 << 6)); - //tcmData.laser = digit.mTriggers.getLaserBit(); //Turned off for FDD + tcmData.outputsAreBlocked = bool(digit.mTriggers.triggersignals & (1 << 6)); + tcmData.dataIsValid = bool(digit.mTriggers.triggersignals & (1 << 7)); tcmData.nChanA = digit.mTriggers.nChanA; tcmData.nChanC = digit.mTriggers.nChanC; const int64_t thresholdSignedInt17bit = 65535; //pow(2,17)/2-1 @@ -111,7 +111,8 @@ auto ConvertDigit2TCMData(const DigitType& digit, TCMDataType& tcmData) -> std:: tcmData.cen = bool(digit.mTriggers.triggerSignals & (1 << 3)); tcmData.vertex = bool(digit.mTriggers.triggerSignals & (1 << 4)); tcmData.laser = bool(digit.mTriggers.triggerSignals & (1 << 5)); - tcmData.dataIsValid = bool(digit.mTriggers.triggerSignals & (1 << 6)); + tcmData.outputsAreBlocked = bool(digit.mTriggers.triggerSignals & (1 << 6)); + tcmData.dataIsValid = bool(digit.mTriggers.triggerSignals & (1 << 7)); tcmData.nChanA = digit.mTriggers.nChanA; //tcmData.nChanC = digit.mTriggers.nChanC; tcmData.nChanC = 0; @@ -137,7 +138,8 @@ auto ConvertTCMData2Digit(DigitType& digit, const TCMDataType& tcmData) -> std:: ((bool)tcmData.cen << TriggerType::bitCen) | ((bool)tcmData.sCen << TriggerType::bitSCen) | ((bool)tcmData.laser << 5) | - ((bool)tcmData.dataIsValid << 6); + ((bool)tcmData.outputsAreBlocked << 6) | + ((bool)tcmData.dataIsValid << 7); trg.nChanA = (int8_t)tcmData.nChanA; trg.nChanC = (int8_t)tcmData.nChanC; trg.amplA = (int32_t)tcmData.amplA; @@ -167,7 +169,8 @@ auto ConvertTCMData2Digit(DigitType& digit, const TCMDataType& tcmData) -> std:: ((bool)tcmData.cen << 3) | ((bool)tcmData.vertex << 4) | ((bool)tcmData.laser << 5) | - ((bool)tcmData.dataIsValid << 6); + ((bool)tcmData.outputsAreBlocked << 6) | + ((bool)tcmData.dataIsValid << 7); trg.nChanA = (int8_t)tcmData.nChanA; //trg.nChanC = (int8_t)tcmData.nChanC; trg.amplA = (int32_t)tcmData.amplA; From b8307be10a8aa5b739e4df3c8ce7b7557bf74d00 Mon Sep 17 00:00:00 2001 From: Matteo Concas Date: Wed, 21 Jul 2021 14:39:03 +0200 Subject: [PATCH 249/314] Alice 3: embedding FT3 inner disks in BP vacuum --- .../FT3/base/include/FT3Base/GeometryTGeo.h | 10 +++-- .../ALICE3/FT3/base/src/GeometryTGeo.cxx | 9 +++-- .../include/FT3Simulation/Detector.h | 2 +- .../ALICE3/FT3/simulation/src/Detector.cxx | 39 +++++++++++++++---- 4 files changed, 43 insertions(+), 17 deletions(-) diff --git a/Detectors/Upgrades/ALICE3/FT3/base/include/FT3Base/GeometryTGeo.h b/Detectors/Upgrades/ALICE3/FT3/base/include/FT3Base/GeometryTGeo.h index fe57a6ad25e46..e410c7b27985a 100644 --- a/Detectors/Upgrades/ALICE3/FT3/base/include/FT3Base/GeometryTGeo.h +++ b/Detectors/Upgrades/ALICE3/FT3/base/include/FT3Base/GeometryTGeo.h @@ -90,6 +90,7 @@ class GeometryTGeo : public o2::itsmft::GeometryTGeo void Print(Option_t* opt = "") const; static const char* getFT3VolPattern() { return sVolumeName.c_str(); } + static const char* getFT3InnerVolPattern() { return sInnerVolumeName.c_str(); } static const char* getFT3LayerPattern() { return sLayerName.c_str(); } static const char* getFT3ChipPattern() { return sChipName.c_str(); } static const char* getFT3SensorPattern() { return sSensorName.c_str(); } @@ -102,10 +103,11 @@ class GeometryTGeo : public o2::itsmft::GeometryTGeo protected: static constexpr int MAXLAYERS = 15; ///< max number of active layers - Int_t mNumberOfLayers; ///< number of layers - static std::string sVolumeName; ///< Mother volume name - static std::string sLayerName; ///< Layer name - static std::string sChipName; ///< Chip name + Int_t mNumberOfLayers; ///< number of layers + static std::string sInnerVolumeName; ///< Mother inner volume name + static std::string sVolumeName; ///< Mother volume name + static std::string sLayerName; ///< Layer name + static std::string sChipName; ///< Chip name static std::string sSensorName; ///< Sensor name diff --git a/Detectors/Upgrades/ALICE3/FT3/base/src/GeometryTGeo.cxx b/Detectors/Upgrades/ALICE3/FT3/base/src/GeometryTGeo.cxx index 13fdf99e39115..a67ac5a59caff 100644 --- a/Detectors/Upgrades/ALICE3/FT3/base/src/GeometryTGeo.cxx +++ b/Detectors/Upgrades/ALICE3/FT3/base/src/GeometryTGeo.cxx @@ -49,10 +49,11 @@ ClassImp(o2::ft3::GeometryTGeo); std::unique_ptr GeometryTGeo::sInstance; -std::string GeometryTGeo::sVolumeName = "FT3V"; ///< Mother volume name -std::string GeometryTGeo::sLayerName = "FT3Layer"; ///< Layer name -std::string GeometryTGeo::sChipName = "FT3Chip"; ///< Sensor name -std::string GeometryTGeo::sSensorName = "FT3Sensor"; ///< Sensor name +std::string GeometryTGeo::sVolumeName = "FT3V"; ///< Mother volume name +std::string GeometryTGeo::sInnerVolumeName = "FT3Inner"; ///< Mother inner volume name +std::string GeometryTGeo::sLayerName = "FT3Layer"; ///< Layer name +std::string GeometryTGeo::sChipName = "FT3Chip"; ///< Sensor name +std::string GeometryTGeo::sSensorName = "FT3Sensor"; ///< Sensor name //__________________________________________________________________________ GeometryTGeo::GeometryTGeo(bool build, int loadTrans) : o2::itsmft::GeometryTGeo(DetID::FT3) diff --git a/Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/Detector.h b/Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/Detector.h index 530047b5060a7..c0f6c441933f4 100644 --- a/Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/Detector.h +++ b/Detectors/Upgrades/ALICE3/FT3/simulation/include/FT3Simulation/Detector.h @@ -87,7 +87,6 @@ class Detector : public o2::base::DetImpl return nullptr; } - public: /// Has to be called after each event to reset the containers void Reset() override; @@ -152,6 +151,7 @@ class Detector : public o2::base::DetImpl Detector& operator=(const Detector&); std::vector> mLayers; + bool mIsPipeActivated = true; //! If Alice 3 pipe is present append inner disks to vacuum volume to avoid overlaps template friend class o2::base::DetImpl; diff --git a/Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx b/Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx index 6d3beabb4ded8..11d47049ba77f 100644 --- a/Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx +++ b/Detectors/Upgrades/ALICE3/FT3/simulation/src/Detector.cxx @@ -463,6 +463,7 @@ void Detector::createGeometry() mGeometryTGeo = GeometryTGeo::Instance(); TGeoVolume* volFT3 = new TGeoVolumeAssembly(GeometryTGeo::getFT3VolPattern()); + TGeoVolume* volIFT3 = new TGeoVolumeAssembly(GeometryTGeo::getFT3InnerVolPattern()); LOG(INFO) << "GeometryBuilder::buildGeometry volume name = " << GeometryTGeo::getFT3VolPattern(); @@ -471,18 +472,39 @@ void Detector::createGeometry() LOG(FATAL) << "Could not find the top volume"; } + TGeoVolume* A3IPvac = gGeoManager->GetVolume("OUT_PIPEVACUUM"); + if (!A3IPvac) { + LOG(INFO) << "Running simulation with no beam pipe."; + } + LOG(DEBUG) << "FT3 createGeometry: " << Form("gGeoManager name is %s title is %s", gGeoManager->GetName(), gGeoManager->GetTitle()); - if (mLayers.size() == 2) { - for (Int_t direction : {0, 1}) { // Backward layers at mLayers[0]; Forward layers at mLayers[1] - std::string directionString = direction ? "Forward" : "Backward"; - LOG(INFO) << "Creating FT3 " << directionString << " layers:"; - for (Int_t iLayer = 0; iLayer < mLayers[direction].size(); iLayer++) { - mLayers[direction][iLayer].createLayer(volFT3); + if (mLayers.size() == 2) { // V1 and telescope + if (!A3IPvac) { + for (Int_t direction : {0, 1}) { // Backward layers at mLayers[0]; Forward layers at mLayers[1] + std::string directionString = direction ? "Forward" : "Backward"; + LOG(INFO) << "Creating FT3 " << directionString << " layers:"; + for (Int_t iLayer = 0; iLayer < mLayers[direction].size(); iLayer++) { + mLayers[direction][iLayer].createLayer(volFT3); + } + } + vALIC->AddNode(volFT3, 2, new TGeoTranslation(0., 30., 0.)); + } else { // If beampipe is enabled append inner disks to beampipe filling volume, this should be temporary. + for (Int_t direction : {0, 1}) { + std::string directionString = direction ? "Forward" : "Backward"; + LOG(INFO) << "Creating FT3 " << directionString << " layers:"; + for (Int_t iLayer = 0; iLayer < mLayers[direction].size(); iLayer++) { + if (iLayer < 3) { + mLayers[direction][iLayer].createLayer(volIFT3); + } else { + mLayers[direction][iLayer].createLayer(volFT3); + } + } } + A3IPvac->AddNode(volIFT3, 2, new TGeoTranslation(0., 0., 0.)); + vALIC->AddNode(volFT3, 2, new TGeoTranslation(0., 30., 0.)); } - vALIC->AddNode(volFT3, 2, new TGeoTranslation(0., 30., 0.)); for (auto direction : {0, 1}) { std::string directionString = direction ? "Forward" : "Backward"; @@ -495,7 +517,8 @@ void Detector::createGeometry() } } - if (mLayers.size() == 1) { // All layers registered at mLayers[0] + // Unsupported with beampipe + if (mLayers.size() == 1) { // All layers registered at mLayers[0], used when building from file LOG(INFO) << "Creating FT3 layers:"; for (Int_t iLayer = 0; iLayer < mLayers[0].size(); iLayer++) { mLayers[0][iLayer].createLayer(volFT3); From 475a353605f9c4238d38f3bd2e1a1397e2585e9a Mon Sep 17 00:00:00 2001 From: Bogdan Vulpescu Date: Tue, 20 Jul 2021 16:21:00 +0200 Subject: [PATCH 250/314] MFT: add tracker option for clusters full scan --- .../include/MFTTracking/MFTTrackingParam.h | 2 + .../tracking/include/MFTTracking/ROframe.h | 2 +- .../tracking/include/MFTTracking/Tracker.h | 7 +- Detectors/ITSMFT/MFT/tracking/src/ROframe.cxx | 6 +- Detectors/ITSMFT/MFT/tracking/src/Tracker.cxx | 268 +++++++++++++++++- .../ITSMFT/MFT/workflow/src/TrackerSpec.cxx | 12 +- 6 files changed, 283 insertions(+), 14 deletions(-) diff --git a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/MFTTrackingParam.h b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/MFTTrackingParam.h index 57ae5a8e7a5a3..e01f72f15943a 100644 --- a/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/MFTTrackingParam.h +++ b/Detectors/ITSMFT/MFT/tracking/include/MFTTracking/MFTTrackingParam.h @@ -58,6 +58,8 @@ struct MFTTrackingParam : public o2::conf::ConfigurableParamHelper layer2 + R bin index + Phi bin index @@ -179,8 +186,6 @@ void Tracker::initialize() } // end loop PhiBinIndex } // end loop RBinIndex } // end loop layer1 - - mRoad.initialize(); } //_________________________________________________________________________________________________ @@ -195,8 +200,13 @@ void Tracker::clustersToTracks(ROframe& event, std::ostream& timeBenchmarkOutput //_________________________________________________________________________________________________ void Tracker::findTracks(ROframe& event) { - findTracksLTF(event); - findTracksCA(event); + if (!mFullClusterScan) { + findTracksLTF(event); + findTracksCA(event); + } else { + findTracksLTFfcs(event); + findTracksCAfcs(event); + } } //_________________________________________________________________________________________________ @@ -342,6 +352,139 @@ void Tracker::findTracksLTF(ROframe& event) } // end seeding } +//_________________________________________________________________________________________________ +void Tracker::findTracksLTFfcs(ROframe& event) +{ + // find (high momentum) tracks by the Linear Track Finder (LTF) method + // with full scan of the clusters in the target plane + + MCCompLabel mcCompLabel; + Int_t layer1, layer2, nPointDisks; + Int_t binR_proj, binPhi_proj, bin; + Int_t binIndex, clsMinIndex, clsMaxIndex, clsMinIndexS, clsMaxIndexS; + Int_t extClsIndex; + Float_t dR2, dR2min, dR2cut = mLTFclsR2Cut; + Bool_t hasDisk[constants::mft::DisksNumber], newPoint; + + Int_t clsInLayer1, clsInLayer2, clsInLayer; + + Int_t nPoints; + TrackElement trackPoints[constants::mft::LayersNumber]; + + Int_t step = 0; + layer1 = 0; + + while (true) { + + layer2 = (step == 0) ? (constants::mft::LayersNumber - 1) : (layer2 - 1); + step++; + + if (layer2 < layer1 + (mMinTrackPointsLTF - 1)) { + ++layer1; + if (layer1 > (constants::mft::LayersNumber - (mMinTrackPointsLTF - 1))) { + break; + } + step = 0; + continue; + } + + for (std::vector::iterator it1 = event.getClustersInLayer(layer1).begin(); it1 != event.getClustersInLayer(layer1).end(); ++it1) { + Cluster& cluster1 = *it1; + if (cluster1.getUsed()) { + continue; + } + clsInLayer1 = it1 - event.getClustersInLayer(layer1).begin(); + + for (std::vector::iterator it2 = event.getClustersInLayer(layer2).begin(); it2 != event.getClustersInLayer(layer2).end(); ++it2) { + Cluster& cluster2 = *it2; + if (cluster2.getUsed()) { + continue; + } + clsInLayer2 = it2 - event.getClustersInLayer(layer2).begin(); + + // start a TrackLTF + nPoints = 0; + + // add the first seed point + trackPoints[nPoints].layer = layer1; + trackPoints[nPoints].idInLayer = clsInLayer1; + nPoints++; + + // intermediate layers + for (Int_t layer = (layer1 + 1); layer <= (layer2 - 1); ++layer) { + + newPoint = kTRUE; + + // loop over the bins in the search window + dR2min = dR2cut; + for (std::vector::iterator it = event.getClustersInLayer(layer).begin(); it != event.getClustersInLayer(layer).end(); ++it) { + Cluster& cluster = *it; + if (cluster.getUsed()) { + continue; + } + clsInLayer = it - event.getClustersInLayer(layer).begin(); + + dR2 = getDistanceToSeed(cluster1, cluster2, cluster); + // retain the closest point within a radius dR2cut + if (dR2 >= dR2min) { + continue; + } + dR2min = dR2; + + if (newPoint) { + trackPoints[nPoints].layer = layer; + trackPoints[nPoints].idInLayer = clsInLayer; + nPoints++; + } + // retain only the closest point in DistanceToSeed + newPoint = false; + } // end clusters bin intermediate layer + } // end intermediate layers + + // add the second seed point + trackPoints[nPoints].layer = layer2; + trackPoints[nPoints].idInLayer = clsInLayer2; + nPoints++; + + // keep only tracks fulfilling the minimum length condition + if (nPoints < mMinTrackPointsLTF) { + continue; + } + for (Int_t i = 0; i < (constants::mft::DisksNumber); i++) { + hasDisk[i] = kFALSE; + } + for (Int_t point = 0; point < nPoints; ++point) { + auto layer = trackPoints[point].layer; + hasDisk[layer / 2] = kTRUE; + } + nPointDisks = 0; + for (Int_t disk = 0; disk < (constants::mft::DisksNumber); ++disk) { + if (hasDisk[disk]) { + ++nPointDisks; + } + } + if (nPointDisks < mMinTrackStationsLTF) { + continue; + } + + // add a new TrackLTF + event.addTrackLTF(); + for (Int_t point = 0; point < nPoints; ++point) { + auto layer = trackPoints[point].layer; + auto clsInLayer = trackPoints[point].idInLayer; + Cluster& cluster = event.getClustersInLayer(layer)[clsInLayer]; + mcCompLabel = mUseMC ? event.getClusterLabels(layer, cluster.clusterId) : MCCompLabel(); + extClsIndex = event.getClusterExternalIndex(layer, cluster.clusterId); + event.getCurrentTrackLTF().setPoint(cluster, layer, clsInLayer, mcCompLabel, extClsIndex); + // mark the used clusters + cluster.setUsed(true); + } + } // end seed clusters bin layer2 + } // end clusters layer1 + + } // end seeding +} + //_________________________________________________________________________________________________ void Tracker::findTracksCA(ROframe& event) { @@ -469,6 +612,121 @@ void Tracker::findTracksCA(ROframe& event) } // end layer1 } +//_________________________________________________________________________________________________ +void Tracker::findTracksCAfcs(ROframe& event) +{ + // layers: 0, 1, 2, ..., 9 + // rules for combining first/last plane in a road: + // 0 with 6, 7, 8, 9 + // 1 with 6, 7, 8, 9 + // 2 with 8, 9 + // 3 with 8, 9 + Int_t layer1Min = 0, layer1Max = 3; + Int_t layer2Min[4] = {6, 6, 8, 8}; + constexpr Int_t layer2Max = constants::mft::LayersNumber - 1; + + MCCompLabel mcCompLabel; + Int_t roadId, nPointDisks; + Int_t binR_proj, binPhi_proj, bin; + Int_t binIndex, clsMinIndex, clsMaxIndex, clsMinIndexS, clsMaxIndexS; + Float_t dR2, dR2cut = mROADclsR2Cut; + Bool_t hasDisk[constants::mft::DisksNumber]; + + Int_t clsInLayer1, clsInLayer2, clsInLayer; + + Int_t nPoints; + std::vector roadPoints; + + roadId = 0; + + for (Int_t layer1 = layer1Min; layer1 <= layer1Max; ++layer1) { + + for (Int_t layer2 = layer2Max; layer2 >= layer2Min[layer1]; --layer2) { + + for (std::vector::iterator it1 = event.getClustersInLayer(layer1).begin(); it1 != event.getClustersInLayer(layer1).end(); ++it1) { + Cluster& cluster1 = *it1; + if (cluster1.getUsed()) { + continue; + } + clsInLayer1 = it1 - event.getClustersInLayer(layer1).begin(); + + for (std::vector::iterator it2 = event.getClustersInLayer(layer2).begin(); it2 != event.getClustersInLayer(layer2).end(); ++it2) { + Cluster& cluster2 = *it2; + if (cluster2.getUsed()) { + continue; + } + clsInLayer2 = it2 - event.getClustersInLayer(layer2).begin(); + + // start a road + roadPoints.clear(); + + // add the first seed point + roadPoints.emplace_back(layer1, clsInLayer1); + + for (Int_t layer = (layer1 + 1); layer <= (layer2 - 1); ++layer) { + + for (std::vector::iterator it = event.getClustersInLayer(layer).begin(); it != event.getClustersInLayer(layer).end(); ++it) { + Cluster& cluster = *it; + if (cluster.getUsed()) { + continue; + } + clsInLayer = it - event.getClustersInLayer(layer).begin(); + + dR2 = getDistanceToSeed(cluster1, cluster2, cluster); + // add all points within a radius dR2cut + if (dR2 >= dR2cut) { + continue; + } + + roadPoints.emplace_back(layer, clsInLayer); + + } // end clusters bin intermediate layer + } // end intermediate layers + + // add the second seed point + roadPoints.emplace_back(layer2, clsInLayer2); + nPoints = roadPoints.size(); + + // keep only roads fulfilling the minimum length condition + if (nPoints < mMinTrackPointsCA) { + continue; + } + for (Int_t i = 0; i < (constants::mft::DisksNumber); i++) { + hasDisk[i] = kFALSE; + } + for (Int_t point = 0; point < nPoints; ++point) { + auto layer = roadPoints[point].layer; + hasDisk[layer / 2] = kTRUE; + } + nPointDisks = 0; + for (Int_t disk = 0; disk < (constants::mft::DisksNumber); ++disk) { + if (hasDisk[disk]) { + ++nPointDisks; + } + } + if (nPointDisks < mMinTrackStationsCA) { + continue; + } + + mRoad.reset(); + for (Int_t point = 0; point < nPoints; ++point) { + auto layer = roadPoints[point].layer; + auto clsInLayer = roadPoints[point].idInLayer; + mRoad.setPoint(layer, clsInLayer); + } + mRoad.setRoadId(roadId); + ++roadId; + + computeCellsInRoad(event); + runForwardInRoad(); + runBackwardInRoad(event); + + } // end clusters in layer2 + } // end clusters in layer1 + } // end layer2 + } // end layer1 +} + //_________________________________________________________________________________________________ void Tracker::computeCellsInRoad(ROframe& event) { diff --git a/Detectors/ITSMFT/MFT/workflow/src/TrackerSpec.cxx b/Detectors/ITSMFT/MFT/workflow/src/TrackerSpec.cxx index 20205b11b734f..0f64381ced1ee 100644 --- a/Detectors/ITSMFT/MFT/workflow/src/TrackerSpec.cxx +++ b/Detectors/ITSMFT/MFT/workflow/src/TrackerSpec.cxx @@ -13,7 +13,6 @@ #include "MFTWorkflow/TrackerSpec.h" -#include "MFTTracking/TrackerConfig.h" #include "MFTTracking/ROframe.h" #include "MFTTracking/IOUtils.h" #include "MFTTracking/Tracker.h" @@ -60,13 +59,13 @@ void TrackerDPL::init(InitContext& ic) o2::math_utils::TransformType::T2G)); // tracking configuration parameters - auto& mftTrackingParam = MFTTrackingParam::Instance(); + auto& trackingParam = MFTTrackingParam::Instance(); // create the tracker: set the B-field, the configuration and initialize mTracker = std::make_unique(mUseMC); double centerMFT[3] = {0, 0, -61.4}; // Field at center of MFT mTracker->setBz(field->getBz(centerMFT)); - mTracker->initConfig(mftTrackingParam, true); - mTracker->initialize(); + mTracker->initConfig(trackingParam, true); + mTracker->initialize(trackingParam.FullClusterScan); } else { throw std::runtime_error(o2::utils::Str::concat_string("Cannot retrieve GRP from the ", filename)); } @@ -122,6 +121,9 @@ void TrackerDPL::run(ProcessingContext& pc) Bool_t continuous = mGRP->isDetContinuousReadOut("MFT"); LOG(INFO) << "MFTTracker RO: continuous=" << continuous; + // tracking configuration parameters + auto& trackingParam = MFTTrackingParam::Instance(); + // snippet to convert found tracks to final output tracks with separate cluster indices auto copyTracks = [&event](auto& tracks, auto& allTracks, auto& allClusIdx) { for (auto& trc : tracks) { @@ -141,7 +143,7 @@ void TrackerDPL::run(ProcessingContext& pc) int nclUsed = ioutils::loadROFrameData(rof, event, compClusters, pattIt, mDict, labels, mTracker.get()); if (nclUsed) { event.setROFrameId(roFrame); - event.initialize(); + event.initialize(trackingParam.FullClusterScan); LOG(INFO) << "ROframe: " << roFrame << ", clusters loaded : " << nclUsed; mTracker->setROFrame(roFrame); mTracker->clustersToTracks(event); From 28a09be04b69168d4df58e6a6a46d38f847a2812 Mon Sep 17 00:00:00 2001 From: shahoian Date: Fri, 23 Jul 2021 00:17:37 +0200 Subject: [PATCH 251/314] ignore values <=1 in log-normal fit --- Common/MathUtils/include/MathUtils/fit.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Common/MathUtils/include/MathUtils/fit.h b/Common/MathUtils/include/MathUtils/fit.h index c7ae065bf7982..653270fc6e12d 100644 --- a/Common/MathUtils/include/MathUtils/fit.h +++ b/Common/MathUtils/include/MathUtils/fit.h @@ -168,7 +168,7 @@ Double_t fitGaus(const size_t nBins, const T* arr, const T xMin, const T xMax, s param[2] = 0.; param[3] = 0.; - for (Int_t i = 0; i < nBins; i++) { + for (size_t i = 0; i < nBins; i++) { entries += arr[i]; if (arr[i] > 0) { nfilled++; @@ -190,7 +190,7 @@ Double_t fitGaus(const size_t nBins, const T* arr, const T xMin, const T xMax, s param[3] = entries; Int_t npoints = 0; - for (Int_t ibin = 0; ibin < nBins; ibin++) { + for (size_t ibin = 0; ibin < nBins; ibin++) { Float_t entriesI = arr[ibin]; if (entriesI > 1) { Double_t xcenter = xMin + (ibin + 0.5) * binWidth; @@ -278,7 +278,7 @@ double fitGaus(size_t nBins, const T* arr, const T xMin, const T xMax, std::arra if (v < 0) { throw std::runtime_error("Log-normal fit is possible only with non-negative data"); } - if (v > 0) { + if (v > 1) { double y = std::log(v), err2i = v, err2iX = err2i, err2iY = err2i * y; s0 += err2iX; s1 += (err2iX *= x); From a51dc34dac7a3dc6d5608c4b98d22b833b3ed599 Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Thu, 22 Jul 2021 13:55:11 +0200 Subject: [PATCH 252/314] O2HitMerger: Fix memory leaks * Fix a few memory leaks by using unique_ptr; * also change a few vector->at to operator[] for faster access --- run/O2HitMerger.h | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/run/O2HitMerger.h b/run/O2HitMerger.h index 7492cc8c6b1fb..5b54b66426711 100644 --- a/run/O2HitMerger.h +++ b/run/O2HitMerger.h @@ -445,7 +445,7 @@ class O2HitMerger : public FairMQDevice void reorderAndMergeMCTRacks(TTree& origin, TTree& target, const std::vector& nprimaries, const std::vector& nsubevents) { std::vector* incomingdata = nullptr; - auto targetdata = new std::vector; + auto targetdata = std::make_unique>(); auto originbr = origin.GetBranch("MCTrack"); originbr->SetAddress(&incomingdata); const auto entries = origin.GetEntries(); @@ -485,7 +485,7 @@ class O2HitMerger : public FairMQDevice idelta1 -= nprim; for (Int_t i = nprim; i < npart; i++) { - auto& track = incomingdata->at(i); + auto& track = (*incomingdata)[i]; Int_t cId = track.getMotherTrackId(); if (cId >= nprim) { cId += idelta1; @@ -496,7 +496,7 @@ class O2HitMerger : public FairMQDevice track.SetFirstDaughterTrackId(-1); Int_t hwm = (int)(targetdata->size()); - auto& mother = targetdata->at(cId); + auto& mother = (*targetdata)[cId]; if (mother.getFirstDaughterTrackId() == -1) { mother.SetFirstDaughterTrackId(hwm); } @@ -513,11 +513,11 @@ class O2HitMerger : public FairMQDevice // // write to output - auto targetbr = o2::base::getOrMakeBranch(target, "MCTrack", &targetdata); - targetbr->SetAddress(&targetdata); + auto filladdr = targetdata.get(); + auto targetbr = o2::base::getOrMakeBranch(target, "MCTrack", &filladdr); + targetbr->SetAddress(&filladdr); targetbr->Fill(); targetbr->ResetAddress(); - targetdata->clear(); } template @@ -530,7 +530,7 @@ class O2HitMerger : public FairMQDevice // This method is called by O2HitMerger::mergeAndFlushData(int) // T* incomingdata = nullptr; - auto targetdata = new T; + std::unique_ptr targetdata(nullptr); auto originbr = origin.GetBranch(brname.c_str()); originbr->SetAddress(&incomingdata); const auto entries = origin.GetEntries(); @@ -538,8 +538,8 @@ class O2HitMerger : public FairMQDevice if (entries == 1) { // nothing to do in case there is only one entry originbr->GetEntry(0); - targetdata = incomingdata; } else { + targetdata = std::make_unique(); // loop over subevents Int_t nprimTot = 0; for (auto entry = 0; entry < entries; entry++) { @@ -563,11 +563,11 @@ class O2HitMerger : public FairMQDevice incomingdata = nullptr; } } - auto targetbr = o2::base::getOrMakeBranch(target, brname.c_str(), &targetdata); - targetbr->SetAddress(&targetdata); + auto dataaddr = (entries == 1) ? incomingdata : targetdata.get(); + auto targetbr = o2::base::getOrMakeBranch(target, brname.c_str(), &dataaddr); + targetbr->SetAddress(&dataaddr); targetbr->Fill(); targetbr->ResetAddress(); - targetdata->clear(); } void updateTrackIdWithOffset(MCTrack& track, Int_t nprim, Int_t idelta0, Int_t idelta1) @@ -593,7 +593,7 @@ class O2HitMerger : public FairMQDevice void merge(std::string brname, TTree& origin, TTree& target) { auto originbr = origin.GetBranch(brname.c_str()); - auto targetdata = new T; + auto targetdata = std::make_unique(); T* incomingdata = nullptr; originbr->SetAddress(&incomingdata); @@ -605,7 +605,7 @@ class O2HitMerger : public FairMQDevice originbr->GetEntry(0); filladdress = incomingdata; } else { - filladdress = targetdata; + filladdress = targetdata.get(); for (auto entry = 0; entry < entries; ++entry) { originbr->GetEntry(entry); backInsert(*incomingdata, *targetdata); @@ -619,13 +619,10 @@ class O2HitMerger : public FairMQDevice targetbr->SetAddress(&filladdress); targetbr->Fill(); targetbr->ResetAddress(); - targetdata->clear(); if (incomingdata) { delete incomingdata; incomingdata = nullptr; } - - delete targetdata; } void initHitTreeAndOutFile(std::string prefix, int detID) From cf4f3ec490643dd5146385b6cd35bbfe495d16bf Mon Sep 17 00:00:00 2001 From: Fabrizio Grosa Date: Thu, 22 Jul 2021 17:28:00 +0200 Subject: [PATCH 253/314] Fix pT tolerance application in preselection --- Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx b/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx index 1cdb30a62c53f..e5363f2a42988 100644 --- a/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx +++ b/Analysis/Tasks/PWGHF/HFTrackIndexSkimsCreator.cxx @@ -540,7 +540,7 @@ struct HfTrackIndexSkimsCreator { array{hfTracks[0].px(), hfTracks[0].py(), hfTracks[0].pz()}, array{hfTracks[1].px(), hfTracks[1].py(), hfTracks[1].pz()}}; - auto pT = RecoDecay::Pt(arrMom[0], arrMom[1]) - pTTolerance; // add tolerance because of no reco decay vertex + auto pT = RecoDecay::Pt(arrMom[0], arrMom[1]) + pTTolerance; // add tolerance because of no reco decay vertex for (int iDecay2P = 0; iDecay2P < n2ProngDecays; iDecay2P++) { @@ -601,7 +601,7 @@ struct HfTrackIndexSkimsCreator { array{hfTracks[1].px(), hfTracks[1].py(), hfTracks[1].pz()}, array{hfTracks[2].px(), hfTracks[2].py(), hfTracks[2].pz()}}; - auto pT = RecoDecay::Pt(arrMom[0], arrMom[1], arrMom[2]) - pTTolerance; // add tolerance because of no reco decay vertex + auto pT = RecoDecay::Pt(arrMom[0], arrMom[1], arrMom[2]) + pTTolerance; // add tolerance because of no reco decay vertex for (int iDecay3P = 0; iDecay3P < n3ProngDecays; iDecay3P++) { From 3cf3d44a60477d1359689668997c9e62c98b7c40 Mon Sep 17 00:00:00 2001 From: Sandro Wenzel Date: Thu, 22 Jul 2021 11:00:47 +0200 Subject: [PATCH 254/314] Less verbose output from analysis-validation task This was leading to extremely large log-files. If some screen information is needed, please consider making the output outside of the loop or only when debugging. --- Analysis/Tasks/validation.cxx | 1 - 1 file changed, 1 deletion(-) diff --git a/Analysis/Tasks/validation.cxx b/Analysis/Tasks/validation.cxx index 4cd25693ff5d1..f0e44ed74ac6e 100644 --- a/Analysis/Tasks/validation.cxx +++ b/Analysis/Tasks/validation.cxx @@ -64,7 +64,6 @@ struct ValidationTask { hfC1PtSnp->Fill(track.c1PtSnp()); hfC1PtTgl->Fill(track.c1PtTgl()); hfC1Pt21Pt2->Fill(track.c1Pt21Pt2()); - LOGF(info, "track tgl ss s%f", track.tgl()); } } }; From 5df631560f7bd8cc1a86ff7a21c710d0a99b944f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Nicol=C3=B2=20Jacazio?= Date: Fri, 23 Jul 2021 10:34:00 +0200 Subject: [PATCH 255/314] AO2D: extend writing of tracks and particles (#6691) * Fix the way TOF is written * Add PDG codes of heavier particles * Add shift in momentum energy hack * Add more fixes * Add dummy TOF EventTime maker * Resolve extra division * Fix for sqrt(2) in FPE protection hack --- Analysis/Tasks/PID/qaTOFMC.cxx | 2 +- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 62 ++++++++++++------- Detectors/TOF/reconstruction/CMakeLists.txt | 6 +- .../TOFReconstruction/EventTimeMaker.h | 41 ++++++++++++ .../TOF/reconstruction/src/EventTimeMaker.cxx | 24 +++++++ 5 files changed, 111 insertions(+), 24 deletions(-) create mode 100644 Detectors/TOF/reconstruction/include/TOFReconstruction/EventTimeMaker.h create mode 100644 Detectors/TOF/reconstruction/src/EventTimeMaker.cxx diff --git a/Analysis/Tasks/PID/qaTOFMC.cxx b/Analysis/Tasks/PID/qaTOFMC.cxx index 822d08641dba6..5c9f3b3448cac 100644 --- a/Analysis/Tasks/PID/qaTOFMC.cxx +++ b/Analysis/Tasks/PID/qaTOFMC.cxx @@ -61,7 +61,7 @@ struct pidTOFTaskQA { "nsigmaMCprm/Ka", "nsigmaMCprm/Pr", "nsigmaMCprm/De", "nsigmaMCprm/Tr", "nsigmaMCprm/He", "nsigmaMCprm/Al"}; static constexpr const char* pT[Np] = {"e", "#mu", "#pi", "K", "p", "d", "t", "^{3}He", "#alpha"}; - static constexpr int PDGs[Np] = {11, 13, 211, 321, 2212, 1, 1, 1, 1}; + static constexpr int PDGs[Np] = {11, 13, 211, 321, 2212, 1000010020, 1000010030, 1000020030}; HistogramRegistry histos{"Histos", {}, OutputObjHandlingPolicy::QAObject}; Configurable nBinsP{"nBinsP", 400, "Number of bins for the momentum"}; diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index 25c312532d1d1..4f5c7ac27b3c1 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -249,16 +249,14 @@ void AODProducerWorkflowDPL::fillTrackTablesPerCollision(int collisionID, const auto& tofInt = tofMatch.getLTIntegralOut(); float intLen = tofInt.getL(); extraInfoHolder.length = intLen; - extraInfoHolder.tofSignal = tofMatch.getSignal(); - float mass = o2::constants::physics::MassPionCharged; // default pid = pion - float expSig = tofInt.getTOF(o2::track::PID::Pion); - float expMom = 0.f; - if (expSig > 0 && interactionTime > 0) { - float tof = expSig - interactionTime; - float expBeta = (intLen / tof / cSpeed); - expMom = mass * expBeta / std::sqrt(1.f - expBeta * expBeta); + if (interactionTime > 0) { + extraInfoHolder.tofSignal = static_cast(tofMatch.getSignal() - interactionTime); + } + const float mass = o2::constants::physics::MassPionCharged; // default pid = pion + if (tofInt.getTOF(o2::track::PID::Pion) > 0.f) { + const float expBeta = (intLen / (tofInt.getTOF(o2::track::PID::Pion) * cSpeed)); + extraInfoHolder.tofExpMom = mass * expBeta / std::sqrt(1.f - expBeta * expBeta); } - extraInfoHolder.tofExpMom = expMom; } if (src == GIndex::Source::TPCTRD || src == GIndex::Source::ITSTPCTRD) { const auto& trdOrig = data.getTrack(src, contributorsGID[src].getIndex()); @@ -402,6 +400,28 @@ void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& if (item != mToStore.end()) { daughterL = item->second; } + float pX = (float)mcParticles[particle].Px(); + float pY = (float)mcParticles[particle].Py(); + float pZ = (float)mcParticles[particle].Pz(); + float energy = (float)mcParticles[particle].GetEnergy(); + // HACK to avoid FPE in expression columns. Affect only particles in the Beam Pipe. + // TO BE REMOVED asap + { + const float limit = 1e-4; + const float mom = TMath::Sqrt(pX * pX + pY * pY + pZ * pZ); + const float eta = 0.5f * TMath::Log((mom + pZ) / (mom - pZ)); + if (TMath::Abs(eta) > 0.9) { + if (TMath::Abs((mom - pZ) / pZ) <= limit) { + pX = truncateFloatFraction(TMath::Sqrt((1.f + limit) * (1.f + limit) - 1.f) * pZ * 0.70710678, mMcParticleMom); + pY = truncateFloatFraction(TMath::Sqrt((1.f + limit) * (1.f + limit) - 1.f) * pZ * 0.70710678, mMcParticleMom); + } + if (TMath::Abs(energy - pZ) < limit) { + energy = truncateFloatFraction(pZ + limit, mMcParticleMom); + } + } + } + // End of HACK + mcParticlesCursor(0, mccolid, mcParticles[particle].GetPdgCode(), @@ -412,10 +432,10 @@ void AODProducerWorkflowDPL::fillMCParticlesTable(o2::steer::MCKinematicsReader& daughter0, daughterL, truncateFloatFraction(weight, mMcParticleW), - truncateFloatFraction((float)mcParticles[particle].Px(), mMcParticleMom), - truncateFloatFraction((float)mcParticles[particle].Py(), mMcParticleMom), - truncateFloatFraction((float)mcParticles[particle].Pz(), mMcParticleMom), - truncateFloatFraction((float)mcParticles[particle].GetEnergy(), mMcParticleMom), + truncateFloatFraction(pX, mMcParticleMom), + truncateFloatFraction(pY, mMcParticleMom), + truncateFloatFraction(pZ, mMcParticleMom), + truncateFloatFraction(energy, mMcParticleMom), truncateFloatFraction((float)mcParticles[particle].Vx(), mMcParticlePos), truncateFloatFraction((float)mcParticles[particle].Vy(), mMcParticlePos), truncateFloatFraction((float)mcParticles[particle].Vz(), mMcParticlePos), @@ -743,8 +763,8 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) bcID, aAmplitudesA, aAmplitudesC, - truncateFloatFraction(ft0RecPoint.getCollisionTimeA() / 1E3, mT0Time), // ps to ns - truncateFloatFraction(ft0RecPoint.getCollisionTimeC() / 1E3, mT0Time), // ps to ns + truncateFloatFraction(ft0RecPoint.getCollisionTimeA() * 1E-3, mT0Time), // ps to ns + truncateFloatFraction(ft0RecPoint.getCollisionTimeC() * 1E-3, mT0Time), // ps to ns ft0RecPoint.getTrigger().triggersignals); } @@ -770,11 +790,11 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) for (auto& vertex : primVertices) { auto& cov = vertex.getCov(); auto& timeStamp = vertex.getTimeStamp(); - double tsTimeStamp = timeStamp.getTimeStamp() * 1E3; // mus to ns - uint64_t globalBC = std::round(tsTimeStamp / o2::constants::lhc::LHCBunchSpacingNS); - LOG(DEBUG) << globalBC << " " << tsTimeStamp; + const double interactionTime = timeStamp.getTimeStamp() * 1E3; // mus to ns + uint64_t globalBC = std::round(interactionTime / o2::constants::lhc::LHCBunchSpacingNS); + LOG(DEBUG) << globalBC << " " << interactionTime; // collision timestamp in ns wrt the beginning of collision BC - tsTimeStamp = globalBC * o2::constants::lhc::LHCBunchSpacingNS - tsTimeStamp; + const float relInteractionTime = static_cast(globalBC * o2::constants::lhc::LHCBunchSpacingNS - interactionTime); auto item = bcsMap.find(globalBC); int bcID = -1; if (item != bcsMap.end()) { @@ -798,12 +818,12 @@ void AODProducerWorkflowDPL::run(ProcessingContext& pc) vertex.getFlags(), truncateFloatFraction(vertex.getChi2(), mCollisionPositionCov), vertex.getNContributors(), - truncateFloatFraction(tsTimeStamp, mCollisionPosition), + truncateFloatFraction(relInteractionTime, mCollisionPosition), truncateFloatFraction(timeStamp.getTimeStampError() * 1E3, mCollisionPositionCov), collisionTimeMask); auto& trackRef = primVer2TRefs[collisionID]; // passing interaction time in [ps] - fillTrackTablesPerCollision(collisionID, tsTimeStamp * 1E3, trackRef, primVerGIs, recoData, + fillTrackTablesPerCollision(collisionID, interactionTime * 1E3, trackRef, primVerGIs, recoData, tracksCursor, tracksCovCursor, tracksExtraCursor, mftTracksCursor); collisionID++; } diff --git a/Detectors/TOF/reconstruction/CMakeLists.txt b/Detectors/TOF/reconstruction/CMakeLists.txt index 3b1cf2577c47b..0e79336416683 100644 --- a/Detectors/TOF/reconstruction/CMakeLists.txt +++ b/Detectors/TOF/reconstruction/CMakeLists.txt @@ -15,20 +15,22 @@ o2_add_library(TOFReconstruction src/DecoderBase.cxx src/Decoder.cxx src/CTFCoder.cxx + src/EventTimeMaker.cxx src/CosmicProcessor.cxx PUBLIC_LINK_LIBRARIES O2::TOFBase O2::DataFormatsTOF O2::SimulationDataFormat O2::CommonDataFormat O2::DataFormatsTOF O2::rANS O2::DPLUtils - O2::TOFCalibration O2::DetectorsRaw) + O2::TOFCalibration O2::DetectorsRaw) o2_target_root_dictionary(TOFReconstruction HEADERS include/TOFReconstruction/DataReader.h include/TOFReconstruction/Clusterer.h include/TOFReconstruction/ClustererTask.h include/TOFReconstruction/Encoder.h - include/TOFReconstruction/DecoderBase.h + include/TOFReconstruction/DecoderBase.h include/TOFReconstruction/Decoder.h include/TOFReconstruction/CTFCoder.h + include/TOFReconstruction/EventTimeMaker.h include/TOFReconstruction/CosmicProcessor.h) diff --git a/Detectors/TOF/reconstruction/include/TOFReconstruction/EventTimeMaker.h b/Detectors/TOF/reconstruction/include/TOFReconstruction/EventTimeMaker.h new file mode 100644 index 0000000000000..18e14bd5b15c2 --- /dev/null +++ b/Detectors/TOF/reconstruction/include/TOFReconstruction/EventTimeMaker.h @@ -0,0 +1,41 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file EventTimeMaker.h +/// \brief Definition of the TOF event time maker + +#ifndef ALICEO2_TOF_EVENTTIMEMAKER_H +#define ALICEO2_TOF_EVENTTIMEMAKER_H + +namespace o2 +{ + +namespace tof +{ + +struct eventTimeContainer { + eventTimeContainer(const float& e) : eventTime{e} {}; + float eventTime = 0.f; +}; + +template +eventTimeContainer evTimeMaker(const tTracks& tracks) +{ + for (auto track : tracks) { + track.tofSignal(); + } + return eventTimeContainer{0}; +} + +} // namespace tof +} // namespace o2 + +#endif /* ALICEO2_TOF_EVENTTIMEMAKER_H */ \ No newline at end of file diff --git a/Detectors/TOF/reconstruction/src/EventTimeMaker.cxx b/Detectors/TOF/reconstruction/src/EventTimeMaker.cxx new file mode 100644 index 0000000000000..32123466296c1 --- /dev/null +++ b/Detectors/TOF/reconstruction/src/EventTimeMaker.cxx @@ -0,0 +1,24 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file EventTimeMaker.cxx +/// \brief Implementation of the TOF event time maker + +#include "TOFReconstruction/EventTimeMaker.h" + +namespace o2 +{ + +namespace tof +{ + +} // namespace tof +} // namespace o2 \ No newline at end of file From 50ccfd6a1ca5432e45fe0c298498cd0517011ff8 Mon Sep 17 00:00:00 2001 From: Roberto Preghenella Date: Fri, 23 Jul 2021 11:54:14 +0200 Subject: [PATCH 256/314] Fix fatal bit in detector field --- Detectors/TOF/compression/src/Compressor.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/TOF/compression/src/Compressor.cxx b/Detectors/TOF/compression/src/Compressor.cxx index 17a9cdffa6a4b..a16a64e46fcdf 100644 --- a/Detectors/TOF/compression/src/Compressor.cxx +++ b/Detectors/TOF/compression/src/Compressor.cxx @@ -206,7 +206,7 @@ bool Compressor::processHBF() if (mDecoderFatal) { mFatalCounter++; mEncoderPointer = mEncoderPointerStart; - mEncoderRDH->detectorField |= 0x00010000; + mEncoderRDH->detectorField |= 0x00001000; } if (mDecoderError) { From 607f88f8335c6aac39f11594f8f70eec29c33555 Mon Sep 17 00:00:00 2001 From: manso Date: Mon, 19 Jul 2021 22:31:23 +0200 Subject: [PATCH 257/314] New Beam Pipe Support on the C side --- Detectors/Passive/src/Pipe.cxx | 240 ++++++++++++++++++--------------- 1 file changed, 132 insertions(+), 108 deletions(-) diff --git a/Detectors/Passive/src/Pipe.cxx b/Detectors/Passive/src/Pipe.cxx index e813a9751582c..ef169f9f682ab 100644 --- a/Detectors/Passive/src/Pipe.cxx +++ b/Detectors/Passive/src/Pipe.cxx @@ -108,6 +108,7 @@ void Pipe::ConstructGeometry() const TGeoMedium* kMedRohacell = matmgr.getTGeoMedium("PIPE_ROHACELL"); const TGeoMedium* kMedPolyimide = matmgr.getTGeoMedium("PIPE_POLYIMIDE"); const TGeoMedium* kMedCarbonFiber = matmgr.getTGeoMedium("PIPE_M55J6K"); + const TGeoMedium* kMedTitanium = matmgr.getTGeoMedium("PIPE_TITANIUM"); // Top volume TGeoVolume* top = gGeoManager->GetVolume("cave"); @@ -227,7 +228,6 @@ void Pipe::ConstructGeometry() beamPipeCsideSection->AddNode(voberylliumTubeVacuum, 1, new TGeoTranslation(0., 0., (kBeryliumSectionZmax + kBeryliumSectionZmin) / 2)); - //---------------- Al tube ------------------ TGeoPcon* aluBeforeBellows = new TGeoPcon(0., 360., 9); aluBeforeBellows->DefineSection(0, kZ9, 0., kBellowSectionOuterRadius - kBeryliumSectionThickness + kBellowPlieThickness); @@ -347,144 +347,169 @@ void Pipe::ConstructGeometry() // Dimensions : const Float_t kSupportXdim = 20.67; - const Float_t kBeamPipeRingZdim = 4.0; + const Float_t kBeamPipeRingZdim = 3.6; const Float_t kVespelRmax = 2.3; const Float_t kVespelRmin = 2.22; - const Float_t kBeampipeCarbonCollarRmin = 2.4; + const Float_t kBeampipeCarbonCollarRmin = 2.5; const Float_t kBeampipeCarbonCollarRmax = 2.7; const Float_t kFixationCarbonCollarRmin = 1.5; const Float_t kFixationCarbonCollarRmax = 1.7; const Float_t kFixationCarbonCollarDZ = 2.5; - const Float_t kSkinThickness = 0.1; - const Float_t kSkinXdim = 14.25; - const Float_t kSkinYdim = 1.; + const Float_t kSkinThickness = 0.3; + const Float_t kSkinXdim = 14.2; + const Float_t kSkinYdim = 1.4; const Float_t kSkinZdim = kFixationCarbonCollarDZ; - const Float_t kCarbonEarsXdim = 1.01; - const Float_t kCarbonEarsYdim = 0.2; + const Float_t kCarbonEarsXdim = 2.8; + const Float_t kCarbonEarsYdimIn = 1.1; + const Float_t kCarbonEarsYdimOut = 0.6; const Float_t kCarbonEarsZdim = kFixationCarbonCollarDZ; + const Float_t kScrewDiameter = 0.4; + const Float_t kScrewHeadHeight = 0.2; + const Float_t kScrewHeadDiameter = 0.6; + const Float_t kScrewPositionIn = 3.25; + const Float_t kScrewPositionOut = 21.80; + const Float_t kScrewThreadLength = 1.0; + const Float_t holeSightDiameterOut = 0.60; + const Float_t holeSightDiameterIn = 0.25; // Support Bar TGeoVolumeAssembly* supportBar = new TGeoVolumeAssembly("BPS_SupportBar"); - - TGeoBBox* carbonSkinBPS = new TGeoBBox(kSkinXdim / 2., kSkinYdim / 2., kSkinZdim / 2.); - carbonSkinBPS->SetName("carbonSkinBPS"); - + TGeoBBox* carbonSkinBPS = new TGeoBBox("carbonSkinBPS", kSkinXdim / 2., kSkinYdim / 2., kSkinZdim / 2.); TGeoBBox* foambarBPS = new TGeoBBox("foambarBPS", kSkinXdim / 2. - kSkinThickness, kSkinYdim / 2. - kSkinThickness, kSkinZdim / 2. - kSkinThickness / 2.); - TGeoBBox* carbonEarsBPS = new TGeoBBox(kCarbonEarsXdim / 2., kCarbonEarsYdim / 2., kCarbonEarsZdim / 2.); - carbonEarsBPS->SetName("carbonEarsBPS"); + TGeoBBox* carbonEarsBPSin = new TGeoBBox("carbonEarsBPSin", kCarbonEarsXdim / 2., kCarbonEarsYdimIn / 2., kCarbonEarsZdim / 2.); + TGeoBBox* carbonEarsBPSout = new TGeoBBox("carbonEarsBPSout", kCarbonEarsXdim / 2., kCarbonEarsYdimOut / 2., kCarbonEarsZdim / 2.); + + //===== building the main support bar in carbon ==== + TGeoTranslation* tBP1 = new TGeoTranslation("tBP1", (kSkinXdim + kCarbonEarsXdim) / 2., -(kSkinYdim - kCarbonEarsYdimIn) / 2., 0.); + TGeoTranslation* tBP2 = new TGeoTranslation("tBP2", -(kSkinXdim + kCarbonEarsXdim) / 2., 0., 0.); + tBP1->RegisterYourself(); + tBP2->RegisterYourself(); + + TGeoRotation* rotScrew = new TGeoRotation("rotScrew", 0., 90., 0.); + rotScrew->RegisterYourself(); + + TGeoTube* holeScrew = new TGeoTube("holeScrew", 0., kScrewDiameter / 2., kCarbonEarsYdimIn / 2. + 0.001); + TGeoTube* holeSight = new TGeoTube("holeSight", 0., holeSightDiameterOut / 2., kSkinZdim / 2. + 0.001); + TGeoTranslation* tHoleSight = new TGeoTranslation("tHoleSight", kSkinXdim / 2. + kCarbonEarsXdim + kBeampipeCarbonCollarRmax - 6.55, 0., 0.); + tHoleSight->RegisterYourself(); + Double_t kXHoleIn = kSkinXdim / 2. + kCarbonEarsXdim + kBeampipeCarbonCollarRmax - kScrewPositionIn; + Double_t kXHoleOut = kSkinXdim / 2. + kCarbonEarsXdim + kBeampipeCarbonCollarRmax - kScrewPositionOut; + TGeoCombiTrans* tHoleScrew1 = new TGeoCombiTrans("tHoleScrew1", kXHoleIn, -(kSkinYdim - kCarbonEarsYdimIn) / 2., -0.7, rotScrew); + TGeoCombiTrans* tHoleScrew2 = new TGeoCombiTrans("tHoleScrew2", kXHoleIn, -(kSkinYdim - kCarbonEarsYdimIn) / 2., 0.7, rotScrew); + TGeoCombiTrans* tHoleScrew3 = new TGeoCombiTrans("tHoleScrew3", kXHoleOut, -(kSkinYdim - kCarbonEarsYdimIn) / 2., -0.7, rotScrew); + TGeoCombiTrans* tHoleScrew4 = new TGeoCombiTrans("tHoleScrew4", kXHoleOut, -(kSkinYdim - kCarbonEarsYdimIn) / 2., 0.7, rotScrew); + tHoleScrew1->RegisterYourself(); + tHoleScrew2->RegisterYourself(); + tHoleScrew3->RegisterYourself(); + tHoleScrew4->RegisterYourself(); - TGeoTranslation* transBP1 = new TGeoTranslation("transBP1", (kSkinXdim + kCarbonEarsXdim) / 2., 0., 0.); - transBP1->RegisterYourself(); - TGeoTranslation* transBP2 = new TGeoTranslation("transBP2", -(kSkinXdim + kCarbonEarsXdim) / 2., 0., 0.); - transBP2->RegisterYourself(); TGeoCompositeShape* supportBarCarbon = new TGeoCompositeShape( - "BPS_supportBarCarbon", "(carbonSkinBPS-foambarBPS)+carbonEarsBPS:transBP1+carbonEarsBPS:transBP2"); - + "BPS_supportBarCarbon", "(carbonSkinBPS-foambarBPS)+carbonEarsBPSin:tBP1-holeScrew:tHoleScrew1-holeScrew:tHoleScrew2+carbonEarsBPSout:tBP2-holeSight:tHoleSight-holeScrew:tHoleScrew3-holeScrew:tHoleScrew4"); TGeoVolume* supportBarCarbonVol = new TGeoVolume("BPS_supportBarCarbon", supportBarCarbon, kMedCarbonFiber); - supportBarCarbonVol->SetLineColor(kGray + 3); - - supportBar->AddNode(supportBarCarbonVol, 1, - new TGeoTranslation(kSkinXdim / 2. + kCarbonEarsXdim + kBeampipeCarbonCollarRmax, 0, 0)); - supportBar->AddNode(supportBarCarbonVol, 2, - new TGeoTranslation(-(kSkinXdim / 2. + kCarbonEarsXdim + kBeampipeCarbonCollarRmax), 0, 0)); - - TGeoVolume* foamVol = new TGeoVolume("supportBarFoam", foambarBPS, kMedRohacell); - foamVol->SetLineColor(kGray); - supportBar->AddNode(foamVol, 1, - new TGeoTranslation(kSkinXdim / 2. + kCarbonEarsXdim + kBeampipeCarbonCollarRmax, 0, 0)); - supportBar->AddNode(foamVol, 2, - new TGeoTranslation(-(kSkinXdim / 2. + kCarbonEarsXdim + kBeampipeCarbonCollarRmax), 0, 0)); + supportBarCarbonVol->SetLineColor(kGray + 2); + supportBar->AddNode(supportBarCarbonVol, 1, new TGeoTranslation(-(kSkinXdim / 2. + kCarbonEarsXdim + kBeampipeCarbonCollarRmax), 0, 0)); + TGeoRotation* rotBar1 = new TGeoRotation("rotBar1", 0., 180., 180.); + rotBar1->RegisterYourself(); + TGeoCombiTrans* transBar1 = new TGeoCombiTrans("transBar1", kSkinXdim / 2. + kCarbonEarsXdim + kBeampipeCarbonCollarRmax, 0, 0, rotBar1); + transBar1->RegisterYourself(); + supportBar->AddNode(supportBarCarbonVol, 2, transBar1); + //================================================== + + //==== Adding the internal foam volumes ============ + TGeoCompositeShape* foamVolume = new TGeoCompositeShape("foamVolume", "foambarBPS-holeSight:tHoleSight"); + TGeoVolume* FoamVolume = new TGeoVolume("supportBarFoam", foamVolume, kMedRohacell); + FoamVolume->SetLineColor(kGreen); + TGeoRotation* rotBar2 = new TGeoRotation("rotBar2", 0., 0., 180.); + rotBar2->RegisterYourself(); + TGeoCombiTrans* transBar2 = new TGeoCombiTrans("transBar2", kSkinXdim / 2. + kCarbonEarsXdim + kBeampipeCarbonCollarRmax, 0, 0, rotBar2); + transBar2->RegisterYourself(); + supportBar->AddNode(FoamVolume, 1, transBar1); + supportBar->AddNode(FoamVolume, 2, new TGeoTranslation(-(kSkinXdim / 2. + kCarbonEarsXdim + kBeampipeCarbonCollarRmax), 0, 0)); + //================================================== + + //================= Screws ==================== + TGeoVolumeAssembly* screw = new TGeoVolumeAssembly("screw"); + TGeoTube* headScrew = new TGeoTube("headScrew", 0., kScrewHeadDiameter / 2., kScrewHeadHeight / 2.); + TGeoVolume* HeadScrew = new TGeoVolume("HeadScrew", headScrew, kMedTitanium); + HeadScrew->SetLineColor(kRed); + TGeoTube* threadScrew = new TGeoTube("threadScrew", 0., kScrewDiameter / 2., kCarbonEarsYdimIn / 2.); + TGeoVolume* ThreadScrew = new TGeoVolume("ThreadScrew", threadScrew, kMedTitanium); + ThreadScrew->SetLineColor(kRed); + screw->AddNode(HeadScrew, 1, new TGeoTranslation(0., 0., -(kCarbonEarsYdimIn + kScrewHeadHeight) / 2.)); + screw->AddNode(ThreadScrew, 1); + TGeoCombiTrans* tScrew1 = new TGeoCombiTrans("transScrew1", kScrewPositionIn, (kCarbonEarsYdimIn - kSkinYdim) / 2., -0.7, rotScrew); + TGeoCombiTrans* tScrew2 = new TGeoCombiTrans("transScrew2", kScrewPositionIn, (kCarbonEarsYdimIn - kSkinYdim) / 2., 0.7, rotScrew); + TGeoCombiTrans* tScrew3 = new TGeoCombiTrans("transScrew3", -kScrewPositionIn, (kCarbonEarsYdimIn - kSkinYdim) / 2., -0.7, rotScrew); + TGeoCombiTrans* tScrew4 = new TGeoCombiTrans("transScrew4", -kScrewPositionIn, (kCarbonEarsYdimIn - kSkinYdim) / 2., 0.7, rotScrew); + tScrew1->RegisterYourself(); + tScrew2->RegisterYourself(); + tScrew3->RegisterYourself(); + tScrew4->RegisterYourself(); + supportBar->AddNode(screw, 1, tScrew1); + supportBar->AddNode(screw, 2, tScrew2); + supportBar->AddNode(screw, 3, tScrew3); + supportBar->AddNode(screw, 4, tScrew4); + //============================================== + + // === Optical sights === + TGeoVolumeAssembly* fixationSight = new TGeoVolumeAssembly("fixationSight"); + TGeoTube* screwSight = new TGeoTube("screwSight", holeSightDiameterIn / 2., holeSightDiameterOut / 2., kScrewThreadLength / 2.); + TGeoVolume* ScrewSight = new TGeoVolume("ScrewSight", screwSight, kMedSteel); + ScrewSight->SetLineColor(kBlue); + Double_t supportSightLength = 0.5; + TGeoTube* supportSight = new TGeoTube("supportSight", holeSightDiameterIn / 2., 1.4 / 2., supportSightLength / 2.); + TGeoVolume* SupportSight = new TGeoVolume("SupportSight", supportSight, kMedSteel); + SupportSight->SetLineColor(kBlue); + fixationSight->AddNode(ScrewSight, 1); + fixationSight->AddNode(SupportSight, 1, new TGeoTranslation(0., 0., (kScrewThreadLength + supportSightLength) / 2.)); + SupportSight->SetVisibility(kTRUE); + fixationSight->SetVisibility(kTRUE); + TGeoTranslation* tSight1 = new TGeoTranslation("tSight1", 6.55, 0., (kSkinZdim - kScrewThreadLength) / 2.); + TGeoTranslation* tSight2 = new TGeoTranslation("tSight2", -6.55, 0., (kSkinZdim - kScrewThreadLength) / 2.); + tSight1->RegisterYourself(); + tSight2->RegisterYourself(); + supportBar->AddNode(fixationSight, 1, tSight1); + supportBar->AddNode(fixationSight, 2, tSight2); + // ===================== beamPipeSupport->AddNode(supportBar, 1); - // Fixation to wings - - TGeoVolumeAssembly* fixationToWings = new TGeoVolumeAssembly("BPS_fixationToWings"); - - Float_t delatX = 0.1; - - TGeoTubeSeg* fixationTube = - new TGeoTubeSeg(kFixationCarbonCollarRmin, kFixationCarbonCollarRmax, kFixationCarbonCollarDZ / 2., -90., 90.); - fixationTube->SetName("fixationTube"); - TGeoBBox* fixationToBar = new TGeoBBox(kCarbonEarsXdim / 2. + delatX, kCarbonEarsYdim / 2., kCarbonEarsZdim / 2.); - fixationToBar->SetName("fixationToBar"); - - TGeoTranslation* transBP3 = - new TGeoTranslation("transBP3", kFixationCarbonCollarRmax + kCarbonEarsXdim / 2. - delatX, kCarbonEarsYdim, 0.); - transBP3->RegisterYourself(); - TGeoTranslation* transBP4 = - new TGeoTranslation("transBP4", kFixationCarbonCollarRmax + kCarbonEarsXdim / 2. - delatX, -kCarbonEarsYdim, 0.); - transBP4->RegisterYourself(); - TGeoCompositeShape* fixationToWing = - new TGeoCompositeShape("fixationToWing", "fixationTube+fixationToBar:transBP3+fixationToBar:transBP4"); - - TGeoVolume* fixationToWingVol = new TGeoVolume("fixationToWing", fixationToWing, kMedCarbonFiber); - fixationToWingVol->SetLineColor(kGray + 2); - - fixationToWings->AddNode(fixationToWingVol, 1, new TGeoTranslation(-kSupportXdim, 0, 0)); - fixationToWings->AddNode(fixationToWingVol, 2, - new TGeoCombiTrans(+kSupportXdim, 0, 0, new TGeoRotation("rot", 0., 0., 180.))); - - beamPipeSupport->AddNode(fixationToWings, 1); - - // Fixation to pipe - + //======================= Fixation to pipe ======================== TGeoVolumeAssembly* fixationToPipe = new TGeoVolumeAssembly("fixationToPipe"); - - TGeoTubeSeg* pipeSupportTubeCarbon = - new TGeoTubeSeg(kBeampipeCarbonCollarRmin, kBeampipeCarbonCollarRmax, kFixationCarbonCollarDZ / 2., 0., 180.); + TGeoTube* pipeSupportTubeCarbon = + new TGeoTube(kBeampipeCarbonCollarRmin, kBeampipeCarbonCollarRmax, kFixationCarbonCollarDZ / 2.); pipeSupportTubeCarbon->SetName("pipeSupportTubeCarbon"); - - TGeoBBox* fixationTubeToBar = new TGeoBBox(kCarbonEarsXdim / 2. + delatX, kCarbonEarsYdim / 2., kCarbonEarsZdim / 2.); - fixationTubeToBar->SetName("fixationTubeToBar"); - TGeoBBox* hole = - new TGeoBBox((kBeampipeCarbonCollarRmax - kVespelRmin) / 2., kCarbonEarsYdim / 2., kCarbonEarsZdim / 2. + 1e-3); - hole->SetName("hole"); - - TGeoTranslation* transBP5 = - new TGeoTranslation("transBP5", kBeampipeCarbonCollarRmax + kCarbonEarsXdim / 2. - delatX, kCarbonEarsYdim, 0.); - transBP5->RegisterYourself(); - TGeoTranslation* transBP6 = - new TGeoTranslation("transBP6", -(kBeampipeCarbonCollarRmax + kCarbonEarsXdim / 2. - delatX), kCarbonEarsYdim, 0.); - transBP6->RegisterYourself(); - TGeoTranslation* transBP7 = new TGeoTranslation("transBP7", (kBeampipeCarbonCollarRmax + kVespelRmin) / 2., 0., 0.); - transBP7->RegisterYourself(); - TGeoTranslation* transBP8 = - new TGeoTranslation("transBP8", -((kBeampipeCarbonCollarRmax + kVespelRmin) / 2.), 0., 0.); - transBP8->RegisterYourself(); TGeoCompositeShape* halfFixationToPipe = new TGeoCompositeShape( "halfFixationToPipe", - "(pipeSupportTubeCarbon-hole:transBP7-hole:transBP8)+fixationTubeToBar:transBP5+fixationTubeToBar:transBP6"); - - TGeoVolume* halfFixationToPipeVol = new TGeoVolume("halfFixationToPipe", halfFixationToPipe, kMedCarbonFiber); - halfFixationToPipeVol->SetLineColor(kRed + 2); - - fixationToPipe->AddNode(halfFixationToPipeVol, 1); - fixationToPipe->AddNode(halfFixationToPipeVol, 2, new TGeoCombiTrans(0, 0, 0, new TGeoRotation("rot", 0., 0., 180.))); - + "pipeSupportTubeCarbon"); + TGeoVolume* FixationToPipeVol = new TGeoVolume("FixationToPipe", pipeSupportTubeCarbon, kMedCarbonFiber); + FixationToPipeVol->SetLineColor(kGray + 2); + fixationToPipe->AddNode(FixationToPipeVol, 1); beamPipeSupport->AddNode(fixationToPipe, 1); + //================================================================== - // Beam Pipe Ring - + //================ Beam Pipe Ring ================= TGeoVolumeAssembly* beamPipeRing = new TGeoVolumeAssembly("beamPipeRing"); - TGeoTube* beamPipeRingCarbon = new TGeoTube(kVespelRmax, kBeampipeCarbonCollarRmin, kBeamPipeRingZdim / 2.); TGeoVolume* beamPipeRingCarbonVol = new TGeoVolume("beamPipeRingCarbon", beamPipeRingCarbon, kMedCarbonFiber); - beamPipeRingCarbonVol->SetLineColor(kGreen + 2); + beamPipeRingCarbonVol->SetLineColor(kGray + 2); beamPipeRing->AddNode(beamPipeRingCarbonVol, 1, new TGeoTranslation(0., 0, (kBeamPipeRingZdim - kFixationCarbonCollarDZ) / 2.)); - - TGeoTube* beamPipeRingVespel = new TGeoTube(kVespelRmin, kVespelRmax, kBeamPipeRingZdim / 2.); + TGeoTube* beamPipeRingVespel = new TGeoTube(kVespelRmin, kVespelRmax, (kBeamPipeRingZdim + 0.4) / 2.); TGeoVolume* beamPipeRingVespelVol = new TGeoVolume("beamPipeRingVespel", beamPipeRingVespel, kMedPolyimide); - beamPipeRingVespelVol->SetLineColor(kGreen + 4); + beamPipeRingVespelVol->SetLineColor(kGreen + 2); beamPipeRing->AddNode(beamPipeRingVespelVol, 1, new TGeoTranslation(0., 0, (kBeamPipeRingZdim - kFixationCarbonCollarDZ) / 2.)); - beamPipeSupport->AddNode(beamPipeRing, 1); - beamPipeSupport->SetVisibility(0); + beamPipeSupport->SetVisibility(1); + beamPipeSupport->IsVisible(); + //================================================== + + // Wings + //TGeoVolumeAssembly* Wing = new TGeoVolumeAssembly("Wing"); not yet, be patient... barrel->AddNode(beamPipeSupport, 1, new TGeoTranslation(0., 30, kBeamPipesupportZpos + kFixationCarbonCollarDZ / 2.)); @@ -2580,12 +2605,10 @@ void Pipe::createMaterials() Float_t aAlBe[2] = {26.98, 9.01}; // al=2.702 be=1.8477 Float_t zAlBe[2] = {13.00, 4.00}; Float_t wAlBe[2] = {0.4, 0.6}; - // // Polyamid Float_t aPA[4] = {16., 14., 12., 1.}; Float_t zPA[4] = {8., 7., 6., 1.}; Float_t wPA[4] = {1., 1., 6., 11.}; - // // Polyimide film Float_t aPI[4] = {16., 14., 12., 1.}; Float_t zPI[4] = {8., 7., 6., 1.}; @@ -2594,15 +2617,12 @@ void Pipe::createMaterials() Float_t aRohacell[4] = {16., 14., 12., 1.}; Float_t zRohacell[4] = {8., 7., 6., 1.}; Float_t wRohacell[4] = {2., 1., 9., 13.}; - // // Air - // Float_t aAir[4] = {12.0107, 14.0067, 15.9994, 39.948}; Float_t zAir[4] = {6., 7., 8., 18.}; Float_t wAir[4] = {0.000124, 0.755267, 0.231781, 0.012827}; Float_t dAir = 1.20479E-3; Float_t dAir1 = 1.20479E-11; - // // Insulation powder // Si O Ti Al Float_t ains[4] = {28.0855, 15.9994, 47.867, 26.982}; @@ -2723,6 +2743,10 @@ void Pipe::createMaterials() // Rohacell matmgr.Mixture("PIPE", 67, "Rohacell$", aRohacell, zRohacell, 0.03, -4, wRohacell); matmgr.Medium("PIPE", 67, "ROHACELL", 67, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin); + + // Titanium + matmgr.Material("PIPE", 22, "Titanium", 47.867, 22, 4.54, 3.560, 27.80); + matmgr.Medium("PIPE", 22, "TITANIUM", 22, 0, isxfld, sxmgmx, tmaxfd, stemax, deemax, epsil, stmin); } TGeoPcon* Pipe::MakeMotherFromTemplate(const TGeoPcon* shape, Int_t imin, Int_t imax, Float_t r0, Int_t nz) From 6a0f21b5618f1408422ac020075b1464d6c1ebd6 Mon Sep 17 00:00:00 2001 From: jgrosseo Date: Fri, 23 Jul 2021 14:08:53 +0200 Subject: [PATCH 258/314] Self index columns (#6688) Self indexing columns development by @aalkin Changes of isPrimaryParticle everywhere --- Analysis/ALICE3/src/alice3-lutmaker.cxx | 4 +- .../ALICE3/src/alice3-qa-singleparticle.cxx | 12 +- Analysis/ALICE3/src/pidFTOFqa.cxx | 2 +- Analysis/ALICE3/src/pidRICHqa.cxx | 4 +- Analysis/Core/include/AnalysisCore/MC.h | 38 +++-- .../Core/include/AnalysisCore/RecoDecay.h | 18 +-- Analysis/Tasks/PID/qaTOFMC.cxx | 8 +- Analysis/Tasks/PWGGA/gammaConversionsmc.cxx | 6 +- Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx | 26 ++-- .../Tasks/PWGHF/HFCorrelatorDplusDminus.cxx | 30 ++-- Analysis/Tasks/PWGHF/HFMCValidation.cxx | 6 +- .../Tasks/PWGLF/NucleiSpectraEfficiency.cxx | 2 +- Analysis/Tasks/PWGLF/mcspectraefficiency.cxx | 15 +- Analysis/Tasks/PWGLF/raacharged.cxx | 9 +- Analysis/Tasks/PWGLF/trackchecks.cxx | 10 +- Analysis/Tasks/PWGPP/qaEfficiency.cxx | 2 +- Analysis/Tasks/PWGPP/qaEventTrack.cxx | 6 +- Analysis/Tutorials/src/mcHistograms.cxx | 16 +-- .../AODProducerWorkflowSpec.h | 8 +- Framework/Core/include/Framework/ASoA.h | 131 +++++++++++++++--- .../include/Framework/AnalysisDataModel.h | 45 +++--- .../Core/include/Framework/AnalysisHelpers.h | 15 ++ .../Core/include/Framework/AnalysisManagers.h | 13 ++ .../Core/include/Framework/AnalysisTask.h | 16 +++ Framework/Core/test/test_ASoA.cxx | 20 +++ 25 files changed, 315 insertions(+), 147 deletions(-) diff --git a/Analysis/ALICE3/src/alice3-lutmaker.cxx b/Analysis/ALICE3/src/alice3-lutmaker.cxx index cadd00498a706..fa512799f0338 100644 --- a/Analysis/ALICE3/src/alice3-lutmaker.cxx +++ b/Analysis/ALICE3/src/alice3-lutmaker.cxx @@ -103,7 +103,7 @@ struct Alice3LutMaker { if (mcParticle.pdgCode() != pdg) { continue; } - if (selPrim.value && !MC::isPhysicalPrimary(mcParticles, mcParticle)) { // Requiring is physical primary + if (selPrim.value && !MC::isPhysicalPrimary(mcParticle)) { // Requiring is physical primary continue; } @@ -133,7 +133,7 @@ struct Alice3LutMaker { if (mcParticle.pdgCode() != pdg) { continue; } - if (!MC::isPhysicalPrimary(mcParticles, mcParticle)) { // Requiring is physical primary + if (!MC::isPhysicalPrimary(mcParticle)) { // Requiring is physical primary continue; } diff --git a/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx b/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx index 8f795ce1a0813..268c4d7e35e3d 100644 --- a/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx +++ b/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx @@ -94,10 +94,10 @@ struct Alice3SingleParticle { for (const auto& track : tracks) { const auto mcParticle = track.mcParticle(); if (!IsStable) { - if (mcParticle.mother0() < 0) { + if (!mcParticle.has_mother0()) { continue; } - auto mother = mcParticles.iteratorAt(mcParticle.mother0()); + auto mother = mcParticle.mother0_as(); const auto ParticleIsInteresting = std::find(ParticlesOfInterest.begin(), ParticlesOfInterest.end(), mother.globalIndex()) != ParticlesOfInterest.end(); if (!ParticleIsInteresting) { continue; @@ -111,20 +111,20 @@ struct Alice3SingleParticle { } histos.fill(HIST("trackPt"), track.pt() * charge); histos.fill(HIST("trackEta"), track.eta()); - if (mcParticle.mother0() < 0) { + if (!mcParticle.has_mother0()) { if (doPrint) { LOG(INFO) << "Track " << track.globalIndex() << " is a " << mcParticle.pdgCode(); } continue; } - auto mother = mcParticles.iteratorAt(mcParticle.mother0()); - if (MC::isPhysicalPrimary(mcParticles, mcParticle)) { + auto mother = mcParticle.mother0_as(); + if (MC::isPhysicalPrimary(mcParticle)) { histos.get(HIST("primaries"))->Fill(Form("%i", mother.pdgCode()), 1.f); } else { histos.get(HIST("secondaries"))->Fill(Form("%i", mother.pdgCode()), 1.f); } if (doPrint) { - LOG(INFO) << "Track " << track.globalIndex() << " is a " << mcParticle.pdgCode() << " and comes from a " << mother.pdgCode() << " and is " << (MC::isPhysicalPrimary(mcParticles, mcParticle) ? "" : "not") << " a primary"; + LOG(INFO) << "Track " << track.globalIndex() << " is a " << mcParticle.pdgCode() << " and comes from a " << mother.pdgCode() << " and is " << (MC::isPhysicalPrimary(mcParticle) ? "" : "not") << " a primary"; } } } diff --git a/Analysis/ALICE3/src/pidFTOFqa.cxx b/Analysis/ALICE3/src/pidFTOFqa.cxx index 096d87913eb19..4914de807c28a 100644 --- a/Analysis/ALICE3/src/pidFTOFqa.cxx +++ b/Analysis/ALICE3/src/pidFTOFqa.cxx @@ -152,7 +152,7 @@ struct ftofPidQaMC { if (pdgCode != 0 && abs(mcParticle.pdgCode()) != pdgCode) { continue; } - if (useOnlyPhysicsPrimary == 1 && !MC::isPhysicalPrimary(mcParticles, mcParticle)) { // Selecting primaries + if (useOnlyPhysicsPrimary == 1 && !MC::isPhysicalPrimary(mcParticle)) { // Selecting primaries histos.fill(HIST("p/Sec"), track.p()); continue; } diff --git a/Analysis/ALICE3/src/pidRICHqa.cxx b/Analysis/ALICE3/src/pidRICHqa.cxx index 4e5e3a3218a4c..5cb700fd302ad 100644 --- a/Analysis/ALICE3/src/pidRICHqa.cxx +++ b/Analysis/ALICE3/src/pidRICHqa.cxx @@ -167,7 +167,7 @@ struct richPidQaMc { if (abs(particle.pdgCode()) == PDGs[pidIndex]) { histos.fill(HIST(hnsigmaMC[pidIndex]), track.pt(), nsigma); - if (MC::isPhysicalPrimary(mcParticles, particle)) { // Selecting primaries + if (MC::isPhysicalPrimary(particle)) { // Selecting primaries histos.fill(HIST(hnsigmaMCprm[pidIndex]), track.pt(), nsigma); } else { histos.fill(HIST(hnsigmaMCsec[pidIndex]), track.pt(), nsigma); @@ -250,7 +250,7 @@ struct richPidQaMc { } histos.fill(HIST(hnsigma[pid_type]), track.pt(), nsigma); histos.fill(HIST(hdelta[pid_type]), track.p(), delta); - if (MC::isPhysicalPrimary(mcParticles, mcParticle)) { // Selecting primaries + if (MC::isPhysicalPrimary(mcParticle)) { // Selecting primaries histos.fill(HIST(hnsigmaprm[pid_type]), track.pt(), nsigma); histos.fill(HIST("p/Prim"), track.p()); } else { diff --git a/Analysis/Core/include/AnalysisCore/MC.h b/Analysis/Core/include/AnalysisCore/MC.h index 16122faf65238..54e0c17cef813 100644 --- a/Analysis/Core/include/AnalysisCore/MC.h +++ b/Analysis/Core/include/AnalysisCore/MC.h @@ -60,8 +60,8 @@ bool isStable(int pdg) } // Ported from AliRoot AliStack::IsPhysicalPrimary -template -bool isPhysicalPrimary(TMCParticles& mcParticles, TMCParticle const& particle) +template +bool isPhysicalPrimary(Particle& particle) { // Test if a particle is a physical primary according to the following definition: // Particles produced in the collision including products of strong and @@ -77,53 +77,61 @@ bool isPhysicalPrimary(TMCParticles& mcParticles, TMCParticle const& particle) // Solution for K0L decayed by Pythia6 // -> if ((ist > 1) && (pdg != 130) && particle.producedByGenerator()) { + LOGF(debug, "isPhysicalPrimary F1"); return false; } if ((ist > 1) && !particle.producedByGenerator()) { + LOGF(debug, "isPhysicalPrimary F2"); return false; } // <- if (!isStable(pdg)) { + LOGF(debug, "isPhysicalPrimary F3"); return false; } if (particle.producedByGenerator()) { // Solution for K0L decayed by Pythia6 // -> - if (particle.mother0() != -1) { - auto mother = mcParticles.iteratorAt(particle.mother0()); + if (particle.has_mother0()) { + auto mother = particle.template mother0_as(); if (std::abs(mother.pdgCode()) == 130) { + LOGF(debug, "isPhysicalPrimary F4"); return false; } } // <- // check for direct photon in parton shower // -> - if (pdg == 22 && particle.daughter0() != -1) { - LOGF(debug, "D %d", particle.daughter0()); - auto daughter = mcParticles.iteratorAt(particle.daughter0()); + if (pdg == 22 && particle.has_daughter0()) { + LOGF(debug, "D %d", particle.daughter0Id()); + auto daughter = particle.template daughter0_as(); if (daughter.pdgCode() == 22) { + LOGF(debug, "isPhysicalPrimary F5"); return false; } } // <- + LOGF(debug, "isPhysicalPrimary T1"); return true; } // Particle produced during transport - LOGF(debug, "M0 %d %d", particle.producedByGenerator(), particle.mother0()); - auto mother = mcParticles.iteratorAt(particle.mother0()); + LOGF(debug, "M0 %d %d", particle.producedByGenerator(), particle.mother0Id()); + auto mother = particle.template mother0_as(); int mpdg = std::abs(mother.pdgCode()); // Check for Sigma0 if ((mpdg == 3212) && mother.producedByGenerator()) { + LOGF(debug, "isPhysicalPrimary T2"); return true; } // Check if it comes from a pi0 decay if ((mpdg == kPi0) && mother.producedByGenerator()) { + LOGF(debug, "isPhysicalPrimary T3"); return true; } @@ -132,27 +140,31 @@ bool isPhysicalPrimary(TMCParticles& mcParticles, TMCParticle const& particle) // Light hadron if (mfl < 4) { + LOGF(debug, "isPhysicalPrimary F6"); return false; } // Heavy flavor hadron produced by generator if (mother.producedByGenerator()) { + LOGF(debug, "isPhysicalPrimary T4"); return true; } // To be sure that heavy flavor has not been produced in a secondary interaction // Loop back to the generated mother - LOGF(debug, "M0 %d %d", mother.producedByGenerator(), mother.mother0()); - while (mother.mother0() != -1 && !mother.producedByGenerator()) { - mother = mcParticles.iteratorAt(mother.mother0()); - LOGF(debug, "M+ %d %d", mother.producedByGenerator(), mother.mother0()); + LOGF(debug, "M0 %d %d", mother.producedByGenerator(), mother.mother0Id()); + while (mother.has_mother0() && !mother.producedByGenerator()) { + mother = mother.template mother0_as(); + LOGF(debug, "M+ %d %d", mother.producedByGenerator(), mother.mother0Id()); mpdg = std::abs(mother.pdgCode()); mfl = int(mpdg / std::pow(10, int(std::log10(mpdg)))); } if (mfl < 4) { + LOGF(debug, "isPhysicalPrimary F7"); return false; } else { + LOGF(debug, "isPhysicalPrimary T5"); return true; } } diff --git a/Analysis/Core/include/AnalysisCore/RecoDecay.h b/Analysis/Core/include/AnalysisCore/RecoDecay.h index b5b5ea6668bb8..957dd66ee4a2c 100644 --- a/Analysis/Core/include/AnalysisCore/RecoDecay.h +++ b/Analysis/Core/include/AnalysisCore/RecoDecay.h @@ -554,11 +554,11 @@ class RecoDecay if (sign) { *sign = sgn; } - while (particleMother.mother0() > -1) { + while (particleMother.has_mother0()) { if (depthMax > -1 && -stage >= depthMax) { // Maximum depth has been reached. return -1; } - auto indexMotherTmp = particleMother.mother0(); + auto indexMotherTmp = particleMother.mother0Id(); particleMother = particlesMC.iteratorAt(indexMotherTmp); // Check mother's PDG code. auto PDGParticleIMother = particleMother.pdgCode(); // PDG code of the mother @@ -609,8 +609,8 @@ class RecoDecay isFinal = true; } // Get the range of daughter indices. - int indexDaughterFirst = particle.daughter0(); - int indexDaughterLast = particle.daughter1(); + int indexDaughterFirst = particle.daughter0Id(); + int indexDaughterLast = particle.daughter1Id(); // Check whether there are any daughters. if (!isFinal && indexDaughterFirst <= -1 && indexDaughterLast <= -1) { // If the original particle has no daughters, we do nothing and exit. @@ -709,8 +709,8 @@ class RecoDecay } //Printf("MC Rec: Good mother: %d", indexMother); auto particleMother = particlesMC.iteratorAt(indexMother); - int indexDaughterFirst = particleMother.daughter0(); // index of the first direct daughter - int indexDaughterLast = particleMother.daughter1(); // index of the last direct daughter + int indexDaughterFirst = particleMother.daughter0Id(); // index of the first direct daughter + int indexDaughterLast = particleMother.daughter1Id(); // index of the last direct daughter // Check the daughter indices. if (indexDaughterFirst <= -1 && indexDaughterLast <= -1) { //Printf("MC Rec: Rejected: bad daughter index range: %d-%d", indexDaughterFirst, indexDaughterLast); @@ -828,9 +828,9 @@ class RecoDecay // Check the PDG codes of the decay products. if (N > 0) { //Printf("MC Gen: Checking %d daughters", N); - std::vector arrAllDaughtersIndex; // vector of indices of all daughters - int indexDaughterFirst = candidate.daughter0(); // index of the first direct daughter - int indexDaughterLast = candidate.daughter1(); // index of the last direct daughter + std::vector arrAllDaughtersIndex; // vector of indices of all daughters + int indexDaughterFirst = candidate.daughter0Id(); // index of the first direct daughter + int indexDaughterLast = candidate.daughter1Id(); // index of the last direct daughter // Check the daughter indices. if (indexDaughterFirst <= -1 && indexDaughterLast <= -1) { //Printf("MC Gen: Rejected: bad daughter index range: %d-%d", indexDaughterFirst, indexDaughterLast); diff --git a/Analysis/Tasks/PID/qaTOFMC.cxx b/Analysis/Tasks/PID/qaTOFMC.cxx index 5c9f3b3448cac..8d4ba5314c95f 100644 --- a/Analysis/Tasks/PID/qaTOFMC.cxx +++ b/Analysis/Tasks/PID/qaTOFMC.cxx @@ -131,10 +131,11 @@ struct pidTOFTaskQA { template void fillNsigma(const T& track, const TT& mcParticles, const float& nsigma) { - if (abs(track.mcParticle().pdgCode()) == PDGs[pidIndex]) { + const auto particle = track.mcParticle(); + if (abs(particle.pdgCode()) == PDGs[pidIndex]) { histos.fill(HIST(hnsigmaMC[pidIndex]), track.pt(), nsigma); - if (MC::isPhysicalPrimary(mcParticles, track.mcParticle())) { // Selecting primaries + if (MC::isPhysicalPrimary(particle)) { // Selecting primaries histos.fill(HIST(hnsigmaMCprm[pidIndex]), track.pt(), nsigma); } else { histos.fill(HIST(hnsigmaMCsec[pidIndex]), track.pt(), nsigma); @@ -188,7 +189,8 @@ struct pidTOFTaskQA { // Fill for all histos.fill(HIST(hnsigma[pid_type]), t.pt(), nsigma); histos.fill(HIST("event/tofbeta"), t.p(), t.beta()); - if (MC::isPhysicalPrimary(mcParticles, t.mcParticle())) { // Selecting primaries + const auto particle = t.mcParticle(); + if (MC::isPhysicalPrimary(particle)) { // Selecting primaries histos.fill(HIST(hnsigmaprm[pid_type]), t.pt(), nsigma); histos.fill(HIST("event/tofbetaPrm"), t.p(), t.beta()); } else { diff --git a/Analysis/Tasks/PWGGA/gammaConversionsmc.cxx b/Analysis/Tasks/PWGGA/gammaConversionsmc.cxx index a624baa7d15c1..2b18d9cc18298 100644 --- a/Analysis/Tasks/PWGGA/gammaConversionsmc.cxx +++ b/Analysis/Tasks/PWGGA/gammaConversionsmc.cxx @@ -189,9 +189,9 @@ struct GammaConversionsmc { auto lTrackNeg = theV0.template negTrack_as(); //negative daughter // todo: verify it is enough to check only mother0 being equal - if (lTrackPos.mcParticle().mother0() > -1 && - lTrackPos.mcParticle().mother0() == lTrackNeg.mcParticle().mother0()) { - auto lMother = theMcParticles.iteratorAt(lTrackPos.mcParticle().mother0()); + if (lTrackPos.mcParticle().has_mother0() && + lTrackPos.mcParticle().mother0Id() == lTrackNeg.mcParticle().mother0Id()) { + auto lMother = lTrackPos.mcParticle().template mother0_as(); if (lMother.pdgCode() == 22) { diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx index f2e63629da705..fa211f40a13fb 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorD0D0bar.cxx @@ -56,6 +56,8 @@ const double incrementEtaCut = 0.1; const double incrementPtThreshold = 0.5; const double epsilon = 1E-5; +using MCParticlesPlus = soa::Join; + /// D0-D0bar correlation pair builder - for real data and data-like analysis (i.e. reco-level w/o matching request via MC truth) struct HfCorrelatorD0D0bar { Produces entryD0D0barPair; @@ -343,7 +345,7 @@ struct HfCorrelatorD0D0barMcGen { registry.add("hcountD0triggersMCGen", "D0 trigger particles - MC gen;;N of trigger D0", {HistType::kTH2F, {{1, -0.5, 0.5}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); } - void process(aod::McCollision const& mccollision, soa::Join const& particlesMC) + void process(aod::McCollision const& mccollision, MCParticlesPlus const& particlesMC) { int counterD0D0bar = 0; registry.fill(HIST("hMCEvtCount"), 0); @@ -402,10 +404,10 @@ struct HfCorrelatorD0D0barMcGen { registry.fill(HIST("hDDbarVsEtaCut"), etaCut - epsilon, ptCut + epsilon); } if (rightDecayChannels) { //fill with D and Dbar daughter particls acceptance checks - double etaCandidate1Daughter1 = particlesMC.iteratorAt(particle1.daughter0()).eta(); - double etaCandidate1Daughter2 = particlesMC.iteratorAt(particle1.daughter1()).eta(); - double etaCandidate2Daughter1 = particlesMC.iteratorAt(particle2.daughter0()).eta(); - double etaCandidate2Daughter2 = particlesMC.iteratorAt(particle2.daughter1()).eta(); + double etaCandidate1Daughter1 = particle1.daughter0_as().eta(); + double etaCandidate1Daughter2 = particle1.daughter1_as().eta(); + double etaCandidate2Daughter1 = particle2.daughter0_as().eta(); + double etaCandidate2Daughter2 = particle2.daughter1_as().eta(); if (std::abs(etaCandidate1Daughter1) < etaCut && std::abs(etaCandidate1Daughter2) < etaCut && std::abs(etaCandidate2Daughter1) < etaCut && std::abs(etaCandidate2Daughter2) < etaCut && particle1.pt() > ptCut && particle2.pt() > ptCut) { @@ -642,7 +644,7 @@ struct HfCorrelatorD0D0barMcGenLs { registry.add("hcountD0triggersMCGen", "D0 trigger particles - MC gen;;N of trigger D0", {HistType::kTH2F, {{1, -0.5, 0.5}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); } - void process(aod::McCollision const& mccollision, soa::Join const& particlesMC) + void process(aod::McCollision const& mccollision, MCParticlesPlus const& particlesMC) { int counterD0D0bar = 0; registry.fill(HIST("hMCEvtCount"), 0); @@ -718,7 +720,7 @@ struct HfCorrelatorCCbarMcGen { registry.add("hcountCtriggersMCGen", "c trigger particles - MC gen;;N of trigger c quark", {HistType::kTH2F, {{1, -0.5, 0.5}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); } - void process(aod::McCollision const& mccollision, soa::Join const& particlesMC) + void process(aod::McCollision const& mccollision, MCParticlesPlus const& particlesMC) { registry.fill(HIST("hMCEvtCount"), 0); int counterccbar = 0, counterccbarPreEtasel = 0; @@ -728,7 +730,7 @@ struct HfCorrelatorCCbarMcGen { if (std::abs(particle1.pdgCode()) != PDG_t::kCharm) { //search c or cbar particles continue; } - int partMothPDG = particlesMC.iteratorAt(particle1.mother0()).pdgCode(); + int partMothPDG = particle1.mother0_as().pdgCode(); //check whether mothers of quark c/cbar are still '4'/'-4' particles - in that case the c/cbar quark comes from its own fragmentation, skip it if (partMothPDG == particle1.pdgCode()) { continue; @@ -765,7 +767,7 @@ struct HfCorrelatorCCbarMcGen { continue; } //check whether mothers of quark cbar (from associated loop) are still '-4' particles - in that case the cbar quark comes from its own fragmentation, skip it - if (particlesMC.iteratorAt(particle2.mother0()).pdgCode() == PDG_t::kCharmBar) { + if (particle2.mother0_as().pdgCode() == PDG_t::kCharmBar) { continue; } entryccbarPair(getDeltaPhi(particle2.phi(), particle1.phi()), @@ -803,7 +805,7 @@ struct HfCorrelatorCCbarMcGenLs { registry.add("hcountCtriggersMCGen", "c trigger particles - MC gen;;N of trigger c quark", {HistType::kTH2F, {{1, -0.5, 0.5}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); } - void process(aod::McCollision const& mccollision, soa::Join const& particlesMC) + void process(aod::McCollision const& mccollision, MCParticlesPlus const& particlesMC) { registry.fill(HIST("hMCEvtCount"), 0); int counterccbar = 0, counterccbarPreEtasel = 0; @@ -813,7 +815,7 @@ struct HfCorrelatorCCbarMcGenLs { if (std::abs(particle1.pdgCode()) != PDG_t::kCharm) { //search c or cbar particles continue; } - int partMothPDG = particlesMC.iteratorAt(particle1.mother0()).pdgCode(); + int partMothPDG = particle1.mother0_as().pdgCode(); //check whether mothers of quark c/cbar are still '4'/'-4' particles - in that case the c/cbar quark comes from its own fragmentation, skip it if (partMothPDG == particle1.pdgCode()) { continue; @@ -847,7 +849,7 @@ struct HfCorrelatorCCbarMcGenLs { } if (particle2.pdgCode() == particle1.pdgCode()) { //check whether mothers of quark cbar (from associated loop) are still '-4' particles - in that case the cbar quark comes from its own fragmentation, skip it - if (particlesMC.iteratorAt(particle2.mother0()).pdgCode() == particle2.pdgCode()) { + if (particle2.mother0_as().pdgCode() == particle2.pdgCode()) { continue; } //Excluding self-correlations diff --git a/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx b/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx index d6dbf0ad40c61..7ced370440916 100644 --- a/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx +++ b/Analysis/Tasks/PWGHF/HFCorrelatorDplusDminus.cxx @@ -299,6 +299,8 @@ struct HfCorrelatorDplusDminusMcRec { } }; +using MCParticlesPlus = soa::Join; + /// Dplus-Dminus correlation pair builder - for MC gen-level analysis (no filter/selection, only true signal) struct HfCorrelatorDplusDminusMcGen { @@ -324,7 +326,7 @@ struct HfCorrelatorDplusDminusMcGen { registry.add("hcountDplustriggersMCGen", "Dplus trigger particles - MC gen;;N of trigger D0", {HistType::kTH2F, {{1, -0.5, 0.5}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); } - void process(aod::McCollision const& mccollision, soa::Join const& particlesMC) + void process(aod::McCollision const& mccollision, MCParticlesPlus const& particlesMC) { int counterDplusDminus = 0; registry.fill(HIST("hMCEvtCount"), 0); @@ -383,12 +385,12 @@ struct HfCorrelatorDplusDminusMcGen { registry.fill(HIST("hDDbarVsEtaCut"), etaCut - epsilon, ptCut + epsilon); } if (rightDecayChannels) { //fill with D and Dbar daughter particls acceptance checks - double etaCandidate1Daughter1 = particlesMC.iteratorAt(particle1.daughter0()).eta(); - double etaCandidate1Daughter2 = particlesMC.iteratorAt(particle1.daughter0() + 1).eta(); - double etaCandidate1Daughter3 = particlesMC.iteratorAt(particle1.daughter0() + 2).eta(); - double etaCandidate2Daughter1 = particlesMC.iteratorAt(particle2.daughter0()).eta(); - double etaCandidate2Daughter2 = particlesMC.iteratorAt(particle2.daughter0() + 1).eta(); - double etaCandidate2Daughter3 = particlesMC.iteratorAt(particle2.daughter0() + 2).eta(); + double etaCandidate1Daughter1 = particle1.daughter0_as().eta(); + double etaCandidate1Daughter2 = (particle1.daughter0_as() + 1).eta(); + double etaCandidate1Daughter3 = (particle1.daughter0_as() + 2).eta(); + double etaCandidate2Daughter1 = particle2.daughter0_as().eta(); + double etaCandidate2Daughter2 = (particle2.daughter0_as() + 1).eta(); + double etaCandidate2Daughter3 = (particle2.daughter0_as() + 2).eta(); if (std::abs(etaCandidate1Daughter1) < etaCut && std::abs(etaCandidate1Daughter2) < etaCut && std::abs(etaCandidate1Daughter3) < etaCut && std::abs(etaCandidate2Daughter1) < etaCut && std::abs(etaCandidate2Daughter2) < etaCut && std::abs(etaCandidate2Daughter3) < etaCut && particle1.pt() > ptCut && particle2.pt() > ptCut) { @@ -695,6 +697,8 @@ struct HfCorrelatorDplusDminusMcGenLs { } }; +using MCParticlesPlus2 = soa::Join; + /// c-cbar correlator table builder - for MC gen-level analysis struct HfCorrelatorCCbarMcGen { @@ -719,7 +723,7 @@ struct HfCorrelatorCCbarMcGen { registry.add("hcountCtriggersMCGen", "c trigger particles - MC gen;;N of trigger c quark", {HistType::kTH2F, {{1, -0.5, 0.5}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); } - void process(aod::McCollision const& mccollision, soa::Join const& particlesMC) + void process(aod::McCollision const& mccollision, MCParticlesPlus2 const& particlesMC) { registry.fill(HIST("hMCEvtCount"), 0); int counterccbar = 0, counterccbarPreEtasel = 0; @@ -729,7 +733,7 @@ struct HfCorrelatorCCbarMcGen { if (std::abs(particle1.pdgCode()) != PDG_t::kCharm) { //search c or cbar particles continue; } - int partMothPDG = particlesMC.iteratorAt(particle1.mother0()).pdgCode(); + int partMothPDG = particle1.mother0_as().pdgCode(); //check whether mothers of quark c/cbar are still '4'/'-4' particles - in that case the c/cbar quark comes from its own fragmentation, skip it if (partMothPDG == particle1.pdgCode()) { continue; @@ -766,7 +770,7 @@ struct HfCorrelatorCCbarMcGen { continue; } //check whether mothers of quark cbar (from associated loop) are still '-4' particles - in that case the cbar quark comes from its own fragmentation, skip it - if (particlesMC.iteratorAt(particle2.mother0()).pdgCode() == PDG_t::kCharmBar) { + if (particle2.mother0_as().pdgCode() == PDG_t::kCharmBar) { continue; } entryccbarPair(getDeltaPhi(particle2.phi(), particle1.phi()), @@ -804,7 +808,7 @@ struct HfCorrelatorCCbarMcGenLs { registry.add("hcountCtriggersMCGen", "c trigger particles - MC gen;;N of trigger c quark", {HistType::kTH2F, {{1, -0.5, 0.5}, {(std::vector)bins, "#it{p}_{T} (GeV/#it{c})"}}}); } - void process(aod::McCollision const& mccollision, soa::Join const& particlesMC) + void process(aod::McCollision const& mccollision, MCParticlesPlus2 const& particlesMC) { registry.fill(HIST("hMCEvtCount"), 0); int counterccbar = 0, counterccbarPreEtasel = 0; @@ -814,7 +818,7 @@ struct HfCorrelatorCCbarMcGenLs { if (std::abs(particle1.pdgCode()) != PDG_t::kCharm) { //search c or cbar particles continue; } - int partMothPDG = particlesMC.iteratorAt(particle1.mother0()).pdgCode(); + int partMothPDG = particle1.mother0_as().pdgCode(); //check whether mothers of quark c/cbar are still '4'/'-4' particles - in that case the c/cbar quark comes from its own fragmentation, skip it if (partMothPDG == particle1.pdgCode()) { continue; @@ -848,7 +852,7 @@ struct HfCorrelatorCCbarMcGenLs { } if (particle2.pdgCode() == particle1.pdgCode()) { //check whether mothers of quark cbar (from associated loop) are still '-4' particles - in that case the cbar quark comes from its own fragmentation, skip it - if (particlesMC.iteratorAt(particle2.mother0()).pdgCode() == particle2.pdgCode()) { + if (particle2.mother0_as().pdgCode() == particle2.pdgCode()) { continue; } //Excluding self-correlations (in principle not possible due to the '<' condition, but could rounding break it?) diff --git a/Analysis/Tasks/PWGHF/HFMCValidation.cxx b/Analysis/Tasks/PWGHF/HFMCValidation.cxx index f698ae6ce3d66..a8f0d60f07f42 100644 --- a/Analysis/Tasks/PWGHF/HFMCValidation.cxx +++ b/Analysis/Tasks/PWGHF/HFMCValidation.cxx @@ -71,10 +71,10 @@ struct ValidationGenLevel { for (auto& particle : particlesMC) { int particlePdgCode = particle.pdgCode(); - if (particle.mother0() < 0) { + if (!particle.has_mother0()) { continue; } - auto mother = particlesMC.iteratorAt(particle.mother0()); + auto mother = particle.mother0_as(); if (particlePdgCode != mother.pdgCode()) { switch (particlePdgCode) { case kCharm: @@ -180,7 +180,7 @@ struct ValidationRecLevel { registry.fill(HIST("histPy"), candidate.py() - mother.py()); registry.fill(HIST("histPz"), candidate.pz() - mother.pz()); //Compare Secondary vertex and decay length with MC - auto daughter0 = particlesMC.iteratorAt(mother.daughter0()); + auto daughter0 = mother.daughter0_as(); double vertexDau[3] = {daughter0.vx(), daughter0.vy(), daughter0.vz()}; double vertexMoth[3] = {mother.vx(), mother.vy(), mother.vz()}; decayLength = RecoDecay::distance(vertexMoth, vertexDau); diff --git a/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx b/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx index 1ae0af8787f9c..19753e7b12643 100644 --- a/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx +++ b/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx @@ -79,7 +79,7 @@ struct NucleiSpectraEfficiencyGen { if (mcParticleGen.pdgCode() != -1000020030) { continue; } - if (!MC::isPhysicalPrimary(mcParticles, mcParticleGen)) { + if (!MC::isPhysicalPrimary(mcParticleGen)) { continue; } if (abs(mcParticleGen.y()) > 0.5) { diff --git a/Analysis/Tasks/PWGLF/mcspectraefficiency.cxx b/Analysis/Tasks/PWGLF/mcspectraefficiency.cxx index 61ba5440064f6..9a57ca982e40f 100644 --- a/Analysis/Tasks/PWGLF/mcspectraefficiency.cxx +++ b/Analysis/Tasks/PWGLF/mcspectraefficiency.cxx @@ -68,7 +68,7 @@ struct GeneratedTask { if (abs(mcParticle.eta()) > 0.8) { continue; } - if (isPhysicalPrimary(mcParticles, mcParticle)) { + if (isPhysicalPrimary(mcParticle)) { const auto pdg = Form("%i", mcParticle.pdgCode()); pdgH->Fill(pdg, 1); const float pdgbin = pdgH->GetXaxis()->GetBinCenter(pdgH->GetXaxis()->FindBin(pdg)); @@ -113,8 +113,9 @@ struct ReconstructedTask { { LOGF(info, "vtx-z (data) = %f | vtx-z (MC) = %f", collision.posZ(), collision.mcCollision().posZ()); for (auto& track : tracks) { - const auto pdg = Form("%i", track.mcParticle().pdgCode()); - if (!isPhysicalPrimary(mcParticles, track.mcParticle())) { + const auto particle = track.mcParticle(); + const auto pdg = Form("%i", particle.pdgCode()); + if (!isPhysicalPrimary(particle)) { pdgsecH->Fill(pdg, 1); const float pdgbinsec = pdgH->GetXaxis()->GetBinCenter(pdgsecH->GetXaxis()->FindBin(pdg)); dcaxysecH->Fill(track.dcaXY(), pdgbinsec); @@ -130,8 +131,8 @@ struct ReconstructedTask { dcaxyH->Fill(track.dcaXY(), pdgbin); dcazH->Fill(track.dcaZ(), pdgbin); - etaDiff->Fill(track.mcParticle().eta() - track.eta(), pdgbin); - auto delta = track.mcParticle().phi() - track.phi(); + etaDiff->Fill(particle.eta() - track.eta(), pdgbin); + auto delta = particle.phi() - track.phi(); if (delta > M_PI) { delta -= 2 * M_PI; } @@ -139,8 +140,8 @@ struct ReconstructedTask { delta += 2 * M_PI; } phiDiff->Fill(delta, pdgbin); - pDiff->Fill(sqrt(track.mcParticle().px() * track.mcParticle().px() + track.mcParticle().py() * track.mcParticle().py() + track.mcParticle().pz() * track.mcParticle().pz()) - track.p(), pdgbin); - ptDiff->Fill(track.mcParticle().pt() - track.pt(), pdgbin); + pDiff->Fill(sqrt(particle.px() * particle.px() + particle.py() * particle.py() + particle.pz() * particle.pz()) - track.p(), pdgbin); + ptDiff->Fill(particle.pt() - track.pt(), pdgbin); } } }; diff --git a/Analysis/Tasks/PWGLF/raacharged.cxx b/Analysis/Tasks/PWGLF/raacharged.cxx index ff45140956b5e..373991a40c5d7 100644 --- a/Analysis/Tasks/PWGLF/raacharged.cxx +++ b/Analysis/Tasks/PWGLF/raacharged.cxx @@ -178,14 +178,15 @@ struct raacharged { if (!isMC) { continue; } - if (MC::isPhysicalPrimary(mcParticles, track.mcParticle())) { + const auto particle = track.mcParticle(); + if (MC::isPhysicalPrimary(particle)) { mcInfoVal = 0.0; } else { mcInfoVal = 1.0; } - Double_t MCpt = track.mcParticle().pt(); - Double_t parType = (Double_t)WhichParticle(track.mcParticle().pdgCode()); + Double_t MCpt = particle.pt(); + Double_t parType = (Double_t)WhichParticle(particle.pdgCode()); Double_t MCcharge = (Double_t)track.sign(); Double_t MCvalues[4] = {MCpt, parType, mcInfoVal, MCcharge}; @@ -197,7 +198,7 @@ struct raacharged { if (abs(mcParticle.eta()) > 0.8) { continue; } - if (!MC::isPhysicalPrimary(mcParticles, mcParticle)) { + if (!MC::isPhysicalPrimary(mcParticle)) { continue; } diff --git a/Analysis/Tasks/PWGLF/trackchecks.cxx b/Analysis/Tasks/PWGLF/trackchecks.cxx index 14341d7013d25..ba24fccd4259d 100644 --- a/Analysis/Tasks/PWGLF/trackchecks.cxx +++ b/Analysis/Tasks/PWGLF/trackchecks.cxx @@ -107,9 +107,10 @@ struct TrackCheckTaskEvSel { bool isPrimary = false; if (isMC) { //determine particle species base on MC truth and if it is primary or not - int pdgcode = track.mcParticle().pdgCode(); + const auto particle = track.mcParticle(); + int pdgcode = particle.pdgCode(); - if (MC::isPhysicalPrimary(mcParticles, track.mcParticle())) { //is primary? + if (MC::isPhysicalPrimary(particle)) { //is primary? isPrimary = true; } @@ -204,9 +205,10 @@ struct TrackCheckTaskEvSelTrackSel { bool isPrimary = false; if (isMC) { //determine particle species base on MC truth and if it is primary or not - int pdgcode = track.mcParticle().pdgCode(); + const auto particle = track.mcParticle(); + int pdgcode = particle.pdgCode(); - if (MC::isPhysicalPrimary(mcParticles, track.mcParticle())) { //is primary? + if (MC::isPhysicalPrimary(particle)) { //is primary? isPrimary = true; } //Calculate y diff --git a/Analysis/Tasks/PWGPP/qaEfficiency.cxx b/Analysis/Tasks/PWGPP/qaEfficiency.cxx index 18c7efc1e2907..e33da8481e9d0 100644 --- a/Analysis/Tasks/PWGPP/qaEfficiency.cxx +++ b/Analysis/Tasks/PWGPP/qaEfficiency.cxx @@ -229,7 +229,7 @@ struct QaTrackingEfficiency { return true; } histos.fill(h, 5); - if ((selPrim == 1) && (!MC::isPhysicalPrimary(mcParticles, p))) { // Requiring is physical primary + if ((selPrim == 1) && (!MC::isPhysicalPrimary(p))) { // Requiring is physical primary return true; } histos.fill(h, 6); diff --git a/Analysis/Tasks/PWGPP/qaEventTrack.cxx b/Analysis/Tasks/PWGPP/qaEventTrack.cxx index 8f637a4eca97e..deb0d7252e3ab 100644 --- a/Analysis/Tasks/PWGPP/qaEventTrack.cxx +++ b/Analysis/Tasks/PWGPP/qaEventTrack.cxx @@ -203,7 +203,7 @@ struct QaTrackingKine { if (pdgCodeSel != 0 && particle.pdgCode() != pdgCodeSel) { // Checking PDG code continue; } - if (MC::isPhysicalPrimary(mcParticles, particle)) { + if (MC::isPhysicalPrimary(particle)) { histos.fill(HIST("trackingPrm/pt"), t.pt()); histos.fill(HIST("trackingPrm/eta"), t.eta()); histos.fill(HIST("trackingPrm/phi"), t.phi()); @@ -223,7 +223,7 @@ struct QaTrackingKine { histos.fill(HIST("particle/pt"), particle.pt()); histos.fill(HIST("particle/eta"), particle.eta()); histos.fill(HIST("particle/phi"), particle.phi()); - if (MC::isPhysicalPrimary(mcParticles, particle)) { + if (MC::isPhysicalPrimary(particle)) { histos.fill(HIST("particlePrm/pt"), particle.pt()); histos.fill(HIST("particlePrm/eta"), particle.eta()); histos.fill(HIST("particlePrm/phi"), particle.phi()); @@ -376,7 +376,7 @@ struct QaTrackingResolution { if (pdgCodeSel != 0 && particle.pdgCode() != pdgCodeSel) { continue; } - if (useOnlyPhysicsPrimary && !MC::isPhysicalPrimary(mcParticles, particle)) { + if (useOnlyPhysicsPrimary && !MC::isPhysicalPrimary(particle)) { continue; } const double deltaPt = track.pt() - particle.pt(); diff --git a/Analysis/Tutorials/src/mcHistograms.cxx b/Analysis/Tutorials/src/mcHistograms.cxx index 888da88568793..e5ce383a80672 100644 --- a/Analysis/Tutorials/src/mcHistograms.cxx +++ b/Analysis/Tutorials/src/mcHistograms.cxx @@ -33,7 +33,7 @@ struct VertexDistribution { }; // Grouping between MC particles and collisions -struct AccessMCData { +struct AccessMcData { OutputObj phiH{TH1F("phi", "phi", 100, 0., 2. * M_PI)}; OutputObj etaH{TH1F("eta", "eta", 102, -2.01, 2.01)}; @@ -43,20 +43,20 @@ struct AccessMCData { // access MC truth information with mcCollision() and mcParticle() methods LOGF(info, "MC. vtx-z = %f", mcCollision.posZ()); LOGF(info, "First: %d | Length: %d", mcParticles.begin().index(), mcParticles.size()); - if (mcParticles.size() > 0) { - LOGF(info, "Particles mother: %d", mcParticles.begin().mother0()); - } + int count = 0; for (auto& mcParticle : mcParticles) { - if (MC::isPhysicalPrimary(mcParticles, mcParticle)) { + if (MC::isPhysicalPrimary(mcParticle)) { phiH->Fill(mcParticle.phi()); etaH->Fill(mcParticle.eta()); + count++; } } + LOGF(info, "Primaries for this collision: %d", count); } }; // Access from tracks to MC particle -struct AccessMCTruth { +struct AccessMcTruth { OutputObj etaDiff{TH1F("etaDiff", ";eta_{MC} - eta_{Rec}", 100, -2, 2)}; OutputObj phiDiff{TH1F("phiDiff", ";phi_{MC} - phi_{Rec}", 100, -M_PI, M_PI)}; @@ -88,7 +88,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) { return WorkflowSpec{ adaptAnalysisTask(cfgc), - adaptAnalysisTask(cfgc), - adaptAnalysisTask(cfgc), + adaptAnalysisTask(cfgc), + adaptAnalysisTask(cfgc), }; } diff --git a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h index c7aff889bab6c..f37a844f02596 100644 --- a/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h +++ b/Detectors/AOD/include/AODProducerWorkflow/AODProducerWorkflowSpec.h @@ -107,10 +107,10 @@ using MCParticlesTable = o2::soa::Table constexpr bool is_index_table_v> = true; +template +constexpr bool is_self_index_column_v = false; + +template +constexpr bool is_self_index_column_v> = true; + template void call_if_has_originals(TLambda&& lambda) { @@ -414,6 +420,9 @@ using is_persistent_t = typename std::decay_t::persistent::type; template using is_external_index_t = typename std::conditional, std::true_type, std::false_type>::type; +template +using is_self_index_t = typename std::conditional, std::true_type, std::false_type>::type; + template class Ref> struct is_index : std::false_type { }; @@ -642,6 +651,7 @@ struct RowViewCore : public IP, C... { using index_columns_t = framework::selected_pack; constexpr inline static bool has_index_v = framework::pack_size(index_columns_t{}) > 0; using external_index_columns_t = framework::selected_pack; + using internal_index_columns_t = framework::selected_pack; RowViewCore(arrow::ChunkedArray* columnData[sizeof...(C)], IP&& policy) : IP{policy}, @@ -778,11 +788,23 @@ struct RowViewCore : public IP, C... { (Cs::setCurrentRaw(ptrs[framework::has_type_at_v(p)]), ...); } + template + void doSetCurrentInternal(framework::pack, E* ptr) + { + (Cs::setCurrentRaw(ptr), ...); + } + void bindExternalIndicesRaw(std::vector&& ptrs) { doSetCurrentIndexRaw(external_index_columns_t{}, std::forward>(ptrs)); } + template + void bindInternalIndices(E* table) + { + doSetCurrentInternal(internal_index_columns_t{}, table); + } + private: /// Helper to move to the correct chunk, if needed. /// FIXME: not needed? @@ -1015,6 +1037,7 @@ class Table mColumnChunks[ci] = lookups[ci]; } mBegin = unfiltered_iterator{mColumnChunks, {table->num_rows(), offset}}; + bindInternalIndices(); } } @@ -1094,6 +1117,17 @@ class Table mBegin.bindExternalIndices(current...); } + void bindInternalIndices() + { + mBegin.bindInternalIndices(this); + } + + template + void bindInternalIndicesTo(T* ptr) + { + mBegin.bindInternalIndices(ptr); + } + void bindExternalIndicesRaw(std::vector&& ptrs) { mBegin.bindExternalIndicesRaw(std::forward>(ptrs)); @@ -1274,29 +1308,28 @@ constexpr auto is_binding_compatible_v() using metadata = std::void_t; \ } -// TODO HACK && *(mLabel + 6) != 'M' && *(mLabel + 7) != 'c' four lines below is a hack until we have self-indexing columns and then should be removed. -#define DECLARE_SOA_COLUMN_FULL(_Name_, _Getter_, _Type_, _Label_) \ - struct _Name_ : o2::soa::Column<_Type_, _Name_> { \ - static constexpr const char* mLabel = _Label_; \ - static_assert(!((*(mLabel + 1) == 'I' && *(mLabel + 2) == 'n' && *(mLabel + 3) == 'd' && *(mLabel + 4) == 'e' && *(mLabel + 5) == 'x' && *(mLabel + 6) != 'M' && *(mLabel + 7) != 'c')), "Index is not a valid column name"); \ - using base = o2::soa::Column<_Type_, _Name_>; \ - using type = _Type_; \ - using column_t = _Name_; \ - _Name_(arrow::ChunkedArray const* column) \ - : o2::soa::Column<_Type_, _Name_>(o2::soa::ColumnIterator(column)) \ - { \ - } \ - \ - _Name_() = default; \ - _Name_(_Name_ const& other) = default; \ - _Name_& operator=(_Name_ const& other) = default; \ - \ - decltype(auto) _Getter_() const \ - { \ - return *mColumnIterator; \ - } \ - }; \ - static const o2::framework::expressions::BindingNode _Getter_ { _Label_, typeid(_Name_).hash_code(), \ +#define DECLARE_SOA_COLUMN_FULL(_Name_, _Getter_, _Type_, _Label_) \ + struct _Name_ : o2::soa::Column<_Type_, _Name_> { \ + static constexpr const char* mLabel = _Label_; \ + static_assert(!((*(mLabel + 1) == 'I' && *(mLabel + 2) == 'n' && *(mLabel + 3) == 'd' && *(mLabel + 4) == 'e' && *(mLabel + 5) == 'x')), "Index is not a valid column name"); \ + using base = o2::soa::Column<_Type_, _Name_>; \ + using type = _Type_; \ + using column_t = _Name_; \ + _Name_(arrow::ChunkedArray const* column) \ + : o2::soa::Column<_Type_, _Name_>(o2::soa::ColumnIterator(column)) \ + { \ + } \ + \ + _Name_() = default; \ + _Name_(_Name_ const& other) = default; \ + _Name_& operator=(_Name_ const& other) = default; \ + \ + decltype(auto) _Getter_() const \ + { \ + return *mColumnIterator; \ + } \ + }; \ + static const o2::framework::expressions::BindingNode _Getter_ { _Label_, typeid(_Name_).hash_code(), \ o2::framework::expressions::selectArrowType<_Type_>() } #define DECLARE_SOA_COLUMN(_Name_, _Getter_, _Type_) \ @@ -1575,6 +1608,58 @@ constexpr auto is_binding_compatible_v() o2::framework::expressions::selectArrowType<_Type_>() } #define DECLARE_SOA_INDEX_COLUMN(_Name_, _Getter_) DECLARE_SOA_INDEX_COLUMN_FULL(_Name_, _Getter_, int32_t, _Name_##s, "") + +///SELF +#define DECLARE_SOA_SELF_INDEX_COLUMN_FULL(_Name_, _Getter_, _Type_, _Label_) \ + struct _Name_##Id : o2::soa::Column<_Type_, _Name_##Id> { \ + static_assert(std::is_integral_v<_Type_>, "Index type must be integral"); \ + static constexpr const char* mLabel = "fIndex" _Label_; \ + using base = o2::soa::Column<_Type_, _Name_##Id>; \ + using type = _Type_; \ + using column_t = _Name_##Id; \ + using self_index_t = std::true_type; \ + _Name_##Id(arrow::ChunkedArray const* column) \ + : o2::soa::Column<_Type_, _Name_##Id>(o2::soa::ColumnIterator(column)) \ + { \ + } \ + \ + _Name_##Id() = default; \ + _Name_##Id(_Name_##Id const& other) = default; \ + _Name_##Id& operator=(_Name_##Id const& other) = default; \ + type inline getId() const \ + { \ + return _Getter_##Id(); \ + } \ + \ + type _Getter_##Id() const \ + { \ + return *mColumnIterator; \ + } \ + \ + bool has_##_Getter_() const \ + { \ + return *mColumnIterator >= 0; \ + } \ + \ + template \ + auto _Getter_##_as() const \ + { \ + assert(mBinding != nullptr); \ + return static_cast(mBinding)->rawIteratorAt(*mColumnIterator); \ + } \ + \ + bool setCurrentRaw(void* current) \ + { \ + this->mBinding = current; \ + return true; \ + } \ + void* getCurrentRaw() const { return mBinding; } \ + void* mBinding = nullptr; \ + }; \ + static const o2::framework::expressions::BindingNode _Getter_##Id { "fIndex" _Label_, typeid(_Name_##Id).hash_code(), \ + o2::framework::expressions::selectArrowType<_Type_>() } + +#define DECLARE_SOA_SELF_INDEX_COLUMN(_Name_, _Getter_) DECLARE_SOA_SELF_INDEX_COLUMN_FULL(_Name_, _Getter_, int32_t, #_Name_) /// A dynamic column is a column whose values are derived /// from those of other real columns. These can be used for /// example to provide different coordinate systems (e.g. polar, diff --git a/Framework/Core/include/Framework/AnalysisDataModel.h b/Framework/Core/include/Framework/AnalysisDataModel.h index 8f77174c14fad..5c44932f61e55 100644 --- a/Framework/Core/include/Framework/AnalysisDataModel.h +++ b/Framework/Core/include/Framework/AnalysisDataModel.h @@ -763,29 +763,24 @@ using McCollision = McCollisions::iterator; namespace mcparticle { -DECLARE_SOA_INDEX_COLUMN(McCollision, mcCollision); //! MC collision of this particle -DECLARE_SOA_COLUMN(PdgCode, pdgCode, int); //! PDG code -DECLARE_SOA_COLUMN(StatusCode, statusCode, int); //! Status code directly from the generator -DECLARE_SOA_COLUMN(Flags, flags, uint8_t); //! ALICE specific flags. Do not use directly. Use the dynamic columns, e.g. producedByGenerator() -// TODO declaration to be swapped when self-indexing columns are available -//DECLARE_SOA_INDEX_COLUMN_FULL(Mother0, mother0, int, McParticle, "_Mother0"); //! Track index of the first mother -DECLARE_SOA_COLUMN_FULL(Mother0, mother0, int, "fIndexMcParticles_Mother0"); //! Track index of the first mother -//DECLARE_SOA_INDEX_COLUMN_FULL(Mother1, mother1, int, McParticle, "_Mother1"); //! Track index of the second mother -DECLARE_SOA_COLUMN_FULL(Mother1, mother1, int, "fIndexMcParticles_Mother1"); //! Track index of the first mother -//DECLARE_SOA_INDEX_COLUMN_FULL(Daughter0, daughter0, int, McParticle, "_Daughter0"); //! Track index of the first daugther -DECLARE_SOA_COLUMN_FULL(Daughter0, daughter0, int, "fIndexMcParticles_Daughter0"); //! Track index of the first daugther -//DECLARE_SOA_INDEX_COLUMN_FULL(Daughter1, daughter1, int, McParticle, "_Daughter1"); //! Track index of the first daugther -DECLARE_SOA_COLUMN_FULL(Daughter1, daughter1, int, "fIndexMcParticles_Daughter1"); //! Track index of the first daugther -DECLARE_SOA_COLUMN(Weight, weight, float); //! MC weight -DECLARE_SOA_COLUMN(Px, px, float); //! Momentum in x in GeV/c -DECLARE_SOA_COLUMN(Py, py, float); //! Momentum in y in GeV/c -DECLARE_SOA_COLUMN(Pz, pz, float); //! Momentum in z in GeV/c -DECLARE_SOA_COLUMN(E, e, float); //! Energy -DECLARE_SOA_COLUMN(Vx, vx, float); //! X production vertex in cm -DECLARE_SOA_COLUMN(Vy, vy, float); //! Y production vertex in cm -DECLARE_SOA_COLUMN(Vz, vz, float); //! Z production vertex in cm -DECLARE_SOA_COLUMN(Vt, vt, float); //! Production time -DECLARE_SOA_DYNAMIC_COLUMN(Phi, phi, //! Phi +DECLARE_SOA_INDEX_COLUMN(McCollision, mcCollision); //! MC collision of this particle +DECLARE_SOA_COLUMN(PdgCode, pdgCode, int); //! PDG code +DECLARE_SOA_COLUMN(StatusCode, statusCode, int); //! Status code directly from the generator +DECLARE_SOA_COLUMN(Flags, flags, uint8_t); //! ALICE specific flags. Do not use directly. Use the dynamic columns, e.g. producedByGenerator() +DECLARE_SOA_SELF_INDEX_COLUMN_FULL(Mother0, mother0, int, "McParticles_Mother0"); //! Track index of the first mother +DECLARE_SOA_SELF_INDEX_COLUMN_FULL(Mother1, mother1, int, "McParticles_Mother1"); //! Track index of the last mother +DECLARE_SOA_SELF_INDEX_COLUMN_FULL(Daughter0, daughter0, int, "McParticles_Daughter0"); //! Track index of the first daugther +DECLARE_SOA_SELF_INDEX_COLUMN_FULL(Daughter1, daughter1, int, "McParticles_Daughter1"); //! Track index of the last daugther +DECLARE_SOA_COLUMN(Weight, weight, float); //! MC weight +DECLARE_SOA_COLUMN(Px, px, float); //! Momentum in x in GeV/c +DECLARE_SOA_COLUMN(Py, py, float); //! Momentum in y in GeV/c +DECLARE_SOA_COLUMN(Pz, pz, float); //! Momentum in z in GeV/c +DECLARE_SOA_COLUMN(E, e, float); //! Energy +DECLARE_SOA_COLUMN(Vx, vx, float); //! X production vertex in cm +DECLARE_SOA_COLUMN(Vy, vy, float); //! Y production vertex in cm +DECLARE_SOA_COLUMN(Vz, vz, float); //! Z production vertex in cm +DECLARE_SOA_COLUMN(Vt, vt, float); //! Production time +DECLARE_SOA_DYNAMIC_COLUMN(Phi, phi, //! Phi [](float px, float py) -> float { return static_cast(M_PI) + std::atan2(-py, -px); }); DECLARE_SOA_DYNAMIC_COLUMN(Eta, eta, //! Pseudorapidity [](float px, float py, float pz) -> float { return 0.5f * std::log((std::sqrt(px * px + py * py + pz * pz) + pz) / (std::sqrt(px * px + py * py + pz * pz) - pz)); }); @@ -802,8 +797,8 @@ DECLARE_SOA_DYNAMIC_COLUMN(ProducedByGenerator, producedByGenerator, //! Particl DECLARE_SOA_TABLE(McParticles, "AOD", "MCPARTICLE", //! MC particle table o2::soa::Index<>, mcparticle::McCollisionId, mcparticle::PdgCode, mcparticle::StatusCode, mcparticle::Flags, - mcparticle::Mother0, mcparticle::Mother1, - mcparticle::Daughter0, mcparticle::Daughter1, mcparticle::Weight, + mcparticle::Mother0Id, mcparticle::Mother1Id, + mcparticle::Daughter0Id, mcparticle::Daughter1Id, mcparticle::Weight, mcparticle::Px, mcparticle::Py, mcparticle::Pz, mcparticle::E, mcparticle::Vx, mcparticle::Vy, mcparticle::Vz, mcparticle::Vt, mcparticle::Phi, diff --git a/Framework/Core/include/Framework/AnalysisHelpers.h b/Framework/Core/include/Framework/AnalysisHelpers.h index 03dc82d7c326f..20901f7f45c40 100644 --- a/Framework/Core/include/Framework/AnalysisHelpers.h +++ b/Framework/Core/include/Framework/AnalysisHelpers.h @@ -532,6 +532,21 @@ struct Partition { } } + void bindInternalIndices() + { + if (mFiltered != nullptr) { + mFiltered->bindInternalIndices(); + } + } + + template + void bindInternalIndicesTo(E* ptr) + { + if (mFiltered != nullptr) { + mFiltered->bindInternalIndicesTo(ptr); + } + } + template void getBoundToExternalIndices(T2& table) { diff --git a/Framework/Core/include/Framework/AnalysisManagers.h b/Framework/Core/include/Framework/AnalysisManagers.h index c35e8f2496601..d2a3bd0e67508 100644 --- a/Framework/Core/include/Framework/AnalysisManagers.h +++ b/Framework/Core/include/Framework/AnalysisManagers.h @@ -39,6 +39,11 @@ struct PartitionManager { { } + template + static void bindInternalIndices(ANY&, E*) + { + } + template static void getBoundToExternalIndices(ANY&, Ts&...) { @@ -71,6 +76,14 @@ struct PartitionManager> { partition.bindExternalIndices(tables...); } + template + static void bindInternalIndices(Partition& partition, E* table) + { + if constexpr (o2::soa::is_binding_compatible_v>()) { + partition.bindInternalIndicesTo(table); + } + } + template static void getBoundToExternalIndices(Partition& partition, Ts&... tables) { diff --git a/Framework/Core/include/Framework/AnalysisTask.h b/Framework/Core/include/Framework/AnalysisTask.h index 50ad5dad9b57c..236a639f215f4 100644 --- a/Framework/Core/include/Framework/AnalysisTask.h +++ b/Framework/Core/include/Framework/AnalysisTask.h @@ -404,10 +404,12 @@ struct AnalysisDataProcessorBuilder { }); std::decay_t typedTable{{groupedElementsTable}, std::move(slicedSelection), (offsets[index])[pos]}; + typedTable.bindInternalIndicesTo(&std::get(*mAt)); return typedTable; } else { auto groupedElementsTable = arrow::util::get>(((groups[index])[pos]).value); std::decay_t typedTable{{groupedElementsTable}, (offsets[index])[pos]}; + typedTable.bindInternalIndicesTo(&std::get(*mAt)); return typedTable; } } else { @@ -455,6 +457,7 @@ struct AnalysisDataProcessorBuilder { // set filtered tables for partitions with grouping homogeneous_apply_refs([&groupingTable](auto& x) { PartitionManager>::setPartition(x, groupingTable); + PartitionManager>::bindInternalIndices(x, &groupingTable); return true; }, task); @@ -481,6 +484,19 @@ struct AnalysisDataProcessorBuilder { static_assert(((soa::is_soa_iterator_t>::value == false) && ...), "Associated arguments of process() should not be iterators"); auto associatedTables = AnalysisDataProcessorBuilder::bindAssociatedTables(inputs, processingFunction, infos); + //pre-bind self indices + std::apply( + [&](auto&... t) { + (homogeneous_apply_refs( + [&](auto& p) { + PartitionManager>::bindInternalIndices(p, &t); + return true; + }, + task), + ...); + }, + associatedTables); + auto binder = [&](auto&& x) { x.bindExternalIndices(&groupingTable, &std::get>(associatedTables)...); homogeneous_apply_refs([&x](auto& t) { diff --git a/Framework/Core/test/test_ASoA.cxx b/Framework/Core/test/test_ASoA.cxx index f3ad2176aba58..d13d6b26ba9db 100644 --- a/Framework/Core/test/test_ASoA.cxx +++ b/Framework/Core/test/test_ASoA.cxx @@ -691,9 +691,11 @@ namespace test { DECLARE_SOA_ARRAY_INDEX_COLUMN(Points3D, pointGroup, 3); DECLARE_SOA_SLICE_INDEX_COLUMN(Points3D, pointSlice); +DECLARE_SOA_SELF_INDEX_COLUMN(OtherPoint, otherPoint); } // namespace test DECLARE_SOA_TABLE(PointsRef, "TST", "PTSREF", test::Points3DIdSlice, test::Points3DIds); +DECLARE_SOA_TABLE(PointsSelfIndex, "TST", "PTSSLF", o2::soa::Index<>, test::X, test::Y, test::Z, test::OtherPointId); BOOST_AUTO_TEST_CASE(TestAdvancedIndices) { @@ -760,4 +762,22 @@ BOOST_AUTO_TEST_CASE(TestAdvancedIndices) for (int i = 0; i < 3; ++i) { BOOST_CHECK_EQUAL(g2f[i].globalIndex(), aa[i]); } + + TableBuilder b3; + auto pswriter = b3.cursor(); + int references[] = {19, 2, 0, 13, 4, 6, 5, 5, 11, 9, 3, 8, 16, 14, 1, 18, 12, 18, 2, 7}; + for (auto i = 0; i < 20; ++i) { + pswriter(0, -1 * i, 0.5 * i, 2 * i, references[i]); + } + auto t3 = b3.finalize(); + auto pst = PointsSelfIndex{t3}; + pst.bindInternalIndices(); + auto i = 0; + for (auto& p : pst) { + auto op = p.otherPoint_as(); + auto bbb = std::is_same_v; + BOOST_CHECK(bbb); + BOOST_CHECK_EQUAL(op.globalIndex(), references[i]); + ++i; + } } From 71e9c12e866e3b3970ea77d52f1e70e021c0890b Mon Sep 17 00:00:00 2001 From: a-mathis Date: Fri, 23 Jul 2021 14:09:24 +0200 Subject: [PATCH 259/314] [o2femtodream] Analysis task for track-track femto (#6686) - Introducing o PairCleaner - clean up clones o CutCulator - resolves the bit-wise encoding of syst. vars. o further improvements and bug fixes o plenty of documentation - so long, and thanks for all the fish! --- .../Core/include/AnalysisCore/EventMixing.h | 50 +++ .../Tasks/PWGCF/FemtoDream/CMakeLists.txt | 19 +- .../PWGCF/FemtoDream/femtoDreamCutCulator.cxx | 44 ++ .../PWGCF/FemtoDream/femtoDreamHashTask.cxx | 56 +++ .../femtoDreamPairTaskTrackTrack.cxx | 264 ++++++++++++ .../FemtoDream/femtoDreamProducerTask.cxx | 96 ++--- .../include/FemtoDream/FemtoDerived.h | 65 ++- .../FemtoDream/FemtoDreamCollisionSelection.h | 112 ++--- .../include/FemtoDream/FemtoDreamContainer.h | 73 +++- .../include/FemtoDream/FemtoDreamCutculator.h | 189 ++++++++ .../include/FemtoDream/FemtoDreamMath.h | 59 +-- .../FemtoDream/FemtoDreamObjectSelection.h | 103 +++-- .../FemtoDream/FemtoDreamPairCleaner.h | 69 ++- .../FemtoDream/FemtoDreamParticleHisto.h | 74 +++- .../include/FemtoDream/FemtoDreamSelection.h | 73 ++-- .../FemtoDream/FemtoDreamTrackSelection.h | 406 +++++++----------- .../FemtoDream/FemtoDreamV0Selection.h | 37 +- 17 files changed, 1261 insertions(+), 528 deletions(-) create mode 100644 Analysis/Core/include/AnalysisCore/EventMixing.h create mode 100644 Analysis/Tasks/PWGCF/FemtoDream/femtoDreamCutCulator.cxx create mode 100644 Analysis/Tasks/PWGCF/FemtoDream/femtoDreamHashTask.cxx create mode 100644 Analysis/Tasks/PWGCF/FemtoDream/femtoDreamPairTaskTrackTrack.cxx create mode 100644 Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamCutculator.h diff --git a/Analysis/Core/include/AnalysisCore/EventMixing.h b/Analysis/Core/include/AnalysisCore/EventMixing.h new file mode 100644 index 0000000000000..8d227ae2afdac --- /dev/null +++ b/Analysis/Core/include/AnalysisCore/EventMixing.h @@ -0,0 +1,50 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#ifndef ANALYSIS_CORE_EVENTMIXING_H_ +#define ANALYSIS_CORE_EVENTMIXING_H_ + +namespace eventmixing +{ +/// Calculate hash for an element based on 2 properties and their bins. +/// \tparam T1 Data type of the configurable of the z-vertex and multiplicity bins +/// \tparam T2 Data type of the value of the z-vertex and multiplicity +/// \param vtxBins Binning in z-vertex +/// \param multBins Binning in multiplicity +/// \param vtx Value of the z-vertex of the collision +/// \param mult Multiplicity of the collision +/// \return Hash of the event +template +static int getMixingBin(const T1& vtxBins, const T1& multBins, const T2& vtx, const T2& mult) +{ + // underflow + if (vtx < vtxBins.at(0)) { + return -1; + } + if (mult < multBins.at(0)) { + return -1; + } + + for (int i = 1; i < vtxBins.size(); i++) { + if (vtx < vtxBins.at(i)) { + for (int j = 1; j < multBins.size(); j++) { + if (mult < multBins.at(j)) { + return i + j * (vtxBins.size() + 1); + } + } + } + } + // overflow + return -1; +} +}; // namespace eventmixing + +#endif /* ANALYSIS_CORE_EVENTMIXING_H_ */ diff --git a/Analysis/Tasks/PWGCF/FemtoDream/CMakeLists.txt b/Analysis/Tasks/PWGCF/FemtoDream/CMakeLists.txt index 8aaae56e02cf7..f172f2eaf81ce 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/CMakeLists.txt +++ b/Analysis/Tasks/PWGCF/FemtoDream/CMakeLists.txt @@ -12,4 +12,21 @@ o2_add_dpl_workflow(femtodream-producer SOURCES femtoDreamProducerTask.cxx PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisCore O2::AnalysisDataModel - COMPONENT_NAME Analysis) \ No newline at end of file + COMPONENT_NAME Analysis) + +o2_add_dpl_workflow(femtodream-pair-track-track + SOURCES femtoDreamPairTaskTrackTrack.cxx + PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisCore O2::AnalysisDataModel + COMPONENT_NAME Analysis) + +o2_add_dpl_workflow(femtodream-hash + SOURCES femtoDreamHashTask.cxx + PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisCore O2::AnalysisDataModel + COMPONENT_NAME Analysis) + + +o2_add_executable(femtodream-cutculator + SOURCES femtoDreamCutCulator.cxx + PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisCore O2::AnalysisDataModel + COMPONENT_NAME Analysis) + diff --git a/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamCutCulator.cxx b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamCutCulator.cxx new file mode 100644 index 0000000000000..3dc55edd1a192 --- /dev/null +++ b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamCutCulator.cxx @@ -0,0 +1,44 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file femtoDreamCutCulator.cxx +/// \brief Executable that encodes physical selection criteria in a bit-wise selection +/// \author Andi Mathis, TU München, andreas.mathis@ph.tum.de + +#include "include/FemtoDream/FemtoDerived.h" +#include "include/FemtoDream/FemtoDreamSelection.h" +#include "include/FemtoDream/FemtoDreamTrackSelection.h" +#include "include/FemtoDream/FemtoDreamCutculator.h" +#include + +using namespace o2::analysis::femtoDream; + +/// The function takes the path to the dpl-config.json as a argument and the does a Q&A session for the user to find the appropriate selection criteria for the analysis task +int main(int argc, char* argv[]) +{ + FemtoDreamCutculator cut; + cut.init(argv[1]); + + cut.setTrackSelection(femtoDreamTrackSelection::kSign, femtoDreamSelection::kEqual, "ConfTrk"); + cut.setTrackSelection(femtoDreamTrackSelection::kpTMin, femtoDreamSelection::kLowerLimit, "ConfTrk"); + cut.setTrackSelection(femtoDreamTrackSelection::kpTMax, femtoDreamSelection::kUpperLimit, "ConfTrk"); + cut.setTrackSelection(femtoDreamTrackSelection::kEtaMax, femtoDreamSelection::kAbsUpperLimit, "ConfTrk"); + cut.setTrackSelection(femtoDreamTrackSelection::kTPCnClsMin, femtoDreamSelection::kLowerLimit, "ConfTrk"); + cut.setTrackSelection(femtoDreamTrackSelection::kTPCfClsMin, femtoDreamSelection::kLowerLimit, "ConfTrk"); + cut.setTrackSelection(femtoDreamTrackSelection::kTPCsClsMax, femtoDreamSelection::kUpperLimit, "ConfTrk"); + cut.setTrackSelection(femtoDreamTrackSelection::kDCAxyMax, femtoDreamSelection::kAbsUpperLimit, "ConfTrk"); + cut.setTrackSelection(femtoDreamTrackSelection::kDCAzMax, femtoDreamSelection::kAbsUpperLimit, "ConfTrk"); + + /// \todo factor out the pid here + // cut.setTrackSelection(femtoDreamTrackSelection::kPIDnSigmaMax, femtoDreamSelection::kAbsUpperLimit, "ConfTrk"); + + cut.analyseCuts(); +} diff --git a/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamHashTask.cxx b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamHashTask.cxx new file mode 100644 index 0000000000000..b9c29bb98652c --- /dev/null +++ b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamHashTask.cxx @@ -0,0 +1,56 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file femtoDreamReaderTask.cxx +/// \brief Tasks that reads the track tables used for the pairing +/// This task is common for all femto analyses +/// \author Andi Mathis, TU München, andreas.mathis@ph.tum.de + +#include "include/FemtoDream/FemtoDerived.h" +#include "AnalysisCore/EventMixing.h" +#include "Framework/AnalysisTask.h" +#include "Framework/AnalysisTask.h" +#include "Framework/runDataProcessing.h" +#include "Framework/ASoAHelpers.h" + +using namespace o2; +using namespace o2::framework; + +struct femtoDreamPairHashTask { + + Configurable> CfgVtxBins{"CfgVtxBins", std::vector{-10.0f, -8.f, -6.f, -4.f, -2.f, 0.f, 2.f, 4.f, 6.f, 8.f, 10.f}, "Mixing bins - z-vertex"}; + Configurable> CfgMultBins{"CfgMultBins", std::vector{0.0f, 20.0f, 40.0f, 60.0f, 80.0f, 100.0f, 200.0f, 99999.f}, "Mixing bins - multiplicity"}; + + std::vector CastCfgVtxBins, CastCfgMultBins; + + Produces hashes; + + void init(InitContext&) + { + /// here the Configurables are passed to std::vectors + CastCfgVtxBins = (std::vector)CfgVtxBins; + CastCfgMultBins = (std::vector)CfgMultBins; + } + + void process(o2::aod::FemtoDreamCollision const& col) + { + /// the hash of the collision is computed and written to table + hashes(eventmixing::getMixingBin(CastCfgVtxBins, CastCfgMultBins, col.posZ(), col.multV0M())); + } +}; + +WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) +{ + WorkflowSpec workflow{ + adaptAnalysisTask(cfgc)}; + + return workflow; +} diff --git a/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamPairTaskTrackTrack.cxx b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamPairTaskTrackTrack.cxx new file mode 100644 index 0000000000000..3b9800c064765 --- /dev/null +++ b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamPairTaskTrackTrack.cxx @@ -0,0 +1,264 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file femtoDreamPairTaskTrackTrack.cxx +/// \brief Tasks that reads the track tables used for the pairing and builds pairs of two tracks +/// \author Andi Mathis, TU München, andreas.mathis@ph.tum.de + +#include "include/FemtoDream/FemtoDerived.h" +#include "include/FemtoDream/FemtoDreamParticleHisto.h" +#include "include/FemtoDream/FemtoDreamPairCleaner.h" +#include "include/FemtoDream/FemtoDreamContainer.h" +#include "Framework/AnalysisTask.h" +#include "Framework/runDataProcessing.h" +#include "Framework/HistogramRegistry.h" +#include "Framework/ASoAHelpers.h" + +using namespace o2; +using namespace o2::analysis::femtoDream; +using namespace o2::framework; +using namespace o2::framework::expressions; + +struct femtoDreamPairTaskTrackTrack { + + /// Particle selection part + uint trackTypeSel = aod::femtodreamparticle::ParticleType::kTrack; // \todo at some point filters will be able to cope with enums + + /// Particle 1 + Configurable ConfPDGCodePartOne{"ConfPDGCodePartOne", 2212, "Particle 1 - PDG code"}; + Configurable ConfCutPartOne{"ConfCutPartOne", 65534, "Particle 1 - Selection bit"}; + Configurable ConfPtMinPartOne{"ConfPtMinPartOne", 0.f, "Particle 1 - min. pT selection (GeV/c)"}; + Configurable ConfPtMaxPartOne{"ConfPtMaxPartOne", 999.f, "Particle 1 - max. pT selection (GeV/c)"}; + Configurable ConfEtaMaxPartOne{"ConfEtaMaxPartOne", 999.f, "Particle 1 - max. eta selection"}; + Configurable ConfDCAxyMaxPartOne{"ConfDCAxyMaxPartOne", 999.f, "Particle 1 - max. DCA_xy selection (cm)"}; + Configurable ConfPIDThreshPartOne{"ConfPIDThreshPartOne", 0.75f, "Particle 1 - TPC / TPC+TOF PID momentum threshold"}; + Configurable> ConfTPCPIDPartOne{"ConfTPCPIDPartOne", std::vector{7}, "Particle 1 - TPC PID bits"}; // we also need the possibility to specify whether the bit is true/false ->std>>vector> + Configurable> ConfCombPIDPartOne{"ConfCombPIDPartOne", std::vector{7}, "Particle 1 - Combined PID bits"}; // we also need the possibility to specify whether the bit is true/false ->std>>vector> + + /// Partition for particle 1 + Partition partsOne = (aod::femtodreamparticle::partType == trackTypeSel) && + (aod::femtodreamparticle::cut == ConfCutPartOne) && + (aod::femtodreamparticle::pt > ConfPtMinPartOne) && + (aod::femtodreamparticle::pt < ConfPtMaxPartOne) && + (nabs(aod::femtodreamparticle::tempFitVar) < ConfDCAxyMaxPartOne) && + (nabs(aod::femtodreamparticle::eta) < ConfEtaMaxPartOne); + + /// Histogramming for particle 1 + FemtoDreamParticleHisto trackHistoPartOne; + + /// Particle 2 + Configurable ConfIsSame{"ConfIsSame", false, "Pairs of the same particle"}; + Configurable ConfPDGCodePartTwo{"ConfPDGCodePartTwo", 2212, "Particle 2 - PDG code"}; + Configurable ConfCutPartTwo{"ConfCutPartTwo", 65534, "Particle 2 - Selection bit"}; + Configurable ConfPtMinPartTwo{"ConfPtMinPartTwo", 0.5f, "Particle 2 - min. pT selection (GeV/c)"}; + Configurable ConfPtMaxPartTwo{"ConfPtMaxPartTwo", 4.5f, "Particle 2 - max. pT selection (GeV/c)"}; + Configurable ConfEtaMaxPartTwo{"ConfEtaMaxPartTwo", 999.f, "Particle 2 - max. eta selection"}; + Configurable ConfDCAxyMaxPartTwo{"ConfDCAxyMaxPartTwo", 999.f, "Particle 2 - max. DCA_xy selection (cm)"}; + Configurable ConfPIDThreshPartTwo{"ConfPIDThreshPartTwo", 0.4f, "Particle 2 - TPC / TPC+TOF PID momentum threshold"}; + Configurable> ConfTPCPIDPartTwo{"ConfTPCPIDPartTwo", std::vector{6}, "Particle 2 - TPC PID bits"}; // we also need the possibility to specify whether the bit is true/false ->std>>vector> + Configurable> ConfCombPIDPartTwo{"ConfCombPIDPartTwo", std::vector{6}, "Particle 2 - Combined PID bits"}; // we also need the possibility to specify whether the bit is true/false ->std>>vector> + + /// Partition for particle 2 + Partition partsTwo = (aod::femtodreamparticle::partType == trackTypeSel) && + (aod::femtodreamparticle::cut == ConfCutPartTwo) && + (aod::femtodreamparticle::pt > ConfPtMinPartTwo) && + (aod::femtodreamparticle::pt < ConfPtMaxPartTwo) && + (nabs(aod::femtodreamparticle::tempFitVar) < ConfDCAxyMaxPartTwo) && + (nabs(aod::femtodreamparticle::eta) < ConfEtaMaxPartTwo); + + /// Histogramming for particle 2 + FemtoDreamParticleHisto trackHistoPartTwo; + + /// The configurables need to be passed to an std::vector + std::vector vecTPCPIDPartOne, vecTPCPIDPartTwo, vecCombPIDPartOne, vecCombPIDPartTwo; + + /// Correlation part + ConfigurableAxis CfgMultBins{"CfgMultBins", {VARIABLE_WIDTH, 0.0f, 20.0f, 40.0f, 60.0f, 80.0f, 100.0f, 200.0f}, "Mixing bins - multiplicity"}; // \todo to be obtained from the hash task + ConfigurableAxis CfgkstarBins{"CfgkstarBins", {5000, 0., 5.}, "binning kstar"}; + ConfigurableAxis CfgkTBins{"CfgkTBins", {70, 0., 7.}, "binning kT"}; + ConfigurableAxis CfgmTBins{"CfgmTBins", {70, 0., 7.}, "binning mT"}; + Configurable ConfNEventsMix{"ConfNEventsMix", 5, "Number of events for mixing"}; + + FemtoDreamContainer sameEventCont; + FemtoDreamContainer mixedEventCont; + FemtoDreamPairCleaner pairCleaner; + + /// Histogram output + HistogramRegistry qaRegistry{"TrackQA", {}, OutputObjHandlingPolicy::AnalysisObject}; + HistogramRegistry resultRegistry{"Correlations", {}, OutputObjHandlingPolicy::AnalysisObject}; + + void init(InitContext&) + { + trackHistoPartOne.init(&qaRegistry); + if (!ConfIsSame) { + trackHistoPartTwo.init(&qaRegistry); + } + + sameEventCont.init(&resultRegistry, CfgkstarBins, CfgMultBins, CfgkTBins, CfgmTBins); + sameEventCont.setPDGCodes(ConfPDGCodePartOne, ConfPDGCodePartTwo); + + mixedEventCont.init(&resultRegistry, CfgkstarBins, CfgMultBins, CfgkTBins, CfgmTBins); + mixedEventCont.setPDGCodes(ConfPDGCodePartOne, ConfPDGCodePartTwo); + + pairCleaner.init(&qaRegistry); + + vecTPCPIDPartOne = ConfTPCPIDPartOne; + vecTPCPIDPartTwo = ConfTPCPIDPartTwo; + vecCombPIDPartOne = ConfCombPIDPartOne; + vecCombPIDPartTwo = ConfCombPIDPartTwo; + } + + /// function that checks whether the PID selection specified in the vectors is fulfilled + /// \param pidcut Bit-wise container for the PID + /// \param vec Vector with the different selections + /// \return Whether the PID selection specified in the vectors is fulfilled + bool isPIDSelected(aod::femtodreamparticle::cutContainerType const& pidcut, std::vector const& vec) + { + bool pidSelection = true; + for (auto it : vec) { + //\todo we also need the possibility to specify whether the bit is true/false ->std>>vector> + //if (!((pidcut >> it.first) & it.second)) { + if (!((pidcut >> it) & 1)) { + pidSelection = false; + } + } + return pidSelection; + }; + + /// function that checks whether the PID selection specified in the vectors is fulfilled, depending on the momentum TPC or TPC+TOF PID is conducted + /// \param pidcut Bit-wise container for the PID + /// \param mom Momentum of the track + /// \param pidThresh Momentum threshold that separates between TPC and TPC+TOF PID + /// \param vecTPC Vector with the different selections for the TPC PID + /// \param vecComb Vector with the different selections for the TPC+TOF PID + /// \return Whether the PID selection is fulfilled + bool isFullPIDSelected(aod::femtodreamparticle::cutContainerType const& pidCut, float const& mom, float const& pidThresh, std::vector const& vecTPC, std::vector const& vecComb) + { + bool pidSelection = true; + if (mom < pidThresh) { + /// TPC PID only + pidSelection = isPIDSelected(pidCut, vecTPC); + } else { + /// TPC + TOF PID + pidSelection = isPIDSelected(pidCut, vecComb); + } + return pidSelection; + }; + + /// This function processes the same event and takes care of all the histogramming + /// \todo the trivial loops over the tracks should be factored out since they will be common to all combinations of T-T, T-V0, V0-V0, ... + void processSameEvent(o2::aod::FemtoDreamCollision& col, + o2::aod::FemtoDreamParticles& parts) + { + + const int multCol = col.multV0M(); + + /// Histogramming same event + for (auto& part : partsOne) { + if (!isFullPIDSelected(part.pidcut(), part.p(), ConfPIDThreshPartOne, vecTPCPIDPartOne, vecCombPIDPartOne)) { + continue; + } + trackHistoPartOne.fillQA(part); + } + + if (!ConfIsSame) { + for (auto& part : partsTwo) { + if (!isFullPIDSelected(part.pidcut(), part.p(), ConfPIDThreshPartTwo, vecTPCPIDPartTwo, vecCombPIDPartTwo)) { + continue; + } + trackHistoPartTwo.fillQA(part); + } + } + + /// Now build the combinations + for (auto& [p1, p2] : combinations(partsOne, partsTwo)) { + if (!isFullPIDSelected(p1.pidcut(), p1.p(), ConfPIDThreshPartOne, vecTPCPIDPartOne, vecCombPIDPartOne) || !isFullPIDSelected(p2.pidcut(), p2.p(), ConfPIDThreshPartTwo, vecTPCPIDPartTwo, vecCombPIDPartTwo)) { + continue; + } + + // track cleaning + if (!pairCleaner.isCleanPair(p1, p2, parts)) { + continue; + } + + sameEventCont.setPair(p1, p2, multCol); + } + } + + /// This function processes the mixed event + /// \todo the trivial loops over the collisions and tracks should be factored out since they will be common to all combinations of T-T, T-V0, V0-V0, ... + void processMixedEvent(o2::aod::FemtoDreamCollisions& cols, + o2::aod::Hashes& hashes, + o2::aod::FemtoDreamParticles& parts) + { + cols.bindExternalIndices(&parts); + auto particlesTuple = std::make_tuple(parts); + AnalysisDataProcessorBuilder::GroupSlicer slicer(cols, particlesTuple); + + for (auto& [collision1, collision2] : soa::selfCombinations("fBin", ConfNEventsMix, -1, soa::join(hashes, cols), soa::join(hashes, cols))) { + auto it1 = slicer.begin(); + auto it2 = slicer.begin(); + for (auto& slice : slicer) { + if (slice.groupingElement().index() == collision1.index()) { + it1 = slice; + break; + } + } + for (auto& slice : slicer) { + if (slice.groupingElement().index() == collision2.index()) { + it2 = slice; + break; + } + } + + auto particles1 = std::get(it1.associatedTables()); + particles1.bindExternalIndices(&cols); + auto particles2 = std::get(it2.associatedTables()); + particles2.bindExternalIndices(&cols); + + partsOne.bindTable(particles1); + partsTwo.bindTable(particles2); + + /// \todo before mixing we should check whether both collisions contain a pair of particles! + /// could work like that, but only if PID is contained within the partitioning! + // auto particlesEvent1 = std::get(it1.associatedTables()); + // particlesEvent1.bindExternalIndices(&cols); + // auto particlesEvent2 = std::get(it2.associatedTables()); + // particlesEvent2.bindExternalIndices(&cols); + /// for the x-check + // partsOne.bindTable(particlesEvent2); + // auto nPart1Evt2 = partsOne.size(); + // partsTwo.bindTable(particlesEvent1); + // auto nPart2Evt1 = partsTwo.size(); + /// for actual event mixing + // partsOne.bindTable(particlesEvent1); + // partsTwo.bindTable(particlesEvent2); + // if (partsOne.size() == 0 || nPart2Evt1 == 0 || nPart1Evt2 == 0 || partsTwo.size() == 0 ) continue; + + for (auto& [p1, p2] : combinations(partsOne, partsTwo)) { + if (!isFullPIDSelected(p1.pidcut(), p1.p(), ConfPIDThreshPartOne, vecTPCPIDPartOne, vecCombPIDPartOne) || !isFullPIDSelected(p2.pidcut(), p2.p(), ConfPIDThreshPartTwo, vecTPCPIDPartTwo, vecCombPIDPartTwo)) { + continue; + } + + mixedEventCont.setPair(p1, p2, collision1.multV0M()); // < \todo dirty trick, the multiplicity will be of course within the bin width used for the hashes + } + } + } +}; + +WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) +{ + WorkflowSpec workflow{ + adaptAnalysisTask(cfgc, framework::Processes{&femtoDreamPairTaskTrackTrack::processSameEvent, &femtoDreamPairTaskTrackTrack::processMixedEvent}), + }; + + return workflow; +} diff --git a/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx index c8343725aa51c..7a418ef915dba 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx +++ b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx @@ -87,25 +87,17 @@ struct femtoDreamProducerTask { Filter colFilter = nabs(aod::collision::posZ) < ConfEvtZvtx; FemtoDreamTrackSelection trackCuts; - Configurable> ConfTrkCharge{"ConfTrkCharge", std::vector{-1, 1}, "Trk sel: Charge"}; - Configurable> ConfTrkTPCnclsMin{"ConfTrkTPCnclsMin", std::vector{80.f, 70.f, 60.f}, "Trk sel: Min. nCls TPC"}; - Configurable> ConfTrkTPCfCls{"ConfTrkTPCfCls", std::vector{0.7f, 0.83f, 0.9f}, "Trk sel: Min. ratio crossed rows/findable"}; - Configurable> ConfTrkTPCsCls{"ConfTrkTPCsCls", std::vector{0.1f, 160.f}, "Trk sel: Max. TPC shared cluster"}; - Configurable> ConfTrkDCAxyMax{"ConfTrkDCAxyMax", std::vector{0.1f, 3.5f}, "Trk sel: Max. DCA_xy (cm)"}; /// here we need an open cut to do the DCA fits later on! - Configurable> ConfTrkDCAzMax{"ConfTrkDCAzMax", std::vector{0.2f, 3.5f}, "Trk sel: Max. DCA_z (cm)"}; - /// \todo maybe we need to remove the PID from the general cut container and have a separate one, these are lots and lots of bits we need - Configurable> ConfTrkPIDnSigmaMax{"ConfTrkPIDnSigmaMax", std::vector{3.5f, 3.f, 2.5f}, "Trk sel: Max. PID nSigma"}; - Configurable> ConfTrkTPIDspecies{"ConfTrkTPIDspecies", std::vector{o2::track::PID::Electron, o2::track::PID::Pion, o2::track::PID::Kaon, o2::track::PID::Proton, o2::track::PID::Deuteron}, "Trk sel: Particles species for PID"}; - - // for now this selection does not work yet, however will very soon - // \todo once this is the case, set the limits less strict! - MutableConfigurable TrackMinSelPtMin{"TrackMinSelPtMin", 0.4f, "(automatic) Minimal pT selection for tracks"}; - MutableConfigurable TrackMinSelPtMax{"TrackMinSelPtMax", 10.f, "(automatic) Maximal pT selection for tracks"}; - MutableConfigurable TrackMinSelEtaMax{"TrackMinSelEtaMax", 1.f, "(automatic) Maximal eta selection for tracks"}; - - Filter trackFilter = (aod::track::pt > TrackMinSelPtMin.value) && - (aod::track::pt < TrackMinSelPtMax.value) && - (nabs(aod::track::eta) < TrackMinSelEtaMax.value); + Configurable> ConfTrkCharge{FemtoDreamTrackSelection::getSelectionName(femtoDreamTrackSelection::kSign, "ConfTrk"), std::vector{-1, 1}, FemtoDreamTrackSelection::getSelectionHelper(femtoDreamTrackSelection::kSign, "Track selection: ")}; + Configurable> ConfTrkPtmin{FemtoDreamTrackSelection::getSelectionName(femtoDreamTrackSelection::kpTMin, "ConfTrk"), std::vector{0.4f, 0.6f, 0.5f}, FemtoDreamTrackSelection::getSelectionHelper(femtoDreamTrackSelection::kpTMin, "Track selection: ")}; + Configurable> ConfTrkEta{FemtoDreamTrackSelection::getSelectionName(femtoDreamTrackSelection::kEtaMax, "ConfTrk"), std::vector{0.8f, 0.7f, 0.9f}, FemtoDreamTrackSelection::getSelectionHelper(femtoDreamTrackSelection::kEtaMax, "Track selection: ")}; + Configurable> ConfTrkTPCnclsMin{FemtoDreamTrackSelection::getSelectionName(femtoDreamTrackSelection::kTPCnClsMin, "ConfTrk"), std::vector{80.f, 70.f, 60.f}, FemtoDreamTrackSelection::getSelectionHelper(femtoDreamTrackSelection::kTPCnClsMin, "Track selection: ")}; + Configurable> ConfTrkTPCfCls{FemtoDreamTrackSelection::getSelectionName(femtoDreamTrackSelection::kTPCfClsMin, "ConfTrk"), std::vector{0.7f, 0.83f, 0.9f}, FemtoDreamTrackSelection::getSelectionHelper(femtoDreamTrackSelection::kTPCfClsMin, "Track selection: ")}; + Configurable> ConfTrkTPCsCls{FemtoDreamTrackSelection::getSelectionName(femtoDreamTrackSelection::kTPCsClsMax, "ConfTrk"), std::vector{0.1f, 160.f}, FemtoDreamTrackSelection::getSelectionHelper(femtoDreamTrackSelection::kTPCsClsMax, "Track selection: ")}; + Configurable> ConfTrkDCAxyMax{FemtoDreamTrackSelection::getSelectionName(femtoDreamTrackSelection::kDCAxyMax, "ConfTrk"), std::vector{0.1f, 3.5f}, FemtoDreamTrackSelection::getSelectionHelper(femtoDreamTrackSelection::kDCAxyMax, "Track selection: ")}; /// here we need an open cut to do the DCA fits later on! + Configurable> ConfTrkDCAzMax{FemtoDreamTrackSelection::getSelectionName(femtoDreamTrackSelection::kDCAzMax, "ConfTrk"), std::vector{0.2f, 3.5f}, FemtoDreamTrackSelection::getSelectionHelper(femtoDreamTrackSelection::kDCAzMax, "Track selection: ")}; + /// \todo Reintegrate PID to the general selection container + Configurable> ConfTrkPIDnSigmaMax{FemtoDreamTrackSelection::getSelectionName(femtoDreamTrackSelection::kPIDnSigmaMax, "ConfTrk"), std::vector{3.5f, 3.f, 2.5f}, FemtoDreamTrackSelection::getSelectionHelper(femtoDreamTrackSelection::kPIDnSigmaMax, "Track selection: ")}; + Configurable> ConfTrkTPIDspecies{"ConfTrkTPIDspecies", std::vector{o2::track::PID::Pion, o2::track::PID::Kaon, o2::track::PID::Proton, o2::track::PID::Deuteron}, "Trk sel: Particles species for PID"}; FemtoDreamV0Selection v0Cuts; /// \todo fix how to pass array to setSelection, getRow() passing a different type! @@ -139,23 +131,16 @@ struct femtoDreamProducerTask { colCuts.init(&qaRegistry); trackCuts.setSelection(ConfTrkCharge, femtoDreamTrackSelection::kSign, femtoDreamSelection::kEqual); + trackCuts.setSelection(ConfTrkPtmin, femtoDreamTrackSelection::kpTMin, femtoDreamSelection::kLowerLimit); + trackCuts.setSelection(ConfTrkEta, femtoDreamTrackSelection::kEtaMax, femtoDreamSelection::kAbsUpperLimit); trackCuts.setSelection(ConfTrkTPCnclsMin, femtoDreamTrackSelection::kTPCnClsMin, femtoDreamSelection::kLowerLimit); trackCuts.setSelection(ConfTrkTPCfCls, femtoDreamTrackSelection::kTPCfClsMin, femtoDreamSelection::kLowerLimit); trackCuts.setSelection(ConfTrkTPCsCls, femtoDreamTrackSelection::kTPCsClsMax, femtoDreamSelection::kUpperLimit); + trackCuts.setSelection(ConfTrkDCAxyMax, femtoDreamTrackSelection::kDCAxyMax, femtoDreamSelection::kAbsUpperLimit); trackCuts.setSelection(ConfTrkDCAzMax, femtoDreamTrackSelection::kDCAzMax, femtoDreamSelection::kAbsUpperLimit); trackCuts.setSelection(ConfTrkPIDnSigmaMax, femtoDreamTrackSelection::kPIDnSigmaMax, femtoDreamSelection::kAbsUpperLimit); trackCuts.setPIDSpecies(ConfTrkTPIDspecies); - trackCuts.init(&qaRegistry); - - if (trackCuts.getNSelections(femtoDreamTrackSelection::kpTMin) > 0) { - TrackMinSelPtMin.value = trackCuts.getMinimalSelection(femtoDreamTrackSelection::kpTMin, femtoDreamSelection::kLowerLimit); - } - if (trackCuts.getNSelections(femtoDreamTrackSelection::kpTMax) > 0) { - TrackMinSelPtMax.value = trackCuts.getMinimalSelection(femtoDreamTrackSelection::kpTMax, femtoDreamSelection::kUpperLimit); - } - if (trackCuts.getNSelections(femtoDreamTrackSelection::kEtaMax) > 0) { - TrackMinSelEtaMax.value = trackCuts.getMinimalSelection(femtoDreamTrackSelection::kEtaMax, femtoDreamSelection::kAbsUpperLimit); - } + trackCuts.init(&qaRegistry); /// \todo fix how to pass array to setSelection, getRow() passing a different type! // v0Cuts.setSelection(ConfV0Selection->getRow(0), femtoDreamV0Selection::kDecVtxMax, femtoDreamSelection::kAbsUpperLimit); @@ -170,13 +155,14 @@ struct femtoDreamProducerTask { v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfV0DaughTPCnclsMin, femtoDreamTrackSelection::kTPCnClsMin, femtoDreamSelection::kLowerLimit); v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfV0DaughDCAMax, femtoDreamTrackSelection::kDCAzMax, femtoDreamSelection::kAbsUpperLimit); v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfV0DaughPIDnSigmaMax, femtoDreamTrackSelection::kPIDnSigmaMax, femtoDreamSelection::kAbsUpperLimit); - v0Cuts.init(&qaRegistry); + v0Cuts.init(&qaRegistry); } void process(aod::FilteredFullCollision const& col, aod::FilteredFullTracks const& tracks, o2::aod::V0Datas const& fullV0s) /// \todo with FilteredFullV0s { + /// First thing to do is to check whether the basic event selection criteria are fulfilled if (!colCuts.isSelected(col)) { return; } @@ -184,35 +170,31 @@ struct femtoDreamProducerTask { const auto mult = col.multV0M(); const auto spher = colCuts.computeSphericity(col, tracks); colCuts.fillQA(col); + // now the table is filled outputCollision(vtxZ, mult, spher); - int childIDs[2] = {0, 0}; - std::vector tmpIDtrack; - float temptrack[2]; - std::vector temptrackPt; - std::vector tempPostrackPt; + int childIDs[2] = {0, 0}; // these IDs are necessary to keep track of the children + std::vector tmpIDtrack; // this vector keeps track of the matching of the primary track table row <-> aod::track table global index for (auto& track : tracks) { + /// if the most open selection criteria are not fulfilled there is no point looking further at the track if (!trackCuts.isSelectedMinimal(track)) { continue; } - trackCuts.fillQA(track); - auto cutContainer = trackCuts.getCutContainer(track); - if (cutContainer > 0) { - trackCuts.fillCutQA(track, cutContainer); - outputTracks(outputCollision.lastIndex(), track.pt(), track.eta(), track.phi(), aod::femtodreamparticle::ParticleType::kTrack, cutContainer, track.dcaXY(), childIDs); - tmpIDtrack.push_back(track.globalIndex()); - temptrackPt.push_back(track.pt()); - temptrack[0] = outputTracks.lastIndex(); - temptrack[1] = track.pt(); - if (ConfDebugOutput) { - outputDebugTracks(outputCollision.lastIndex(), - track.sign(), track.tpcNClsFound(), - track.tpcNClsFindable(), - track.tpcNClsCrossedRows(), track.tpcNClsShared(), track.dcaXY(), track.dcaZ(), - track.tpcNSigmaEl(), track.tpcNSigmaPi(), track.tpcNSigmaKa(), track.tpcNSigmaPr(), track.tpcNSigmaDe(), - track.tofNSigmaEl(), track.tofNSigmaPi(), track.tofNSigmaKa(), track.tofNSigmaPr(), track.tofNSigmaDe()); - } + trackCuts.fillQA(track); + // the bit-wise container of the systematic variations is obtained + auto cutContainer = trackCuts.getCutContainer(track); + + // now the table is filled + outputTracks(outputCollision.lastIndex(), track.pt(), track.eta(), track.phi(), aod::femtodreamparticle::ParticleType::kTrack, cutContainer.at(0), cutContainer.at(1), track.dcaXY(), childIDs); + tmpIDtrack.push_back(track.globalIndex()); + if (ConfDebugOutput) { + outputDebugTracks(outputCollision.lastIndex(), + track.sign(), track.tpcNClsFound(), + track.tpcNClsFindable(), + track.tpcNClsCrossedRows(), track.tpcNClsShared(), track.dcaXY(), track.dcaZ(), + track.tpcNSigmaEl(), track.tpcNSigmaPi(), track.tpcNSigmaKa(), track.tpcNSigmaPr(), track.tpcNSigmaDe(), + track.tofNSigmaEl(), track.tofNSigmaPi(), track.tofNSigmaKa(), track.tofNSigmaPr(), track.tofNSigmaDe()); } } @@ -223,7 +205,7 @@ struct femtoDreamProducerTask { continue; } v0Cuts.fillQA(col, v0); ///\todo fill QA also for daughters - auto cutContainerV0 = v0Cuts.getCutContainer(col, v0, postrack, negtrack); + auto cutContainerV0 = v0Cuts.getCutContainer(col, v0, postrack, negtrack); if ((cutContainerV0.at(0) > 0) && (cutContainerV0.at(1) > 0) && (cutContainerV0.at(2) > 0)) { int postrackID = v0.posTrackId(); int rowInPrimaryTrackTablePos = -1; @@ -232,17 +214,17 @@ struct femtoDreamProducerTask { childIDs[1] = 0; ROOT::Math::PxPyPzMVector postrackVec(v0.pxpos(), v0.pypos(), v0.pzpos(), 0.); ROOT::Math::PxPyPzMVector negtrackVec(v0.pxneg(), v0.pyneg(), v0.pzneg(), 0.); - outputTracks(outputCollision.lastIndex(), postrackVec.Pt(), postrackVec.Eta(), postrackVec.Phi(), aod::femtodreamparticle::ParticleType::kV0Child, cutContainerV0.at(1), 0., childIDs); + outputTracks(outputCollision.lastIndex(), postrackVec.Pt(), postrackVec.Eta(), postrackVec.Phi(), aod::femtodreamparticle::ParticleType::kV0Child, cutContainerV0.at(1), cutContainerV0.at(2), 0., childIDs); const int rowOfPosTrack = outputTracks.lastIndex(); int negtrackID = v0.negTrackId(); int rowInPrimaryTrackTableNeg = -1; rowInPrimaryTrackTableNeg = getRowDaughters(negtrackID, tmpIDtrack); childIDs[0] = 0; childIDs[1] = rowInPrimaryTrackTableNeg; - outputTracks(outputCollision.lastIndex(), negtrackVec.Pt(), negtrackVec.Eta(), negtrackVec.Phi(), aod::femtodreamparticle::ParticleType::kV0Child, cutContainerV0.at(2), 0., childIDs); + outputTracks(outputCollision.lastIndex(), negtrackVec.Pt(), negtrackVec.Eta(), negtrackVec.Phi(), aod::femtodreamparticle::ParticleType::kV0Child, cutContainerV0.at(3), cutContainerV0.at(4), 0., childIDs); const int rowOfNegTrack = outputTracks.lastIndex(); int indexChildID[2] = {rowOfPosTrack, rowOfNegTrack}; - outputTracks(outputCollision.lastIndex(), v0.pt(), v0.eta(), v0.phi(), aod::femtodreamparticle::ParticleType::kV0, cutContainerV0.at(0), v0.v0cosPA(col.posX(), col.posY(), col.posZ()), indexChildID); + outputTracks(outputCollision.lastIndex(), v0.pt(), v0.eta(), v0.phi(), aod::femtodreamparticle::ParticleType::kV0, cutContainerV0.at(0), 0, v0.v0cosPA(col.posX(), col.posY(), col.posZ()), indexChildID); } } } diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDerived.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDerived.h index 109d5e768c832..3632e8b5a2e06 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDerived.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDerived.h @@ -24,11 +24,14 @@ namespace o2::aod { + +/// FemtoDreamCollision namespace femtodreamcollision { -DECLARE_SOA_COLUMN(MultV0M, multV0M, float); -DECLARE_SOA_COLUMN(Sphericity, sphericity, float); +DECLARE_SOA_COLUMN(MultV0M, multV0M, float); //! V0M multiplicity +DECLARE_SOA_COLUMN(Sphericity, sphericity, float); //! Sphericity of the event } // namespace femtodreamcollision + DECLARE_SOA_TABLE(FemtoDreamCollisions, "AOD", "FEMTODREAMCOLS", o2::soa::Index<>, o2::aod::collision::PosZ, @@ -36,50 +39,57 @@ DECLARE_SOA_TABLE(FemtoDreamCollisions, "AOD", "FEMTODREAMCOLS", femtodreamcollision::Sphericity); using FemtoDreamCollision = FemtoDreamCollisions::iterator; +/// FemtoDreamTrack namespace femtodreamparticle { +/// Distinuishes the different particle types enum ParticleType { - kTrack, - kV0, - kV0Child, - kCascade, - kCascadeBachelor + kTrack, //! Track + kV0, //! V0 + kV0Child, //! Child track of a V0 + kCascade, //! Cascade + kCascadeBachelor //! Bachelor track of a cascade }; +static constexpr std::string_view ParticleTypeName[5] = {"Tracks", "V0", "V0Child", "Cascade", "CascadeBachelor"}; //! Naming of the different particle types + +using cutContainerType = uint32_t; //! Definition of the data type for the bit-wise container for the different selection criteria + DECLARE_SOA_INDEX_COLUMN(FemtoDreamCollision, femtoDreamCollision); -DECLARE_SOA_COLUMN(Pt, pt, float); -DECLARE_SOA_COLUMN(Eta, eta, float); -DECLARE_SOA_COLUMN(Phi, phi, float); -DECLARE_SOA_COLUMN(PartType, partType, uint8_t); -DECLARE_SOA_COLUMN(Cut, cut, uint64_t); -DECLARE_SOA_COLUMN(TempFitVar, tempFitVar, float); -DECLARE_SOA_COLUMN(Indices, indices, int[2]); +DECLARE_SOA_COLUMN(Pt, pt, float); //! p_T (GeV/c) +DECLARE_SOA_COLUMN(Eta, eta, float); //! Eta +DECLARE_SOA_COLUMN(Phi, phi, float); //! Phi +DECLARE_SOA_COLUMN(PartType, partType, uint8_t); //! Type of the particle, according to femtodreamparticle::ParticleType +DECLARE_SOA_COLUMN(Cut, cut, cutContainerType); //! Bit-wise container for the different selection criteria +DECLARE_SOA_COLUMN(PIDCut, pidcut, cutContainerType); //! Bit-wise container for the different PID selection criteria \todo since bit-masking cannot be done yet with filters we use a second field for the PID +DECLARE_SOA_COLUMN(TempFitVar, tempFitVar, float); //! Observable for the template fitting (Track: DCA_xy, V0: CPA) +DECLARE_SOA_COLUMN(Indices, indices, int[2]); //! Field for the track indices to remove auto-correlations -DECLARE_SOA_DYNAMIC_COLUMN(Theta, theta, +DECLARE_SOA_DYNAMIC_COLUMN(Theta, theta, //! Compute the theta of the track [](float eta) -> float { return 2.f * std::atan(std::exp(-eta)); }); -DECLARE_SOA_DYNAMIC_COLUMN(Px, px, //! Momentum in x in GeV/c +DECLARE_SOA_DYNAMIC_COLUMN(Px, px, //! Compute the momentum in x in GeV/c [](float pt, float phi) -> float { return pt * std::sin(phi); }); -DECLARE_SOA_DYNAMIC_COLUMN(Py, py, //! Momentum in y in GeV/c +DECLARE_SOA_DYNAMIC_COLUMN(Py, py, //! Compute the momentum in y in GeV/c [](float pt, float phi) -> float { return pt * std::cos(phi); }); -DECLARE_SOA_DYNAMIC_COLUMN(Pz, pz, //! Momentum in z in GeV/c +DECLARE_SOA_DYNAMIC_COLUMN(Pz, pz, //! Compute the momentum in z in GeV/c [](float pt, float eta) -> float { return pt * std::sinh(eta); }); -DECLARE_SOA_DYNAMIC_COLUMN(P, p, //! Momentum in z in GeV/c +DECLARE_SOA_DYNAMIC_COLUMN(P, p, //! Compute the overall momentum in GeV/c [](float pt, float eta) -> float { return pt * std::cosh(eta); }); // debug variables -DECLARE_SOA_COLUMN(Sign, sign, int8_t); -DECLARE_SOA_COLUMN(TPCNClsFound, tpcNClsFound, uint8_t); -DECLARE_SOA_COLUMN(TPCNClsCrossedRows, tpcNClsCrossedRows, uint8_t); -DECLARE_SOA_DYNAMIC_COLUMN(TPCCrossedRowsOverFindableCls, tpcCrossedRowsOverFindableCls, //! +DECLARE_SOA_COLUMN(Sign, sign, int8_t); //! Sign of the track charge +DECLARE_SOA_COLUMN(TPCNClsFound, tpcNClsFound, uint8_t); //! Number of TPC clusters +DECLARE_SOA_COLUMN(TPCNClsCrossedRows, tpcNClsCrossedRows, uint8_t); //! Number of TPC crossed rows +DECLARE_SOA_DYNAMIC_COLUMN(TPCCrossedRowsOverFindableCls, tpcCrossedRowsOverFindableCls, //! Compute the number of crossed rows over findable TPC clusters [](int8_t tpcNClsFindable, int8_t tpcNClsCrossedRows) -> float { return (float)tpcNClsCrossedRows / (float)tpcNClsFindable; }); @@ -93,6 +103,7 @@ DECLARE_SOA_TABLE(FemtoDreamParticles, "AOD", "FEMTODREAMPARTS", femtodreamparticle::Phi, femtodreamparticle::PartType, femtodreamparticle::Cut, + femtodreamparticle::PIDCut, femtodreamparticle::TempFitVar, femtodreamparticle::Indices, femtodreamparticle::Theta, @@ -135,6 +146,14 @@ DECLARE_SOA_TABLE(FemtoDreamDebugParticles, "AOD", "FEMTODEBUGPARTS", pidtof_tiny::TOFNSigmaDe); using FemtoDreamDebugParticle = FemtoDreamDebugParticles::iterator; +/// Hash +namespace hash +{ +DECLARE_SOA_COLUMN(Bin, bin, int); //! Hash for the event mixing +} // namespace hash +DECLARE_SOA_TABLE(Hashes, "AOD", "HASH", hash::Bin); +using Hash = Hashes::iterator; + } // namespace o2::aod #endif /* ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODERIVED_H_ */ diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamCollisionSelection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamCollisionSelection.h index 5a41ea2f4a98b..b9f386c94618f 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamCollisionSelection.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamCollisionSelection.h @@ -19,23 +19,28 @@ #include "AnalysisCore/TriggerAliases.h" #include "Framework/HistogramRegistry.h" #include "Framework/Logger.h" -#include #include #include using namespace o2::framework; -namespace o2::analysis -{ -namespace femtoDream +namespace o2::analysis::femtoDream { /// \class FemtoDreamCollisionSelection -/// \brief Cut class to contain and execute all cuts applied to events +/// \brief Small selection class to check whether a given collision fulfills the specified selections class FemtoDreamCollisionSelection { public: + /// Destructor + virtual ~FemtoDreamCollisionSelection() = default; + + /// Pass the selection criteria to the class + /// \param zvtxMax Maximal value of the z-vertex + /// \param checkTrigger whether or not to check for the trigger alias + /// \param trig Requested trigger alias + /// \param checkOffline whether or not to check for offline selection criteria void setCuts(float zvtxMax, bool checkTrigger, int trig, bool checkOffline) { mCutsSet = true; @@ -46,6 +51,7 @@ class FemtoDreamCollisionSelection } /// Initializes histograms for the task + /// \param registry Histogram registry to be passed void init(HistogramRegistry* registry) { if (!mCutsSet) { @@ -56,67 +62,69 @@ class FemtoDreamCollisionSelection mHistogramRegistry->add("Event/MultV0M", "; vMultV0M; Entries", kTH1F, {{1000, 0, 1000}}); } + /// Print some debug information void printCuts() { std::cout << "Debug information for FemtoDreamCollisionSelection \n Max. z-vertex: " << mZvtxMax << "\n Check trigger: " << mCheckTrigger << "\n Trigger: " << mTrigger << "\n Check offline: " << mCheckOffline << "\n"; } + /// Check whether the collisions fulfills the specified selections + /// \tparam T type of the collision + /// \param col Collision + /// \return whether or not the collisions fulfills the specified selections template - bool isSelected(T const& col); - - template - void fillQA(T const& col); - - /// \todo to be implemented! - template - float computeSphericity(T1 const& col, T2 const& tracks); - - private: - bool mCutsSet = false; ///< Protection against running without cuts - float mZvtxMax = 999.f; ///< Maximal deviation from nominal z-vertex (cm) - bool mCheckTrigger = false; ///< Check for trigger - triggerAliases mTrigger = kINT7; ///< Trigger to check for - bool mCheckOffline = false; ///< Check for offline criteria (might change) - - HistogramRegistry* mHistogramRegistry = nullptr; ///< For QA output + bool isSelected(T const& col) + { + if (std::abs(col.posZ()) > mZvtxMax) { + return false; + } - ClassDefNV(FemtoDreamCollisionSelection, 1); -}; + if (mCheckTrigger && col.alias()[mTrigger] != 1) { + return false; + } -template -void FemtoDreamCollisionSelection::fillQA(T const& col) -{ - if (mHistogramRegistry) { - mHistogramRegistry->fill(HIST("Event/zvtxhist"), col.posZ()); - mHistogramRegistry->fill(HIST("Event/MultV0M"), col.multV0M()); - } -} + if (mCheckOffline && col.sel7() != 1) { + return false; + } -template -bool FemtoDreamCollisionSelection::isSelected(T const& col) -{ - if (std::abs(col.posZ()) > mZvtxMax) { - return false; + return true; } - if (mCheckTrigger && col.alias()[mTrigger] != 1) { - return false; + /// Some basic QA of the event + /// \tparam T type of the collision + /// \param col Collision + template + void fillQA(T const& col) + { + if (mHistogramRegistry) { + mHistogramRegistry->fill(HIST("Event/zvtxhist"), col.posZ()); + mHistogramRegistry->fill(HIST("Event/MultV0M"), col.multV0M()); + } } - if (mCheckOffline && col.sel7() != 1) { - return false; + /// \todo to be implemented! + /// Compute the sphericity of an event + /// Important here is that the filter on tracks does not interfere here! + /// In Run 2 we used here global tracks within |eta| < 0.8 + /// \tparam T1 type of the collision + /// \tparam T2 type of the tracks + /// \param col Collision + /// \param tracks All tracks + /// \return value of the sphericity of the event + template + float computeSphericity(T1 const& col, T2 const& tracks) + { + return 2.f; } - return true; -} - -template -float FemtoDreamCollisionSelection::computeSphericity(T1 const& col, T2 const& tracks) -{ - return 2.f; -} - -} /* namespace femtoDream */ -} /* namespace o2::analysis */ + private: + HistogramRegistry* mHistogramRegistry = nullptr; ///< For QA output + bool mCutsSet = false; ///< Protection against running without cuts + bool mCheckTrigger = false; ///< Check for trigger + bool mCheckOffline = false; ///< Check for offline criteria (might change) + triggerAliases mTrigger = kINT7; ///< Trigger to check for + float mZvtxMax = 999.f; ///< Maximal deviation from nominal z-vertex (cm) +}; +} // namespace o2::analysis::femtoDream #endif /* ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMCOLLISIONSELECTION_H_ */ diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamContainer.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamContainer.h index c1e53fb67d027..3209e4310fa7c 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamContainer.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamContainer.h @@ -21,31 +21,52 @@ #include "FemtoDreamMath.h" #include "Math/Vector4D.h" -#include "TLorentzVector.h" #include "TMath.h" #include "TDatabasePDG.h" +using namespace o2::framework; + namespace o2::analysis::femtoDream { namespace femtoDreamContainer { -enum Observable { kstar }; -} +/// Femtoscopic observable to be computed +enum Observable { kstar ///< kstar +}; + +/// Type of the event processind +enum EventType { same, ///< Pair from same event + mixed ///< Pair from mixed event +}; +}; // namespace femtoDreamContainer /// \class FemtoDreamContainer /// \brief Container for all histogramming related to the correlation function. The two /// particles of the pair are passed here, and the correlation function and QA histograms /// are filled according to the specified observable +/// \tparam eventType Type of the event (same/mixed) +/// \tparam obs Observable to be computed (k*/Q_inv/...) +template class FemtoDreamContainer { public: + /// Destructor + virtual ~FemtoDreamContainer() = default; + + /// Initializes histograms for the task + /// \tparam T Type of the configurable for the axis configuration + /// \param registry Histogram registry to be passed + /// \param kstarBins k* binning for the histograms + /// \param multBins multiplicity binning for the histograms + /// \param kTBins kT binning for the histograms + /// \param mTBins mT binning for the histograms template - void init(o2::framework::HistogramRegistry* registry, femtoDreamContainer::Observable obs, T& kstarBins, T& multBins, T& kTBins, T& mTBins) + void init(HistogramRegistry* registry, T& kstarBins, T& multBins, T& kTBins, T& mTBins) { mHistogramRegistry = registry; std::string femtoObs; - if (mFemtoObs == femtoDreamContainer::Observable::kstar) { + if constexpr (mFemtoObs == femtoDreamContainer::Observable::kstar) { femtoObs = "#it{k*} (GeV/#it{c})"; } std::vector tmpVecMult = multBins; @@ -54,44 +75,54 @@ class FemtoDreamContainer framework::AxisSpec kTAxis = {kTBins, "#it{k}_{T} (GeV/#it{c})"}; framework::AxisSpec mTAxis = {mTBins, "#it{m}_{T} (GeV/#it{c}^{2})"}; - mHistogramRegistry->add("relPairDist", ("; " + femtoObs + "; Entries").c_str(), o2::framework::kTH1F, {femtoObsAxis}); - mHistogramRegistry->add("relPairkT", "; #it{k}_{T} (GeV/#it{c}); Entries", o2::framework::kTH1F, {kTAxis}); - mHistogramRegistry->add("relPairkstarkT", ("; " + femtoObs + "; #it{k}_{T} (GeV/#it{c})").c_str(), o2::framework::kTH2F, {femtoObsAxis, kTAxis}); - mHistogramRegistry->add("relPairkstarmT", ("; " + femtoObs + "; #it{m}_{T} (GeV/#it{c}^{2})").c_str(), o2::framework::kTH2F, {femtoObsAxis, mTAxis}); - mHistogramRegistry->add("relPairkstarMult", ("; " + femtoObs + "; Multiplicity").c_str(), o2::framework::kTH2F, {femtoObsAxis, multAxis}); + std::string folderName = static_cast(mFolderSuffix[mEventType]); + mHistogramRegistry->add((folderName + "relPairDist").c_str(), ("; " + femtoObs + "; Entries").c_str(), kTH1F, {femtoObsAxis}); + mHistogramRegistry->add((folderName + "relPairkT").c_str(), "; #it{k}_{T} (GeV/#it{c}); Entries", kTH1F, {kTAxis}); + mHistogramRegistry->add((folderName + "relPairkstarkT").c_str(), ("; " + femtoObs + "; #it{k}_{T} (GeV/#it{c})").c_str(), kTH2F, {femtoObsAxis, kTAxis}); + mHistogramRegistry->add((folderName + "relPairkstarmT").c_str(), ("; " + femtoObs + "; #it{m}_{T} (GeV/#it{c}^{2})").c_str(), kTH2F, {femtoObsAxis, mTAxis}); + mHistogramRegistry->add((folderName + "relPairkstarMult").c_str(), ("; " + femtoObs + "; Multiplicity").c_str(), kTH2F, {femtoObsAxis, multAxis}); } + /// Set the PDG codes of the two particles involved + /// \param pdg1 PDG code of particle one + /// \param pdg2 PDG code of particle two void setPDGCodes(const int pdg1, const int pdg2) { mMassOne = TDatabasePDG::Instance()->GetParticle(pdg1)->Mass(); mMassTwo = TDatabasePDG::Instance()->GetParticle(pdg2)->Mass(); } + /// Pass a pair to the container and compute all the relevant observables + /// \tparam T type of the femtodreamparticle + /// \param part1 Particle one + /// \param part2 Particle two + /// \param mult Multiplicity of the event template void setPair(T const& part1, T const& part2, const int mult) { float femtoObs; - if (mFemtoObs == femtoDreamContainer::Observable::kstar) { + if constexpr (mFemtoObs == femtoDreamContainer::Observable::kstar) { femtoObs = FemtoDreamMath::getkstar(part1, mMassOne, part2, mMassTwo); } const float kT = FemtoDreamMath::getkT(part1, mMassOne, part2, mMassTwo); const float mT = FemtoDreamMath::getmT(part1, mMassOne, part2, mMassTwo); if (mHistogramRegistry) { - mHistogramRegistry->fill(HIST("relPairDist"), femtoObs); - mHistogramRegistry->fill(HIST("relPairkT"), kT); - mHistogramRegistry->fill(HIST("relPairkstarkT"), femtoObs, kT); - mHistogramRegistry->fill(HIST("relPairkstarmT"), femtoObs, mT); - mHistogramRegistry->fill(HIST("relPairkstarMult"), femtoObs, mult); + mHistogramRegistry->fill(HIST(mFolderSuffix[mEventType]) + HIST("relPairDist"), femtoObs); + mHistogramRegistry->fill(HIST(mFolderSuffix[mEventType]) + HIST("relPairkT"), kT); + mHistogramRegistry->fill(HIST(mFolderSuffix[mEventType]) + HIST("relPairkstarkT"), femtoObs, kT); + mHistogramRegistry->fill(HIST(mFolderSuffix[mEventType]) + HIST("relPairkstarmT"), femtoObs, mT); + mHistogramRegistry->fill(HIST(mFolderSuffix[mEventType]) + HIST("relPairkstarMult"), femtoObs, mult); } } protected: - femtoDreamContainer::Observable mFemtoObs = femtoDreamContainer::Observable::kstar; - o2::framework::HistogramRegistry* mHistogramRegistry = nullptr; - - float mMassOne = 0.f; - float mMassTwo = 0.f; + HistogramRegistry* mHistogramRegistry = nullptr; ///< For QA output + static constexpr std::string_view mFolderSuffix[2] = {"SameEvent/", "MixedEvent/"}; ///< Folder naming for the output according to mEventType + static constexpr femtoDreamContainer::Observable mFemtoObs = obs; ///< Femtoscopic observable to be computed (according to femtoDreamContainer::Observable) + static constexpr int mEventType = eventType; ///< Type of the event (same/mixed, according to femtoDreamContainer::EventType) + float mMassOne = 0.f; ///< PDG mass of particle 1 + float mMassTwo = 0.f; ///< PDG mass of particle 2 }; } // namespace o2::analysis::femtoDream diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamCutculator.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamCutculator.h new file mode 100644 index 0000000000000..5935a901ccf2d --- /dev/null +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamCutculator.h @@ -0,0 +1,189 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file FemtoDreamCutculator.h +/// \brief FemtoDreamCutculator - small class to match bit-wise encoding and actual physics cuts +/// \author Andi Mathis, TU München, andreas.mathis@ph.tum.de + +#ifndef ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMCUTCULATOR_H_ +#define ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMCUTCULATOR_H_ + +#include "FemtoDreamSelection.h" +#include "FemtoDreamTrackSelection.h" + +#include + +#include +#include +#include + +namespace o2::analysis::femtoDream +{ + +/// \class FemtoDreamCutculator +/// \brief Small class to match bit-wise encoding and actual physics cuts +class FemtoDreamCutculator +{ + public: + /// Initializes boost ptree + /// \param configFile Path to the dpl-config.json file from the femtodream-producer task + void init(const char* configFile) + { + std::cout << "Welcome to the CutCulator!\n"; + + boost::property_tree::ptree root; + try { + boost::property_tree::read_json(configFile, root); + } catch (const boost::property_tree::ptree_error& e) { + LOG(FATAL) << "Failed to read JSON config file " << configFile << " (" << e.what() << ")"; + } + mConfigTree = root.get_child("femto-dream-producer-task"); + }; + + /// Generic function that retrieves a given selection from the boost ptree and returns an std::vector in the proper format + /// \param name Name of the selection in the dpl-config.json + /// \return std::vector that can be directly passed to the FemtoDreamTrack/V0/../Selection + std::vector setSelection(std::string name) + { + try { + boost::property_tree::ptree& signSelections = mConfigTree.get_child(name); + boost::property_tree::ptree& signSelectionsValue = signSelections.get_child("values"); + std::vector tmpVec; + for (boost::property_tree::ptree::value_type& val : signSelectionsValue) { + tmpVec.push_back(std::stof(val.second.data())); + } + return tmpVec; + } catch (const boost::property_tree::ptree_error& e) { + LOG(WARNING) << "Selection " << name << " not available (" << e.what() << ")"; + return {}; + } + } + + /// Specialization of the setSelection function for tracks + /// The selection passed to the function is retrieves from the dpl-config.json + /// \param obs Observable of the track selection + /// \param type Type of the track selection + /// \param prefix Prefix which is added to the name of the Configurable + void setTrackSelection(femtoDreamTrackSelection::TrackSel obs, femtoDreamSelection::SelectionType type, const char* prefix) + { + auto tmpVec = setSelection(FemtoDreamTrackSelection::getSelectionName(obs, prefix)); + if (tmpVec.size() > 0) { + mTrackSel.setSelection(tmpVec, obs, type); + } + } + + /// This function investigates a given selection criterion. The available options are displayed in the terminal and the bit-wise container is put together according to the user input + /// \tparam T1 Selection class under investigation + /// \param T2 Selection type under investigation + /// \param output Bit-wise container for the systematic variations + /// \param counter Current position in the bit-wise container to modify + /// \tparam objectSelection Selection class under investigation (FemtoDreamTrack/V0/../Selection) + /// \param selectionType Selection type under investigation, as defined in the selection class + template + void checkForSelection(aod::femtodreamparticle::cutContainerType& output, size_t& counter, T1 objectSelection, T2 selectionType) + { + /// Output of the available selections and user input + std::cout << "Selection: " << objectSelection.getSelectionHelper(selectionType) << " - ("; + auto selVec = objectSelection.getSelections(selectionType); + for (auto selIt : selVec) { + std::cout << selIt.getSelectionValue() << " "; + } + std::cout << ")\n > "; + std::string in; + std::cin >> in; + const float input = std::stof(in); + + /// First we check whether the input is actually contained within the options + bool inputSane = false; + for (auto sel : selVec) { + if (std::abs(sel.getSelectionValue() - input) < std::abs(1.e-6 * input)) { + inputSane = true; + } + } + + /// If the input is sane, the selection bit is put together + if (inputSane) { + for (auto sel : selVec) { + double signOffset; + switch (sel.getSelectionType()) { + case femtoDreamSelection::SelectionType::kEqual: + signOffset = 0.; + break; + case (femtoDreamSelection::SelectionType::kLowerLimit): + case (femtoDreamSelection::SelectionType::kAbsLowerLimit): + signOffset = 1.; + break; + case (femtoDreamSelection::SelectionType::kUpperLimit): + case (femtoDreamSelection::SelectionType::kAbsUpperLimit): + signOffset = -1.; + break; + } + + /// for upper and lower limit we have to substract/add an epsilon so that the cut is actually fulfilled + if (sel.isSelected(input + signOffset * 1.e-6 * input)) { + output |= 1UL << counter; + } + ++counter; + } + } else { + std::cout << "Choice " << in << " not recognized - repeating\n"; + checkForSelection(output, counter, objectSelection, selectionType); + } + } + + /// This function iterates over all selection types of a given class and puts together the bit-wise container + /// \tparam T1 Selection class under investigation + /// \tparam objectSelection Selection class under investigation (FemtoDreamTrack/V0/../Selection) + /// \return the full selection bit-wise container that will be put to the user task incorporating the user choice of selections + template + aod::femtodreamparticle::cutContainerType iterateSelection(T objectSelection) + { + aod::femtodreamparticle::cutContainerType output = 0; + size_t counter = 0; + auto selectionVariables = objectSelection.getSelectionVariables(); + for (auto selVarIt : selectionVariables) { + checkForSelection(output, counter, objectSelection, selVarIt); + } + return output; + } + + /// This is the function called by the executable that then outputs the full selection bit-wise container incorporating the user choice of selections + void analyseCuts() + { + std::cout << "Do you want to work with tracks/v0/cascade (T/V/C)?\n"; + std::cout << " > "; + std::string in; + std::cin >> in; + aod::femtodreamparticle::cutContainerType output = -1; + if (in.compare("T") == 0) { + output = iterateSelection(mTrackSel); + } else if (in.compare("V") == 0) { + //output= iterateSelection(mV0Sel); + } else if (in.compare("C") == 0) { + //output = iterateSelection(mCascadeSel); + } else { + std::cout << "Option " << in << " not recognized - available options are (T/V/C) \n"; + analyseCuts(); + } + std::bitset<8 * sizeof(aod::femtodreamparticle::cutContainerType)> bitOutput = output; + std::cout << "+++++++++++++++++++++++++++++++++\n"; + std::cout << "CutCulator has spoken - your selection bit is\n"; + std::cout << bitOutput << " (bitwise)\n"; + std::cout << output << " (number representation)\n"; + } + + private: + boost::property_tree::ptree mConfigTree; ///< the dpl-config.json buffered into a ptree + FemtoDreamTrackSelection mTrackSel; ///< for setting up the bit-wise selection container for tracks +}; +} // namespace o2::analysis::femtoDream + +#endif /* ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMCUTCULATOR_H_ */ diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamMath.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamMath.h index db29a9067bb58..8fb1b1bb26341 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamMath.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamMath.h @@ -23,64 +23,71 @@ #include -namespace o2::analysis -{ -namespace femtoDream +namespace o2::analysis::femtoDream { /// \class FemtoDreamMath /// \brief Container for math calculations of quantities related to pairs - class FemtoDreamMath { public: + /// Compute the k* of a pair of particles + /// \tparam T type of tracks + /// \param part1 Particle 1 + /// \param mass1 Mass of particle 1 + /// \param part2 Particle 2 + /// \param mass2 Mass of particle 2 template static float getkstar(const T& part1, const float mass1, const T& part2, const float mass2) { - ROOT::Math::PtEtaPhiMVector vecpart1(part1.pt(), part1.eta(), part1.phi(), mass1); - ROOT::Math::PtEtaPhiMVector vecpart2(part2.pt(), part2.eta(), part2.phi(), mass2); - - ROOT::Math::PtEtaPhiMVector trackSum = vecpart1 + vecpart2; + const ROOT::Math::PtEtaPhiMVector vecpart1(part1.pt(), part1.eta(), part1.phi(), mass1); + const ROOT::Math::PtEtaPhiMVector vecpart2(part2.pt(), part2.eta(), part2.phi(), mass2); + const ROOT::Math::PtEtaPhiMVector trackSum = vecpart1 + vecpart2; - float beta = trackSum.Beta(); - float betax = beta * std::cos(trackSum.Phi()) * std::sin(trackSum.Theta()); - float betay = beta * std::sin(trackSum.Phi()) * std::sin(trackSum.Theta()); - float betaz = beta * std::cos(trackSum.Theta()); + const float beta = trackSum.Beta(); + const float betax = beta * std::cos(trackSum.Phi()) * std::sin(trackSum.Theta()); + const float betay = beta * std::sin(trackSum.Phi()) * std::sin(trackSum.Theta()); + const float betaz = beta * std::cos(trackSum.Theta()); ROOT::Math::PxPyPzMVector PartOneCMS(vecpart1); ROOT::Math::PxPyPzMVector PartTwoCMS(vecpart2); - ROOT::Math::Boost boostPRF = ROOT::Math::Boost(-betax, -betay, -betaz); + const ROOT::Math::Boost boostPRF = ROOT::Math::Boost(-betax, -betay, -betaz); PartOneCMS = boostPRF(PartOneCMS); PartTwoCMS = boostPRF(PartTwoCMS); - ROOT::Math::PxPyPzMVector trackRelK = PartOneCMS - PartTwoCMS; + const ROOT::Math::PxPyPzMVector trackRelK = PartOneCMS - PartTwoCMS; return 0.5 * trackRelK.P(); } + /// Compute the transverse momentum of a pair of particles + /// \tparam T type of tracks + /// \param part1 Particle 1 + /// \param mass1 Mass of particle 1 + /// \param part2 Particle 2 + /// \param mass2 Mass of particle 2 template static float getkT(const T& part1, const float mass1, const T& part2, const float mass2) { - ROOT::Math::PtEtaPhiMVector vecpart1(part1.pt(), part1.eta(), part1.phi(), mass1); - ROOT::Math::PtEtaPhiMVector vecpart2(part2.pt(), part2.eta(), part2.phi(), mass2); - - ROOT::Math::PtEtaPhiMVector trackSum = vecpart1 + vecpart2; + const ROOT::Math::PtEtaPhiMVector vecpart1(part1.pt(), part1.eta(), part1.phi(), mass1); + const ROOT::Math::PtEtaPhiMVector vecpart2(part2.pt(), part2.eta(), part2.phi(), mass2); + const ROOT::Math::PtEtaPhiMVector trackSum = vecpart1 + vecpart2; return 0.5 * trackSum.Pt(); } + /// Compute the transverse mass of a pair of particles + /// \tparam T type of tracks + /// \param part1 Particle 1 + /// \param mass1 Mass of particle 1 + /// \param part2 Particle 2 + /// \param mass2 Mass of particle 2 template static float getmT(const T& part1, const float mass1, const T& part2, const float mass2) { - ROOT::Math::PtEtaPhiMVector vecpart1(part1.pt(), part1.eta(), part1.phi(), mass1); - ROOT::Math::PtEtaPhiMVector vecpart2(part2.pt(), part2.eta(), part2.phi(), mass2); - - ROOT::Math::PtEtaPhiMVector trackSum = vecpart1 + vecpart2; - float averageMass = 0.5 * (mass1 + mass2); - return std::sqrt(std::pow(getkT(part1, mass1, part2, mass2), 2.) + std::pow(averageMass, 2.)); + return std::sqrt(std::pow(getkT(part1, mass1, part2, mass2), 2.) + std::pow(0.5 * (mass1 + mass2), 2.)); } }; -} /* namespace femtoDream */ -} /* namespace o2::analysis */ +} // namespace o2::analysis::femtoDream #endif /* ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMMATH_H_ */ diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamObjectSelection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamObjectSelection.h index ee33a3c8c51d3..0ab6d010665da 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamObjectSelection.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamObjectSelection.h @@ -10,7 +10,7 @@ // or submit itself to any jurisdiction. /// \file FemtoDreamObjectSelection.h -/// \brief FemtoDreamObjectSelection - Partent class of all selections +/// \brief FemtoDreamObjectSelection - Parent class of all selections /// \author Andi Mathis, TU München, andreas.mathis@ph.tum.de #ifndef ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMOBJECTSELECTION_H_ @@ -20,10 +20,6 @@ #include "ReconstructionDataFormats/PID.h" #include "Framework/HistogramRegistry.h" -#include - -#include -#include using namespace o2::framework; @@ -34,66 +30,80 @@ namespace femtoDream /// \class FemtoDreamObjectSelection /// \brief Cut class to contain and execute all cuts applied to tracks - -template +/// \todo In principle all cuts that fulfill the getMinimalSelection are done implicitly and can be removed from the vector containing all cuts +/// \tparam selValDataType Data type used for the selection (float/int/bool/...) +/// \tparam selVariable Variable used for the selection +template class FemtoDreamObjectSelection { public: + /// Destructor virtual ~FemtoDreamObjectSelection() = default; - /// Initializes histograms for the task - void init(HistogramRegistry* registry) - { - mHistogramRegistry = registry; - } - - void fillSelectionHistogram(const char* name) + /// The selection criteria employed in the child class are written to a histogram + /// \tparam part Type of the particle, used as a prefix for the folder in the QAResults.root + template + void fillSelectionHistogram() { int nBins = mSelections.size(); - mHistogramRegistry->add(name, "; Cut; Value", kTH1F, {{nBins, 0, static_cast(nBins)}}); - auto hist = mHistogramRegistry->get(HIST("TrackCuts/cuthist")); + mHistogramRegistry->add((static_cast(o2::aod::femtodreamparticle::ParticleTypeName[part]) + "/cuthist").c_str(), "; Cut; Value", kTH1F, {{nBins, 0, static_cast(nBins)}}); + auto hist = mHistogramRegistry->get(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/cuthist")); for (size_t i = 0; i < mSelections.size(); ++i) { hist->GetXaxis()->SetBinLabel(i + 1, Form("%u", mSelections.at(i).getSelectionVariable())); hist->SetBinContent(i + 1, mSelections.at(i).getSelectionValue()); } } + /// Pass the Configurable of selection values in the analysis task to the selection class + /// \tparam T Type of the configurable passed to the function + /// \param selVals o2 configurable containing the values employed for the selection + /// \param selVar Variable to be employed for the selection + /// \param selType Type of the selection to be employed template - void setSelection(T& selVals, T2 selVar, femtoDreamSelection::SelectionType selType) + void setSelection(T& selVals, selVariable selVar, femtoDreamSelection::SelectionType selType) { - std::vector tmpSelVals = selVals; // necessary due to some features of the Configurable - std::vector> tempVec; - for (const T1 selVal : tmpSelVals) { - tempVec.push_back(FemtoDreamSelection(selVal, selVar, selType)); + std::vector tmpSelVals = selVals; // necessary due to some features of the Configurable + std::vector> tempVec; + for (const selValDataType selVal : tmpSelVals) { + tempVec.push_back(FemtoDreamSelection(selVal, selVar, selType)); } setSelection(tempVec); } - void setSelection(std::vector>& sels) + /// Pass an std::vector of selection values to the selection class + /// \param sels std::vector containing FemtoDreamSelections + void setSelection(std::vector>& sels) { + /// First the selection is sorted so that the most open cuts are conducted first switch (sels.at(0).getSelectionType()) { case (femtoDreamSelection::SelectionType::kUpperLimit): case (femtoDreamSelection::SelectionType::kAbsUpperLimit): - std::sort(sels.begin(), sels.end(), [](FemtoDreamSelection a, FemtoDreamSelection b) { + std::sort(sels.begin(), sels.end(), [](FemtoDreamSelection a, FemtoDreamSelection b) { return a.getSelectionValue() > b.getSelectionValue(); }); break; case (femtoDreamSelection::SelectionType::kLowerLimit): case (femtoDreamSelection::SelectionType::kAbsLowerLimit): case (femtoDreamSelection::SelectionType::kEqual): - std::sort(sels.begin(), sels.end(), [](FemtoDreamSelection a, FemtoDreamSelection b) { + std::sort(sels.begin(), sels.end(), [](FemtoDreamSelection a, FemtoDreamSelection b) { return a.getSelectionValue() < b.getSelectionValue(); }); break; } + + /// Then, the sorted selections are added to the overall container of cuts for (const auto sel : sels) { mSelections.push_back(sel); } } - T1 getMinimalSelection(T2 selVar, femtoDreamSelection::SelectionType selType) + /// Retrieve the most open selection of a given selection variable + /// \param selVar Selection variable under consideration + /// \param selType Type of the selection variable + /// \return The most open selection of the selection variable given to the class + selValDataType getMinimalSelection(selVariable selVar, femtoDreamSelection::SelectionType selType) { - T1 minimalSel; + selValDataType minimalSel; switch (selType) { case (femtoDreamSelection::SelectionType::kUpperLimit): case (femtoDreamSelection::SelectionType::kAbsUpperLimit): @@ -128,27 +138,52 @@ class FemtoDreamObjectSelection return minimalSel; } + /// The total number of different selections + /// \return Total number of selections size_t getNSelections() { return mSelections.size(); } - size_t getNSelections(T2 selVar) + /// The number of selection of an individual variable + /// \param selVar Selection variable under consideration + /// \return Number of selection of the individual variable + size_t getNSelections(selVariable selVar) + { + return getSelections(selVar).size(); + } + + /// Obtain the selections of an individual variable + /// \param selVar Selection variable under consideration + /// \return All selections of the individual variable + std::vector> getSelections(selVariable selVar) { - size_t counter = 0; + std::vector> selValVec; for (auto it : mSelections) { if (it.getSelectionVariable() == selVar) { - ++counter; + selValVec.push_back(it); } } - return counter; + return selValVec; } - protected: - std::vector> mSelections; - HistogramRegistry* mHistogramRegistry; ///< For QA output + /// Retrieve all the different selection variables + /// \return std::vector containing all the different selection variables + std::vector getSelectionVariables() + { + std::vector selVarVec; + for (auto it : mSelections) { + auto selVar = it.getSelectionVariable(); + if (std::none_of(selVarVec.begin(), selVarVec.end(), [selVar](selVariable a) { return a == selVar; })) { + selVarVec.push_back(selVar); + } + } + return selVarVec; + } - ClassDefNV(FemtoDreamObjectSelection, 1); + protected: + HistogramRegistry* mHistogramRegistry; ///< For QA output + std::vector> mSelections; ///< Vector containing all selections }; } // namespace femtoDream diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamPairCleaner.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamPairCleaner.h index 79d855cab21ca..76b02e81fd276 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamPairCleaner.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamPairCleaner.h @@ -16,38 +16,79 @@ #ifndef ANALYSIS_TASKS_PWGCF_O2FEMTODREAM_INCLUDE_O2FEMTODREAM_FEMTODREAMPAIRCLEANER_H_ #define ANALYSIS_TASKS_PWGCF_O2FEMTODREAM_INCLUDE_O2FEMTODREAM_FEMTODREAMPAIRCLEANER_H_ +#include "FemtoDerived.h" #include "Framework/HistogramRegistry.h" -#include using namespace o2::framework; -namespace o2::femtoDream +namespace o2::analysis::femtoDream { -namespace femtoDreamPairCleaner -{ -enum CleanConf { kStrict, - kLoose, - kDeltaEtaDeltaPhiStar }; -} - +/// \class FemtoDreamPairCleaner +/// \brief Class taking care that no autocorrelations enter the same event distribution +/// \tparam partOne Type of particle 1 (Track/V0/Cascade/...) +/// \tparam partTwo Type of particle 2 (Track/V0/Cascade/...) +template class FemtoDreamPairCleaner { public: + /// Destructor virtual ~FemtoDreamPairCleaner() = default; - void init(femtoDreamPairCleaner::CleanConf conf, HistogramRegistry* registry) + /// Initalization of the QA histograms + /// \param registry HistogramRegistry + void init(HistogramRegistry* registry) { if (registry) { mHistogramRegistry = registry; + // \todo some QA histograms like in FemtoDream } } - private: - HistogramRegistry* mHistogramRegistry; ///< For QA output + /// Check whether a given pair has shared tracks + /// \tparam Part Data type of the particle + /// \tparam Parts Data type of the collection of all particles + /// \param part1 Particle 1 + /// \param part2 Particle 2 + /// \param particles Collection of all particles passed to the task + /// \return Whether the pair has shared tracks + template + bool isCleanPair(Part const& part1, Part const& part2, Parts const& particles) + { + if constexpr (mPartOneType == o2::aod::femtodreamparticle::ParticleType::kTrack && mPartTwoType == o2::aod::femtodreamparticle::ParticleType::kTrack) { + /// Track-Track combination + return part1.globalIndex() != part2.globalIndex(); + } else if constexpr (mPartOneType == o2::aod::femtodreamparticle::ParticleType::kTrack && mPartTwoType == o2::aod::femtodreamparticle::ParticleType::kV0) { + /// Track-V0 combination + // \todo to be implemented + return false; + } else if constexpr (mPartOneType == o2::aod::femtodreamparticle::ParticleType::kTrack && mPartTwoType == o2::aod::femtodreamparticle::ParticleType::kCascade) { + /// Track-Cascade combination + // \todo to be implemented + return false; + } else if constexpr (mPartOneType == o2::aod::femtodreamparticle::ParticleType::kV0 && mPartTwoType == o2::aod::femtodreamparticle::ParticleType::kV0) { + /// V0-V0 combination + // \todo to be implemented + return false; + } else if constexpr (mPartOneType == o2::aod::femtodreamparticle::ParticleType::kV0 && mPartTwoType == o2::aod::femtodreamparticle::ParticleType::kCascade) { + /// V0-Cascade combination + // \todo to be implemented + return false; + } else if constexpr (mPartOneType == o2::aod::femtodreamparticle::ParticleType::kCascade && mPartTwoType == o2::aod::femtodreamparticle::ParticleType::kCascade) { + /// Cascade-Cascade combination + // \todo to be implemented + return false; + } else { + LOG(FATAL) << "FemtoDreamPairCleaner: Combination of objects not defined - quitting!"; + return false; + } + } - ClassDefNV(FemtoDreamPairCleaner, 1); + private: + HistogramRegistry* mHistogramRegistry; ///< For QA output + static constexpr o2::aod::femtodreamparticle::ParticleType mPartOneType = partOne; ///< Type of particle 1 + static constexpr o2::aod::femtodreamparticle::ParticleType mPartTwoType = partTwo; ///< Type of particle 2 }; -} // namespace o2::femtoDream +} // namespace o2::analysis::femtoDream #endif /* ANALYSIS_TASKS_PWGCF_O2FEMTODREAM_INCLUDE_O2FEMTODREAM_FEMTODREAMPAIRCLEANER_H_ */ diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamParticleHisto.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamParticleHisto.h index 898570887b187..5f96dae532ae0 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamParticleHisto.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamParticleHisto.h @@ -10,51 +10,95 @@ // or submit itself to any jurisdiction. /// \file FemtoDreamParticleHisto.h -/// \brief FemtoDreamParticleHisto - Histogram class for tracks +/// \brief FemtoDreamParticleHisto - Histogram class for tracks, V0s and cascades /// \author Andi Mathis, TU München, andreas.mathis@ph.tum.de #ifndef ANALYSIS_TASKS_PWGCF_O2FEMTODREAM_INCLUDE_O2FEMTODREAM_FEMTODREAMPARTICLEHISTO_H_ #define ANALYSIS_TASKS_PWGCF_O2FEMTODREAM_INCLUDE_O2FEMTODREAM_FEMTODREAMPARTICLEHISTO_H_ +#include "FemtoDerived.h" #include "Framework/HistogramRegistry.h" -#include using namespace o2::framework; namespace o2::analysis::femtoDream { + +/// \class FemtoDreamParticleHisto +/// \brief Class for histogramming particle properties +/// \tparam particleType Type of the particle (Track/V0/Cascade/...) +/// \tparam suffixType (optional) Takes care of the suffix for the folder name in case of analyses of pairs of the same kind (T-T, V-V, C-C) +template class FemtoDreamParticleHisto { public: + /// Destructor virtual ~FemtoDreamParticleHisto() = default; + /// Initalization of the QA histograms + /// \param registry HistogramRegistry void init(HistogramRegistry* registry) { if (registry) { mHistogramRegistry = registry; - /// \todo how to do the naming for track - track combinations? - mHistogramRegistry->add("Tracks/pThist", "; #it{p}_{T} (GeV/#it{c}); Entries", kTH1F, {{1000, 0, 10}}); - mHistogramRegistry->add("Tracks/etahist", "; #eta; Entries", kTH1F, {{1000, -1, 1}}); - mHistogramRegistry->add("Tracks/phihist", "; #phi; Entries", kTH1F, {{1000, 0, 2. * M_PI}}); - mHistogramRegistry->add("Tracks/dcaXYhist", "; #it{p}_{T} (GeV/#it{c}); DCA_{xy} (cm)", kTH2F, {{100, 0, 10}, {501, -3, 3}}); + /// The folder names are defined by the type of the object and the suffix (if applicable) + std::string folderName = static_cast(o2::aod::femtodreamparticle::ParticleTypeName[mParticleType]); + folderName += static_cast(mFolderSuffix[mFolderSuffixType]); + + /// Histograms of the kinematic properties + mHistogramRegistry->add((folderName + "/pThist").c_str(), "; #it{p}_{T} (GeV/#it{c}); Entries", kTH1F, {{1000, 0, 10}}); + mHistogramRegistry->add((folderName + "/etahist").c_str(), "; #eta; Entries", kTH1F, {{1000, -1, 1}}); + mHistogramRegistry->add((folderName + "/phihist").c_str(), "; #phi; Entries", kTH1F, {{1000, 0, 2. * M_PI}}); + + /// Particle-type specific histograms + if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kTrack) { + /// Track histograms + mHistogramRegistry->add((folderName + "/dcaXYhist").c_str(), "; #it{p}_{T} (GeV/#it{c}); DCA_{xy} (cm)", kTH2F, {{100, 0, 10}, {501, -3, 3}}); + } else if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kV0) { + /// V0 histograms + mHistogramRegistry->add((folderName + "/cpahist").c_str(), "; #it{p}_{T} (GeV/#it{c}); cos#alpha", kTH2F, {{100, 0, 10}, {500, 0, 1}}); + } else if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kCascade) { + /// Cascade histograms + } else { + LOG(FATAL) << "FemtoDreamParticleHisto: Histogramming for requested object not defined - quitting!"; + } } } + /// Filling of the histograms + /// \tparam T Data type of the particle + /// \param part Particle template - void fillQA(T const& track) + void fillQA(T const& part) { if (mHistogramRegistry) { - mHistogramRegistry->fill(HIST("TrackCuts/pThist"), track.pt()); - mHistogramRegistry->fill(HIST("TrackCuts/etahist"), track.eta()); - mHistogramRegistry->fill(HIST("TrackCuts/phihist"), track.phi()); - mHistogramRegistry->fill(HIST("TrackCuts/dcaXYhist"), track.pt(), track.tempFitVar()); + /// Histograms of the kinematic properties + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[mParticleType]) + HIST(mFolderSuffix[mFolderSuffixType]) + HIST("/pThist"), part.pt()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[mParticleType]) + HIST(mFolderSuffix[mFolderSuffixType]) + HIST("/etahist"), part.eta()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[mParticleType]) + HIST(mFolderSuffix[mFolderSuffixType]) + HIST("/phihist"), part.phi()); + + /// Particle-type specific histograms + if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kTrack) { + /// Track histograms + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[mParticleType]) + HIST(mFolderSuffix[mFolderSuffixType]) + HIST("/dcaXYhist"), + part.pt(), part.tempFitVar()); + } else if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kV0) { + /// V0 histograms + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[mParticleType]) + HIST(mFolderSuffix[mFolderSuffixType]) + HIST("/cpahist"), + part.pt(), part.tempFitVar()); + } else if constexpr (mParticleType == o2::aod::femtodreamparticle::ParticleType::kCascade) { + /// Cascade histograms + } else { + LOG(FATAL) << "FemtoDreamParticleHisto: Histogramming for requested object not defined - quitting!"; + } } } private: - HistogramRegistry* mHistogramRegistry; ///< For QA output - - ClassDefNV(FemtoDreamParticleHisto, 1); + HistogramRegistry* mHistogramRegistry; ///< For QA output + static constexpr o2::aod::femtodreamparticle::ParticleType mParticleType = particleType; ///< Type of the particle under analysis + static constexpr int mFolderSuffixType = suffixType; ///< Counter for the folder suffix specified below + static constexpr std::string_view mFolderSuffix[3] = {"", "_one", "_two"}; ///< Suffix for the folder name in case of analyses of pairs of the same kind (T-T, V-V, C-C) }; } // namespace o2::analysis::femtoDream diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamSelection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamSelection.h index 1da330a726a8c..b6cc821933a45 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamSelection.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamSelection.h @@ -16,40 +16,62 @@ #ifndef ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMSELECTION_H_ #define ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMSELECTION_H_ -#include - -namespace o2::analysis -{ -namespace femtoDream +namespace o2::analysis::femtoDream { namespace femtoDreamSelection { -enum SelectionType { kUpperLimit, - kAbsUpperLimit, - kLowerLimit, - kAbsLowerLimit, - kEqual }; +/// Type of selection to be employed +enum SelectionType { kUpperLimit, ///< simple upper limit for the value, e.g. p_T < 1 GeV/c + kAbsUpperLimit, ///< upper limit of the absolute value, e.g. |eta| < 0.8 + kLowerLimit, ///< simple lower limit for the value, e.g. p_T > 0.2 GeV/c + kAbsLowerLimit, ///< lower limit of the absolute value, e.g. |DCA_xyz| > 0.05 cm + kEqual ///< values need to be equal, e.g. sign = 1 +}; -} +} // namespace femtoDreamSelection -template +/// Simple class taking care of individual selections +/// \todo In principle all cuts that fulfill the getMinimalSelection are done implicitly and can be removed from the vector containing all cuts +/// \tparam selValDataType Data type used for the selection (float/int/bool/...) +/// \tparam selVariableDataType Data type used for the variable of the selection +template class FemtoDreamSelection { public: + /// Default constructor FemtoDreamSelection(); - FemtoDreamSelection(T1 selVal, T2 selVar, femtoDreamSelection::SelectionType selType) + + /// Constructor + /// \param selVal Value used for the selection + /// \param selVar Variable used for the selection + /// \param selType Type of selection to be employed + FemtoDreamSelection(selValDataType selVal, selVariableDataType selVar, femtoDreamSelection::SelectionType selType) : mSelVal(selVal), mSelVar(selVar), mSelType(selType) { } - T1 getSelectionValue() { return mSelVal; } - T2 getSelectionVariable() { return mSelVar; } + /// Destructor + virtual ~FemtoDreamSelection() = default; + + /// Get the value used for the selection + /// \return Value used for the selection + selValDataType getSelectionValue() { return mSelVal; } + + /// Get the variable used for the selection + /// \return variable used for the selection + selVariableDataType getSelectionVariable() { return mSelVar; } + + /// Get the type of selection to be employed + /// \return Type of selection to be employed femtoDreamSelection::SelectionType getSelectionType() { return mSelType; } - bool isSelected(T1 observable) + /// Check whether the selection is fulfilled or not + /// \param observable Value of the variable to be checked + /// \return Whether the selection is fulfilled or not + bool isSelected(selValDataType observable) { switch (mSelType) { case (femtoDreamSelection::SelectionType::kUpperLimit): @@ -70,9 +92,15 @@ class FemtoDreamSelection return false; } + /// Check whether the selection is fulfilled or not and put together the bit-wise container for the systematic variations + /// \tparam T Data type of the bit-wise container for the systematic variations + /// \param observable Value of the variable to be checked + /// \param cutContainer Bit-wise container for the systematic variations + /// \param counter Position in the bit-wise container for the systematic variations to be modified template - void checkSelectionSetBit(T1 observable, T& cutContainer, size_t& counter) + void checkSelectionSetBit(selValDataType observable, T& cutContainer, size_t& counter) { + /// If the selection is fulfilled the bit at the specified position (counter) within the bit-wise container is set to 1 if (isSelected(observable)) { cutContainer |= 1UL << counter; } @@ -80,14 +108,11 @@ class FemtoDreamSelection } private: - T1 mSelVal{0.f}; - T2 mSelVar; - femtoDreamSelection::SelectionType mSelType; - - ClassDefNV(FemtoDreamSelection, 1); + selValDataType mSelVal{0.f}; ///< Value used for the selection + selVariableDataType mSelVar; ///< Variable used for the selection + femtoDreamSelection::SelectionType mSelType; ///< Type of selection employed }; -} /* namespace femtoDream */ -} /* namespace o2::analysis */ +} // namespace o2::analysis::femtoDream #endif /* ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMSELECTION_H_ */ diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h index 00a1622e84730..737abc6db18c9 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h @@ -16,34 +16,34 @@ #ifndef ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMTRACKSELECTION_H_ #define ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMTRACKSELECTION_H_ +#include "FemtoDerived.h" #include "FemtoDreamObjectSelection.h" #include "ReconstructionDataFormats/PID.h" #include "Framework/HistogramRegistry.h" -#include #include using namespace o2::framework; -namespace o2::analysis -{ -namespace femtoDream +namespace o2::analysis::femtoDream { namespace femtoDreamTrackSelection { -enum TrackSel { kSign, - kpTMin, - kpTMax, - kEtaMax, - kTPCnClsMin, - kTPCfClsMin, - kTPCcRowsMin, - kTPCsClsMax, - kDCAxyMax, - kDCAzMax, - kDCAMin, - kPIDnSigmaMax }; -} +/// The different selections this task is capable of doing +enum TrackSel { kSign, ///< Sign of the track + kpTMin, ///< Min. p_T (GeV/c) + kpTMax, ///< Max. p_T (GeV/c) + kEtaMax, ///< Max. |eta| + kTPCnClsMin, ///< Min. number of TPC clusters + kTPCfClsMin, ///< Min. fraction of crossed rows/findable TPC clusters + kTPCcRowsMin, ///< Min. number of crossed TPC rows + kTPCsClsMax, ///< Max. number of shared TPC clusters + kDCAxyMax, ///< Max. DCA_xy (cm) + kDCAzMax, ///< Max. DCA_z (cm) + kDCAMin, ///< Min. DCA_xyz (cm) + kPIDnSigmaMax ///< Max. |n_sigma| for PID +}; +} // namespace femtoDreamTrackSelection /// \class FemtoDreamTrackCuts /// \brief Cut class to contain and execute all cuts applied to tracks @@ -51,117 +51,139 @@ class FemtoDreamTrackSelection : public FemtoDreamObjectSelection void init(HistogramRegistry* registry); + /// Passes the species to the task for which PID needs to be stored + /// \tparam T Data type of the configurable passed to the functions + /// \param pids Configurable with the species template void setPIDSpecies(T& pids) { - std::vector tmpPids = pids; // necessary due to some features of the configurable + std::vector tmpPids = pids; /// necessary due to some features of the configurable for (const o2::track::PID& pid : tmpPids) { mPIDspecies.push_back(pid); } } + /// Computes the n_sigma for a track and a particle-type hypothesis in the TPC + /// \tparam T Data type of the track + /// \param track Track for which PID is evaluated + /// \param pid Particle species for which PID is evaluated + /// \return Value of n_{sigma, TPC} template auto getNsigmaTPC(T const& track, o2::track::PID pid); + /// Computes the n_sigma for a track and a particle-type hypothesis in the TOF + /// \tparam T Data type of the track + /// \param track Track for which PID is evaluated + /// \param pid Particle species for which PID is evaluated + /// \return Value of n_{sigma, TOF} template auto getNsigmaTOF(T const& track, o2::track::PID pid); + /// Checks whether the most open combination of all selection criteria is fulfilled + /// \tparam T Data type of the track + /// \param track Track + /// \return Whether the most open combination of all selection criteria is fulfilled template bool isSelectedMinimal(T const& track); - template - uint64_t getCutContainer(T const& track); - - template + /// Obtain the bit-wise container for the selections + /// \todo For the moment, PID is separated from the other selections, hence instead of a single value an std::array of size two is returned + /// \tparam cutContainerType Data type of the bit-wise container for the selections + /// \tparam T Data type of the track + /// \param track Track + /// \return The bit-wise container for the selections, separately with all selection criteria, and the PID + template + std::array getCutContainer(T const& track); + + /// Some basic QA histograms + /// \tparam part Type of the particle for proper naming of the folders for QA + /// \tparam T Data type of the track + /// \param track Track + template void fillQA(T const& track); - template - void fillCutQA(T const& track, uint64_t cutContainer); - - private: - std::vector mPIDspecies; + /// Helper function to obtain the name of a given selection criterion for consistent naming of the configurables + /// \param iSel Track selection variable to be examined + /// \param prefix Additional prefix for the name of the configurable + /// \param suffix Additional suffix for the name of the configurable + static std::string getSelectionName(femtoDreamTrackSelection::TrackSel iSel, std::string_view prefix = "", std::string_view suffix = "") + { + std::string outString = static_cast(prefix); + outString += static_cast(mSelectionNames[iSel]); + outString += suffix; + return outString; + } - ClassDefNV(FemtoDreamTrackSelection, 1); -}; // namespace femtoDream + /// Helper function to obtain the helper string of a given selection criterion for consistent description of the configurables + /// \param iSel Track selection variable to be examined + /// \param prefix Additional prefix for the output of the configurable + static std::string getSelectionHelper(femtoDreamTrackSelection::TrackSel iSel, std::string_view prefix = "") + { + std::string outString = static_cast(prefix); + outString += static_cast(mSelectionHelper[iSel]); + return outString; + } + private: + std::vector mPIDspecies; ///< All the particle species for which the n_sigma values need to be stored + static constexpr std::string_view mSelectionNames[12] = {"Sign", + "PtMin", + "PtMax", + "EtaMax", + "TPCnClsMin", + "TPCfClsMin", + "TPCcRowsMin", + "TPCsClsMax", + "DCAxyMax", + "DCAzMax", + "DCAMin", + "PIDnSigmaMax"}; ///< Name of the different selections + static constexpr std::string_view mSelectionHelper[12] = {"Sign of the track", + "Minimal pT (GeV/c)", + "Maximal pT (GeV/c)", + "Maximal eta", + "Minimum number of TPC clusters", + "Minimum fraction of crossed rows/findable clusters", + "Minimum number of crossed TPC rows", + "Maximal number of shared TPC cluster", + "Maximal DCA_xy (cm)", + "Maximal DCA_z (cm)", + "Minimal DCA (cm)", + "Maximal PID (nSigma)"}; ///< Helper information for the different selections +}; // namespace femtoDream + +template void FemtoDreamTrackSelection::init(HistogramRegistry* registry) { if (registry) { mHistogramRegistry = registry; - fillSelectionHistogram("TrackCuts/cuthist"); + fillSelectionHistogram(); - /// \todo this should be an automatic check in the parent class, and the return type should be templated - int nSelections = 2 + getNSelections() + mPIDspecies.size() * (getNSelections(femtoDreamTrackSelection::kPIDnSigmaMax) - 1); - if (8 * sizeof(uint64_t) < nSelections) { - LOGF(error, "Number of selections to large for your container - quitting!"); + /// \todo this should be an automatic check in the parent class + int nSelections = getNSelections() + mPIDspecies.size() * (getNSelections(femtoDreamTrackSelection::kPIDnSigmaMax) - 1); + if (8 * sizeof(cutContainerType) < nSelections) { + LOG(FATAL) << "FemtoDreamTrackCuts: Number of selections to large for your container - quitting!"; } - mHistogramRegistry->add("TrackCuts/pThist", "; #it{p}_{T} (GeV/#it{c}); Entries", kTH1F, {{1000, 0, 10}}); - mHistogramRegistry->add("TrackCuts/etahist", "; #eta; Entries", kTH1F, {{1000, -1, 1}}); - mHistogramRegistry->add("TrackCuts/phihist", "; #phi; Entries", kTH1F, {{1000, 0, 2. * M_PI}}); - mHistogramRegistry->add("TrackCuts/tpcnclshist", "; TPC Cluster; Entries", kTH1F, {{163, 0, 163}}); - mHistogramRegistry->add("TrackCuts/tpcfclshist", "; TPC ratio findable; Entries", kTH1F, {{100, 0.5, 1.5}}); - mHistogramRegistry->add("TrackCuts/tpcnrowshist", "; TPC crossed rows; Entries", kTH1F, {{163, 0, 163}}); - mHistogramRegistry->add("TrackCuts/tpcnsharedhist", "; TPC shared clusters; Entries", kTH1F, {{163, 0, 163}}); - mHistogramRegistry->add("TrackCuts/dcaXYhist", "; #it{p}_{T} (GeV/#it{c}); DCA_{xy} (cm)", kTH2F, {{100, 0, 10}, {301, -1.5, 1.5}}); - mHistogramRegistry->add("TrackCuts/dcaZhist", "; #it{p}_{T} (GeV/#it{c}); DCA_{z} (cm)", kTH2F, {{100, 0, 10}, {301, -1.5, 1.5}}); - mHistogramRegistry->add("TrackCuts/dcahist", "; #it{p}_{T} (GeV/#it{c}); DCA (cm)", kTH1F, {{301, 0., 1.5}}); - mHistogramRegistry->add("TrackCuts/tpcdEdx", "; #it{p} (GeV/#it{c}); TPC Signal", kTH2F, {{100, 0, 10}, {1000, 0, 1000}}); - mHistogramRegistry->add("TrackCuts/tofSignal", "; #it{p} (GeV/#it{c}); TOF Signal", kTH2F, {{100, 0, 10}, {1000, 0, 100e3}}); - - const int nChargeSel = getNSelections(femtoDreamTrackSelection::kSign); - const int nPtMinSel = getNSelections(femtoDreamTrackSelection::kpTMin); - const int nPtMaxSel = getNSelections(femtoDreamTrackSelection::kpTMax); - const int nEtaMaxSel = getNSelections(femtoDreamTrackSelection::kEtaMax); - const int nTPCnMinSel = getNSelections(femtoDreamTrackSelection::kTPCnClsMin); - const int nTPCfMinSel = getNSelections(femtoDreamTrackSelection::kTPCfClsMin); - const int nTPCcMinSel = getNSelections(femtoDreamTrackSelection::kTPCcRowsMin); - const int nTPCsMaxSel = getNSelections(femtoDreamTrackSelection::kTPCsClsMax); - const int nDCAxyMaxSel = getNSelections(femtoDreamTrackSelection::kDCAxyMax); - const int nDCAzMaxSel = getNSelections(femtoDreamTrackSelection::kDCAzMax); - const int nDCAMinSel = getNSelections(femtoDreamTrackSelection::kDCAMin); - const int nPIDnSigmaSel = getNSelections(femtoDreamTrackSelection::kPIDnSigmaMax); - - if (nChargeSel > 0) { - mHistogramRegistry->add("TrackCutsQA/Charge", "; Cut; Charge", kTH2F, {{nChargeSel, 0, static_cast(nChargeSel)}, {3, -1.5, 1.5}}); - } - if (nPtMinSel > 0) { - mHistogramRegistry->add("TrackCutsQA/pTMin", "; Cut; #it{p}_{T} (GeV/#it{c})", kTH2F, {{nPtMinSel, 0, static_cast(nPtMinSel)}, {1000, 0, 10}}); - } - if (nPtMaxSel > 0) { - mHistogramRegistry->add("TrackCutsQA/pTMax", "; Cut; #it{p}_{T} (GeV/#it{c})", kTH2F, {{nPtMaxSel, 0, static_cast(nPtMaxSel)}, {1000, 0, 10}}); - } - if (nEtaMaxSel > 0) { - mHistogramRegistry->add("TrackCutsQA/etaMax", "; Cut; #eta", kTH2F, {{nEtaMaxSel, 0, static_cast(nEtaMaxSel)}, {1000, -1, 1}}); - } - if (nTPCnMinSel > 0) { - mHistogramRegistry->add("TrackCutsQA/tpcnClsMin", "; Cut; TPC Cluster", kTH2F, {{nTPCnMinSel, 0, static_cast(nTPCnMinSel)}, {163, 0, 163}}); - } - if (nTPCfMinSel > 0) { - mHistogramRegistry->add("TrackCutsQA/tpcfClsMin", "; Cut; TPC ratio findable", kTH2F, {{nTPCfMinSel, 0, static_cast(nTPCfMinSel)}, {100, 0.5, 1.5}}); - } - if (nTPCcMinSel > 0) { - mHistogramRegistry->add("TrackCutsQA/tpcnRowsMin", "; Cut; TPC crossed rows", kTH2F, {{nTPCcMinSel, 0, static_cast(nTPCcMinSel)}, {163, 0, 163}}); - } - if (nTPCsMaxSel > 0) { - mHistogramRegistry->add("TrackCutsQA/tpcnSharedMax", "; Cut; TPC shared clusters", kTH2F, {{nTPCsMaxSel, 0, static_cast(nTPCsMaxSel)}, {163, 0, 163}}); - } - if (nDCAxyMaxSel > 0) { - mHistogramRegistry->add("TrackCutsQA/dcaXYMax", "; Cut; DCA_{xy} (cm)", kTH2F, {{nDCAxyMaxSel, 0, static_cast(nDCAxyMaxSel)}, {51, -3, 3}}); - } - if (nDCAzMaxSel > 0) { - mHistogramRegistry->add("TrackCutsQA/dcaZMax", "; Cut; DCA_{z} (cm)", kTH2F, {{nDCAzMaxSel, 0, static_cast(nDCAzMaxSel)}, {51, -1.5, 1.5}}); - } - if (nDCAMinSel > 0) { - mHistogramRegistry->add("TrackCutsQA/dcaMin", "; Cut; DCA (cm)", kTH2F, {{nDCAMinSel, 0, static_cast(nDCAMinSel)}, {26, 0., 1.5}}); - } - if (nPIDnSigmaSel > 0) { - int nSpecies = mPIDspecies.size(); - mHistogramRegistry->add("TrackCutsQA/pidCombnsigmaMax", "; #it{n}_{#sigma, comb.}; Cut", kTH2F, {{nPIDnSigmaSel * nSpecies, 0, static_cast(nSpecies * nPIDnSigmaSel)}, {60, 0, 6}}); - mHistogramRegistry->add("TrackCutsQA/pidTPCnsigmaMax", "; #it{n}_{#sigma, TPC}; Cut", kTH2F, {{nPIDnSigmaSel * nSpecies, 0, static_cast(nSpecies * nPIDnSigmaSel)}, {121, -6, 6}}); - } + std::string folderName = static_cast(o2::aod::femtodreamparticle::ParticleTypeName[part]); + mHistogramRegistry->add((folderName + "/pThist").c_str(), "; #it{p}_{T} (GeV/#it{c}); Entries", kTH1F, {{1000, 0, 10}}); + mHistogramRegistry->add((folderName + "/etahist").c_str(), "; #eta; Entries", kTH1F, {{1000, -1, 1}}); + mHistogramRegistry->add((folderName + "/phihist").c_str(), "; #phi; Entries", kTH1F, {{1000, 0, 2. * M_PI}}); + mHistogramRegistry->add((folderName + "/tpcnclshist").c_str(), "; TPC Cluster; Entries", kTH1F, {{163, 0, 163}}); + mHistogramRegistry->add((folderName + "/tpcfclshist").c_str(), "; TPC ratio findable; Entries", kTH1F, {{100, 0.5, 1.5}}); + mHistogramRegistry->add((folderName + "/tpcnrowshist").c_str(), "; TPC crossed rows; Entries", kTH1F, {{163, 0, 163}}); + mHistogramRegistry->add((folderName + "/tpcnsharedhist").c_str(), "; TPC shared clusters; Entries", kTH1F, {{163, 0, 163}}); + mHistogramRegistry->add((folderName + "/dcaXYhist").c_str(), "; #it{p}_{T} (GeV/#it{c}); DCA_{xy} (cm)", kTH2F, {{100, 0, 10}, {301, -1.5, 1.5}}); + mHistogramRegistry->add((folderName + "/dcaZhist").c_str(), "; #it{p}_{T} (GeV/#it{c}); DCA_{z} (cm)", kTH2F, {{100, 0, 10}, {301, -1.5, 1.5}}); + mHistogramRegistry->add((folderName + "/dcahist").c_str(), "; #it{p}_{T} (GeV/#it{c}); DCA (cm)", kTH1F, {{301, 0., 1.5}}); + mHistogramRegistry->add((folderName + "/tpcdEdx").c_str(), "; #it{p} (GeV/#it{c}); TPC Signal", kTH2F, {{100, 0, 10}, {1000, 0, 1000}}); + mHistogramRegistry->add((folderName + "/tofSignal").c_str(), "; #it{p} (GeV/#it{c}); TOF Signal", kTH2F, {{100, 0, 10}, {1000, 0, 100e3}}); } } @@ -239,8 +261,13 @@ bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track) const auto dcaXY = track.dcaXY(); const auto dcaZ = track.dcaZ(); const auto dca = std::sqrt(pow(dcaXY, 2.) + pow(dcaZ, 2.)); - /// check whether the most open cuts are fulfilled - most of this should have already be done by the filters + std::vector pidTPC, pidTOF; + for (auto it : mPIDspecies) { + pidTPC.push_back(getNsigmaTPC(track, it)); + pidTOF.push_back(getNsigmaTOF(track, it)); + } + /// check whether the most open cuts are fulfilled const static int nPtMinSel = getNSelections(femtoDreamTrackSelection::kpTMin); const static int nPtMaxSel = getNSelections(femtoDreamTrackSelection::kpTMax); const static int nEtaSel = getNSelections(femtoDreamTrackSelection::kEtaMax); @@ -251,6 +278,7 @@ bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track) const static int nDCAxyMaxSel = getNSelections(femtoDreamTrackSelection::kDCAxyMax); const static int nDCAzMaxSel = getNSelections(femtoDreamTrackSelection::kDCAzMax); const static int nDCAMinSel = getNSelections(femtoDreamTrackSelection::kDCAMin); + const static int nPIDnSigmaSel = getNSelections(femtoDreamTrackSelection::kPIDnSigmaMax); const static float pTMin = getMinimalSelection(femtoDreamTrackSelection::kpTMin, femtoDreamSelection::kLowerLimit); const static float pTMax = getMinimalSelection(femtoDreamTrackSelection::kpTMax, femtoDreamSelection::kUpperLimit); @@ -262,6 +290,7 @@ bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track) const static float dcaXYMax = getMinimalSelection(femtoDreamTrackSelection::kDCAxyMax, femtoDreamSelection::kAbsUpperLimit); const static float dcaZMax = getMinimalSelection(femtoDreamTrackSelection::kDCAzMax, femtoDreamSelection::kAbsUpperLimit); const static float dcaMin = getMinimalSelection(femtoDreamTrackSelection::kDCAMin, femtoDreamSelection::kAbsLowerLimit); + const static float nSigmaPIDMax = getMinimalSelection(femtoDreamTrackSelection::kPIDnSigmaMax, femtoDreamSelection::kAbsUpperLimit); if (nPtMinSel > 0 && pT < pTMin) { return false; @@ -293,14 +322,30 @@ bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track) if (nDCAMinSel > 0 && std::abs(dca) < dcaMin) { return false; } + if (nPIDnSigmaSel > 0) { + bool isFulfilled = false; + for (size_t i = 0; i < pidTPC.size(); ++i) { + auto pidTPCVal = pidTPC.at(i); + auto pidTOFVal = pidTOF.at(i); + auto pidComb = std::sqrt(pidTPCVal * pidTPCVal + pidTOFVal * pidTOFVal); + if (std::abs(pidTPCVal) < nSigmaPIDMax || pidComb < nSigmaPIDMax) { + isFulfilled = true; + } + } + if (!isFulfilled) { + return isFulfilled; + } + } return true; } -template -uint64_t FemtoDreamTrackSelection::getCutContainer(T const& track) +template +std::array FemtoDreamTrackSelection::getCutContainer(T const& track) { - uint64_t output = 0; - size_t counter = 2; // first two slots reserved for track/v0/cascade encoding + cutContainerType output = 0; + size_t counter = 0; + cutContainerType outputPID = 0; + size_t counterPID = 0; const auto sign = track.sign(); const auto pT = track.pt(); const auto eta = track.eta(); @@ -326,9 +371,9 @@ uint64_t FemtoDreamTrackSelection::getCutContainer(T const& track) for (size_t i = 0; i < pidTPC.size(); ++i) { auto pidTPCVal = pidTPC.at(i); auto pidTOFVal = pidTOF.at(i); - sel.checkSelectionSetBit(pidTPCVal, output, counter); + sel.checkSelectionSetBit(pidTPCVal, outputPID, counterPID); auto pidComb = std::sqrt(pidTPCVal * pidTPCVal + pidTOFVal * pidTOFVal); - sel.checkSelectionSetBit(pidComb, output, counter); + sel.checkSelectionSetBit(pidComb, outputPID, counterPID); } } else { @@ -371,149 +416,28 @@ uint64_t FemtoDreamTrackSelection::getCutContainer(T const& track) sel.checkSelectionSetBit(observable, output, counter); } } - return output; + return {output, outputPID}; } -template +template void FemtoDreamTrackSelection::fillQA(T const& track) { if (mHistogramRegistry) { - mHistogramRegistry->fill(HIST("TrackCuts/pThist"), track.pt()); - mHistogramRegistry->fill(HIST("TrackCuts/etahist"), track.eta()); - mHistogramRegistry->fill(HIST("TrackCuts/phihist"), track.phi()); - mHistogramRegistry->fill(HIST("TrackCuts/tpcnclshist"), track.tpcNClsFound()); - mHistogramRegistry->fill(HIST("TrackCuts/tpcfclshist"), track.tpcCrossedRowsOverFindableCls()); - mHistogramRegistry->fill(HIST("TrackCuts/tpcnrowshist"), track.tpcNClsCrossedRows()); - mHistogramRegistry->fill(HIST("TrackCuts/tpcnsharedhist"), track.tpcNClsShared()); - mHistogramRegistry->fill(HIST("TrackCuts/dcaXYhist"), track.pt(), track.dcaXY()); - mHistogramRegistry->fill(HIST("TrackCuts/dcaZhist"), track.pt(), track.dcaZ()); - mHistogramRegistry->fill(HIST("TrackCuts/dcahist"), std::sqrt(pow(track.dcaXY(), 2.) + pow(track.dcaZ(), 2.))); - mHistogramRegistry->fill(HIST("TrackCuts/tpcdEdx"), track.tpcInnerParam(), track.tpcSignal()); - mHistogramRegistry->fill(HIST("TrackCuts/tofSignal"), track.p(), track.tofSignal()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/pThist"), track.pt()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/etahist"), track.eta()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/phihist"), track.phi()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/tpcnclshist"), track.tpcNClsFound()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/tpcfclshist"), track.tpcCrossedRowsOverFindableCls()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/tpcnrowshist"), track.tpcNClsCrossedRows()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/tpcnsharedhist"), track.tpcNClsShared()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/dcaXYhist"), track.pt(), track.dcaXY()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/dcaZhist"), track.pt(), track.dcaZ()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/dcahist"), std::sqrt(pow(track.dcaXY(), 2.) + pow(track.dcaZ(), 2.))); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/tpcdEdx"), track.tpcInnerParam(), track.tpcSignal()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/tofSignal"), track.p(), track.tofSignal()); } } -template -void FemtoDreamTrackSelection::fillCutQA(T const& track, uint64_t cutContainer) -{ - if (mHistogramRegistry) { - size_t counter = 2; // first two slots reserved for track/v0/cascade encoding - const auto sign = track.sign(); - const auto pT = track.pt(); - const auto eta = track.eta(); - const auto tpcNClsF = track.tpcNClsFound(); - const auto tpcRClsC = track.tpcCrossedRowsOverFindableCls(); - const auto tpcNClsC = track.tpcNClsCrossedRows(); - const auto tpcNClsS = track.tpcNClsShared(); - const auto dcaXY = track.dcaXY(); - const auto dcaZ = track.dcaZ(); - const auto dca = std::sqrt(pow(dcaXY, 2.) + pow(dcaZ, 2.)); - - std::vector pidTPC, pidTOF; - for (auto it : mPIDspecies) { - pidTPC.push_back(getNsigmaTPC(track, it)); - pidTOF.push_back(getNsigmaTOF(track, it)); - } - - femtoDreamTrackSelection::TrackSel oldTrackSel = femtoDreamTrackSelection::kSign; - size_t currentTrackSelCounter = 0; - size_t pidCounter = 0; - - for (auto& sel : mSelections) { - const auto selVariable = sel.getSelectionVariable(); - if (oldTrackSel != selVariable) { - currentTrackSelCounter = 0; - } - if (selVariable == femtoDreamTrackSelection::kPIDnSigmaMax) { - /// PID needs to be handled a bit differently since we more than one species - for (size_t i = 0; i < pidTPC.size(); ++i) { - bool isTrueTPC = (cutContainer >> counter) & 1; - ++counter; - bool isTrueComb = (cutContainer >> counter) & 1; - ++counter; - auto pidTPCVal = pidTPC.at(i); - auto pidTOFVal = pidTOF.at(i); - auto pidComb = std::sqrt(pidTPCVal * pidTPCVal + pidTOFVal * pidTOFVal); - if (isTrueTPC) { - mHistogramRegistry->fill(HIST("TrackCutsQA/pidTPCnsigmaMax"), pidCounter, pidTPCVal); - } - if (isTrueComb) { - mHistogramRegistry->fill(HIST("TrackCutsQA/pidCombnsigmaMax"), pidCounter, pidComb); - } - ++pidCounter; - } - ++currentTrackSelCounter; - } else { - /// for the rest it's all the same - bool isTrue = (cutContainer >> counter) & 1; - switch (selVariable) { - case (femtoDreamTrackSelection::kSign): - if (isTrue) { - mHistogramRegistry->fill(HIST("TrackCutsQA/Charge"), currentTrackSelCounter, sign); - } - break; - case (femtoDreamTrackSelection::kpTMin): - if (isTrue) { - mHistogramRegistry->fill(HIST("TrackCutsQA/pTMin"), currentTrackSelCounter, pT); - } - break; - case (femtoDreamTrackSelection::kpTMax): - if (isTrue) { - mHistogramRegistry->fill(HIST("TrackCutsQA/pTMax"), currentTrackSelCounter, pT); - } - break; - case (femtoDreamTrackSelection::kEtaMax): - if (isTrue) { - mHistogramRegistry->fill(HIST("TrackCutsQA/etaMax"), currentTrackSelCounter, eta); - } - break; - case (femtoDreamTrackSelection::kTPCnClsMin): - if (isTrue) { - mHistogramRegistry->fill(HIST("TrackCutsQA/tpcnClsMin"), currentTrackSelCounter, tpcNClsF); - } - break; - case (femtoDreamTrackSelection::kTPCfClsMin): - if (isTrue) { - mHistogramRegistry->fill(HIST("TrackCutsQA/tpcfClsMin"), currentTrackSelCounter, tpcRClsC); - } - break; - case (femtoDreamTrackSelection::kTPCcRowsMin): - if (isTrue) { - mHistogramRegistry->fill(HIST("TrackCutsQA/tpcnRowsMin"), currentTrackSelCounter, tpcNClsC); - } - break; - case (femtoDreamTrackSelection::kTPCsClsMax): - if (isTrue) { - mHistogramRegistry->fill(HIST("TrackCutsQA/tpcnSharedMax"), currentTrackSelCounter, tpcNClsS); - } - break; - case (femtoDreamTrackSelection::kDCAxyMax): - if (isTrue) { - mHistogramRegistry->fill(HIST("TrackCutsQA/dcaXYMax"), currentTrackSelCounter, dcaXY); - } - break; - case (femtoDreamTrackSelection::kDCAzMax): - if (isTrue) { - mHistogramRegistry->fill(HIST("TrackCutsQA/dcaZMax"), currentTrackSelCounter, dcaZ); - } - break; - case (femtoDreamTrackSelection::kDCAMin): - if (isTrue) { - mHistogramRegistry->fill(HIST("TrackCutsQA/dcaMin"), currentTrackSelCounter, dca); - } - break; - case (femtoDreamTrackSelection::kPIDnSigmaMax): - break; - } - ++currentTrackSelCounter; - ++counter; - oldTrackSel = selVariable; - } - } - } -} // namespace femtoDream - -} // namespace femtoDream -} // namespace o2::analysis +} // namespace o2::analysis::femtoDream #endif /* ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMTRACKSELECTION_H_ */ diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamV0Selection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamV0Selection.h index f4ec033dba5a5..cccc9ca89baa3 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamV0Selection.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamV0Selection.h @@ -11,7 +11,8 @@ /// \file FemtoDreamV0Selection.h /// \brief Definition of the FemtoDreamV0Selection -/// \author Valentina Mantovani Sarti, TU München valentina.mantovani-sarti@tum.de and Andi Mathis, TU München, andreas.mathis@ph.tum.de +/// \author Valentina Mantovani Sarti, TU München valentina.mantovani-sarti@tum.de +/// \author Andi Mathis, TU München, andreas.mathis@ph.tum.de #ifndef ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMV0SELECTION_H_ #define ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMV0SELECTION_H_ @@ -23,14 +24,10 @@ #include "ReconstructionDataFormats/PID.h" #include "AnalysisCore/RecoDecay.h" #include "Framework/HistogramRegistry.h" -#include -#include using namespace o2::framework; -namespace o2::analysis -{ -namespace femtoDream +namespace o2::analysis::femtoDream { namespace femtoDreamV0Selection { @@ -51,13 +48,15 @@ class FemtoDreamV0Selection : public FemtoDreamObjectSelection void init(HistogramRegistry* registry); template bool isSelectedMinimal(C const& col, V const& v0, T const& posTrack, T const& negTrack); - template - std::vector getCutContainer(C const& col, V const& v0, T const& posTrack, T const& negTrack); + /// \todo for the moment the PID of the tracks is factored out into a separate field, hence 5 values in total + template + std::array getCutContainer(C const& col, V const& v0, T const& posTrack, T const& negTrack); template void fillQA(C const& col, V const& v0); @@ -75,19 +74,18 @@ class FemtoDreamV0Selection : public FemtoDreamObjectSelection void FemtoDreamV0Selection::init(HistogramRegistry* registry) { if (registry) { mHistogramRegistry = registry; - fillSelectionHistogram("V0Cuts/cuthist"); + fillSelectionHistogram(); /// \todo this should be an automatic check in the parent class, and the return type should be templated int nSelections = getNSelections(); - if (8 * sizeof(uint64_t) < nSelections) { + if (8 * sizeof(cutContainerType) < nSelections) { LOGF(error, "Number of selections to large for your container - quitting!"); } /// \todo initialize histograms for children tracks of v0s @@ -170,12 +168,12 @@ bool FemtoDreamV0Selection::isSelectedMinimal(C const& col, V const& v0, T const } /// the CosPA of V0 needs as argument the posXYZ of collisions vertex so we need to pass the collsion as well -template -std::vector FemtoDreamV0Selection::getCutContainer(C const& col, V const& v0, T const& posTrack, T const& negTrack) +template +std::array FemtoDreamV0Selection::getCutContainer(C const& col, V const& v0, T const& posTrack, T const& negTrack) { - uint64_t outputPosTrack = PosDaughTrack.getCutContainer(posTrack); - uint64_t outputNegTrack = NegDaughTrack.getCutContainer(negTrack); - uint64_t output = 0; + auto outputPosTrack = PosDaughTrack.getCutContainer(posTrack); + auto outputNegTrack = NegDaughTrack.getCutContainer(negTrack); + cutContainerType output = 0; size_t counter = 0; const auto pT = v0.pt(); @@ -214,7 +212,7 @@ std::vector FemtoDreamV0Selection::getCutContainer(C const& col, V con sel.checkSelectionSetBit(observable, output, counter); } } - return {{outputPosTrack, outputNegTrack, output}}; + return {{output, outputPosTrack.at(0), outputPosTrack.at(1), outputNegTrack.at(0), outputNegTrack.at(1)}}; } template @@ -234,7 +232,6 @@ void FemtoDreamV0Selection::fillQA(C const& col, V const& v0) } } -} // namespace femtoDream -} // namespace o2::analysis +} // namespace o2::analysis::femtoDream #endif /* ANALYSIS_TASKS_PWGCF_FEMTODREAM_FEMTODREAMV0SELECTION_H_ */ From d52974a1dfcc815f20c7b59a7301663afa370adc Mon Sep 17 00:00:00 2001 From: Hannah Bossi Date: Fri, 23 Jul 2021 08:40:23 -0400 Subject: [PATCH 260/314] [EMCAL-565]: Modified BoostHistogramUtils after testing. (#6462) Modified BoostHistogramUtils after testing. --- .../include/CommonUtils/BoostHistogramUtils.h | 128 +++++++++++++----- Detectors/EMCAL/calibration/CMakeLists.txt | 26 ++-- 2 files changed, 113 insertions(+), 41 deletions(-) diff --git a/Common/Utils/include/CommonUtils/BoostHistogramUtils.h b/Common/Utils/include/CommonUtils/BoostHistogramUtils.h index d0f17ba20dfe4..e4c48bce378ad 100644 --- a/Common/Utils/include/CommonUtils/BoostHistogramUtils.h +++ b/Common/Utils/include/CommonUtils/BoostHistogramUtils.h @@ -43,7 +43,8 @@ template class BinCenterView { public: - BinCenterView(AxisIterator iter); + BinCenterView(AxisIterator iter) : mBaseIterator(iter) {} + ~BinCenterView() = default; AxisIterator& operator++() { @@ -69,7 +70,8 @@ template class BinUpperView { public: - BinUpperView(AxisIterator iter); + BinUpperView(AxisIterator iter) : mBaseIterator(iter) {} + ~BinUpperView() = default; AxisIterator& operator++() { @@ -95,7 +97,8 @@ template class BinLowerView { public: - BinLowerView(AxisIterator iter); + BinLowerView(AxisIterator iter) : mBaseIterator(iter) {} + ~BinLowerView() = default; AxisIterator& operator++() { @@ -115,25 +118,53 @@ class BinLowerView AxisIterator mBaseIterator; }; -/// \struct fitResult -/// \brief Struct to store the results of the fit. +template +BinCenterView operator+(BinCenterView lhs, int n) +{ + BinCenterView result(lhs); + for (int i = 0; i < n; i++) { + ++result; + } + return result; +} + +template +BinUpperView operator+(BinUpperView lhs, int n) +{ + BinUpperView result(lhs); + for (int i = 0; i < n; i++) { + ++result; + } + return result; +} + +template +BinLowerView operator+(BinLowerView lhs, int n) +{ + BinLowerView result(lhs); + for (int i = 0; i < n; i++) { + ++result; + } + return result; +} + template -struct fitResult { - double mChi2; ///< chi2 of the fit - std::array mFitParameters; ///< parameters of the fit (0-Constant, 1-Mean, 2-Sigma, 3-Sum) +class fitResult +{ + public: + fitResult() = default; - fitResult(double chi2, std::initializer_list params) + fitResult(T chi2, const T (&list)[nparams]) : mChi2(chi2), + mFitParameters() { - static_assert(params.size() == nparams, "Exceed number of params"); - mChi2 = chi2; - std::copy(params.begin(), params.end(), mFitParameters.begin()); + memcpy(mFitParameters.data(), list, sizeof(T) * nparams); } /// \brief Get the paratmeters of a fit result. Ex: result.getParameter<1>(); template T getParameter() const { - static_assert(index == mFitParameters.size(), "Acessing invalid parameter"); + static_assert(index <= nparams, "Acessing invalid parameter"); return mFitParameters[index]; } @@ -141,7 +172,7 @@ struct fitResult { template void setParameter(T parameter) { - static_assert(index == mFitParameters.size(), "Attempting to set invalid parameter"); + static_assert(index <= nparams, "Attempting to set invalid parameter"); mFitParameters[index] = parameter; } @@ -150,6 +181,11 @@ struct fitResult { { mChi2 = chi2In; } + T getChi2() const { return mChi2; } + + private: + T mChi2; ///< chi2 of the fit + std::array mFitParameters; ///< parameters of the fit (0-Constant, 1-Mean, 2-Sigma, 3-Sum) }; /** @@ -174,8 +210,10 @@ std::string createErrorMessage(FitGausError_t errorcode) /// \return result /// result is of the type fitResult, which contains 4 parameters (0-Constant, 1-Mean, 2-Sigma, 3-Sum) /// -template -fitResult fitGaus(Iterator first, Iterator last, AxisIterator axisfirst) +/// ** Temp Note: For now we forgo the templated struct in favor of a std::vector in order to +/// have this compile while we are working out the details +template +std::vector fitGaus(Iterator first, Iterator last, BinCenterView axisfirst) { TLinearFitter fitter(3, "pol2"); TMatrixD mat(3, 3); @@ -187,10 +225,13 @@ fitResult fitGaus(Iterator first, Iterator last, AxisIterator axisfirst) TMatrixD A(3, 3); TMatrixD b(3, 1); T rms = TMath::RMS(first, last); - T xMax = std::max_element(first, last); - T xMin = std::min_element(first, last); + // Markus: return type of std::max_element is an iterator, cannot cast implicitly to double + // better use auto + // pointer needs to be dereferenced afterwards + auto xMax = std::max_element(first, last); + auto xMin = std::min_element(first, last); auto nbins = last - first; - const double binWidth = double(xMax - xMin) / double(nbins); + const double binWidth = double(*xMax - *xMin) / double(nbins); Float_t meanCOG = 0; Float_t rms2COG = 0; @@ -199,7 +240,7 @@ fitResult fitGaus(Iterator first, Iterator last, AxisIterator axisfirst) Float_t entries = 0; Int_t nfilled = 0; - for (auto iter = first, axisiter = axisfirst; iter != last; iter++, axisiter++) { + for (auto iter = first; iter != last; iter++) { entries += *iter; if (*iter > 0) { nfilled++; @@ -207,7 +248,7 @@ fitResult fitGaus(Iterator first, Iterator last, AxisIterator axisfirst) } // TODO: Check why this is needed - if (xMax < 4) { + if (*xMax < 4) { throw FitGausError_t::FIT_ERROR; } if (entries < 12) { @@ -218,16 +259,26 @@ fitResult fitGaus(Iterator first, Iterator last, AxisIterator axisfirst) throw FitGausError_t::FIT_ERROR; } + /* fitResult result; result.setParameter<3>(entries); + */ + // create the result, first fill it with all 0's + std::vector result; + for (int r = 0; r < 5; r++) { + result.push_back(0); + } + // then set the third parameter to entries + result.at(3) = entries; int ibin = 0; Int_t npoints = 0; for (auto iter = first, axisiter = axisfirst; iter != last; iter++, axisiter++) { if (nbins > 1) { - Double_t x = (*axisiter + *(axisiter + 1)) / 2.; - Double_t y = *iter; - Double_t ey = std::sqrt(y); + // Markus: For this we implemented the BinCenterView + double x = *axisfirst; + double y = *iter; + double ey = std::sqrt(y); fitter.AddPoint(&x, y, ey); if (npoints < 3) { A(npoints, 0) = 1; @@ -258,7 +309,8 @@ fitResult fitGaus(Iterator first, Iterator last, AxisIterator axisfirst) fitter.Eval(); fitter.GetParameters(par); fitter.GetCovarianceMatrix(mat); - result.setChi2(fitter.GetChisquare() / Double_t(npoints)); + //result.setChi2(fitter.GetChisquare() / Double_t(npoints)); + result.at(4) = (fitter.GetChisquare() / Double_t(npoints)); } if (TMath::Abs(par[1]) < kTol) { throw FitGausError_t::FIT_ERROR; @@ -270,15 +322,17 @@ fitResult fitGaus(Iterator first, Iterator last, AxisIterator axisfirst) } T param1 = T(par[1] / (-2. * par[2])); - result.setParameter<1>(param1); - result.setParameter<2>(T(1. / TMath::Sqrt(TMath::Abs(-2. * par[2])))); + //result.setParameter<1>(param1); + //result.setParameter<2>(T(1. / TMath::Sqrt(TMath::Abs(-2. * par[2])))); + result.at(1) = param1; + result.at(2) = T(1. / TMath::Sqrt(TMath::Abs(-2. * par[2]))); auto lnparam0 = par[0] + par[1] * param1 + par[2] * param1 * param1; if (lnparam0 > 307) { throw FitGausError_t::FIT_ERROR; ; } - result.setParameter<0>(TMath::Exp(lnparam0)); - + //result.setParameter<0>(TMath::Exp(lnparam0)); + result.at(0) = TMath::Exp(lnparam0); return result; } @@ -286,25 +340,37 @@ fitResult fitGaus(Iterator first, Iterator last, AxisIterator axisfirst) //use center of gravity for 2 points meanCOG /= sumCOG; rms2COG /= sumCOG; + /* result.setParameter<0>(xMax); result.setParameter<1>(meanCOG); result.setParameter<2>(TMath::Sqrt(TMath::Abs(meanCOG * meanCOG - rms2COG))); result.setChi2(-2); + */ + result.at(0) = *xMax; + result.at(1) = meanCOG; + result.at(2) = TMath::Sqrt(TMath::Abs(meanCOG * meanCOG - rms2COG)); + result.at(4) = -2; } if (npoints == 1) { meanCOG /= sumCOG; + /* result.setParameter<0>(xMax); result.setParameter<1>(meanCOG); result.setParameter<2>(binWidth / TMath::Sqrt(12)); result.setChi2(-1); + */ + result.at(0) = *xMax; + result.at(1) = meanCOG; + result.at(2) = binWidth / TMath::Sqrt(12); + result.at(4) = -1; } return result; } template -fitResult fitBoostHistoWithGaus(boost::histogram::histogram& hist) +std::vector fitBoostHistoWithGaus(boost::histogram::histogram& hist) { - return fitGaus(hist.begin(), hist.end(), BinCenterView(hist.axis(0).begin())); + return fitGaus(hist.begin(), hist.end(), BinCenterView(hist.axis(0).begin())); } } // end namespace utils diff --git a/Detectors/EMCAL/calibration/CMakeLists.txt b/Detectors/EMCAL/calibration/CMakeLists.txt index f30d073c53244..2786b901a360a 100644 --- a/Detectors/EMCAL/calibration/CMakeLists.txt +++ b/Detectors/EMCAL/calibration/CMakeLists.txt @@ -10,24 +10,30 @@ # or submit itself to any jurisdiction. o2_add_library(EMCALCalibration - SOURCES src/EMCALChannelCalibrator.cxx - PUBLIC_LINK_LIBRARIES O2::CCDB O2::EMCALBase - O2::DetectorsCalibration - O2::DataFormatsEMCAL - O2::Framework - O2::Algorithm) - - + SOURCES + src/EMCALChannelCalibrator.cxx + PUBLIC_LINK_LIBRARIES O2::CCDB O2::EMCALBase + O2::EMCALCalib + O2::CommonUtils + O2::DetectorsCalibration + O2::DataFormatsEMCAL + O2::Framework + O2::Algorithm + Microsoft.GSL::GSL + ) + + o2_target_root_dictionary(EMCALCalibration HEADERS include/EMCALCalibration/EMCALChannelCalibrator.h LINKDEF src/EMCALCalibrationLinkDef.h) + o2_add_executable(emcal-channel-calib-workflow COMPONENT_NAME calibration SOURCES testWorkflow/emc-channel-calib-workflow.cxx PUBLIC_LINK_LIBRARIES O2::Framework - O2::EMCALCalibration - O2::DetectorsCalibration) + O2::EMCALCalibration + O2::DetectorsCalibration) From ab989fa21370801d678a855f47955fbee22d994c Mon Sep 17 00:00:00 2001 From: shahoian Date: Fri, 23 Jul 2021 01:17:24 +0200 Subject: [PATCH 261/314] Refurbished TPC-ITS afterburner --- .../DataFormatsGlobalTracking/RecoContainer.h | 6 + .../RecoContainerCreateTracksVariadic.h | 11 +- .../GlobalTracking/src/RecoContainer.cxx | 11 +- .../Detectors/ITSMFT/common/CMakeLists.txt | 1 + .../include/DataFormatsITSMFT/TrkClusRef.h | 36 + .../common/src/ITSMFTDataFormatsLinkDef.h | 3 + .../ReconstructionDataFormats/GlobalTrackID.h | 7 +- .../include/GlobalTracking/MatchTPCITS.h | 225 ++-- .../GlobalTracking/MatchTPCITSParams.h | 19 +- .../src/GlobalTrackingLinkDef.h | 5 +- Detectors/GlobalTracking/src/MatchTPCITS.cxx | 1104 ++++++----------- .../TrackTPCITSReaderSpec.h | 27 +- .../readers/src/TrackTPCITSReaderSpec.cxx | 38 +- .../src/TPCITSMatchingSpec.cxx | 11 +- .../src/TrackWriterTPCITSSpec.cxx | 18 +- 15 files changed, 595 insertions(+), 927 deletions(-) create mode 100644 DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/TrkClusRef.h diff --git a/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainer.h b/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainer.h index b4970f385c6ed..288c9d6220562 100644 --- a/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainer.h +++ b/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainer.h @@ -70,6 +70,7 @@ namespace o2::itsmft { class ROFRecord; class CompClusterExt; +class TrkClusRef; } // namespace o2::itsmft namespace o2::tof @@ -322,6 +323,11 @@ struct RecoContainer { auto getITSTracksROFRecords() const { return getSpan(GTrackID::ITS, TRACKREFS); } auto getITSTracksClusterRefs() const { return getSpan(GTrackID::ITS, INDICES); } auto getITSTracksMCLabels() const { return getSpan(GTrackID::ITS, MCLABELS); } + auto getITSABRefs() const { return getSpan(GTrackID::ITSAB, TRACKREFS); } + const o2::itsmft::TrkClusRef& getITSABRef(GTrackID gid) const { return getObject(gid, TRACKREFS); } + auto getITSABClusterRefs() const { return getSpan(GTrackID::ITSAB, INDICES); } + auto getITSABMCLabels() const { return getSpan(GTrackID::ITSAB, MCLABELS); } + // ITS clusters auto getITSClustersROFRecords() const { return getSpan(GTrackID::ITS, CLUSREFS); } auto getITSClusters() const { return getSpan(GTrackID::ITS, CLUSTERS); } diff --git a/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainerCreateTracksVariadic.h b/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainerCreateTracksVariadic.h index a11b4b59c4228..ac86566987092 100644 --- a/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainerCreateTracksVariadic.h +++ b/DataFormats/Detectors/GlobalTracking/include/DataFormatsGlobalTracking/RecoContainerCreateTracksVariadic.h @@ -62,6 +62,7 @@ void o2::globaltracking::RecoContainer::createTracksVariadic(T creator) const // create only for those data types which are used const auto tracksITS = getITSTracks(); + const auto trkITABRefs = getITSABRefs(); const auto tracksMFT = getMFTTracks(); const auto tracksTPC = getTPCTracks(); const auto tracksTPCITS = getTPCITSTracks(); @@ -154,13 +155,13 @@ void o2::globaltracking::RecoContainer::createTracksVariadic(T creator) const for (unsigned i = 0; i < tracksTPCITS.size(); i++) { const auto& matchTr = tracksTPCITS[i]; if (isUsed2(i, GTrackID::ITSTPC)) { - flagUsed(matchTr.getRefITS()); // flag used ITS tracks + flagUsed(matchTr.getRefITS()); // flag used ITS tracks or AB tracklets (though the latter is not really necessary) flagUsed(matchTr.getRefTPC()); // flag used TPC tracks continue; } if (creator(matchTr, {i, GTrackID::ITSTPC}, matchTr.getTimeMUS().getTimeStamp(), matchTr.getTimeMUS().getTimeStampError())) { flagUsed2(i, GTrackID::ITSTPC); - flagUsed(matchTr.getRefITS()); // flag used ITS tracks + flagUsed(matchTr.getRefITS()); // flag used ITS tracks or AB tracklets (though the latter is not really necessary) flagUsed(matchTr.getRefTPC()); // flag used TPC tracks } } @@ -247,6 +248,12 @@ inline constexpr auto isITSTrack() return std::is_same_v, o2::its::TrackITS>; } +template +inline constexpr auto isITSABRef() +{ + return std::is_same_v, o2::itsmft::TrkClusRef>; +} + template inline constexpr auto isMFTTrack() { diff --git a/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx b/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx index 7fdccff6ed2e3..825671a668deb 100644 --- a/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx +++ b/DataFormats/Detectors/GlobalTracking/src/RecoContainer.cxx @@ -27,6 +27,7 @@ #include "ReconstructionDataFormats/VtxTrackIndex.h" #include "ReconstructionDataFormats/VtxTrackRef.h" #include "ReconstructionDataFormats/TrackCosmics.h" +#include "DataFormatsITSMFT/TrkClusRef.h" using namespace o2::globaltracking; using namespace o2::framework; @@ -89,8 +90,11 @@ void DataRequest::requestTPCTracks(bool mc) void DataRequest::requestITSTPCTracks(bool mc) { addInput({"trackITSTPC", "GLO", "TPCITS", 0, Lifetime::Timeframe}); + addInput({"trackITSTPCABREFS", "GLO", "TPCITSAB_REFS", 0, Lifetime::Timeframe}); + addInput({"trackITSTPCABCLID", "GLO", "TPCITSAB_CLID", 0, Lifetime::Timeframe}); if (mc) { addInput({"trackITSTPCMCTR", "GLO", "TPCITS_MC", 0, Lifetime::Timeframe}); + addInput({"trackITSTPCABMCTR", "GLO", "TPCITSAB_MC", 0, Lifetime::Timeframe}); } requestMap["trackITSTPC"] = mc; } @@ -466,8 +470,11 @@ void RecoContainer::addTPCTracks(ProcessingContext& pc, bool mc) void RecoContainer::addITSTPCTracks(ProcessingContext& pc, bool mc) { commonPool[GTrackID::ITSTPC].registerContainer(pc.inputs().get>("trackITSTPC"), TRACKS); + commonPool[GTrackID::ITSAB].registerContainer(pc.inputs().get>("trackITSTPCABREFS"), TRACKREFS); + commonPool[GTrackID::ITSAB].registerContainer(pc.inputs().get>("trackITSTPCABCLID"), INDICES); if (mc) { commonPool[GTrackID::ITSTPC].registerContainer(pc.inputs().get>("trackITSTPCMCTR"), MCLABELS); + commonPool[GTrackID::ITSAB].registerContainer(pc.inputs().get>("trackITSTPCABMCTR"), MCLABELS); } } @@ -664,16 +671,16 @@ RecoContainer::GlobalIDSet RecoContainer::getSingleDetectorRefs(GTrackID gidx) c const auto& parent1 = getTPCITSTrack(parent0.getEvIdxTrack().getIndex()); table[GTrackID::ITSTPC] = parent0.getEvIdxTrack().getIndex(); table[GTrackID::TOF] = {unsigned(parent0.getEvIdxTOFCl().getIndex()), GTrackID::TOF}; - table[GTrackID::ITS] = parent1.getRefITS(); table[GTrackID::TPC] = parent1.getRefTPC(); + table[parent1.getRefITS().getSource()] = parent1.getRefITS(); // ITS source might be an ITS track or ITSAB tracklet } else if (src == GTrackID::TPCTOF) { const auto& parent0 = getTPCTOFMatch(gidx); //TPC : TOF table[GTrackID::TOF] = {unsigned(parent0.getEvIdxTOFCl().getIndex()), GTrackID::TOF}; table[GTrackID::TPC] = parent0.getEvIdxTrack().getIndex(); } else if (src == GTrackID::ITSTPC) { const auto& parent0 = getTPCITSTrack(gidx); - table[GTrackID::ITS] = parent0.getRefITS(); table[GTrackID::TPC] = parent0.getRefTPC(); + table[parent0.getRefITS().getSource()] = parent0.getRefITS(); // ITS source might be an ITS track or ITSAB tracklet } return std::move(table); } diff --git a/DataFormats/Detectors/ITSMFT/common/CMakeLists.txt b/DataFormats/Detectors/ITSMFT/common/CMakeLists.txt index ab1c9015c4eff..6edae6253c332 100644 --- a/DataFormats/Detectors/ITSMFT/common/CMakeLists.txt +++ b/DataFormats/Detectors/ITSMFT/common/CMakeLists.txt @@ -34,6 +34,7 @@ o2_target_root_dictionary(DataFormatsITSMFT include/DataFormatsITSMFT/ClusterTopology.h include/DataFormatsITSMFT/TopologyDictionary.h include/DataFormatsITSMFT/CTF.h + include/DataFormatsITSMFT/TrkClusRef.h LINKDEF src/ITSMFTDataFormatsLinkDef.h) o2_add_test(Cluster diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/TrkClusRef.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/TrkClusRef.h new file mode 100644 index 0000000000000..87ec641e55f43 --- /dev/null +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/TrkClusRef.h @@ -0,0 +1,36 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// \file TrkClusRef.h +/// \brief Reference on ITS/MFT clusters set + +#ifndef ALICEO2_ITSMFT_TRKCLUSREF_H +#define ALICEO2_ITSMFT_TRKCLUSREF_H + +#include "CommonDataFormat/RangeReference.h" + +namespace o2 +{ +namespace itsmft +{ + +// can refer to max 15 indices in the vector of total length <268435456, i.e. 17895697 tracks in worst case +struct TrkClusRef : public o2::dataformats::RangeRefComp<4> { + using o2::dataformats::RangeRefComp<4>::RangeRefComp; + GPUd() int getNClusters() const { return getEntries(); } + + ClassDefNV(TrkClusRef, 1); +}; + +} // namespace itsmft +} // namespace o2 + +#endif diff --git a/DataFormats/Detectors/ITSMFT/common/src/ITSMFTDataFormatsLinkDef.h b/DataFormats/Detectors/ITSMFT/common/src/ITSMFTDataFormatsLinkDef.h index aecdead1851f0..33e926c0bff9f 100644 --- a/DataFormats/Detectors/ITSMFT/common/src/ITSMFTDataFormatsLinkDef.h +++ b/DataFormats/Detectors/ITSMFT/common/src/ITSMFTDataFormatsLinkDef.h @@ -38,6 +38,9 @@ #pragma link C++ class o2::itsmft::TopologyDictionary + ; #pragma link C++ class o2::itsmft::GroupStruct + ; +#pragma link C++ class o2::itsmft::TrkClusRef + ; +#pragma link C++ class std::vector < o2::itsmft::TrkClusRef> + ; + #pragma link C++ class o2::itsmft::CTFHeader + ; #pragma link C++ class o2::itsmft::CompressedClusters + ; #pragma link C++ class o2::itsmft::CTF + ; diff --git a/DataFormats/Reconstruction/include/ReconstructionDataFormats/GlobalTrackID.h b/DataFormats/Reconstruction/include/ReconstructionDataFormats/GlobalTrackID.h index 177257c43cfab..31d2142fc0db5 100644 --- a/DataFormats/Reconstruction/include/ReconstructionDataFormats/GlobalTrackID.h +++ b/DataFormats/Reconstruction/include/ReconstructionDataFormats/GlobalTrackID.h @@ -60,6 +60,7 @@ class GlobalTrackID : public AbstractRef<25, 5, 2> ITSTPCTOF, TPCTRDTOF, ITSTPCTRDTOF, // full barrel track + ITSAB, // ITS AfterBurner tracklets // NSources }; @@ -132,14 +133,16 @@ GPUconstexpr() DetID::mask_t SourceDetectorsMasks[GlobalTrackID::NSources] = { DetID::mask_t(DetID::getMask(DetID::ITS) | DetID::getMask(DetID::TPC) | DetID::getMask(DetID::TRD)), DetID::mask_t(DetID::getMask(DetID::ITS) | DetID::getMask(DetID::TPC) | DetID::getMask(DetID::TOF)), DetID::mask_t(DetID::getMask(DetID::TPC) | DetID::getMask(DetID::TRD) | DetID::getMask(DetID::TOF)), - DetID::mask_t(DetID::getMask(DetID::ITS) | DetID::getMask(DetID::TPC) | DetID::getMask(DetID::TRD) | DetID::getMask(DetID::TOF))}; + DetID::mask_t(DetID::getMask(DetID::ITS) | DetID::getMask(DetID::TPC) | DetID::getMask(DetID::TRD) | DetID::getMask(DetID::TOF)), + DetID::mask_t(DetID::getMask(DetID::ITS))}; GPUconstexpr() GlobalTrackID::mask_t sMasks[GlobalTrackID::NSources] = ///< detectot masks {GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::ITS)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::TPC)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::TRD)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::TOF)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::PHS)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::CPV)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::EMC)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::HMP)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::MFT)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::MCH)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::MID)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::ZDC)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::FT0)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::FV0)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::FDD)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::ITSTPC)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::TPCTOF)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::TPCTRD)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::ITSTPCTRD)), - GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::ITSTPCTOF)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::TPCTRDTOF)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::ITSTPCTRDTOF))}; + GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::ITSTPCTOF)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::TPCTRDTOF)), GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::ITSTPCTRDTOF)), + GlobalTrackID::mask_t(math_utils::bit2Mask(GlobalTrackID::ITSAB))}; } // namespace globaltrackid_internal GPUdi() constexpr GlobalTrackID::DetID::mask_t GlobalTrackID::getSourceDetectorsMask(int i) { return globaltrackid_internal::SourceDetectorsMasks[i]; } diff --git a/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITS.h b/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITS.h index 0dc251e5ed6f8..179c96f7e309a 100644 --- a/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITS.h +++ b/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITS.h @@ -51,6 +51,7 @@ #include "GlobalTracking/MatchTPCITSParams.h" #include "CommonDataFormat/FlatHisto2D.h" #include "DataFormatsITSMFT/TopologyDictionary.h" +#include "DataFormatsITSMFT/TrkClusRef.h" class TTree; @@ -126,6 +127,10 @@ struct TrackLocTPC : public o2::track::TrackParCov { { return constraint == Constrained ? time0 : (constraint == ASide ? time0 + dt : time0 - dt); } + float getSignedDT(float dt) const // account for TPC side in time difference for dt=external_time - tpc.time0 + { + return constraint == Constrained ? 0. : (constraint == ASide ? dt : -dt); + } ClassDefNV(TrackLocTPC, 1); }; @@ -170,20 +175,18 @@ struct MatchRecord { ///< original track in the currently loaded TPC reco output struct ABTrackLink : public o2::track::TrackParCov { static constexpr int Disabled = -2; - int clID = MinusOne; ///< ID of the attached cluster, MinusTen is for dummy layer above Nlr, MinusOne: no attachment on this layer + int clID = MinusOne; ///< ID of the attached cluster, MinusOne: no attachment on this layer int parentID = MinusOne; ///< ID of the parent link (on prev layer) or parent TPC seed int nextOnLr = MinusOne; ///< ID of the next (in quality) link on the same layer - int icCandID = MinusOne; ///< ID of the interaction candidate this track belongs to uint8_t nDaughters = 0; ///< number of daughter links on lower layers int8_t layerID = -1; ///< layer ID + int8_t nContLayers = 0; ///< number of contributing layers uint8_t ladderID = 0xff; ///< ladder ID in the layer (used for seeds with 2 hits in the layer) float chi2 = 0.f; ///< chi2 after update -#ifdef _ALLOW_DEBUG_AB_ - o2::track::TrackParCov seed; // seed before update -#endif - ABTrackLink() = default; - ABTrackLink(const o2::track::TrackParCov& src, int ic, int lr, int parid = MinusOne, int clid = MinusOne, float ch2 = 0.f) - : o2::track::TrackParCov(src), clID(clid), parentID(parid), icCandID(ic), layerID(lr), chi2(ch2) {} + + ABTrackLink(const o2::track::TrackParCov& tr, int cl, int parID, int nextID, int lr, int nc, int ld, float _chi2) + : o2::track::TrackParCov(tr), clID(cl), parentID(parID), nextOnLr(nextID), layerID(int8_t(lr)), nContLayers(int8_t(nc)), ladderID(uint8_t(ld)), chi2(_chi2) {} + bool isDisabled() const { return clID == Disabled; } void disable() { clID = Disabled; } bool isDummyTop() const { return clID == MinusTen; } @@ -191,79 +194,67 @@ struct ABTrackLink : public o2::track::TrackParCov { float chi2NormPredict(float chi2cl) const { return (chi2 + chi2cl) / (1 + o2::its::RecoGeomHelper::getNLayers() - layerID); } }; -struct ABTrackLinksList { - int trackID = MinusOne; ///< TPC work track id - int firstLinkID = MinusOne; ///< 1st link added (used for fast clean-up) - int bestOrdLinkID = MinusOne; ///< start of sorted list of ABOrderLink for final validation - int8_t lowestLayer = o2::its::RecoGeomHelper::getNLayers(); // lowest layer reached - int8_t status = MinusOne; ///< status (RS TODO) - std::array firstInLr; - ABTrackLinksList(int id = MinusOne) : trackID(id) +// AB primary seed: TPC track propagated to outermost ITS layer under specific InteractionCandidate hypothesis +struct TPCABSeed { + static constexpr int8_t NeedAlternative = -3; + int tpcWID = MinusOne; ///< TPC track ID + int ICCanID = MinusOne; ///< interaction candidate ID (they are sorted in increasing time) + int winLinkID = MinusOne; ///< ID of the validated link + int8_t lowestLayer = o2::its::RecoGeomHelper::getNLayers(); ///< lowest layer reached + int8_t status = MinusOne; ///< status (RS TODO) + o2::track::TrackParCov track{}; ///< Seed propagated to the outer layer under certain time constraint + std::array firstInLr; ///< entry of 1st (best) hypothesis on each layer + std::vector trackLinks{}; ///< links + TPCABSeed(int id, int ic, const o2::track::TrackParCov& trc) : tpcWID(id), ICCanID(ic), track(trc) { firstInLr.fill(MinusOne); } - bool isDisabled() const { return status == MinusTen; } // RS is this strict enough + bool isDisabled() const { return status == MinusTen; } void disable() { status = MinusTen; } bool isValidated() const { return status == Validated; } - void validate() { status = Validated; } -}; - -struct ABOrderLink { ///< link used for cross-layer sorting of best ABTrackLinks of the ABTrackLinksList - int trackLinkID = MinusOne; ///< ABTrackLink ID - int nextLinkID = MinusOne; ///< indext on the next ABOrderLink - ABOrderLink() = default; - ABOrderLink(int id, int nxt = MinusOne) : trackLinkID(id), nextLinkID(nxt) {} -}; - -//--------------------------------------------------- -struct ABDebugLink : o2::BaseCluster { -#ifdef _ALLOW_DEBUG_AB_ - // AB link debug version, kinematics BEFORE update is stored - o2::track::TrackParCov seed; -#endif - o2::MCCompLabel clLabel; - float chi2 = 0.f; - uint8_t lr = 0; - - ClassDefNV(ABDebugLink, 1); -}; - -struct ABDebugTrack { - int trackID = 0; - int icCand = 0; - short order = 0; - short valid = 0; - o2::track::TrackParCov tpcSeed; - o2::MCCompLabel tpcLabel; - o2::math_utils::Bracket icTimeBin; - std::vector links; - float chi2 = 0; - uint8_t nClusTPC = 0; - uint8_t nClusITS = 0; - uint8_t nClusITSCorr = 0; - uint8_t sideAC = 0; - - ClassDefNV(ABDebugTrack, 1); -}; - -///< Link of the cluster used by AfterBurner: every used cluster will have 1 link for every update it did on some -///< AB seed. The link (index) points not on seed state it is updating but on the end-point of the seed (lowest layer reached) -struct ABClusterLink { - static constexpr int Disabled = -2; - int linkedABTrack = MinusOne; ///< ID of final AB track hypothesis it updates - int linkedABTrackList = MinusOne; ///< ID of the AB tracks list to which linkedABTrack belongs - int nextABClusterLink = MinusOne; ///< ID of the next link of this cluster - ABClusterLink() = default; - ABClusterLink(int idLink, int idList) : linkedABTrack(idLink), linkedABTrackList(idList) {} - bool isDisabled() const { return linkedABTrack == Disabled; } - void disable() { linkedABTrack = Disabled; } + void validate(int lID) + { + winLinkID = lID; + status = Validated; + } + bool needAlteranative() const { return status == NeedAlternative; } + void setNeedAlternative() { status = NeedAlternative; } + ABTrackLink& getLink(int i) { return trackLinks[i]; } + const ABTrackLink& getLink(int i) const { return trackLinks[i]; } + auto getBestLinkID() const + { + return lowestLayer < o2::its::RecoGeomHelper::getNLayers() ? firstInLr[lowestLayer] : -1; + } + bool checkLinkHasUsedClusters(int linkID, const std::vector& clStatus) const + { + // check if some clusters used by the link or its parents are forbidden (already used by validatet track) + while (linkID > MinusOne) { + const auto& link = trackLinks[linkID]; + if (link.clID > MinusOne && clStatus[link.clID] != MinusOne) { + return true; + } + linkID = link.parentID; + } + return false; + } + void flagLinkUsedClusters(int linkID, std::vector& clStatus) const + { + // check if some clusters used by the link or its parents are forbidden (already used by validated track) + while (linkID > MinusOne) { + const auto& link = trackLinks[linkID]; + if (link.clID > MinusOne) { + clStatus[link.clID] = MinusTen; + } + linkID = link.parentID; + } + } }; struct InteractionCandidate : public o2::InteractionRecord { - o2::math_utils::Bracketf_t tBracket; // interaction time - int rofITS; // corresponding ITS ROF entry (in the ROFRecord vectors) - uint32_t flag; // origin, etc. - void* clRefPtr = nullptr; // pointer on cluster references container (if any) + o2::math_utils::Bracketf_t tBracket; // interaction time + int rofITS; // corresponding ITS ROF entry (in the ROFRecord vectors) + uint32_t flag; // origin, etc. + o2::dataformats::RangeReference seedsRef; // references to AB seeds InteractionCandidate() = default; InteractionCandidate(const o2::InteractionRecord& ir, float t, float dt, int rof, uint32_t f = 0) : o2::InteractionRecord(ir), tBracket(t - dt, t + dt), rofITS(rof), flag(f) {} }; @@ -312,27 +303,6 @@ class MatchTPCITS ///< perform matching for provided input void run(const o2::globaltracking::RecoContainer& inp); - // RSTODO - void runAfterBurner(); - bool runAfterBurner(int tpcWID, int iCStart, int iCEnd); - void buildABCluster2TracksLinks(); - float correctTPCTrack(o2::track::TrackParCov& trc, const TrackLocTPC& tTPC, const InteractionCandidate& cand) const; - int checkABSeedFromLr(int lrSeed, int seedID, ABTrackLinksList& llist); - void accountForOverlapsAB(int lrSeed); - void mergeABSeedsOnOverlaps(int lr, ABTrackLinksList& llist); - ABTrackLinksList& createABTrackLinksList(int tpcWID); - ABTrackLinksList& getABTrackLinksList(int tpcWID) { return mABTrackLinksList[mTPCWork[tpcWID].matchID]; } - void disableABTrackLinksList(int tpcWID); - int registerABTrackLink(ABTrackLinksList& llist, const o2::track::TrackParCov& src, int ic, int lr, int parentID = -1, int clID = -1, float chi2Cl = 0.f); - void printABTracksTree(const ABTrackLinksList& llist) const; - void printABClusterUsage() const; - void selectBestMatchesAB(); - bool validateABMatch(int ilink); - void buildBestLinksList(int ilink); - bool isBetter(float chi2A, float chi2B) { return chi2A < chi2B; } // RS TODO - void dumpABTracksDebugTree(const ABTrackLinksList& llist); - void destroyLastABTrackLinksList(); - void refitABTrack(int ibest) const; void setSkipTPCOnly(bool v) { mSkipTPCOnly = v; } void setCosmics(bool v) { mCosmics = v; } bool isCosmics() const { return mCosmics; } @@ -375,15 +345,18 @@ class MatchTPCITS } ///< get histo for tgl differences for VDrift calibration - auto getHistoDTgl() { return mHistoDTgl.get(); } + auto getHistoDTgl() const { return mHistoDTgl.get(); } ///< print settings void print() const; void printCandidatesTPC() const; void printCandidatesITS() const; - std::vector& getMatchedTracks() { return mMatchedTracks; } - MCLabContTr& getMatchLabels() { return mOutLabels; } + const std::vector& getMatchedTracks() const { return mMatchedTracks; } + const MCLabContTr& getMatchLabels() const { return mOutLabels; } + const MCLabContTr& getABTrackletLabels() const { return mABTrackletLabels; } + const std::vector& getABTrackletClusterIDs() const { return mABTrackletClusterIDs; } + const std::vector& getABTrackletRefs() const { return mABTrackletRefs; } //>>> ====================== options =============================>>> void setUseMatCorrFlag(MatCorrType f) { mUseMatCorrFlag = f; } @@ -436,10 +409,9 @@ class MatchTPCITS int prepareTPCTracksAfterBurner(); void addTPCSeed(const o2::track::TrackParCov& _tr, float t0, float terr, o2::dataformats::GlobalTrackID srcGID, int tpcID); - int preselectChipClusters(std::vector& clVecOut, const ClusRange& clRange, const ITSChipClustersRefs& clRefs, - float trackY, float trackZ, float tolerY, float tolerZ, const o2::MCCompLabel& lblTrc) const; - void fillClustersForAfterBurner(ITSChipClustersRefs& refCont, int rofStart, int nROFs = 1); - void cleanAfterBurnerClusRefCache(int currentIC, int& startIC); + int preselectChipClusters(std::vector& clVecOut, const ClusRange& clRange, + float trackY, float trackZ, float tolerY, float tolerZ) const; + void fillClustersForAfterBurner(int rofStart, int nROFs = 1); void flagUsedITSClusters(const o2::its::TrackITS& track, int rofOffset); void doMatching(int sec); @@ -517,6 +489,17 @@ class MatchTPCITS return delta > toler ? rejFlag : (delta < -toler ? -rejFlag : Accept); } + // ========================= AFTERBURNER ========================= + void runAfterBurner(); + int prepareABSeeds(); + void processABSeed(int sid); + int followABSeed(const o2::track::TrackParCov& seed, int seedID, int lrID, TPCABSeed& ABSeed); + int registerABTrackLink(TPCABSeed& ABSeed, const o2::track::TrackParCov& trc, int clID, int parentID, int lr, int laddID, float chi2Cl); + bool isBetter(float chi2A, float chi2B) { return chi2A < chi2B; } // RS FIMXE TODO + void refitABWinners(); + bool refitABTrack(int iITSAB, const TPCABSeed& seed); + void accountForOverlapsAB(int lrSeed); + float correctTPCTrack(o2::track::TrackParCov& trc, const TrackLocTPC& tTPC, const InteractionCandidate& cand) const; // RS FIXME will be needed for refit //================================================================ bool mInitDone = false; ///< flag init already done @@ -612,26 +595,24 @@ class MatchTPCITS MCLabContTr mITSLblWork; ///< ITS track labels std::vector mWinnerChi2Refit; ///< vector of refitChi2 for winners - std::deque mITSChipClustersRefs; ///< range of clusters for each chip in ITS (for AfterBurner) + ITSChipClustersRefs mITSChipClustersRefs; ///< range of clusters for each chip in ITS (for AfterBurner) - std::vector mABTrackLinksList; ///< pool of ABTrackLinksList objects for every TPC track matched by AB - std::vector mABTrackLinks; ///< pool AB track links - std::vector mABClusterLinks; ///< pool AB cluster links - std::vector mABBestLinks; ///< pool of ABOrder links for best links of the ABTrackLinksList + // ------------------------------ + std::vector mTPCABSeeds; ///< pool of primary TPC seeds for AB + ///< indices of selected track entries in mTPCWork (for tracks selected by AfterBurner) + std::vector mTPCABIndexCache; + std::vector mABWinnersIDs; + std::vector mABTrackletClusterIDs; ///< IDs of ITS clusters for AfterBurner winners + std::vector mABTrackletRefs; ///< references on AfterBurner winners clusters std::vector mABClusterLinkIndex; ///< index of 1st ABClusterLink for every cluster used by AfterBurner, -1: unused, -10: used by external ITS tracks - int mMaxABLinksOnLayer = 20; ///< max number of candidate links per layer - int mMaxABFinalHyp = 10; ///< max number of final hypotheses to consider + MCLabContTr mABTrackletLabels; + // ------------------------------ ///< per sector indices of TPC track entry in mTPCWork std::array, o2::constants::math::NSectors> mTPCSectIndexCache; ///< per sector indices of ITS track entry in mITSWork std::array, o2::constants::math::NSectors> mITSSectIndexCache; - ///< indices of selected track entries in mTPCWork (for tracks selected by AfterBurner) - std::vector mTPCABIndexCache; - ///< indices of 1st entries with time-bin above the value - std::vector mTPCABTimeBinStart; - ///< indices of 1st TPC tracks with time above the ITS ROF time std::array, o2::constants::math::NSectors> mTPCTimeStart; ///< indices of 1st entries of ITS tracks starting at given ROframe @@ -645,7 +626,6 @@ class MatchTPCITS MCLabContTr mOutLabels; ///< Labels: = TPC labels with flag isFake set in case of fake matching o2::its::RecoGeomHelper mRGHelper; ///< helper for cluster and geometry access - float mITSFiducialZCut = 9999.; ///< eliminate TPC seeds outside of this range #ifdef _ALLOW_DEBUG_TREES_ std::unique_ptr mDBGOut; @@ -666,10 +646,15 @@ class MatchTPCITS SWDoMatching, SWSelectBest, SWRefit, + SWABSeeds, + SWABMatch, + SWABWinners, + SWABRefit, SWIO, SWDBG, NStopWatches }; - static constexpr std::string_view TimerName[] = {"Total", "PrepareITS", "PrepareTPC", "DoMatching", "SelectBest", "Refit", "IO", "Debug"}; + static constexpr std::string_view TimerName[] = {"Total", "PrepareITS", "PrepareTPC", "DoMatching", "SelectBest", "Refit", + "ABSeeds", "ABMatching", "ABWinners", "ABRefit", "IO", "Debug"}; TStopwatch mTimer[NStopWatches]; }; @@ -692,16 +677,6 @@ inline bool MatchTPCITS::isDisabledITS(const TrackLocITS& t) const { return t.ma //______________________________________________ inline bool MatchTPCITS::isDisabledTPC(const TrackLocTPC& t) const { return t.matchID < 0; } -//______________________________________________ -inline void MatchTPCITS::destroyLastABTrackLinksList() -{ - // Profit from the links of the last ABTrackLinksList having been added in the very end of mABTrackLinks - // and eliminate them also removing the last ABTrackLinksList. - // This method should not be called after buildABCluster2TracksLinks!!! - const auto& llist = mABTrackLinksList.back(); - mABTrackLinks.resize(llist.firstLinkID); - mABTrackLinksList.pop_back(); -} } // namespace globaltracking } // namespace o2 diff --git a/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITSParams.h b/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITSParams.h index 936cfcba33619..4cfdc64d02679 100644 --- a/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITSParams.h +++ b/Detectors/GlobalTracking/include/GlobalTracking/MatchTPCITSParams.h @@ -30,7 +30,7 @@ struct MatchTPCITSParams : public o2::conf::ConfigurableParamHelper + ; -#pragma link C++ class o2::globaltracking::ABDebugLink + ; -#pragma link C++ class o2::globaltracking::ABDebugTrack + ; +// RS FIXME remove ? +//#pragma link C++ class o2::globaltracking::ABDebugLink + ; +//#pragma link C++ class o2::globaltracking::ABDebugTrack + ; #pragma link C++ class std::pair < o2::dataformats::EvIndex < int, int>, o2::dataformats::MatchInfoTOF> + ; #pragma link C++ class std::vector < std::pair < o2::dataformats::EvIndex < int, int>, o2::dataformats::MatchInfoTOF>> + ; diff --git a/Detectors/GlobalTracking/src/MatchTPCITS.cxx b/Detectors/GlobalTracking/src/MatchTPCITS.cxx index c474d7b43f485..5c8ae074e15aa 100644 --- a/Detectors/GlobalTracking/src/MatchTPCITS.cxx +++ b/Detectors/GlobalTracking/src/MatchTPCITS.cxx @@ -55,189 +55,10 @@ using MatrixDSym4 = ROOT::Math::SMatrix>; using NAMES = o2::base::NameConf; using GTrackID = o2::dataformats::GlobalTrackID; - constexpr float MatchTPCITS::XMatchingRef; constexpr float MatchTPCITS::YMaxAtXMatchingRef; constexpr float MatchTPCITS::Tan70, MatchTPCITS::Cos70I2, MatchTPCITS::MaxSnp, MatchTPCITS::MaxTgp; -//______________________________________________ -void MatchTPCITS::printABTracksTree(const ABTrackLinksList& llist) const -{ - // dump all hypotheses - if (llist.lowestLayer == NITSLayers) { - printf("No matches\n"); - return; - } - o2::MCCompLabel lblTrc; - if (mMCTruthON) { - lblTrc = mTPCTrkLabels[mTPCWork[llist.trackID].sourceID]; - } - LOG(INFO) << "Matches for track " << llist.trackID << " lowest lr: " << int(llist.lowestLayer) << " " << lblTrc - << " pT= " << mTPCWork[llist.trackID].getPt(); - - auto printHyp = [this, &lblTrc](int nextHyp, int cnt) { - printf("#%d Lr/IC/Lnk/ClID/Chi2/Chi2Nrm/{MC}:%c ", cnt++, mTPCTrkLabels.size() ? (lblTrc.isFake() ? 'F' : 'C') : '-'); - int nFakeClus = 0, nTotClus = 0, parID = nextHyp; // print particular hypothesis - while (1) { - const auto& lnk = mABTrackLinks[parID]; - int mcEv = -1, mcTr = -1; - if (lnk.clID > MinusOne && mITSClsLabels) { - nTotClus++; - const auto lab = mITSClsLabels->getLabels(lnk.clID)[0]; - if (lab.isValid()) { - mcEv = lab.getEventID(); - mcTr = lab.getTrackID(); - if (mcEv != lblTrc.getEventID() || mcTr != lblTrc.getTrackID()) { - nFakeClus++; - } - } else { - mcEv = mcTr = -999; // noise - nFakeClus++; - } - } else if (lnk.isDummyTop() && mMCTruthON) { // top layer, use TPC MC lbl - mcEv = lblTrc.getEventID(); - mcTr = lblTrc.getTrackID(); - } - printf("[%d/%d/%d/%d/%6.2f/%6.2f/{%d/%d}]", lnk.layerID, lnk.icCandID, parID, lnk.clID, lnk.chi2, lnk.chi2Norm(), mcEv, mcTr); - if (lnk.isDummyTop()) { // reached dummy seed on the dummy layer above the last ITS layer - break; - } - parID = lnk.parentID; - } - printf(" NTot:%d NFakes:%d\n", nTotClus, nFakeClus); - }; - - int cnt = 0; // tmp - for (int lowest = llist.lowestLayer; lowest <= mParams->requireToReachLayerAB; lowest++) { - int nextHyp = llist.firstInLr[lowest]; - while (nextHyp > MinusOne) { - if (mABTrackLinks[nextHyp].nDaughters == 0) { // select only head links, w/o daughters - printHyp(nextHyp, cnt++); - } - nextHyp = mABTrackLinks[nextHyp].nextOnLr; - } - } - - if (llist.bestOrdLinkID > MinusOne) { // print best matches list - int next = llist.bestOrdLinkID; - LOG(INFO) << "Best matches:"; - int cnt = 0; - while (next > MinusOne) { - const auto& lnkOrd = mABBestLinks[next]; - int nextHyp = lnkOrd.trackLinkID; - printHyp(nextHyp, cnt++); - next = lnkOrd.nextLinkID; - refitABTrack(nextHyp); - } - } -} - -//______________________________________________ -void MatchTPCITS::dumpABTracksDebugTree(const ABTrackLinksList& llist) -{ - // dump all hypotheses - static int entCnt = 0; - if (llist.lowestLayer == NITSLayers) { - return; - } - LOG(INFO) << "Dump AB Matches for track " << llist.trackID; - o2::MCCompLabel lblTrc; - if (mMCTruthON) { - lblTrc = mTPCTrkLabels[mTPCWork[llist.trackID].sourceID]; // tmp - } - int ord = 0; - for (int lowest = llist.lowestLayer; lowest <= mParams->requireToReachLayerAB; lowest++) { - int nextHyp = llist.firstInLr[lowest]; - while (nextHyp > MinusOne) { - if (mABTrackLinks[nextHyp].nDaughters != 0) { // select only head links, w/o daughters - nextHyp = mABTrackLinks[nextHyp].nextOnLr; - continue; - } - // fill debug AB track - ABDebugTrack dbgTrack; - int parID = nextHyp; // print particular hypothesis - while (1) { - const auto& lnk = mABTrackLinks[parID]; - if (lnk.clID > MinusOne) { - auto& dbgLnk = dbgTrack.links.emplace_back(); -#ifdef _ALLOW_DEBUG_AB_ - dbgLnk.seed = lnk.seed; // seed before update -#endif - dbgLnk.clLabel = mITSClsLabels->getLabels(lnk.clID)[0]; - dbgLnk.chi2 = lnk.chi2; - dbgLnk.lr = lnk.layerID; - (o2::BaseCluster&)dbgLnk = mITSClustersArray[lnk.clID]; - dbgTrack.nClusITS++; - if (lblTrc.getEventID() == dbgLnk.clLabel.getEventID() && std::abs(lblTrc.getTrackID()) == dbgLnk.clLabel.getTrackID()) { - dbgTrack.nClusITSCorr++; - } - } - if (lnk.isDummyTop()) { // reached dummy seed on the dummy layer above the last ITS layer - dbgTrack.tpcSeed = lnk; // tpc seed - dbgTrack.trackID = llist.trackID; - dbgTrack.tpcLabel = lblTrc; - dbgTrack.icCand = lnk.icCandID; - dbgTrack.icTimeBin = mInteractions[lnk.icCandID].tBracket; - const auto& tpcTrOrig = mTPCTracksArray[mTPCWork[llist.trackID].sourceID]; - unsigned nclTPC = tpcTrOrig.getNClusterReferences(); - dbgTrack.nClusTPC = nclTPC > 0xff ? 0xff : nclTPC; - dbgTrack.sideAC = tpcTrOrig.hasASideClusters() + (tpcTrOrig.hasCSideClusters() ? 2 : 0); - break; - } - parID = lnk.parentID; - } - dbgTrack.chi2 = dbgTrack.links.front().chi2; - // at the moment links contain cumulative chi2, convert to track-to-cluster chi2 - for (int i = 0; i < dbgTrack.nClusITS - 1; i++) { - dbgTrack.links[i].chi2 -= dbgTrack.links[i + 1].chi2; - } - // at the moment the links are stored from inner to outer layers, invert this order - for (int i = dbgTrack.nClusITS / 2; i--;) { - std::swap(dbgTrack.links[i], dbgTrack.links[dbgTrack.nClusITS - i - 1]); - } - dbgTrack.valid = ord == 0 && llist.isValidated(); - dbgTrack.order = ord++; - // dump debug track - (*mDBGOut) << "abtree" - << "trc=" << dbgTrack << "\n"; - entCnt++; - nextHyp = mABTrackLinks[nextHyp].nextOnLr; - } - } // loop over layers -} - -//______________________________________________ -void MatchTPCITS::printABClusterUsage() const -{ - // print links info of clusters involved in AB tracks - int ncl = mABClusterLinkIndex.size(); - for (int icl = 0; icl < ncl; icl++) { - int lnkIdx = mABClusterLinkIndex[icl]; - if (lnkIdx <= MinusOne) { // not used or used in standard ITS tracks - continue; - } - LOG(INFO) << "Links for cluster " << icl; - int count = 0; - while (lnkIdx > MinusOne) { - const auto& linkCl = mABClusterLinks[lnkIdx]; - const auto& linkTrack = mABTrackLinks[linkCl.linkedABTrack]; - // find top track link on the dummy layer - int topIdx = linkCl.linkedABTrack, nUp = 0; - while (1) { - if (mABTrackLinks[topIdx].isDummyTop()) { - break; - } - nUp++; - topIdx = mABTrackLinks[topIdx].parentID; - } - const auto& topTrack = mABTrackLinks[topIdx]; - printf("[#%d Tr:%d IC:%d Chi2:%.2f NP:%d]", count++, topTrack.parentID, linkTrack.icCandID, linkTrack.chi2, nUp); - lnkIdx = linkCl.nextABClusterLink; - } - printf("\n"); - } -} - //______________________________________________ MatchTPCITS::MatchTPCITS() = default; @@ -329,16 +150,14 @@ void MatchTPCITS::clear() mITSROFTimes.clear(); mITSTrackROFContMapping.clear(); mITSClustersArray.clear(); - mABClusterLinkIndex.clear(); mITSChipClustersRefs.clear(); - - mABTrackLinksList.clear(); - mABTrackLinks.clear(); - mABClusterLinks.clear(); - mABBestLinks.clear(); - mABClusterLinkIndex.clear(); + mTPCABSeeds.clear(); mTPCABIndexCache.clear(); - mTPCABTimeBinStart.clear(); + mABWinnersIDs.clear(); + mABClusterLinkIndex.clear(); + mABTrackletRefs.clear(); + mABTrackletClusterIDs.clear(); + mABTrackletLabels.clear(); for (int sec = o2::constants::math::NSectors; sec--;) { mITSSectIndexCache[sec].clear(); @@ -396,8 +215,6 @@ void MatchTPCITS::init() #endif mRGHelper.init(); // prepare helper for TPC track / ITS clusters matching - const auto& zr = mRGHelper.layers.back().zRange; - mITSFiducialZCut = std::max(std::abs(zr.getMin()), std::abs(zr.getMax())) + 20.; clear(); @@ -674,7 +491,7 @@ bool MatchTPCITS::prepareTPCData() } } // loop over tracks of single sector - // FIXME + // FIXME We probably don't need this /* // create mapping from TPC time to ITS ROFs if (mITSROFTimes.back() < maxTime) { @@ -729,7 +546,7 @@ bool MatchTPCITS::prepareITSData() mITSWork.reserve(mITSTracksArray.size()); // total N ITS clusters in TF - const auto& lastClROF = mITSClusterROFRec[nROFs - 1]; //.back(); + const auto& lastClROF = mITSClusterROFRec[nROFs - 1]; int nITSClus = lastClROF.getFirstEntry() + lastClROF.getNEntries(); mABClusterLinkIndex.resize(nITSClus, MinusOne); for (int sec = o2::constants::math::NSectors; sec--;) { @@ -882,7 +699,7 @@ void MatchTPCITS::doMatching(int sec) int nCheckTPCControl = 0, nCheckITSControl = 0, nMatchesControl = 0; // temporary int idxMinTPC = timeStartTPC[minROFITS]; // index of 1st cached TPC track within cached ITS ROFrames - auto t2nbs = tpcTimeBin2MUS(mZ2TPCBin * mParams->tpcTimeICMatchingNSigma); // FIXME work directly with time in \mus + auto t2nbs = tpcTimeBin2MUS(mZ2TPCBin * mParams->tpcTimeICMatchingNSigma); bool checkInteractionCandidates = mUseFT0 && mParams->validateMatchByFIT != MatchTPCITSParams::Disable; int itsROBin = 0; @@ -1530,6 +1347,93 @@ bool MatchTPCITS::refitTrackTPCITS(int iTPC, int& iITS) return true; } +//______________________________________________ +bool MatchTPCITS::refitABTrack(int iITSAB, const TPCABSeed& seed) +{ + ///< refit AfterBurner track + + const float maxStep = 2.f; // max propagation step (TODO: tune) + const auto& tTPC = mTPCWork[seed.tpcWID]; + const auto& winLink = seed.getLink(seed.winLinkID); + auto& newtr = mMatchedTracks.emplace_back(winLink, winLink); // create a copy of winner param at innermost ITS cluster + auto& tracOut = newtr.getParamOut(); + auto& tofL = newtr.getLTIntegralOut(); + auto geom = o2::its::GeometryTGeo::Instance(); + auto propagator = o2::base::Propagator::Instance(); + tracOut.resetCovariance(); + propagator->estimateLTFast(tofL, winLink); // guess about initial value for the track integral from the origin + + // refit track outward in the ITS + const auto& itsClRefs = mABTrackletRefs[iITSAB]; + int nclRefit = 0, ncl = itsClRefs.getNClusters(); + float chi2 = 0.f; + // NOTE: the ITS cluster absolute indices are stored from inner to outer layers + for (int icl = itsClRefs.getFirstEntry(); icl < itsClRefs.getEntriesBound(); icl++) { + const auto& clus = mITSClustersArray[mABTrackletClusterIDs[icl]]; + float alpha = geom->getSensorRefAlpha(clus.getSensorID()), x = clus.getX(); + if (!tracOut.rotate(alpha) || + // note: here we also calculate the L,T integral + // note: we should eventually use TPC pid in the refit (TODO) + // note: since we are at small R, we can use field BZ component at origin rather than 3D field + !propagator->propagateToX(tracOut, x, propagator->getNominalBz(), MaxSnp, maxStep, mUseMatCorrFlag, &tofL)) { + break; + } + chi2 += tracOut.getPredictedChi2(clus); + if (!tracOut.update(clus)) { + break; + } + nclRefit++; + } + if (nclRefit != ncl) { + LOGP(DEBUG, "AfterBurner refit in ITS failed after ncl={}, match between TPC track #{} and ITS tracklet #{}", nclRefit, tTPC.sourceID, iITSAB); + LOGP(DEBUG, "{:s}", tracOut.asString()); + mMatchedTracks.pop_back(); // destroy failed track + return false; + } + // perform TPC refit with interaction time constraint + float timeC = mInteractions[seed.ICCanID].tBracket.mean(); + float timeErr = mInteractions[seed.ICCanID].tBracket.delta(); // RS FIXME shall we use gaussian error? + { + float xtogo = 0; + if (!tracOut.getXatLabR(o2::constants::geom::XTPCInnerRef, xtogo, mBz, o2::track::DirOutward) || + !propagator->PropagateToXBxByBz(tracOut, xtogo, MaxSnp, 10., mUseMatCorrFlag, &tofL)) { + LOG(DEBUG) << "Propagation to inner TPC boundary X=" << xtogo << " failed, Xtr=" << tracOut.getX() << " snp=" << tracOut.getSnp(); + mMatchedTracks.pop_back(); // destroy failed track + return false; + } + float chi2Out = 0; + auto posStart = tracOut.getXYZGlo(); + int retVal = mTPCRefitter->RefitTrackAsTrackParCov(tracOut, mTPCTracksArray[tTPC.sourceID].getClusterRef(), timeC * mTPCTBinMUSInv, &chi2Out, true, false); // outward refit + if (retVal < 0) { + LOG(DEBUG) << "Refit failed"; + mMatchedTracks.pop_back(); // destroy failed track + return false; + } + auto posEnd = tracOut.getXYZGlo(); + // account path integrals + float dX = posEnd.x() - posStart.x(), dY = posEnd.y() - posStart.y(), dZ = posEnd.z() - posStart.z(), d2XY = dX * dX + dY * dY; + if (mFieldON) { // circular arc = 2*R*asin(dXY/2R) + float b[3]; + o2::math_utils::Point3D posAv(0.5 * (posEnd.x() + posStart.x()), 0.5 * (posEnd.y() + posStart.y()), 0.5 * (posEnd.z() + posStart.z())); + propagator->getFieldXYZ(posAv, b); + float curvH = std::abs(0.5f * tracOut.getCurvature(b[2])), arcXY = 1. / curvH * std::asin(curvH * std::sqrt(d2XY)); + d2XY = arcXY * arcXY; + } + auto lInt = std::sqrt(d2XY + dZ * dZ); + tofL.addStep(lInt, tracOut.getP2Inv()); + tofL.addX2X0(lInt * mTPCmeanX0Inv); + propagator->PropagateToXBxByBz(tracOut, o2::constants::geom::XTPCOuterRef, MaxSnp, 10., mUseMatCorrFlag, &tofL); + } + + newtr.setChi2Match(winLink.chi2Norm()); + newtr.setChi2Refit(chi2); + newtr.setTimeMUS(timeC, timeErr); + newtr.setRefTPC({unsigned(tTPC.sourceID), o2::dataformats::GlobalTrackID::TPC}); + newtr.setRefITS({unsigned(iITSAB), o2::dataformats::GlobalTrackID::ITSAB}); + + return true; +} + //______________________________________________ bool MatchTPCITS::refitTPCInward(o2::track::TrackParCov& trcIn, float& chi2, float xTgt, int trcID, float timeTB) const { @@ -1560,15 +1464,12 @@ bool MatchTPCITS::refitTPCInward(o2::track::TrackParCov& trcIn, float& chi2, flo //>>============================= AfterBurner for TPC-track / ITS cluster matching ===================>> //______________________________________________ -int MatchTPCITS::prepareTPCTracksAfterBurner() +int MatchTPCITS::prepareABSeeds() { - ///< select TPC tracks to be considered in afterburner - mTPCABIndexCache.clear(); - mTPCABTimeBinStart.clear(); + ///< select TPC tracks to be considered in afterburner, clone them as seeds for every matching interaction candidate const auto& outerLr = mRGHelper.layers.back(); // to avoid difference between 3D field propagation and Bz-bazed getXatLabR we propagate RMax+margin const float ROuter = outerLr.rRange.getMax() + 0.5f; - auto propagator = o2::base::Propagator::Instance(); for (int iTPC = 0; iTPC < (int)mTPCWork.size(); iTPC++) { @@ -1586,13 +1487,43 @@ int MatchTPCITS::prepareTPCTracksAfterBurner() } } // sort tracks according to their timeMin - LOG(INFO) << "Sorting " << mTPCABIndexCache.size() << " selected TPC tracks for AfterBurner in tMin"; std::sort(mTPCABIndexCache.begin(), mTPCABIndexCache.end(), [this](int a, int b) { auto& trcA = mTPCWork[a]; auto& trcB = mTPCWork[b]; return (trcA.tBracket.getMin() - trcB.tBracket.getMin()) < 0.; }); + float maxTDriftSafe = tpcTimeBin2MUS(mNTPCBinsFullDrift + mParams->safeMarginTPCITSTimeBin + mTPCTimeEdgeTSafeMargin); + int nIntCand = mInteractions.size(), nTPCCand = mTPCABIndexCache.size(); + int tpcStart = 0; + for (int ic = 0; ic < nIntCand; ic++) { + int icFirstSeed = mTPCABSeeds.size(); + auto& intCand = mInteractions[ic]; + auto tic = intCand.tBracket.mean(); + for (int it = tpcStart; it < nTPCCand; it++) { + auto& trc = mTPCWork[mTPCABIndexCache[it]]; + auto cmp = trc.tBracket.isOutside(intCand.tBracket); + if (cmp < 0) { + break; // all other TPC tracks will be also in future wrt the interaction + } + if (cmp > 0) { + if (trc.tBracket.getMin() + maxTDriftSafe < intCand.tBracket.getMin()) { + tpcStart++; // all following int.candidates would be in future wrt this track + } + continue; + } + // we beed to create seed from this TPC track and interaction candidate + float dt = trc.getSignedDT(tic - trc.time0); + float dz = dt * mTPCVDrift0, z = trc.getZ() + dz; + if (outerLr.zRange.isOutside(z, std::sqrt(trc.getSigmaZ2()) + 2.)) { // RS FIXME introduce margin as parameter? + continue; + } + // make sure seed crosses the outer ITS layer (with some margin) + auto& seed = mTPCABSeeds.emplace_back(mTPCABIndexCache[it], ic, trc); + seed.track.setZ(z); // RS FIXME : in case of distortions and large dz the track must be refitted + } + intCand.seedsRef.set(icFirstSeed, mTPCABSeeds.size() - icFirstSeed); + } return mTPCABIndexCache.size(); } @@ -1635,185 +1566,221 @@ int MatchTPCITS::prepareInteractionTimes() //______________________________________________ void MatchTPCITS::runAfterBurner() { - mABTrackLinks.clear(); - - int nIntCand = mInteractions.size(); - int nTPCCand = prepareTPCTracksAfterBurner(); - LOG(INFO) << "AfterBurner will check " << nIntCand << " interaction candindates for " << nTPCCand << " TPC tracks"; - if (!nIntCand || !nTPCCand) { + mTimer[SWABSeeds].Start(false); + prepareABSeeds(); + int nIntCand = mInteractions.size(), nABSeeds = mTPCABSeeds.size(); + LOGP(INFO, "Afterburner will check {} seeds from {} TPC tracks and {} interaction candidates", nABSeeds, mTPCABIndexCache.size(), nIntCand); // TMP + mTimer[SWABSeeds].Stop(); + if (!nIntCand || !mTPCABSeeds.size()) { return; } - int iC = 0; // interaction candindate to consider and result of its time-bracket comparison to TPC track - int iCClean = iC; // id of the next candidate whose cache to be cleaned - for (int itr = 0; itr < nTPCCand; itr++) { // TPC track indices are sorted in tMin - const auto& tTPC = mTPCWork[mTPCABIndexCache[itr]]; - // find 1st interaction candidate compatible with time brackets of this track - int iCRes; - while ((iCRes = tTPC.tBracket.isOutside(mInteractions[iC].tBracket)) < 0 && ++iC < nIntCand) { // interaction precedes the track time-bracket - cleanAfterBurnerClusRefCache(iC, iCClean); // if possible, clean unneeded cached cluster references - } - if (iCRes == 0) { - int iCStart = iC, iCEnd = iC; // check all interaction candidates matching to this TPC track - do { - if (!mInteractions[iCEnd].clRefPtr) { // if not done yet, fill sorted cluster references for interaction candidate - mInteractions[iCEnd].clRefPtr = &mITSChipClustersRefs.emplace_back(); - fillClustersForAfterBurner(mITSChipClustersRefs.back(), mInteractions[iCEnd].rofITS); - // tst - int ncl = mITSChipClustersRefs.back().clusterID.size(); - } - } while (++iCEnd < nIntCand && !tTPC.tBracket.isOutside(mInteractions[iCEnd].tBracket)); - - auto lbl = mTPCLblWork[mTPCABIndexCache[itr]]; // tmp - if (runAfterBurner(mTPCABIndexCache[itr], iCStart, iCEnd)) { - lbl.print(); // tmp - //tmp - if (tTPC.matchID > MinusOne) { - printf("AB Matching tree for TPC WID %d and IC %d : %d\n", mTPCABIndexCache[itr], iCStart, iCEnd); - auto& llinks = mABTrackLinksList[tTPC.matchID]; - printABTracksTree(llinks); - } - } - } else if (iCRes > 0) { - continue; // TPC track precedes the interaction (means orphan track?), no need to check it - } else { - LOG(INFO) << "All interaction candidates precede track " << itr << " [" << tTPC.tBracket.getMin() << ":" << tTPC.tBracket.getMax() << "]"; - break; // all interaction candidates precede TPC track + mTimer[SWABMatch].Start(false); + for (int ic = 0; ic < nIntCand; ic++) { + const auto& intCand = mInteractions[ic]; + if (!intCand.seedsRef.getEntries()) { + continue; + } + fillClustersForAfterBurner(intCand.rofITS, 1); // RS FIXME account for possibility of filling 2 ROFs + for (int is = intCand.seedsRef.getFirstEntry(); is < intCand.seedsRef.getEntriesBound(); is++) { // loop over all seeds of this interaction candidate + processABSeed(is); } } - buildABCluster2TracksLinks(); - selectBestMatchesAB(); // validate matches which are good in both ways: TPCtrack->ITSclusters and ITSclusters->TPCtrack - // tmp - if (mDBGOut) { - for (const auto& llinks : mABTrackLinksList) { - dumpABTracksDebugTree(llinks); + mTimer[SWABWinners].Start(false); + int nwin = 0; + // select winners + int iter = 0; + struct SID { + int seedID = -1; + float chi2 = 1e9; + }; + std::vector candAB; + candAB.reserve(nABSeeds); + mABWinnersIDs.reserve(mTPCABIndexCache.size()); + + for (int i = 0; i < nABSeeds; i++) { + auto& ABSeed = mTPCABSeeds[i]; + if (ABSeed.isDisabled()) { + continue; } + if (ABSeed.lowestLayer > mParams->requireToReachLayerAB) { + ABSeed.disable(); + continue; + } + auto candID = ABSeed.getBestLinkID(); + if (candID < 0 || ABSeed.getLink(candID).nContLayers < mParams->minContributingLayersAB) { + ABSeed.disable(); + continue; + } + candAB.emplace_back(SID{i, ABSeed.getLink(candID).chi2Norm()}); } - // tmp + std::sort(candAB.begin(), candAB.end(), [](SID a, SID b) { return a.chi2 < b.chi2; }); + for (int i = 0; i < (int)candAB.size(); i++) { + auto& ABSeed = mTPCABSeeds[candAB[i].seedID]; + if (ABSeed.isDisabled()) { + //RSTMP LOG(INFO) << "Iter: " << iter << " seed is disabled: " << i << "[" << candAB[i].seedID << "/" << candAB[i].chi2 << "]" << " last lr: " << int(ABSeed.lowestLayer); + continue; + } + auto& tTPC = mTPCWork[ABSeed.tpcWID]; + if (tTPC.matchID > MinusOne) { // this tracks was already validated with other IC + ABSeed.disable(); + //RSTMP LOG(INFO) << "Iter: " << iter << " disabling seed " << i << "[" << candAB[i].seedID << "/" << candAB[i].chi2 << "]" << " TPC track " << ABSeed.tpcWID << " already validated" << " last lr: " << int(ABSeed.lowestLayer); + continue; + } + auto bestID = ABSeed.getBestLinkID(); + const auto& link = ABSeed.getLink(bestID); // RS FIXME TMP + if (ABSeed.checkLinkHasUsedClusters(bestID, mABClusterLinkIndex)) { + ABSeed.setNeedAlternative(); // flag for later processing + //RSTMP LOG(INFO) << "Iter: " << iter << " seed has used clusters " << i << "[" << candAB[i].seedID << "/" << candAB[i].chi2 << "]" << " last lr: " << int(ABSeed.lowestLayer) << " Ncont: " << int(link.nContLayers);; + continue; + } + ABSeed.validate(bestID); + ABSeed.flagLinkUsedClusters(bestID, mABClusterLinkIndex); + mABWinnersIDs.push_back(tTPC.matchID = candAB[i].seedID); + nwin++; + //RSTMP LOG(INFO) << "Iter: " << iter << " validated seed " << i << "[" << candAB[i].seedID << "/" << candAB[i].chi2 << "] for TPC track " << ABSeed.tpcWID << " last lr: " << int(ABSeed.lowestLayer) << " Ncont: " << int(link.nContLayers); + } + mTimer[SWABWinners].Stop(); + mTimer[SWABRefit].Start(false); + refitABWinners(); + mTimer[SWABRefit].Stop(); } //______________________________________________ -bool MatchTPCITS::runAfterBurner(int tpcWID, int iCStart, int iCEnd) +void MatchTPCITS::refitABWinners() { - // Try to match TPC tracks to ITS clusters, assuming that it comes from interaction candidate in the range [iCStart:iCEnd) - // The track is already propagated to the outer R of the outermost layer - - LOG(INFO) << "AfterBurner for TPC track " << tpcWID << " with int.candidates " << iCStart << " " << iCEnd; - - auto& tTPC = mTPCWork[tpcWID]; - auto& abTrackLinksList = createABTrackLinksList(tpcWID); - - const int maxMissed = 0; - - for (int iCC = iCStart; iCC < iCEnd; iCC++) { - const auto& iCCand = mInteractions[iCC]; - int topLinkID = registerABTrackLink(abTrackLinksList, tTPC, iCC, NITSLayers, tpcWID, MinusTen); // add track copy as a link on N+1 layer - if (topLinkID == MinusOne) { - continue; // link to be discarded, RS: do we need this for the fake layer? + mABTrackletClusterIDs.reserve(mABWinnersIDs.size() * (o2::its::RecoGeomHelper::getNLayers() - mParams->lowestLayerAB)); + mABTrackletRefs.reserve(mABWinnersIDs.size()); + if (mMCTruthON) { + mABTrackletLabels.reserve(mABWinnersIDs.size()); + } + std::map labelOccurence; + auto accountClusterLabel = [&labelOccurence, itsClLabs = mITSClsLabels](int clID) { + auto labels = itsClLabs->getLabels(clID); + for (auto lab : labels) { // check all labels of the cluster + if (lab.isSet()) { + labelOccurence[lab]++; + } } - auto& topLink = mABTrackLinks[topLinkID]; + }; - if (correctTPCTrack(topLink, tTPC, iCCand) < 0) { // correct track for assumed Z location calibration - topLink.disable(); + for (auto wid : mABWinnersIDs) { + const auto& ABSeed = mTPCABSeeds[wid]; + int start = mABTrackletClusterIDs.size(); + int lID = ABSeed.winLinkID, ncl = 0; + while (lID > MinusOne) { + const auto& winL = ABSeed.getLink(lID); + if (winL.clID > MinusOne) { + mABTrackletClusterIDs.push_back(winL.clID); + ncl++; + if (mMCTruthON) { + accountClusterLabel(winL.clID); + } + } + lID = winL.parentID; + } + mABTrackletRefs.emplace_back(start, ncl); + if (!refitABTrack(mABTrackletRefs.size() - 1, ABSeed)) { // on failure, destroy added tracklet reference + mABTrackletRefs.pop_back(); + mABTrackletClusterIDs.resize(start); continue; } - /* - // tmp - LOG(INFO) << "Check track TPC mtc=" << tTPC.matchID << " int.cand. " << iCC - << " [" << tTPC.tBracket.getMin() << ":" << tTPC.tBracket.getMax() << "] for interaction " - << " [" << iCCand.tBracket.getMin() << ":" << iCCand.tBracket.getMax() << "]"; - */ - if (std::abs(topLink.getZ()) > mITSFiducialZCut) { // we can discard this seed - topLink.disable(); + if (mMCTruthON) { + o2::MCCompLabel lab; + int maxL = 0; // find most encountered label + for (auto [label, count] : labelOccurence) { + if (count > maxL) { + maxL = count; + lab = label; + } + } + if (maxL < ncl) { + lab.setFakeFlag(); + } + labelOccurence.clear(); + mABTrackletLabels.push_back(lab); // ITSAB tracklet label + auto& lblGlo = mOutLabels.emplace_back(mTPCLblWork[ABSeed.tpcWID]); + lblGlo.setFakeFlag(lab != lblGlo); + + LOG(DEBUG) << "ABWinner ncl=" << ncl << " mcLBAB " << lab << " mcLBGlo " << lblGlo << " chi2=" << ABSeed.getLink(ABSeed.winLinkID).chi2Norm() << " pT = " << ABSeed.track.getPt(); } + // build MC label } - for (int ilr = NITSLayers; ilr > 0; ilr--) { - int nextLinkID = abTrackLinksList.firstInLr[ilr]; +} + +//______________________________________________ +void MatchTPCITS::processABSeed(int sid) +{ + // prepare matching hypothesis tree for given seed + auto& ABSeed = mTPCABSeeds[sid]; + followABSeed(ABSeed.track, MinusTen, NITSLayers - 1, ABSeed); // check matches on outermost layer + for (int ilr = NITSLayers - 1; ilr > mParams->lowestLayerAB; ilr--) { + int nextLinkID = ABSeed.firstInLr[ilr]; if (nextLinkID < 0) { break; } while (nextLinkID > MinusOne) { - if (!mABTrackLinks[nextLinkID].isDisabled()) { - checkABSeedFromLr(ilr, nextLinkID, abTrackLinksList); + const auto& seedLink = ABSeed.getLink(nextLinkID); + if (seedLink.isDisabled()) { + continue; } - nextLinkID = mABTrackLinks[nextLinkID].nextOnLr; + followABSeed(seedLink, nextLinkID, ilr - 1, ABSeed); // check matches on the next layer + nextLinkID = seedLink.nextOnLr; + // RS FIXME account for possibility of missing a layer } - accountForOverlapsAB(ilr - 1); - // printf("After seeds of Lr %d:\n",ilr); - // printABTracksTree(abTrackLinksList); // tmp tmp } - // disable link-list if neiher of seeds reached highest requested layer - if (abTrackLinksList.lowestLayer > mParams->requireToReachLayerAB) { - destroyLastABTrackLinksList(); - tTPC.matchID = MinusTen; - return false; + /* // RS FIXME remove on final clean-up + auto bestLinkID = ABSeed.getBestLinkID(); + if (bestLinkID>MinusOne) { + const auto& bestL = ABSeed.getLink(bestLinkID); + LOG(INFO) << "seed " << sid << " last lr: " << int(ABSeed.lowestLayer) << " Ncont: " << int(bestL.nContLayers) << " chi2 " << bestL.chi2; } - - return true; -} - -//______________________________________________ -void MatchTPCITS::accountForOverlapsAB(int lrSeed) -{ - // TODO - LOG(WARNING) << "TODO"; + else { + LOG(INFO) << "seed " << sid << " : NONE"; + } + */ } //______________________________________________ -int MatchTPCITS::checkABSeedFromLr(int lrSeed, int seedID, ABTrackLinksList& llist) +int MatchTPCITS::followABSeed(const o2::track::TrackParCov& seed, int seedID, int lrID, TPCABSeed& ABSeed) { - // check seed isd on layer lrSeed for prolongation to next layer - int lrTgt = lrSeed - 1; - auto& seedLink = mABTrackLinks[seedID]; - o2::track::TrackParCov seed(seedLink); // operate with copy auto propagator = o2::base::Propagator::Instance(); float xTgt; - const auto& lr = mRGHelper.layers[lrTgt]; - if (!seed.getXatLabR(lr.rRange.getMax(), xTgt, propagator->getNominalBz(), o2::track::DirInward) || - !propagator->PropagateToXBxByBz(seed, xTgt, MaxSnp, 2., mUseMatCorrFlag)) { + const auto& lr = mRGHelper.layers[lrID]; + auto seedC = seed; + if (!seedC.getXatLabR(lr.rRange.getMax(), xTgt, propagator->getNominalBz(), o2::track::DirInward) || + !propagator->propagateToX(seedC, xTgt, true, MaxSnp, 2., mUseMatCorrFlag)) { // Bz-propagation only in ITS + return -1; + } + float zDRStep = -seedC.getTgl() * lr.rRange.delta(); // approximate Z span when going from layer rMin to rMax + float errZ = std::sqrt(seedC.getSigmaZ2()); + if (lr.zRange.isOutside(seedC.getZ(), mParams->nABSigmaZ * errZ + std::abs(zDRStep))) { return 0; } - auto icCandID = seedLink.icCandID; - - // fetch clusters reference object for the ITS ROF corresponding to interaction candidate - const auto& clRefs = *static_cast(mInteractions[icCandID].clRefPtr); - const float nSigmaZ = 5., nSigmaY = 5.; // RS TODO: convert to settable parameter - const float YErr2Extra = 0.1 * 0.1; // // RS TODO: convert to settable parameter - float sna, csa; // circle parameters for B ON data - float zDRStep = -seed.getTgl() * lr.rRange.delta(); // approximate Z span when going from layer rMin to rMax - float errZ = std::sqrt(seed.getSigmaZ2()); - if (lr.zRange.isOutside(seed.getZ(), nSigmaZ * errZ + std::abs(zDRStep))) { - // printf("Lr %d missed by Z = %.2f + %.3f\n", lrTgt, seed.getZ(), nSigmaZ * errZ + std::abs(zDRStep)); // tmp - return 0; - } - std::vector chipSelClusters; // preliminary cluster candidates //RS TODO do we keep this local / consider array instead of vector - o2::math_utils::CircleXYf_t trcCircle; + std::vector chipSelClusters; // preliminary cluster candidates //RS TODO do we keep this local / consider array instead of vector + o2::math_utils::CircleXYf_t trcCircle; // circle parameters for B ON data o2::math_utils::IntervalXYf_t trcLinPar; // line parameters for B OFF data + float sna, csa; // approximate errors - float errY = std::sqrt(seed.getSigmaY2() + YErr2Extra), errYFrac = errY * mRGHelper.ladderWidthInv(), errPhi = errY * lr.rInv; + float errY = std::sqrt(seedC.getSigmaY2() + mParams->err2ABExtraY), errYFrac = errY * mRGHelper.ladderWidthInv(), errPhi = errY * lr.rInv; if (mFieldON) { - seed.getCircleParams(propagator->getNominalBz(), trcCircle, sna, csa); + seedC.getCircleParams(propagator->getNominalBz(), trcCircle, sna, csa); } else { - seed.getLineParams(trcLinPar, sna, csa); + seedC.getLineParams(trcLinPar, sna, csa); } float xCurr, yCurr; - o2::math_utils::rotateZ(seed.getX(), seed.getY(), xCurr, yCurr, sna, csa); - float phi = std::atan2(yCurr, xCurr); // RS: TODO : can we use fast atan2 here? + o2::math_utils::rotateZ(seedC.getX(), seedC.getY(), xCurr, yCurr, sna, csa); // lab X,Y + float phi = std::atan2(yCurr, xCurr); // RS: TODO : can we use fast atan2 here? // find approximate ladder and chip_in_ladder corresponding to this track extrapolation - int nLad2Check = 0, ladIDguess = lr.getLadderID(phi), chipIDguess = lr.getChipID(seed.getZ() + 0.5 * zDRStep); + int nLad2Check = 0, ladIDguess = lr.getLadderID(phi), chipIDguess = lr.getChipID(seedC.getZ() + 0.5 * zDRStep); std::array lad2Check; - nLad2Check = mFieldON ? findLaddersToCheckBOn(lrTgt, ladIDguess, trcCircle, errYFrac, lad2Check) : findLaddersToCheckBOff(lrTgt, ladIDguess, trcLinPar, errYFrac, lad2Check); + nLad2Check = mFieldON ? findLaddersToCheckBOn(lrID, ladIDguess, trcCircle, errYFrac, lad2Check) : findLaddersToCheckBOff(lrID, ladIDguess, trcLinPar, errYFrac, lad2Check); - const auto& tTPC = mTPCWork[llist.trackID]; // tmp - o2::MCCompLabel lblTrc; - if (mMCTruthON) { - lblTrc = mTPCTrkLabels[tTPC.sourceID]; // tmp - } for (int ilad = nLad2Check; ilad--;) { int ladID = lad2Check[ilad]; const auto& lad = lr.ladders[ladID]; - // we assume that close chips on the same ladder with have close xyEdges, so it is enough to calculate track-chip crossing + // we assume that close chips on the same ladder will have close xyEdges, so it is enough to calculate track-chip crossing // coordinates xCross,yCross,zCross for this central chipIDguess, although we are going to check also neighbours float t = 1e9, xCross, yCross; const auto& chipC = lad.chips[chipIDguess]; @@ -1821,99 +1788,63 @@ int MatchTPCITS::checkABSeedFromLr(int lrSeed, int seedID, ABTrackLinksList& lli chipC.xyEdges.eval(t, xCross, yCross); float dx = xCross - xCurr, dy = yCross - yCurr, dst2 = dx * dx + dy * dy, dst = sqrtf(dst2); // Z-step sign depends on radius decreasing or increasing during the propagation - float zCross = seed.getZ() + seed.getTgl() * (dst2 < 2 * (dx * xCurr + dy * yCurr) ? dst : -dst); + float zCross = seedC.getZ() + seedC.getTgl() * (dst2 < 2 * (dx * xCurr + dy * yCurr) ? dst : -dst); for (int ich = -1; ich < 2; ich++) { int chipID = chipIDguess + ich; if (chipID < 0 || chipID >= lad.chips.size()) { continue; } - if (lad.chips[chipID].zRange.isOutside(zCross, nSigmaZ * errZ)) { + if (lad.chips[chipID].zRange.isOutside(zCross, mParams->nABSigmaZ * errZ)) { continue; } - const auto& clRange = clRefs.chipRefs[lad.chips[chipID].id]; + const auto& clRange = mITSChipClustersRefs.chipRefs[lad.chips[chipID].id]; if (!clRange.getEntries()) { continue; } - /* - // tmp - printf("Lr %d #%d/%d LadID: %d (phi:%+d) ChipID: %d [%d Ncl: %d from %d] (rRhi:%d Z:%+d[%+.1f:%+.1f]) | %+.3f %+.3f -> %+.3f %+.3f %+.3f (zErr: %.3f)\n", - lrTgt, ilad, ich, ladID, lad.isPhiOutside(phi, errPhi), chipID, - chipGID, clRange.getEntries(), clRange.getFirstEntry(), - lad.chips[chipID].xyEdges.seenByCircle(trcCircle, errYFrac), lad.chips[chipID].zRange.isOutside(zCross, 3 * errZ), lad.chips[chipID].zRange.getMin(), lad.chips[chipID].zRange.getMax(), - xCurr, yCurr, xCross, yCross, zCross, errZ); - */ // track Y error in chip frame float errYcalp = errY * (csa * chipC.csAlp + sna * chipC.snAlp); // sigY_rotate(from alpha0 to alpha1) = sigY * cos(alpha1 - alpha0); - float tolerZ = errZ * nSigmaZ, tolerY = errYcalp * nSigmaY; - float yTrack = -xCross * chipC.snAlp + yCross * chipC.csAlp; // track-chip crossing Y in chip frame - if (!preselectChipClusters(chipSelClusters, clRange, clRefs, yTrack, zCross, tolerY, tolerZ, lblTrc)) { // select candidate clusters for this chip + float tolerZ = errZ * mParams->nABSigmaZ, tolerY = errYcalp * mParams->nABSigmaY; + float yTrack = -xCross * chipC.snAlp + yCross * chipC.csAlp; // track-chip crossing Y in chip frame + if (!preselectChipClusters(chipSelClusters, clRange, yTrack, zCross, tolerY, tolerZ)) { // select candidate clusters for this chip continue; } - o2::track::TrackParCov trcLC = seed; + o2::track::TrackParCov trcLC = seedC; + if (!trcLC.rotate(chipC.alp) || !trcLC.propagateTo(chipC.xRef, propagator->getNominalBz())) { - LOG(INFO) << " failed to rotate to alpha=" << chipC.alp << " or prop to X=" << chipC.xRef; - trcLC.print(); - continue; + LOG(DEBUG) << " failed to rotate to alpha=" << chipC.alp << " or prop to X=" << chipC.xRef; + //trcLC.print(); + break; // the chips of the ladder are practically on the same X and alpha } int cntc = 0; for (auto clID : chipSelClusters) { const auto& cls = mITSClustersArray[clID]; auto chi2 = trcLC.getPredictedChi2(cls); - /* - const auto lab = mITSClsLabels->getLabels(clID)[0]; // tmp - LOG(INFO) << "cl " << cntc++ << " ClLbl:" << lab << " TrcLbl" << lblTrc << " chi2 = " << chi2 << " chipGID: " << lad.chips[chipID].id; // tmp - */ if (chi2 > mParams->cutABTrack2ClChi2) { continue; } - int lnkID = registerABTrackLink(llist, trcLC, icCandID, lrTgt, seedID, clID, chi2); // add new link with track copy + int lnkID = registerABTrackLink(ABSeed, trcLC, clID, seedID, lrID, ladID, chi2); // add new link with track copy if (lnkID > MinusOne) { - auto& link = mABTrackLinks[lnkID]; - link.ladderID = ladID; // store ladderID for double hit check -#ifdef _ALLOW_DEBUG_AB_ - link.seed = link; -#endif + auto& link = ABSeed.getLink(lnkID); link.update(cls); - link.chi2 = chi2 + mABTrackLinks[seedID].chi2; // don't use seedLink since it may be changed are reallocation - mABTrackLinks[seedID].nDaughters++; // idem, don't use seedLink.nDaughters++; - - if (lrTgt < llist.lowestLayer) { - llist.lowestLayer = lrTgt; // update lowest layer reached + if (seedID >= MinusOne) { + ABSeed.getLink(seedID).nDaughters++; // RS FIXME : do we need this? + } + if (lrID < ABSeed.lowestLayer) { + ABSeed.lowestLayer = lrID; // update lowest layer reached } - // printf("Added chi2 %.3f @ lr %d as %d\n",link.chi2, lrTgt, lnkID); // tmp tmp } } } } - return mABTrackLinks[seedID].nDaughters; + return 0; } //______________________________________________ -void MatchTPCITS::mergeABSeedsOnOverlaps(int ilrPar, ABTrackLinksList& llist) +void MatchTPCITS::accountForOverlapsAB(int lrSeed) { - // try to merge seeds which may come from double hit on the layer. Parent layer is provided, - // The merged seeds will be added unconditionally (if they pass chi2 cut) - int linksFilled = mABTrackLinks.size(); - int lrID = ilrPar - 1; - int topLinkID = llist.firstInLr[lrID]; - while (topLinkID > MinusOne) { - const auto& topLink = mABTrackLinks[topLinkID]; - int runLinkID = topLink.nextOnLr; // running link ID - while (runLinkID > MinusOne) { - const auto& runLink = mABTrackLinks[runLinkID]; - // to be considered as double hit candidate 2 links must have common parent and neighbouring ladders - while (1) { - if (topLink.parentID != runLink.parentID) { - break; - } - int dLadder = topLink.ladderID - runLink.ladderID; - if (dLadder == 0 || (dLadder > 1 && dLadder != mRGHelper.layers[lrID].ladders.size() - 1)) { // difference must be 1 or Nladders-1 - break; - } - } - } - } + // TODO + LOG(WARNING) << "TODO"; } //______________________________________________ @@ -1989,129 +1920,54 @@ int MatchTPCITS::findLaddersToCheckBOff(int ilr, int lad0, const o2::math_utils: } //______________________________________________ -void MatchTPCITS::buildABCluster2TracksLinks() -{ - // build links from clusters to tracks for afterburner - int nTrackLinkList = mABTrackLinksList.size(); - for (int ils = 0; ils < nTrackLinkList; ils++) { - auto& trList = mABTrackLinksList[ils]; - if (trList.trackID <= MinusOne) { - LOG(ERROR) << "ABTrackLinksList does not point on tracks, impossible"; // tmp - continue; - } - // register all clusters of all seeds starting from the innermost layer - for (int lr = trList.lowestLayer; lr <= mParams->requireToReachLayerAB; lr++) { - int finalTrackLinkIdx = trList.firstInLr[lr]; - while (finalTrackLinkIdx > MinusOne) { // loop over all links of this layer - auto& finalTrackLink = mABTrackLinks[finalTrackLinkIdx]; - if (finalTrackLink.nDaughters) { - finalTrackLinkIdx = finalTrackLink.nextOnLr; // pick next link on the layer - continue; // at this moment we need to find the end-point of the seed - } - // register links for clusters of this seed moving from lowest to upper layer - int followLinkIdx = finalTrackLinkIdx; - while (1) { //>> loop over links of the same seed - const auto& followLink = mABTrackLinks[followLinkIdx]; - int clID = followLink.clID; // in principle, the cluster might be missing on particular layer - if (clID > MinusOne) { //>> register cluster usage - int newClLinkIdx = mABClusterLinks.size(); - auto& newClLink = mABClusterLinks.emplace_back(finalTrackLinkIdx, ils); // create new link - - //>> insert new link in the list of other links for this cluster ordering in track final quality - int clLinkIdx = mABClusterLinkIndex[clID]; - int prevClLinkIdx = MinusOne; - while (clLinkIdx > MinusOne) { - auto& clLink = mABClusterLinks[clLinkIdx]; - const auto& competingTrackLink = mABTrackLinks[clLink.linkedABTrack]; - if (isBetter(finalTrackLink.chi2Norm(), competingTrackLink.chi2Norm())) { - newClLink.nextABClusterLink = clLinkIdx; - break; - } - prevClLinkIdx = clLinkIdx; // check next link - clLinkIdx = clLink.nextABClusterLink; - } - if (prevClLinkIdx > MinusOne) { // new link is not the best (1st) one, register it in its predecessor - mABClusterLinks[prevClLinkIdx].nextABClusterLink = newClLinkIdx; - } else { // new link is the 1st one, register it in the mABClusterLinkIndex - mABClusterLinkIndex[clID] = newClLinkIdx; - } - //<< insert new link in the list of other links for this cluster ordering in track final quality - - } //<< register cluster usage - else if (followLink.isDummyTop()) { // we reached dummy seed on the dummy layer above the last ITS layer - break; - } - - followLinkIdx = followLink.parentID; // go upward - } //>> loop over links of the same seed - - finalTrackLinkIdx = finalTrackLink.nextOnLr; // pick next link on the layer - } // loop over all final seeds of this layer - } - } - printABClusterUsage(); -} - -//______________________________________________ -int MatchTPCITS::registerABTrackLink(ABTrackLinksList& llist, const o2::track::TrackParCov& src, int ic, int lr, int parentID, int clID, float chi2Cl) +int MatchTPCITS::registerABTrackLink(TPCABSeed& ABSeed, const o2::track::TrackParCov& trc, int clID, int parentID, int lr, int laddID, float chi2Cl) { // registers new ABLink on the layer, assigning provided kinematics. The link will be registered in a // way preserving the quality ordering of the links on the layer - int lnkID = mABTrackLinks.size(); - if (llist.firstInLr[lr] == MinusOne) { // no links on this layer yet - if (lr == NITSLayers) { - llist.firstLinkID = lnkID; // register very 1st link - } - llist.firstInLr[lr] = lnkID; - mABTrackLinks.emplace_back(src, ic, lr, parentID, clID); + int lnkID = ABSeed.trackLinks.size(), nextID = ABSeed.firstInLr[lr], nc = 1 + (parentID > MinusOne ? ABSeed.getLink(parentID).nContLayers : 0); + float chi2 = chi2Cl + (parentID > MinusOne ? ABSeed.getLink(parentID).chi2 : 0.); + //LOG(INFO) << "Reg on lr " << lr << " nc = " << nc << " chi2cl=" << chi2Cl << " -> " << chi2; // RSTMP + + if (ABSeed.firstInLr[lr] == MinusOne) { // no links on this layer yet + ABSeed.firstInLr[lr] = lnkID; + ABSeed.trackLinks.emplace_back(trc, clID, parentID, MinusOne, lr, nc, laddID, chi2); return lnkID; } // add new link sorting links of this layer in quality - int count = 0, nextID = llist.firstInLr[lr], topID = MinusOne; + int count = 0, topID = MinusOne; do { - auto& nextLink = mABTrackLinks[nextID]; + auto& nextLink = ABSeed.getLink(nextID); count++; - // if clID==-10, this is a special link on the dummy layer, corresponding to particular Interaction Candidate, in this case - // it does not matter if we add new link before or after the preceding link of the same dummy layer - if (clID == MinusTen || isBetter(mABTrackLinks[parentID].chi2NormPredict(chi2Cl), nextLink.chi2Norm())) { // need to insert new link before nextLink - if (count < mMaxABLinksOnLayer) { // will insert in front of nextID - auto& newLnk = mABTrackLinks.emplace_back(src, ic, lr, parentID, clID); - newLnk.nextOnLr = nextID; // point to the next one - if (topID > MinusOne) { - mABTrackLinks[topID].nextOnLr = lnkID; // point from previous one + bool newIsBetter = parentID <= MinusOne ? isBetter(chi2, nextLink.chi2) : isBetter(ABSeed.getLink(parentID).chi2NormPredict(chi2Cl), nextLink.chi2Norm()); + if (newIsBetter) { // need to insert new link before nextLink + if (count < mParams->maxABLinksOnLayer) { // will insert in front of nextID + ABSeed.trackLinks.emplace_back(trc, clID, parentID, nextID, lr, nc, laddID, chi2); + if (topID == MinusOne) { // are we comparing new link with best link on the layer? + ABSeed.firstInLr[lr] = lnkID; // flag as best on the layer } else { - llist.firstInLr[lr] = lnkID; // flag as best on the layer + ABSeed.getLink(topID).nextOnLr = lnkID; // point from previous one } return lnkID; - } else { // max number of candidates reached, will overwrite the last one - ((o2::track::TrackParCov&)nextLink) = src; // NOTE: this makes sense only if the prolongation tree is filled from top to bottom - return nextID; // i.e. there are no links on the lower layers pointing on overwritten one!!! + } else { // max number of candidates reached, will overwrite the last one + nextLink = ABTrackLink(trc, clID, parentID, MinusOne, lr, nc, laddID, chi2); + return nextID; } } topID = nextID; nextID = nextLink.nextOnLr; } while (nextID > MinusOne); // new link is worse than all others, add it only if there is a room to expand - if (count < mMaxABLinksOnLayer) { - mABTrackLinks.emplace_back(src, ic, lr, parentID, clID); + if (count < mParams->maxABLinksOnLayer) { + ABSeed.trackLinks.emplace_back(trc, clID, parentID, MinusOne, lr, nc, laddID, chi2); if (topID > MinusOne) { - mABTrackLinks[topID].nextOnLr = lnkID; // point from previous one + ABSeed.getLink(topID).nextOnLr = lnkID; // point from previous one } return lnkID; } return MinusOne; // link to be ignored } -//______________________________________________ -ABTrackLinksList& MatchTPCITS::createABTrackLinksList(int tpcWID) -{ - // return existing or newly created AB links list for TPC track work copy ID - auto& tTPC = mTPCWork[tpcWID]; - tTPC.matchID = mABTrackLinksList.size(); // register new list in the TPC track - return mABTrackLinksList.emplace_back(tpcWID); -} - //______________________________________________ float MatchTPCITS::correctTPCTrack(o2::track::TrackParCov& trc, const TrackLocTPC& tTPC, const InteractionCandidate& cand) const { @@ -2126,7 +1982,7 @@ float MatchTPCITS::correctTPCTrack(o2::track::TrackParCov& trc, const TrackLocTP float timeIC = cand.tBracket.mean(); float driftErr = cand.tBracket.delta() * mTPCBin2Z; - // we use this for refit + // we use this for refit, at the moment do not... /* { float r = std::sqrt(trc.getX()*trc.getX() + trc.getY()*trc.getY()); @@ -2161,7 +2017,7 @@ float MatchTPCITS::correctTPCTrack(o2::track::TrackParCov& trc, const TrackLocTP } //______________________________________________ -void MatchTPCITS::fillClustersForAfterBurner(ITSChipClustersRefs& refCont, int rofStart, int nROFs) +void MatchTPCITS::fillClustersForAfterBurner(int rofStart, int nROFs) { // Prepare unused clusters of given ROFs range for matching in the afterburner // Note: normally only 1 ROF needs to be filled (nROFs==1 ) unless we want @@ -2170,15 +2026,16 @@ void MatchTPCITS::fillClustersForAfterBurner(ITSChipClustersRefs& refCont, int r for (int ir = nROFs; ir--;) { last += mITSClusterROFRec[rofStart + ir].getNEntries(); } - refCont.clear(); - auto& idxSort = refCont.clusterID; + mITSChipClustersRefs.clear(); + auto& idxSort = mITSChipClustersRefs.clusterID; for (int icl = first; icl < last; icl++) { if (mABClusterLinkIndex[icl] != MinusTen) { // clusters with MinusOne are used in main matching idxSort.push_back(icl); } } // sort in chip, Z - sort(idxSort.begin(), idxSort.end(), [clusArr = mITSClustersArray](int i, int j) { + const auto& clusArr = mITSClustersArray; + std::sort(idxSort.begin(), idxSort.end(), [&clusArr](int i, int j) { const auto &clI = clusArr[i], &clJ = clusArr[j]; if (clI.getSensorID() < clJ.getSensorID()) { return true; @@ -2200,7 +2057,7 @@ void MatchTPCITS::fillClustersForAfterBurner(ITSChipClustersRefs& refCont, int r chipClRefs->setEntries(nClInSens); nClInSens = 0; } - chipClRefs = &refCont.chipRefs[(lastSens = sens)]; + chipClRefs = &mITSChipClustersRefs.chipRefs[(lastSens = sens)]; chipClRefs->setFirstEntry(icl); } nClInSens++; @@ -2210,239 +2067,6 @@ void MatchTPCITS::fillClustersForAfterBurner(ITSChipClustersRefs& refCont, int r } } -//______________________________________________ -void MatchTPCITS::selectBestMatchesAB() -{ - ///< loop over After-Burner match records and select the ones with best quality - LOG(INFO) << "Selecting best AfterBurner matches "; - int nValidated = 0, iter = 0; - - int nTrackLinkList = mABTrackLinksList.size(), nremaining = 0; - do { - nValidated = nremaining = 0; - for (int ils = 0; ils < nTrackLinkList; ils++) { - auto& trList = mABTrackLinksList[ils]; - if (trList.isValidated() || trList.isDisabled()) { - continue; - } - nremaining++; - if (validateABMatch(ils)) { - nValidated++; - continue; - } - } - printf("iter %d Validated %d of %d remaining AB matches\n", iter, nValidated, nremaining); - iter++; - } while (nValidated); -} - -//______________________________________________ -bool MatchTPCITS::validateABMatch(int ilink) -{ - // make sure the preference of the set of cluster by this link is reciprocal - - buildBestLinksList(ilink); - - auto& trList = mABTrackLinksList[ilink]; - - // pick the best TPC->ITS links branch - int bestHypID = trList.firstInLr[trList.lowestLayer]; - const auto& bestHyp = mABTrackLinks[bestHypID]; // best hypothesis - - LOG(INFO) << "validateABMatch " << ilink; - printABTracksTree(trList); - - int parID = bestHypID; - int headID = parID; - while (1) { - const auto& lnk = mABTrackLinks[parID]; - LOG(INFO) << " *link " << parID << "(head " << headID << " cl: " << lnk.clID << " on Lr:" << int(lnk.layerID) << ")"; // tmp - if (lnk.clID > MinusOne) { - int clLnkIdx = mABClusterLinkIndex[lnk.clID]; // id of ITSclus->TPCtracks quality records - if (clLnkIdx < Zero) { - LOG(ERROR) << "AB-referred cluster " << lnk.clID << " does not have ABlinks record"; - continue; - } - - // navigate to best *available* ABlTrackLinkList contributed by this cluster - while (mABTrackLinksList[mABClusterLinks[clLnkIdx].linkedABTrackList].isValidated()) { - clLnkIdx = mABClusterLinks[clLnkIdx].nextABClusterLink; - } - if (clLnkIdx < Zero) { - LOG(ERROR) << "AB-referred cluster " << lnk.clID << " does not have ABlinks record, exhausted?"; - continue; - } - - const auto& linkCl = mABClusterLinks[clLnkIdx]; - - //<< tmp : for printout only - std::stringstream mcStr; - mcStr << " **cl" << lnk.clID << " -> seed:" << linkCl.linkedABTrack << '/' << linkCl.linkedABTrackList << " | "; - // find corresponding TPC track - int linkID = linkCl.linkedABTrack; - while (1) { - const auto& linkTrack = mABTrackLinks[linkID]; - linkID = linkTrack.parentID; - if (linkTrack.isDummyTop()) { - break; - } - } - mcStr << "{TPCwrk: " << linkID << "} "; - if (mITSClsLabels) { - auto lbls = mITSClsLabels->getLabels(lnk.clID); - for (const auto lbl : lbls) { - if (lbl.isValid()) { - mcStr << '[' << lbl.getSourceID() << '/' << lbl.getEventID() << '/' << (lbl.isFake() ? '-' : '+') << std::setw(6) << lbl.getTrackID() << ']'; - } else { - mcStr << (lbl.isNoise() ? "[noise]" : "[unset]"); - } - } - } - LOG(INFO) << mcStr.str(); - //>> tmp - - if (linkCl.linkedABTrack != headID) { // best link for this cluster differs from the link we are checking - return false; - } - } else if (lnk.isDummyTop()) { // top layer reached, this is winner - break; - } - parID = lnk.parentID; // check next cluster of the same link - } - LOG(INFO) << "OK validateABMatch " << ilink; - trList.validate(); - return true; -} - -//______________________________________________ -void MatchTPCITS::buildBestLinksList(int ilink) -{ - ///< build ordered list of links for given ABTrackLinksList, including those finishing on higher layers - auto& trList = mABTrackLinksList[ilink]; - - // pick the best TPC->ITS links branch - // int bestHypID = trList.firstInLr[trList.lowestLayer]; - // - - int start = mABBestLinks.size(); // order links will be added started from here - // 1) the links on the lowestLayer are already sorted, just copy them - int lowestLayer = trList.lowestLayer; - int nextID = trList.firstInLr[lowestLayer]; - int prevOrdLink = MinusOne, newOrdLinkID = MinusOne; - int nHyp = 0; - while (nextID > MinusOne && nHyp < mMaxABFinalHyp) { - newOrdLinkID = mABBestLinks.size(); - auto& best = mABBestLinks.emplace_back(nextID); - nHyp++; - if (prevOrdLink != MinusOne) { - mABBestLinks[prevOrdLink].nextLinkID = newOrdLinkID; // register reference on the new link from previous one - } - prevOrdLink = newOrdLinkID; - nextID = mABTrackLinks[nextID].nextOnLr; - } - trList.bestOrdLinkID = start; - - // now check if shorter seed links from layers above need to be considered as final track candidates - while (++lowestLayer <= mParams->requireToReachLayerAB) { - nextID = trList.firstInLr[lowestLayer]; - - while (nextID > MinusOne) { - auto& candHyp = mABTrackLinks[nextID]; - // compare candHyp with already stored best hypotheses (keeping in mind that within a single layer they are already sorted in quality - - int nextBest = trList.bestOrdLinkID, prevBest = MinusOne; - while (nextBest > MinusOne) { - const auto& bestOrd = mABBestLinks[nextBest]; - const auto& bestHyp = mABTrackLinks[bestOrd.trackLinkID]; - if (isBetter(candHyp.chi2Norm(), bestHyp.chi2Norm())) { // need to insert new candidate before bestOrd - break; - } - prevBest = nextBest; - nextBest = bestOrd.nextLinkID; - } - - bool reuseWorst = false, newIsWorst = (nextBest <= MinusOne); - if (nHyp == mMaxABFinalHyp) { // max number of best hypotheses reached - if (newIsWorst) { // the bestHyp is worse than all already registered hypotheses, - break; // ignore candHyp and all remaining hypotheses on this layer since they are worse - } - reuseWorst = true; // we don't add new ordLink slot to the pool but reuse the worst one - } - - int newID = mABBestLinks.size(); - if (reuseWorst) { // navigate to worst hypothesis link in order to use it for registration of new ordLink - int nextWorst = nextBest, prevWorst = prevBest; - while (mABBestLinks[nextWorst].nextLinkID > MinusOne) { // navigate to worst hypothesis link - prevWorst = nextWorst; - nextWorst = mABBestLinks[nextWorst].nextLinkID; - } - newID = nextWorst; - if (prevWorst > MinusOne) { // detach the reused slot from the superior slot refferring to suppressed one - mABBestLinks[prevWorst].nextLinkID = MinusOne; - } - } else { // add new slot to the pool - mABBestLinks.emplace_back(); - nHyp++; - } - mABBestLinks[newID].trackLinkID = nextID; - if (newID != nextBest) { // if we did not reuse the worst link, register the worse one here - mABBestLinks[newID].nextLinkID = nextBest; - } - if (prevBest > MinusOne) { - mABBestLinks[prevBest].nextLinkID = newID; // register new ordLink in its superior link - } else { // register new ordLink as best link - trList.bestOrdLinkID = newID; - } - - nextID = candHyp.nextOnLr; - } - } -} - -void MatchTPCITS::refitABTrack(int ibest) const -{ - auto propagator = o2::base::Propagator::Instance(); - const float maxStep = 2.f; // max propagation step (TODO: tune) - - int ncl = 0; - const auto& lnk0 = mABTrackLinks[ibest]; - o2::track::TrackParCov trc = lnk0; - trc.resetCovariance(); - const auto& cl0 = mITSClustersArray[lnk0.clID]; - trc.setY(cl0.getY()); - trc.setZ(cl0.getZ()); - trc.setCov(cl0.getSigmaY2(), o2::track::kSigY2); - trc.setCov(cl0.getSigmaZ2(), o2::track::kSigZ2); - trc.setCov(cl0.getSigmaYZ(), o2::track::kSigZY); // for the 1st point we don't need any fit - ibest = lnk0.parentID; - float chi2 = 0; - while (ibest > MinusOne) { - const auto& lnk = mABTrackLinks[ibest]; - if (!trc.rotate(lnk.getAlpha()) || - !propagator->propagateToX(trc, lnk.getX(), propagator->getNominalBz(), MaxSnp, maxStep, mUseMatCorrFlag, nullptr)) { - LOG(WARNING) << "Failed to rotate to " << lnk.getAlpha() << " or propagate to " << lnk.getX(); - LOG(WARNING) << trc.asString(); - break; - } - if (lnk.clID > MinusOne) { - const auto& cl = mITSClustersArray[lnk.clID]; - chi2 += trc.getPredictedChi2(cl); - if (!trc.update(cl)) { - LOG(WARNING) << "Failed to update by " << cl; - LOG(WARNING) << trc.asString(); - break; - } - ncl++; - } else if (lnk.isDummyTop()) { // dummy layer to which TPC track was propagated - LOG(INFO) << "end of fit: chi2=" << chi2 << " ncl= " << ncl; - LOG(INFO) << "TPCtrc: " << lnk.asString(); - LOG(INFO) << "ITStrc: " << trc.asString(); - break; - } - ibest = lnk.parentID; - } -} - //______________________________________________ void MatchTPCITS::setITSROFrameLengthMUS(float fums) { @@ -2569,21 +2193,17 @@ void MatchTPCITS::flagUsedITSClusters(const o2::its::TrackITS& track, int rofOff } } //__________________________________________________________ -int MatchTPCITS::preselectChipClusters(std::vector& clVecOut, const ClusRange& clRange, const ITSChipClustersRefs& clRefs, - float trackY, float trackZ, float tolerY, float tolerZ, - const o2::MCCompLabel& lblTrc) const // TODO lbl is not needed +int MatchTPCITS::preselectChipClusters(std::vector& clVecOut, const ClusRange& clRange, + float trackY, float trackZ, float tolerY, float tolerZ) const { clVecOut.clear(); int icID = clRange.getFirstEntry(); for (int icl = clRange.getEntries(); icl--;) { // note: clusters within a chip are sorted in Z - int clID = clRefs.clusterID[icID++]; // so, we go in clusterID increasing direction + int clID = mITSChipClustersRefs.clusterID[icID++]; // so, we go in clusterID increasing direction const auto& cls = mITSClustersArray[clID]; float dz = trackZ - cls.getZ(); auto label = mITSClsLabels->getLabels(clID)[0]; // tmp - // if (!(label == lblTrc)) { - // continue; // tmp - // } - LOG(DEBUG) << "cl" << icl << '/' << clID << " " << label + LOG(DEBUG) << "cl" << icl << '/' << clID << " " << " dZ: " << dz << " [" << tolerZ << "| dY: " << trackY - cls.getY() << " [" << tolerY << "]"; if (dz > tolerZ) { float clsZ = cls.getZ(); @@ -2602,22 +2222,6 @@ int MatchTPCITS::preselectChipClusters(std::vector& clVecOut, const ClusRan return clVecOut.size(); } -//______________________________________________ -void MatchTPCITS::cleanAfterBurnerClusRefCache(int currentIC, int& startIC) -{ - // check if some of cached cluster reference from tables startIC to currentIC can be released, - // they will be necessarily in front slots of the mITSChipClustersRefs - while (startIC < currentIC && mInteractions[currentIC].tBracket.getMin() - mInteractions[startIC].tBracket.getMax() > MinTBToCleanCache) { - LOG(INFO) << "CAN REMOVE CACHE FOR " << startIC << " curent IC=" << currentIC; - while (mInteractions[startIC].clRefPtr == &mITSChipClustersRefs.front()) { - LOG(INFO) << "Reset cache pointer" << mInteractions[startIC].clRefPtr << " for IC=" << startIC; - mInteractions[startIC++].clRefPtr = nullptr; - } - LOG(INFO) << "Reset cache slot " << &mITSChipClustersRefs.front(); - mITSChipClustersRefs.pop_front(); - } -} - //<<============================= AfterBurner for TPC-track / ITS cluster matching ===================<< #ifdef _ALLOW_DEBUG_TREES_ diff --git a/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h b/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h index 9f0d1dccb2cd2..b79db9136e7d7 100644 --- a/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h +++ b/Detectors/GlobalTrackingWorkflow/readers/include/GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h @@ -9,18 +9,12 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -/// @file DigitReaderSpec.h +/// @file TrackTPCITSReader.h #ifndef O2_GLOBAL_TRACKITSTPCREADER #define O2_GLOBAL_TRACKITSTPCREADER -#include "TFile.h" -#include "TTree.h" - #include "Framework/DataProcessorSpec.h" -#include "Framework/Task.h" -#include "ReconstructionDataFormats/TrackTPCITS.h" -#include "SimulationDataFormat/MCCompLabel.h" using namespace o2::framework; @@ -29,26 +23,7 @@ namespace o2 namespace globaltracking { -class TrackTPCITSReader : public Task -{ - public: - TrackTPCITSReader(bool useMC) : mUseMC(useMC) {} - ~TrackTPCITSReader() override = default; - void init(InitContext& ic) final; - void run(ProcessingContext& pc) final; - - private: - void connectTree(const std::string& filename); - bool mUseMC = true; - std::unique_ptr mFile; - std::unique_ptr mTree; - std::string mFileName = ""; - std::vector mTracks, *mTracksPtr = &mTracks; - std::vector mLabels, *mLabelsPtr = &mLabels; -}; - /// create a processor spec -/// read simulated TOF digits from a root file framework::DataProcessorSpec getTrackTPCITSReaderSpec(bool useMC); } // namespace globaltracking diff --git a/Detectors/GlobalTrackingWorkflow/readers/src/TrackTPCITSReaderSpec.cxx b/Detectors/GlobalTrackingWorkflow/readers/src/TrackTPCITSReaderSpec.cxx index 7ad1f88a44da4..02a55acd20398 100644 --- a/Detectors/GlobalTrackingWorkflow/readers/src/TrackTPCITSReaderSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/readers/src/TrackTPCITSReaderSpec.cxx @@ -12,13 +12,18 @@ /// @file TrackTPCITSReaderSpec.cxx #include - +#include "TFile.h" +#include "TTree.h" +#include "Framework/Task.h" +#include "ReconstructionDataFormats/TrackTPCITS.h" +#include "SimulationDataFormat/MCCompLabel.h" #include "Framework/ConfigParamRegistry.h" #include "Framework/ControlService.h" #include "GlobalTrackingWorkflowReaders/TrackTPCITSReaderSpec.h" #include "DataFormatsParameters/GRPObject.h" #include "Framework/SerializationMethods.h" #include "DetectorsCommonDataFormats/NameConf.h" +#include "DataFormatsITSMFT/TrkClusRef.h" using namespace o2::framework; using namespace o2::globaltracking; @@ -27,6 +32,28 @@ namespace o2 { namespace globaltracking { + +class TrackTPCITSReader : public Task +{ + public: + TrackTPCITSReader(bool useMC) : mUseMC(useMC) {} + ~TrackTPCITSReader() override = default; + void init(InitContext& ic) final; + void run(ProcessingContext& pc) final; + + private: + void connectTree(const std::string& filename); + bool mUseMC = true; + std::unique_ptr mFile; + std::unique_ptr mTree; + std::string mFileName = ""; + std::vector mTracks, *mTracksPtr = &mTracks; + std::vector mABTrkClusRefs, *mABTrkClusRefsPtr = &mABTrkClusRefs; + std::vector mABTrkClIDs, *mABTrkClIDsPtr = &mABTrkClIDs; + std::vector mLabels, *mLabelsPtr = &mLabels; + std::vector mLabelsAB, *mLabelsABPtr = &mLabelsAB; +}; + void TrackTPCITSReader::init(InitContext& ic) { mFileName = o2::utils::Str::concat_string(o2::utils::Str::rectifyDirectory(ic.options().get("input-dir")), @@ -42,8 +69,11 @@ void TrackTPCITSReader::run(ProcessingContext& pc) LOG(INFO) << "Pushing " << mTracks.size() << " TPC-ITS matches at entry " << ent; pc.outputs().snapshot(Output{"GLO", "TPCITS", 0, Lifetime::Timeframe}, mTracks); + pc.outputs().snapshot(Output{"GLO", "TPCITSAB_REFS", 0, Lifetime::Timeframe}, mABTrkClusRefs); + pc.outputs().snapshot(Output{"GLO", "TPCITSAB_CLID", 0, Lifetime::Timeframe}, mABTrkClIDs); if (mUseMC) { pc.outputs().snapshot(Output{"GLO", "TPCITS_MC", 0, Lifetime::Timeframe}, mLabels); + pc.outputs().snapshot(Output{"GLO", "TPCITSAB_MC", 0, Lifetime::Timeframe}, mLabelsAB); } if (mTree->GetReadEntry() + 1 >= mTree->GetEntries()) { @@ -60,8 +90,11 @@ void TrackTPCITSReader::connectTree(const std::string& filename) mTree.reset((TTree*)mFile->Get("matchTPCITS")); assert(mTree); mTree->SetBranchAddress("TPCITS", &mTracksPtr); + mTree->SetBranchAddress("TPCITSABRefs", &mABTrkClusRefsPtr); + mTree->SetBranchAddress("TPCITSABCLID", &mABTrkClIDsPtr); if (mUseMC) { mTree->SetBranchAddress("MatchMCTruth", &mLabelsPtr); + mTree->SetBranchAddress("MatchABMCTruth", &mLabelsABPtr); } LOG(INFO) << "Loaded tree from " << filename << " with " << mTree->GetEntries() << " entries"; } @@ -70,8 +103,11 @@ DataProcessorSpec getTrackTPCITSReaderSpec(bool useMC) { std::vector outputs; outputs.emplace_back("GLO", "TPCITS", 0, Lifetime::Timeframe); + outputs.emplace_back("GLO", "TPCITSAB_REFS", 0, Lifetime::Timeframe); // AftetBurner ITS tracklet references (referred by GlobalTrackID::ITSAB) on cluster indices + outputs.emplace_back("GLO", "TPCITSAB_CLID", 0, Lifetime::Timeframe); // cluster indices of ITS tracklets attached by the AfterBurner if (useMC) { outputs.emplace_back("GLO", "TPCITS_MC", 0, Lifetime::Timeframe); + outputs.emplace_back("GLO", "TPCITSAB_MC", 0, Lifetime::Timeframe); // AfterBurner ITS tracklet MC } return DataProcessorSpec{ diff --git a/Detectors/GlobalTrackingWorkflow/src/TPCITSMatchingSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/TPCITSMatchingSpec.cxx index 9381ba276c5de..a424a923b5f42 100644 --- a/Detectors/GlobalTrackingWorkflow/src/TPCITSMatchingSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/TPCITSMatchingSpec.cxx @@ -139,8 +139,11 @@ void TPCITSMatchingDPL::run(ProcessingContext& pc) mMatching.run(recoData); pc.outputs().snapshot(Output{"GLO", "TPCITS", 0, Lifetime::Timeframe}, mMatching.getMatchedTracks()); + pc.outputs().snapshot(Output{"GLO", "TPCITSAB_REFS", 0, Lifetime::Timeframe}, mMatching.getABTrackletRefs()); + pc.outputs().snapshot(Output{"GLO", "TPCITSAB_CLID", 0, Lifetime::Timeframe}, mMatching.getABTrackletClusterIDs()); if (mUseMC) { pc.outputs().snapshot(Output{"GLO", "TPCITS_MC", 0, Lifetime::Timeframe}, mMatching.getMatchLabels()); + pc.outputs().snapshot(Output{"GLO", "TPCITSAB_MC", 0, Lifetime::Timeframe}, mMatching.getMatchLabels()); } if (mCalibMode) { @@ -164,20 +167,22 @@ DataProcessorSpec getTPCITSMatchingSpec(GTrackID::mask_t src, bool useFT0, bool auto dataRequest = std::make_shared(); dataRequest->requestTracks(src, useMC); - dataRequest->requestClusters(GTrackID::getSourcesMask("ITS,TPC"), false); // Only ITS and TPC and no MC labels for clusters needed: refit only - + dataRequest->requestTPCClusters(false); + dataRequest->requestITSClusters(useMC); // Only ITS clusters labels are needed for the afterburner if (useFT0) { dataRequest->requestFT0RecPoints(false); } outputs.emplace_back("GLO", "TPCITS", 0, Lifetime::Timeframe); + outputs.emplace_back("GLO", "TPCITSAB_REFS", 0, Lifetime::Timeframe); // AftetBurner ITS tracklet references (referred by GlobalTrackID::ITSAB) on cluster indices + outputs.emplace_back("GLO", "TPCITSAB_CLID", 0, Lifetime::Timeframe); // cluster indices of ITS tracklets attached by the AfterBurner if (calib) { outputs.emplace_back("GLO", "TPCITS_VDHDTGL", 0, Lifetime::Timeframe); } if (useMC) { - dataRequest->inputs.emplace_back("clusITSMCTR", "ITS", "CLUSTERSMCTR", 0, Lifetime::Timeframe); // for afterburner outputs.emplace_back("GLO", "TPCITS_MC", 0, Lifetime::Timeframe); + outputs.emplace_back("GLO", "TPCITSAB_MC", 0, Lifetime::Timeframe); // AfterBurner ITS tracklet MC } return DataProcessorSpec{ diff --git a/Detectors/GlobalTrackingWorkflow/src/TrackWriterTPCITSSpec.cxx b/Detectors/GlobalTrackingWorkflow/src/TrackWriterTPCITSSpec.cxx index fcd557422c7ce..c1fd44fe96b6c 100644 --- a/Detectors/GlobalTrackingWorkflow/src/TrackWriterTPCITSSpec.cxx +++ b/Detectors/GlobalTrackingWorkflow/src/TrackWriterTPCITSSpec.cxx @@ -17,6 +17,7 @@ #include "ReconstructionDataFormats/TrackTPCITS.h" #include "SimulationDataFormat/MCCompLabel.h" #include "SimulationDataFormat/MCTruthContainer.h" +#include "DataFormatsITSMFT/TrkClusRef.h" using namespace o2::framework; @@ -28,6 +29,8 @@ namespace globaltracking template using BranchDefinition = MakeRootTreeWriterSpec::BranchDefinition; using TracksType = std::vector; +using ABRefType = std::vector; +using ABCLIDType = std::vector; using LabelsType = std::vector; DataProcessorSpec getTrackWriterTPCITSSpec(bool useMC) @@ -39,15 +42,12 @@ DataProcessorSpec getTrackWriterTPCITSSpec(bool useMC) return MakeRootTreeWriterSpec("itstpc-track-writer", "o2match_itstpc.root", "matchTPCITS", - BranchDefinition{InputSpec{"match", "GLO", "TPCITS", 0}, - "TPCITS", - "TPCITS-branch-name", - 1, - logger}, - BranchDefinition{InputSpec{"matchMC", "GLO", "TPCITS_MC", 0}, - "MatchMCTruth", - (useMC ? 1 : 0), // one branch if mc labels enabled - ""})(); + BranchDefinition{InputSpec{"match", "GLO", "TPCITS", 0}, "TPCITS", logger}, + BranchDefinition{InputSpec{"ABRefs", "GLO", "TPCITSAB_REFS", 0}, "TPCITSABRefs"}, + BranchDefinition{InputSpec{"ABCLID", "GLO", "TPCITSAB_CLID", 0}, "TPCITSABCLID"}, + BranchDefinition{InputSpec{"matchMC", "GLO", "TPCITS_MC", 0}, "MatchMCTruth", (useMC ? 1 : 0), ""}, // one branch if mc labels enabled + BranchDefinition{InputSpec{"matchABMC", "GLO", "TPCITSAB_MC", 0}, "MatchABMCTruth", (useMC ? 1 : 0), ""} // one branch if mc labels enabled + )(); } } // namespace globaltracking From 94b27b1d9da0939e6d980fd60fadb0d10879989b Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Fri, 23 Jul 2021 23:19:53 +0200 Subject: [PATCH 262/314] DPL: populate DataTakingContext from data (#6731) --- .../include/Framework/DataTakingContext.h | 9 +++++++++ Framework/Core/src/CommonServices.cxx | 20 +++++++++++++++++-- 2 files changed, 27 insertions(+), 2 deletions(-) diff --git a/Framework/Core/include/Framework/DataTakingContext.h b/Framework/Core/include/Framework/DataTakingContext.h index 589dd0e616053..478ac1724af16 100644 --- a/Framework/Core/include/Framework/DataTakingContext.h +++ b/Framework/Core/include/Framework/DataTakingContext.h @@ -17,6 +17,13 @@ namespace o2::framework { +enum struct OrbitResetTimeSource : int { + Default, // The information is dummy an should not be used + User, // The information was provided by the user via either ECS or command line + Data, // The information was retrieved from the first message processed. + CTP // The information was retrieved from the CTP object in CCDB +}; + struct DataTakingContext { /// The current run number std::string runNumber = "unknown"; @@ -24,6 +31,8 @@ struct DataTakingContext { uint64_t nOrbitsPerTF = 128; /// The start time of the first orbit uint64_t orbitResetTime = 490917600; + // What currently set the orbitResetTime value. + OrbitResetTimeSource source = OrbitResetTimeSource::Default; }; } // namespace o2::framework diff --git a/Framework/Core/src/CommonServices.cxx b/Framework/Core/src/CommonServices.cxx index 86ec23a44ae2f..135fe5ef8ade1 100644 --- a/Framework/Core/src/CommonServices.cxx +++ b/Framework/Core/src/CommonServices.cxx @@ -110,6 +110,23 @@ o2::framework::ServiceSpec CommonServices::datatakingContextSpec() .name = "datataking-contex", .init = simpleServiceInit(), .configure = noConfiguration(), + .preProcessing = [](ProcessingContext& processingContext, void* service) { + auto& context = processingContext.services().get(); + // Only on the first message + if (context.source == OrbitResetTimeSource::Data) { + return; + } + context.source = OrbitResetTimeSource::Data; + context.orbitResetTime = -1; + for (auto const& ref : processingContext.inputs()) { + const o2::framework::DataProcessingHeader *dph = o2::header::get(ref.header); + if (!dph) { + continue; + } + LOGP(DEBUG, "Orbit reset time from data: {} ", dph->creation); + context.orbitResetTime = dph->creation; + break; + } }, .start = [](ServiceRegistry& services, void* service) { auto& context = services.get(); context.runNumber = services.get().device()->fConfig->GetProperty("runNumber", "unspecified"); @@ -131,8 +148,7 @@ o2::framework::ServiceSpec CommonServices::datatakingContextSpec() } else { context.orbitResetTime = 490917600; } - context.nOrbitsPerTF = services.get().device()->fConfig->GetProperty("Norbits_per_TF", 128); - }, + context.nOrbitsPerTF = services.get().device()->fConfig->GetProperty("Norbits_per_TF", 128); }, .kind = ServiceKind::Serial}; } From b711217996de43d76bc5ef7df2f294f0dd45be56 Mon Sep 17 00:00:00 2001 From: Matteo Concas Date: Tue, 20 Jul 2021 14:36:11 +0200 Subject: [PATCH 263/314] Test not writing data --- GPU/GPUbenchmark/Shared/Utils.h | 9 ---- GPU/GPUbenchmark/cuda/Kernels.cu | 72 ++++++++++++++++---------------- 2 files changed, 36 insertions(+), 45 deletions(-) diff --git a/GPU/GPUbenchmark/Shared/Utils.h b/GPU/GPUbenchmark/Shared/Utils.h index 9c8c4fcee2ebc..83fc66b702e06 100644 --- a/GPU/GPUbenchmark/Shared/Utils.h +++ b/GPU/GPUbenchmark/Shared/Utils.h @@ -125,7 +125,6 @@ class ResultWriter explicit ResultWriter(const std::string resultsTreeFilename = "benchmark_results.root"); ~ResultWriter() = default; void storeBenchmarkEntry(int chunk, float entry); - void storeEntryForRegion(std::string benchmarkName, std::string region, std::string type, float entry); void addBenchmarkEntry(const std::string bName, const std::string type, const int nChunks); void snapshotBenchmark(); void saveToFile(); @@ -168,14 +167,6 @@ inline void ResultWriter::saveToFile() mOutfile->Close(); } -inline void ResultWriter::storeEntryForRegion(std::string benchmarkName, std::string region, std::string type, float entry) -{ - // (*mTree) - // << (benchmarkName + "_" + type + "_region_" + region).data() - // << "elapsed=" << entry - // << "\n"; -} - } // namespace benchmark } // namespace o2 diff --git a/GPU/GPUbenchmark/cuda/Kernels.cu b/GPU/GPUbenchmark/cuda/Kernels.cu index eaab7cd8a8186..6c6bf4a84a088 100644 --- a/GPU/GPUbenchmark/cuda/Kernels.cu +++ b/GPU/GPUbenchmark/cuda/Kernels.cu @@ -405,7 +405,7 @@ void GPUbenchmark::readSequential(SplitLevel sl) { switch (sl) { case SplitLevel::Blocks: { - mResultWriter.get()->addBenchmarkEntry("seq_read_SB", getType(), mState.getMaxChunks()); + // mResultWriter.get()->addBenchmarkEntry("seq_read_SB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto capacity{mState.getPartitionCapacity()}; @@ -422,16 +422,16 @@ void GPUbenchmark::readSequential(SplitLevel sl) mState.scratchPtr, capacity, mState.chunkReservedGB); - mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + // mResultWriter.get()->storeBenchmarkEntry(iChunk, result); } - mResultWriter.get()->snapshotBenchmark(); + // mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; } case SplitLevel::Threads: { - mResultWriter.get()->addBenchmarkEntry("seq_read_MB", getType(), mState.getMaxChunks()); + // mResultWriter.get()->addBenchmarkEntry("seq_read_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto capacity{mState.getPartitionCapacity()}; @@ -448,9 +448,9 @@ void GPUbenchmark::readSequential(SplitLevel sl) mState.scratchPtr, capacity, mState.chunkReservedGB); - mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + // mResultWriter.get()->storeBenchmarkEntry(iChunk, result); } - mResultWriter.get()->snapshotBenchmark(); + // mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; @@ -463,7 +463,7 @@ void GPUbenchmark::readConcurrent(SplitLevel sl, int nRegions) { switch (sl) { case SplitLevel::Blocks: { - mResultWriter.get()->addBenchmarkEntry("conc_read_SB", getType(), mState.getMaxChunks()); + // mResultWriter.get()->addBenchmarkEntry("conc_read_SB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -481,15 +481,15 @@ void GPUbenchmark::readConcurrent(SplitLevel sl, int nRegions) capacity, mState.chunkReservedGB); for (auto iResult{0}; iResult < results.size(); ++iResult) { - mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + // mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); } - mResultWriter.get()->snapshotBenchmark(); + // mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; } case SplitLevel::Threads: { - mResultWriter.get()->addBenchmarkEntry("conc_read_MB", getType(), mState.getMaxChunks()); + // mResultWriter.get()->addBenchmarkEntry("conc_read_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -507,9 +507,9 @@ void GPUbenchmark::readConcurrent(SplitLevel sl, int nRegions) capacity, mState.chunkReservedGB); for (auto iResult{0}; iResult < results.size(); ++iResult) { - mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + // mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); } - mResultWriter.get()->snapshotBenchmark(); + // mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; @@ -540,7 +540,7 @@ void GPUbenchmark::writeSequential(SplitLevel sl) { switch (sl) { case SplitLevel::Blocks: { - mResultWriter.get()->addBenchmarkEntry("seq_write_SB", getType(), mState.getMaxChunks()); + // mResultWriter.get()->addBenchmarkEntry("seq_write_SB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto capacity{mState.getPartitionCapacity()}; @@ -557,16 +557,16 @@ void GPUbenchmark::writeSequential(SplitLevel sl) mState.scratchPtr, capacity, mState.chunkReservedGB); - mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + // mResultWriter.get()->storeBenchmarkEntry(iChunk, result); } - mResultWriter.get()->snapshotBenchmark(); + // mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; } case SplitLevel::Threads: { - mResultWriter.get()->addBenchmarkEntry("seq_write_MB", getType(), mState.getMaxChunks()); + // mResultWriter.get()->addBenchmarkEntry("seq_write_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto capacity{mState.getPartitionCapacity()}; @@ -583,9 +583,9 @@ void GPUbenchmark::writeSequential(SplitLevel sl) mState.scratchPtr, capacity, mState.chunkReservedGB); - mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + // mResultWriter.get()->storeBenchmarkEntry(iChunk, result); } - mResultWriter.get()->snapshotBenchmark(); + // mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; @@ -598,7 +598,7 @@ void GPUbenchmark::writeConcurrent(SplitLevel sl, int nRegions) { switch (sl) { case SplitLevel::Blocks: { - mResultWriter.get()->addBenchmarkEntry("conc_write_SB", getType(), mState.getMaxChunks()); + // mResultWriter.get()->addBenchmarkEntry("conc_write_SB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -616,15 +616,15 @@ void GPUbenchmark::writeConcurrent(SplitLevel sl, int nRegions) capacity, mState.chunkReservedGB); for (auto iResult{0}; iResult < results.size(); ++iResult) { - mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + // mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); } - mResultWriter.get()->snapshotBenchmark(); + // mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; } case SplitLevel::Threads: { - mResultWriter.get()->addBenchmarkEntry("conc_write_MB", getType(), mState.getMaxChunks()); + // mResultWriter.get()->addBenchmarkEntry("conc_write_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -642,9 +642,9 @@ void GPUbenchmark::writeConcurrent(SplitLevel sl, int nRegions) capacity, mState.chunkReservedGB); for (auto iResult{0}; iResult < results.size(); ++iResult) { - mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + // mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); } - mResultWriter.get()->snapshotBenchmark(); + // mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; @@ -677,7 +677,7 @@ void GPUbenchmark::copySequential(SplitLevel sl) { switch (sl) { case SplitLevel::Blocks: { - mResultWriter.get()->addBenchmarkEntry("seq_copy_SB", getType(), mState.getMaxChunks()); + // mResultWriter.get()->addBenchmarkEntry("seq_copy_SB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto capacity{mState.getPartitionCapacity()}; @@ -694,16 +694,16 @@ void GPUbenchmark::copySequential(SplitLevel sl) mState.scratchPtr, capacity, mState.chunkReservedGB); - mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + // mResultWriter.get()->storeBenchmarkEntry(iChunk, result); } - mResultWriter.get()->snapshotBenchmark(); + // mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; } case SplitLevel::Threads: { - mResultWriter.get()->addBenchmarkEntry("seq_copy_MB", getType(), mState.getMaxChunks()); + // mResultWriter.get()->addBenchmarkEntry("seq_copy_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto capacity{mState.getPartitionCapacity()}; @@ -720,9 +720,9 @@ void GPUbenchmark::copySequential(SplitLevel sl) mState.scratchPtr, capacity, mState.chunkReservedGB); - mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + // mResultWriter.get()->storeBenchmarkEntry(iChunk, result); } - mResultWriter.get()->snapshotBenchmark(); + // mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; @@ -735,7 +735,7 @@ void GPUbenchmark::copyConcurrent(SplitLevel sl, int nRegions) { switch (sl) { case SplitLevel::Blocks: { - mResultWriter.get()->addBenchmarkEntry("conc_copy_SB", getType(), mState.getMaxChunks()); + // mResultWriter.get()->addBenchmarkEntry("conc_copy_SB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -753,15 +753,15 @@ void GPUbenchmark::copyConcurrent(SplitLevel sl, int nRegions) capacity, mState.chunkReservedGB); for (auto iResult{0}; iResult < results.size(); ++iResult) { - mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + // mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); } - mResultWriter.get()->snapshotBenchmark(); + // mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; } case SplitLevel::Threads: { - mResultWriter.get()->addBenchmarkEntry("conc_copy_MB", getType(), mState.getMaxChunks()); + // mResultWriter.get()->addBenchmarkEntry("conc_copy_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -780,9 +780,9 @@ void GPUbenchmark::copyConcurrent(SplitLevel sl, int nRegions) mState.chunkReservedGB); for (auto iResult{0}; iResult < results.size(); ++iResult) { auto region = getCorrespondingRegionId(iResult, nBlocks, nRegions); - mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + // mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); } - mResultWriter.get()->snapshotBenchmark(); + // mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; From c540b6baaa1860a114896d41785a58b8a35ef4fe Mon Sep 17 00:00:00 2001 From: Matteo Concas Date: Tue, 20 Jul 2021 16:25:06 +0200 Subject: [PATCH 264/314] Destroy events after usage --- GPU/GPUbenchmark/cuda/Kernels.cu | 76 +++++++++++++++++--------------- 1 file changed, 40 insertions(+), 36 deletions(-) diff --git a/GPU/GPUbenchmark/cuda/Kernels.cu b/GPU/GPUbenchmark/cuda/Kernels.cu index 6c6bf4a84a088..37440c2ca3583 100644 --- a/GPU/GPUbenchmark/cuda/Kernels.cu +++ b/GPU/GPUbenchmark/cuda/Kernels.cu @@ -309,6 +309,8 @@ float GPUbenchmark::benchmarkSync(void (*kernel)(T...), GPUCHECK(cudaEventSynchronize(stop)); // synchronize executions float milliseconds{0.f}; GPUCHECK(cudaEventElapsedTime(&milliseconds, start, stop)); + GPUCHECK(cudaEventDestroy(start)); + GPUCHECK(cudaEventDestroy(stop)); return milliseconds; } @@ -340,6 +342,8 @@ std::vector GPUbenchmark::benchmarkAsync(void (*kernel)(int, for (auto iStream{0}; iStream < nStreams; ++iStream) { GPUCHECK(cudaEventSynchronize(stops[iStream])); GPUCHECK(cudaEventElapsedTime(&(results.at(iStream)), starts[iStream], stops[iStream])); + GPUCHECK(cudaEventDestroy(starts[iStream])); + GPUCHECK(cudaEventDestroy(stops[iStream])); } return results; @@ -405,7 +409,7 @@ void GPUbenchmark::readSequential(SplitLevel sl) { switch (sl) { case SplitLevel::Blocks: { - // mResultWriter.get()->addBenchmarkEntry("seq_read_SB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("seq_read_SB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto capacity{mState.getPartitionCapacity()}; @@ -422,16 +426,16 @@ void GPUbenchmark::readSequential(SplitLevel sl) mState.scratchPtr, capacity, mState.chunkReservedGB); - // mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + mResultWriter.get()->storeBenchmarkEntry(iChunk, result); } - // mResultWriter.get()->snapshotBenchmark(); + mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; } case SplitLevel::Threads: { - // mResultWriter.get()->addBenchmarkEntry("seq_read_MB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("seq_read_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto capacity{mState.getPartitionCapacity()}; @@ -448,9 +452,9 @@ void GPUbenchmark::readSequential(SplitLevel sl) mState.scratchPtr, capacity, mState.chunkReservedGB); - // mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + mResultWriter.get()->storeBenchmarkEntry(iChunk, result); } - // mResultWriter.get()->snapshotBenchmark(); + mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; @@ -463,7 +467,7 @@ void GPUbenchmark::readConcurrent(SplitLevel sl, int nRegions) { switch (sl) { case SplitLevel::Blocks: { - // mResultWriter.get()->addBenchmarkEntry("conc_read_SB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("conc_read_SB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -481,15 +485,15 @@ void GPUbenchmark::readConcurrent(SplitLevel sl, int nRegions) capacity, mState.chunkReservedGB); for (auto iResult{0}; iResult < results.size(); ++iResult) { - // mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); } - // mResultWriter.get()->snapshotBenchmark(); + mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; } case SplitLevel::Threads: { - // mResultWriter.get()->addBenchmarkEntry("conc_read_MB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("conc_read_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -507,9 +511,9 @@ void GPUbenchmark::readConcurrent(SplitLevel sl, int nRegions) capacity, mState.chunkReservedGB); for (auto iResult{0}; iResult < results.size(); ++iResult) { - // mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); } - // mResultWriter.get()->snapshotBenchmark(); + mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; @@ -540,7 +544,7 @@ void GPUbenchmark::writeSequential(SplitLevel sl) { switch (sl) { case SplitLevel::Blocks: { - // mResultWriter.get()->addBenchmarkEntry("seq_write_SB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("seq_write_SB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto capacity{mState.getPartitionCapacity()}; @@ -557,16 +561,16 @@ void GPUbenchmark::writeSequential(SplitLevel sl) mState.scratchPtr, capacity, mState.chunkReservedGB); - // mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + mResultWriter.get()->storeBenchmarkEntry(iChunk, result); } - // mResultWriter.get()->snapshotBenchmark(); + mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; } case SplitLevel::Threads: { - // mResultWriter.get()->addBenchmarkEntry("seq_write_MB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("seq_write_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto capacity{mState.getPartitionCapacity()}; @@ -583,9 +587,9 @@ void GPUbenchmark::writeSequential(SplitLevel sl) mState.scratchPtr, capacity, mState.chunkReservedGB); - // mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + mResultWriter.get()->storeBenchmarkEntry(iChunk, result); } - // mResultWriter.get()->snapshotBenchmark(); + mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; @@ -598,7 +602,7 @@ void GPUbenchmark::writeConcurrent(SplitLevel sl, int nRegions) { switch (sl) { case SplitLevel::Blocks: { - // mResultWriter.get()->addBenchmarkEntry("conc_write_SB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("conc_write_SB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -616,15 +620,15 @@ void GPUbenchmark::writeConcurrent(SplitLevel sl, int nRegions) capacity, mState.chunkReservedGB); for (auto iResult{0}; iResult < results.size(); ++iResult) { - // mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); } - // mResultWriter.get()->snapshotBenchmark(); + mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; } case SplitLevel::Threads: { - // mResultWriter.get()->addBenchmarkEntry("conc_write_MB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("conc_write_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -642,9 +646,9 @@ void GPUbenchmark::writeConcurrent(SplitLevel sl, int nRegions) capacity, mState.chunkReservedGB); for (auto iResult{0}; iResult < results.size(); ++iResult) { - // mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); } - // mResultWriter.get()->snapshotBenchmark(); + mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; @@ -677,7 +681,7 @@ void GPUbenchmark::copySequential(SplitLevel sl) { switch (sl) { case SplitLevel::Blocks: { - // mResultWriter.get()->addBenchmarkEntry("seq_copy_SB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("seq_copy_SB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto capacity{mState.getPartitionCapacity()}; @@ -694,16 +698,16 @@ void GPUbenchmark::copySequential(SplitLevel sl) mState.scratchPtr, capacity, mState.chunkReservedGB); - // mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + mResultWriter.get()->storeBenchmarkEntry(iChunk, result); } - // mResultWriter.get()->snapshotBenchmark(); + mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; } case SplitLevel::Threads: { - // mResultWriter.get()->addBenchmarkEntry("seq_copy_MB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("seq_copy_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto capacity{mState.getPartitionCapacity()}; @@ -720,9 +724,9 @@ void GPUbenchmark::copySequential(SplitLevel sl) mState.scratchPtr, capacity, mState.chunkReservedGB); - // mResultWriter.get()->storeBenchmarkEntry(iChunk, result); + mResultWriter.get()->storeBenchmarkEntry(iChunk, result); } - // mResultWriter.get()->snapshotBenchmark(); + mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; @@ -735,7 +739,7 @@ void GPUbenchmark::copyConcurrent(SplitLevel sl, int nRegions) { switch (sl) { case SplitLevel::Blocks: { - // mResultWriter.get()->addBenchmarkEntry("conc_copy_SB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("conc_copy_SB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -753,15 +757,15 @@ void GPUbenchmark::copyConcurrent(SplitLevel sl, int nRegions) capacity, mState.chunkReservedGB); for (auto iResult{0}; iResult < results.size(); ++iResult) { - // mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); } - // mResultWriter.get()->snapshotBenchmark(); + mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; } case SplitLevel::Threads: { - // mResultWriter.get()->addBenchmarkEntry("conc_copy_MB", getType(), mState.getMaxChunks()); + mResultWriter.get()->addBenchmarkEntry("conc_copy_MB", getType(), mState.getMaxChunks()); auto nBlocks{mState.nMultiprocessors}; auto nThreads{std::min(mState.nMaxThreadsPerDimension, mState.nMaxThreadsPerBlock)}; auto chunks{mState.getMaxChunks()}; @@ -780,9 +784,9 @@ void GPUbenchmark::copyConcurrent(SplitLevel sl, int nRegions) mState.chunkReservedGB); for (auto iResult{0}; iResult < results.size(); ++iResult) { auto region = getCorrespondingRegionId(iResult, nBlocks, nRegions); - // mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); + mResultWriter.get()->storeBenchmarkEntry(iResult, results[iResult]); } - // mResultWriter.get()->snapshotBenchmark(); + mResultWriter.get()->snapshotBenchmark(); std::cout << "\033[1;32m complete\033[0m" << std::endl; } break; From a27b2238a35222073e7fa72e1fe52c75baa757cf Mon Sep 17 00:00:00 2001 From: Matteo Concas Date: Tue, 20 Jul 2021 18:06:44 +0200 Subject: [PATCH 265/314] Destroy stream after usage, thanks --- GPU/GPUbenchmark/cuda/Kernels.cu | 1 + 1 file changed, 1 insertion(+) diff --git a/GPU/GPUbenchmark/cuda/Kernels.cu b/GPU/GPUbenchmark/cuda/Kernels.cu index 37440c2ca3583..c53b48f1ba5ff 100644 --- a/GPU/GPUbenchmark/cuda/Kernels.cu +++ b/GPU/GPUbenchmark/cuda/Kernels.cu @@ -344,6 +344,7 @@ std::vector GPUbenchmark::benchmarkAsync(void (*kernel)(int, GPUCHECK(cudaEventElapsedTime(&(results.at(iStream)), starts[iStream], stops[iStream])); GPUCHECK(cudaEventDestroy(starts[iStream])); GPUCHECK(cudaEventDestroy(stops[iStream])); + GPUCHECK(cudaStreamDestroy(streams[iStream])); } return results; From 20cb32bb1ca8a8a93ac1edd4a93432a04928dfc3 Mon Sep 17 00:00:00 2001 From: Matteo Concas Date: Thu, 22 Jul 2021 14:22:11 +0200 Subject: [PATCH 266/314] Launch 10x more kernels in Async benchmark As they are way more faster than sync execution we launch 10 times more to strive for more stable results --- GPU/GPUbenchmark/cuda/Kernels.cu | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/GPU/GPUbenchmark/cuda/Kernels.cu b/GPU/GPUbenchmark/cuda/Kernels.cu index c53b48f1ba5ff..e93b87615f2d1 100644 --- a/GPU/GPUbenchmark/cuda/Kernels.cu +++ b/GPU/GPUbenchmark/cuda/Kernels.cu @@ -333,7 +333,7 @@ std::vector GPUbenchmark::benchmarkAsync(void (*kernel)(int, for (auto iStream{0}; iStream < nStreams; ++iStream) { GPUCHECK(cudaEventRecord(starts[iStream], streams[iStream])); - for (auto iLaunch{0}; iLaunch < nLaunches; ++iLaunch) { // consecutive launches on the same stream + for (auto iLaunch{0}; iLaunch < 10 * nLaunches; ++iLaunch) { // 10x consecutive launches on the same stream (*kernel)<<>>(iStream, args...); } GPUCHECK(cudaEventRecord(stops[iStream], streams[iStream])); @@ -869,4 +869,4 @@ template class GPUbenchmark; // template class GPUbenchmark; } // namespace benchmark -} // namespace o2 \ No newline at end of file +} // namespace o2 From d4991a76d96b5460c02c43561030f133e6ad97f9 Mon Sep 17 00:00:00 2001 From: Matteo Concas Date: Fri, 23 Jul 2021 16:40:01 +0200 Subject: [PATCH 267/314] Add more granularity to options --- GPU/GPUbenchmark/Shared/Utils.h | 15 ++++-- GPU/GPUbenchmark/benchmark.cxx | 27 +++++++++- GPU/GPUbenchmark/cuda/Kernels.cu | 85 +++++++++++++++++--------------- 3 files changed, 81 insertions(+), 46 deletions(-) diff --git a/GPU/GPUbenchmark/Shared/Utils.h b/GPU/GPUbenchmark/Shared/Utils.h index 83fc66b702e06..fc52a623d5639 100644 --- a/GPU/GPUbenchmark/Shared/Utils.h +++ b/GPU/GPUbenchmark/Shared/Utils.h @@ -40,21 +40,28 @@ enum class Test { Copy }; -namespace o2 -{ -namespace benchmark -{ +enum class Mode { + Sequential, + Concurrent +}; enum class SplitLevel { Blocks, Threads }; +namespace o2 +{ +namespace benchmark +{ + struct benchmarkOpts { benchmarkOpts() = default; int deviceId = 0; std::vector tests = {Test::Read, Test::Write, Test::Copy}; + std::vector modes = {Mode::Sequential, Mode::Concurrent}; + std::vector pools = {SplitLevel::Blocks, SplitLevel::Threads}; float chunkReservedGB = 1.f; int nRegions = 2; float freeMemoryFractionToAllocate = 0.95f; diff --git a/GPU/GPUbenchmark/benchmark.cxx b/GPU/GPUbenchmark/benchmark.cxx index ac6d6d20fdd04..85f7654927c8f 100644 --- a/GPU/GPUbenchmark/benchmark.cxx +++ b/GPU/GPUbenchmark/benchmark.cxx @@ -23,8 +23,9 @@ bool parseArgs(o2::benchmark::benchmarkOpts& conf, int argc, const char* argv[]) "help,h", "Print help message.")( "device,d", bpo::value()->default_value(0), "Id of the device to run test on, EPN targeted.")( "test,t", bpo::value>()->multitoken()->default_value(std::vector{"read", "write", "copy"}, "read, write, copy"), "Tests to be performed.")( + "mode,m", bpo::value>()->multitoken()->default_value(std::vector{"seq", "con"}, "seq, con"), "Mode: sequential or concurrent.")( + "pool,p", bpo::value>()->multitoken()->default_value(std::vector{"sb, mb"}, "sb, mb"), "Pool strategy: single or multi blocks.")( "chunkSize,c", bpo::value()->default_value(1.f), "Size of scratch partitions (GB).")( - "regions,r", bpo::value()->default_value(2), "Number of memory regions to partition RAM in.")( "freeMemFraction,f", bpo::value()->default_value(0.95f), "Fraction of free memory to be allocated (min: 0.f, max: 1.f).")( "launches,l", bpo::value()->default_value(10), "Number of iterations in reading kernels.")( "nruns,n", bpo::value()->default_value(1), "Number of times each test is run."); @@ -65,6 +66,30 @@ bool parseArgs(o2::benchmark::benchmarkOpts& conf, int argc, const char* argv[]) } } + conf.modes.clear(); + for (auto& mode : vm["mode"].as>()) { + if (mode == "seq") { + conf.modes.push_back(Mode::Sequential); + } else if (mode == "con") { + conf.modes.push_back(Mode::Concurrent); + } else { + std::cerr << "Unkonwn mode: " << mode << std::endl; + exit(1); + } + } + + conf.pools.clear(); + for (auto& pool : vm["pool"].as>()) { + if (pool == "sb") { + conf.pools.push_back(SplitLevel::Blocks); + } else if (pool == "mb") { + conf.pools.push_back(SplitLevel::Threads); + } else { + std::cerr << "Unkonwn pool: " << pool << std::endl; + exit(1); + } + } + return true; } diff --git a/GPU/GPUbenchmark/cuda/Kernels.cu b/GPU/GPUbenchmark/cuda/Kernels.cu index e93b87615f2d1..64c0c9c92fa4c 100644 --- a/GPU/GPUbenchmark/cuda/Kernels.cu +++ b/GPU/GPUbenchmark/cuda/Kernels.cu @@ -816,51 +816,54 @@ void GPUbenchmark::run() { globalInit(); - for (auto& test : mOptions.tests) { - switch (test) { - case Test::Read: { - readInit(); - // Reading in whole memory - readSequential(SplitLevel::Blocks); - readSequential(SplitLevel::Threads); - - // Reading in memory regions - readConcurrent(SplitLevel::Blocks); - readConcurrent(SplitLevel::Threads); - readFinalize(); - - break; - } - case Test::Write: { - writeInit(); - // Write on whole memory - writeSequential(SplitLevel::Blocks); - writeSequential(SplitLevel::Threads); - - // Write on memory regions - writeConcurrent(SplitLevel::Blocks); - writeConcurrent(SplitLevel::Threads); - writeFinalize(); - - break; - } - case Test::Copy: { - copyInit(); - // Copy from input buffer (size = nChunks) on whole memory - copySequential(SplitLevel::Blocks); - copySequential(SplitLevel::Threads); - - // Copy from input buffer (size = nChunks) on memory regions - copyConcurrent(SplitLevel::Blocks); - copyConcurrent(SplitLevel::Threads); - copyFinalize(); - - break; + for (auto& sl : mOptions.pools) { + for (auto& test : mOptions.tests) { + switch (test) { + case Test::Read: { + readInit(); + + if (std::find(mOptions.modes.begin(), mOptions.modes.end(), Mode::Sequential) != mOptions.modes.end()) { + readSequential(sl); + } + if (std::find(mOptions.modes.begin(), mOptions.modes.end(), Mode::Concurrent) != mOptions.modes.end()) { + readConcurrent(sl); + } + + readFinalize(); + + break; + } + case Test::Write: { + writeInit(); + if (std::find(mOptions.modes.begin(), mOptions.modes.end(), Mode::Sequential) != mOptions.modes.end()) { + writeSequential(sl); + } + if (std::find(mOptions.modes.begin(), mOptions.modes.end(), Mode::Concurrent) != mOptions.modes.end()) { + writeConcurrent(sl); + } + + writeFinalize(); + + break; + } + case Test::Copy: { + copyInit(); + if (std::find(mOptions.modes.begin(), mOptions.modes.end(), Mode::Sequential) != mOptions.modes.end()) { + copySequential(sl); + } + if (std::find(mOptions.modes.begin(), mOptions.modes.end(), Mode::Concurrent) != mOptions.modes.end()) { + copyConcurrent(sl); + } + + copyFinalize(); + + break; + } } } } - GPUbenchmark::globalFinalize(); + globalFinalize(); } template class GPUbenchmark; From b43c6feb93cbd8537925cfb97df9c3d8a4737881 Mon Sep 17 00:00:00 2001 From: Markus Fasel Date: Fri, 23 Jul 2021 10:45:58 +0200 Subject: [PATCH 268/314] [EMCAL-703] Add optional settable subspecification for raw to digits output - Add option to define subspecification for the output specs of the raw to cell converter (default: 0) and propagate it into the class in order to send to the proper subspecification in the snapshot function - Steer subspecification via the workflow option subspecification Needed in order to run the workflow on the two FLPs in parallel. In case of running offline or on the EPN the default subspecification (0) should be used. --- .../EMCALWorkflow/RawToCellConverterSpec.h | 44 +++++++++++++------ .../include/EMCALWorkflow/RecoWorkflow.h | 8 ++-- .../workflow/src/RawToCellConverterSpec.cxx | 16 +++---- Detectors/EMCAL/workflow/src/RecoWorkflow.cxx | 3 +- .../EMCAL/workflow/src/emc-reco-workflow.cxx | 12 ++--- 5 files changed, 52 insertions(+), 31 deletions(-) diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/RawToCellConverterSpec.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/RawToCellConverterSpec.h index 0e9c8af7ab370..f57739ae228c0 100644 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/RawToCellConverterSpec.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/RawToCellConverterSpec.h @@ -15,6 +15,7 @@ #include "Framework/Task.h" #include "DataFormatsEMCAL/Cell.h" #include "DataFormatsEMCAL/TriggerRecord.h" +#include "Headers/DataHeader.h" #include "EMCALBase/Geometry.h" #include "EMCALBase/Mapper.h" #include "EMCALReconstruction/CaloRawFitter.h" @@ -37,8 +38,8 @@ class RawToCellConverterSpec : public framework::Task { public: /// \brief Constructor - /// \param propagateMC If true the MCTruthContainer is propagated to the output - RawToCellConverterSpec() : framework::Task(){}; + /// \param subspecification Output subspecification for parallel running on multiple nodes + RawToCellConverterSpec(int subspecification) : framework::Task(), mSubspecification(subspecification){}; /// \brief Destructor ~RawToCellConverterSpec() override; @@ -63,28 +64,43 @@ class RawToCellConverterSpec : public framework::Task void setMaxErrorMessages(int maxMessages) { mMaxErrorMessages = maxMessages; } void setNoiseThreshold(int thresold) { mNoiseThreshold = thresold; } - int getNoiseThreshold() { return mNoiseThreshold; } + int getNoiseThreshold() const { return mNoiseThreshold; } + + /// \brief Set ID of the subspecification + /// \param subspecification + /// + /// Can be used to define differenciate between output in case + /// different processors run in parallel (i.e. on different FLPs) + void setSubspecification(header::DataHeader::SubSpecificationType subspecification) { mSubspecification = subspecification; } + + /// \brief Get ID of the subspecification + /// \return subspecification + /// + /// Can be used to define differenciate between output in case + /// different processors run in parallel (i.e. on different FLPs) + header::DataHeader::SubSpecificationType getSubspecification() const { return mSubspecification; } private: bool isLostTimeframe(framework::ProcessingContext& ctx) const; void sendData(framework::ProcessingContext& ctx, const std::vector& cells, const std::vector& triggers, const std::vector& decodingErrors) const; - int mNoiseThreshold = 0; ///< Noise threshold in raw fit - int mNumErrorMessages = 0; ///< Current number of error messages - int mErrorMessagesSuppressed = 0; ///< Counter of suppressed error messages - int mMaxErrorMessages = 100; ///< Max. number of error messages - o2::emcal::Geometry* mGeometry = nullptr; ///! mMapper = nullptr; ///! mRawFitter; ///! mOutputCells; ///< Container with output cells - std::vector mOutputTriggerRecords; ///< Container with output cells - std::vector mOutputDecoderErrors; ///< Container with decoder errors + header::DataHeader::SubSpecificationType mSubspecification = 0; ///< Subspecification for output channels + int mNoiseThreshold = 0; ///< Noise threshold in raw fit + int mNumErrorMessages = 0; ///< Current number of error messages + int mErrorMessagesSuppressed = 0; ///< Counter of suppressed error messages + int mMaxErrorMessages = 100; ///< Max. number of error messages + Geometry* mGeometry = nullptr; ///! mMapper = nullptr; ///! mRawFitter; ///! mOutputCells; ///< Container with output cells + std::vector mOutputTriggerRecords; ///< Container with output cells + std::vector mOutputDecoderErrors; ///< Container with decoder errors }; /// \brief Creating DataProcessorSpec for the EMCAL Cell Converter Spec /// /// Refer to RawToCellConverterSpec::run for input and output specs -framework::DataProcessorSpec getRawToCellConverterSpec(bool askDISTSTF); +framework::DataProcessorSpec getRawToCellConverterSpec(bool askDISTSTF, int subspecification); } // namespace reco_workflow diff --git a/Detectors/EMCAL/workflow/include/EMCALWorkflow/RecoWorkflow.h b/Detectors/EMCAL/workflow/include/EMCALWorkflow/RecoWorkflow.h index dd3c54340a52f..b92bfa0dc34af 100644 --- a/Detectors/EMCAL/workflow/include/EMCALWorkflow/RecoWorkflow.h +++ b/Detectors/EMCAL/workflow/include/EMCALWorkflow/RecoWorkflow.h @@ -47,7 +47,8 @@ enum struct OutputType { Digits, ///< EMCAL digits /// \brief create the workflow for EMCAL reconstruction /// \param propagateMC If true MC labels are propagated to the output files /// \param askDISTSTF If true the Raw->Cell converter subscribes to FLP/DISTSUBTIMEFRAME -/// \param enableDigitsPrinter If true +/// \param enableDigitsPrinter If true then the simple digits printer is added as dummy task +/// \param subspecification Subspecification in case of running on different FLPs /// \param cfgInput Input objects processed in the workflow /// \param cfgOutput Output objects created in the workflow /// \return EMCAL reconstruction workflow for the configuration provided @@ -55,8 +56,9 @@ enum struct OutputType { Digits, ///< EMCAL digits framework::WorkflowSpec getWorkflow(bool propagateMC = true, bool askDISTSTF = true, bool enableDigitsPrinter = false, - std::string const& cfgInput = "digits", // - std::string const& cfgOutput = "clusters", // + int subspecification = 0, + std::string const& cfgInput = "digits", + std::string const& cfgOutput = "clusters", bool disableRootInput = false, bool disableRootOutput = false); } // namespace reco_workflow diff --git a/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx b/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx index f492c2b68a4e3..329930091ab2a 100644 --- a/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx +++ b/Detectors/EMCAL/workflow/src/RawToCellConverterSpec.cxx @@ -275,19 +275,19 @@ bool RawToCellConverterSpec::isLostTimeframe(framework::ProcessingContext& ctx) void RawToCellConverterSpec::sendData(framework::ProcessingContext& ctx, const std::vector& cells, const std::vector& triggers, const std::vector& decodingErrors) const { constexpr auto originEMC = o2::header::gDataOriginEMC; - ctx.outputs().snapshot(framework::Output{originEMC, "CELLS", 0, framework::Lifetime::Timeframe}, cells); - ctx.outputs().snapshot(framework::Output{originEMC, "CELLSTRGR", 0, framework::Lifetime::Timeframe}, triggers); - ctx.outputs().snapshot(framework::Output{originEMC, "DECODERERR", 0, framework::Lifetime::Timeframe}, decodingErrors); + ctx.outputs().snapshot(framework::Output{originEMC, "CELLS", mSubspecification, framework::Lifetime::Timeframe}, cells); + ctx.outputs().snapshot(framework::Output{originEMC, "CELLSTRGR", mSubspecification, framework::Lifetime::Timeframe}, triggers); + ctx.outputs().snapshot(framework::Output{originEMC, "DECODERERR", mSubspecification, framework::Lifetime::Timeframe}, decodingErrors); } -o2::framework::DataProcessorSpec o2::emcal::reco_workflow::getRawToCellConverterSpec(bool askDISTSTF) +o2::framework::DataProcessorSpec o2::emcal::reco_workflow::getRawToCellConverterSpec(bool askDISTSTF, int subspecification) { constexpr auto originEMC = o2::header::gDataOriginEMC; std::vector outputs; - outputs.emplace_back(originEMC, "CELLS", 0, o2::framework::Lifetime::Timeframe); - outputs.emplace_back(originEMC, "CELLSTRGR", 0, o2::framework::Lifetime::Timeframe); - outputs.emplace_back(originEMC, "DECODERERR", 0, o2::framework::Lifetime::Timeframe); + outputs.emplace_back(originEMC, "CELLS", subspecification, o2::framework::Lifetime::Timeframe); + outputs.emplace_back(originEMC, "CELLSTRGR", subspecification, o2::framework::Lifetime::Timeframe); + outputs.emplace_back(originEMC, "DECODERERR", subspecification, o2::framework::Lifetime::Timeframe); std::vector inputs{{"stf", o2::framework::ConcreteDataTypeMatcher{originEMC, o2::header::gDataDescriptionRawData}, o2::framework::Lifetime::Optional}}; if (askDISTSTF) { @@ -297,7 +297,7 @@ o2::framework::DataProcessorSpec o2::emcal::reco_workflow::getRawToCellConverter return o2::framework::DataProcessorSpec{"EMCALRawToCellConverterSpec", inputs, outputs, - o2::framework::adaptFromTask(), + o2::framework::adaptFromTask(subspecification), o2::framework::Options{ {"fitmethod", o2::framework::VariantType::String, "gamma2", {"Fit method (standard or gamma2)"}}, {"maxmessage", o2::framework::VariantType::Int, 100, {"Max. amout of error messages to be displayed"}}}}; diff --git a/Detectors/EMCAL/workflow/src/RecoWorkflow.cxx b/Detectors/EMCAL/workflow/src/RecoWorkflow.cxx index 608dd626c7720..528be3775953f 100644 --- a/Detectors/EMCAL/workflow/src/RecoWorkflow.cxx +++ b/Detectors/EMCAL/workflow/src/RecoWorkflow.cxx @@ -48,6 +48,7 @@ namespace reco_workflow o2::framework::WorkflowSpec getWorkflow(bool propagateMC, bool askDISTSTF, bool enableDigitsPrinter, + int subspecification, std::string const& cfgInput, std::string const& cfgOutput, bool disableRootInput, @@ -169,7 +170,7 @@ o2::framework::WorkflowSpec getWorkflow(bool propagateMC, specs.emplace_back(o2::emcal::reco_workflow::getCellConverterSpec(propagateMC)); } else if (inputType == InputType::Raw) { // raw data will come from upstream - specs.emplace_back(o2::emcal::reco_workflow::getRawToCellConverterSpec(askDISTSTF)); + specs.emplace_back(o2::emcal::reco_workflow::getRawToCellConverterSpec(askDISTSTF, subspecification)); } } diff --git a/Detectors/EMCAL/workflow/src/emc-reco-workflow.cxx b/Detectors/EMCAL/workflow/src/emc-reco-workflow.cxx index 0215919b33330..fa7b00da9d035 100644 --- a/Detectors/EMCAL/workflow/src/emc-reco-workflow.cxx +++ b/Detectors/EMCAL/workflow/src/emc-reco-workflow.cxx @@ -37,7 +37,8 @@ void customize(std::vector& workflowOptions) {"disable-root-output", o2::framework::VariantType::Bool, false, {"do not initialize root file writers"}}, {"configKeyValues", o2::framework::VariantType::String, "", {"Semicolon separated key=value strings"}}, {"disable-mc", o2::framework::VariantType::Bool, false, {"disable sending of MC information"}}, - {"ignore-dist-stf", o2::framework::VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}}; + {"ignore-dist-stf", o2::framework::VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}, + {"subspecification", o2::framework::VariantType::Int, 0, {"Subspecification in case the workflow runs in parallel on multiple nodes (i.e. different FLPs)"}}}; o2::raw::HBFUtilsInitializer::addConfigOption(options); @@ -61,11 +62,12 @@ void customize(std::vector& workflowOptions) o2::framework::WorkflowSpec defineDataProcessing(o2::framework::ConfigContext const& cfgc) { o2::conf::ConfigurableParam::updateFromString(cfgc.options().get("configKeyValues")); - auto wf = o2::emcal::reco_workflow::getWorkflow(!cfgc.options().get("disable-mc"), // + auto wf = o2::emcal::reco_workflow::getWorkflow(!cfgc.options().get("disable-mc"), !cfgc.options().get("ignore-dist-stf"), - cfgc.options().get("enable-digits-printer"), // - cfgc.options().get("input-type"), // - cfgc.options().get("output-type"), // + cfgc.options().get("enable-digits-printer"), + cfgc.options().get("subspecification"), + cfgc.options().get("input-type"), + cfgc.options().get("output-type"), cfgc.options().get("disable-root-input"), cfgc.options().get("disable-root-output")); From d80a192ac8639e739df10cf68621968a8ef0fb6a Mon Sep 17 00:00:00 2001 From: Andrey Erokhin Date: Sat, 24 Jul 2021 17:52:47 +0000 Subject: [PATCH 269/314] GPUTRDTracker: Use CAMath::Abs --- GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx index 142705c0cab15..251b9b62b88f0 100644 --- a/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx +++ b/GPU/GPUTracking/TRDTracking/GPUTRDTracker.cxx @@ -131,7 +131,7 @@ void GPUTRDTracker_t::InitializeProcessor() float Bz = Param().par.bzkG; GPUInfo("Initializing with B-field: %f kG", Bz); - if (abs(abs(Bz) - 2) < 0.1) { + if (CAMath::Abs(CAMath::Abs(Bz) - 2) < 0.1) { // magnetic field +-0.2 T if (Bz > 0) { GPUInfo("Loading error parameterization for Bz = +2 kG"); @@ -144,7 +144,7 @@ void GPUTRDTracker_t::InitializeProcessor() mDyA2 = 1.225e-3f, mDyB = 9.8e-3f, mDyC2 = 3.88e-2f; mAngleToDyA = 0.1f, mAngleToDyB = 1.89f, mAngleToDyC = 0.4f; } - } else if (abs(abs(Bz) - 5) < 0.1) { + } else if (CAMath::Abs(CAMath::Abs(Bz) - 5) < 0.1) { // magnetic field +-0.5 T if (Bz > 0) { GPUInfo("Loading error parameterization for Bz = +5 kG"); From f7439186b86d5f8ae70ca7955995b0a5f889bc06 Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Mon, 26 Jul 2021 11:18:23 +0300 Subject: [PATCH 270/314] Ignore clangd .cache folder (#6741) --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index 11992ff478adc..e9d377a557f4e 100644 --- a/.gitignore +++ b/.gitignore @@ -54,6 +54,7 @@ cmake_install.cmake compile_commands.json # IDEs files +.cache .cproject .devcontainer* .project From 0f9764a232865d10287c4b029ca494f3727d7942 Mon Sep 17 00:00:00 2001 From: Victor Gonzalez Date: Mon, 26 Jul 2021 10:51:14 +0200 Subject: [PATCH 271/314] Next step towards the simulation challenge (#6734) * Next step towards the simulation challenge Support for systems without centrality/multiplicity classes Support for pp systems and the base for pPb, Pbp and XeXe Support for MC reco analysis * Comparison with configuration strings correct implementation --- .../Tasks/PWGCF/dptdptcorrelations-simchl.cxx | 352 +++++++++++++----- 1 file changed, 253 insertions(+), 99 deletions(-) diff --git a/Analysis/Tasks/PWGCF/dptdptcorrelations-simchl.cxx b/Analysis/Tasks/PWGCF/dptdptcorrelations-simchl.cxx index c79cffd43c5bc..61fc1699e8feb 100644 --- a/Analysis/Tasks/PWGCF/dptdptcorrelations-simchl.cxx +++ b/Analysis/Tasks/PWGCF/dptdptcorrelations-simchl.cxx @@ -34,6 +34,15 @@ using namespace o2::framework; using namespace o2::soa; using namespace o2::framework::expressions; +void customize(std::vector& workflowOptions) +{ + ConfigParamSpec multest = {"wfcentmultestimator", + VariantType::String, + "NOCM", + {"Centrality/multiplicity estimator detector at workflow creation level. A this level the default is NOCM"}}; + workflowOptions.push_back(multest); +} + #include "Framework/runDataProcessing.h" namespace o2 @@ -52,6 +61,7 @@ DECLARE_SOA_TABLE(AcceptedEvents, "AOD", "ACCEPTEDEVENTS", dptdptcorrelations::E DECLARE_SOA_TABLE(ScannedTracks, "AOD", "SCANNEDTRACKS", dptdptcorrelations::TrackacceptedAsOne, dptdptcorrelations::TrackacceptedAsTwo); using CollisionEvSelCent = soa::Join::iterator; +using CollisionEvSel = soa::Join::iterator; using TrackData = soa::Join::iterator; using FilteredTracks = soa::Filtered>; using FilteredTrackData = Partition::filtered_iterator; @@ -99,10 +109,21 @@ enum SystemType { knSystems ///< number of handled systems }; +/// \enum GeneratorType +/// \brief Which kid of generator data is the task addressing +enum GenType { + kData = 0, ///< actual data, not generated + kMC, ///< Generator level and detector level + kFastMC, ///< Gererator level but stored dataset + kOnTheFly, ///< On the fly generator level data + knGenData ///< number of different generator data types +}; + /// \enum CentMultEstimatorType /// \brief The detector used to estimate centrality/multiplicity enum CentMultEstimatorType { - kV0M = 0, ///< V0M centrality/multiplicity estimator + kNOCM = 0, ///< do not use centrality/multiplicity estimator + kV0M, ///< V0M centrality/multiplicity estimator kV0A, ///< V0A centrality/multiplicity estimator kV0C, ///< V0C centrality/multiplicity estimator kCL0, ///< CL0 centrality/multiplicity estimator @@ -110,12 +131,13 @@ enum CentMultEstimatorType { knCentMultEstimators ///< number of centrality/mutiplicity estimator }; -namespace filteranalyistask +namespace filteranalysistask { //============================================================================================ // The DptDptCorrelationsFilterAnalysisTask output objects //============================================================================================ SystemType fSystem = kNoSystem; +GenType fDataType = kData; CentMultEstimatorType fCentMultEstimator = kV0M; TH1F* fhCentMultB = nullptr; TH1F* fhCentMultA = nullptr; @@ -139,7 +161,7 @@ TH2F* fhEtaVsPhiA = nullptr; TH2F* fhPtVsEtaB = nullptr; TH2F* fhPtVsEtaA = nullptr; -} // namespace filteranalyistask +} // namespace filteranalysistask namespace correlationstask { @@ -155,37 +177,114 @@ enum TrackPairs { }; } // namespace correlationstask -SystemType getSystemType() +/// \brief System type according to configuration string +/// \param sysstr The system configuration string +/// \return The internal code for the passed system string +SystemType getSystemType(std::string const& sysstr) { /* we have to figure out how extract the system type */ + if (sysstr.empty() or (sysstr == "PbPb")) { + return kPbPb; + } else if (sysstr == "pp") { + return kpp; + } else if (sysstr == "pPb") { + return kpPb; + } else if (sysstr == "Pbp") { + return kPbp; + } else if (sysstr == "pPb") { + return kpPb; + } else if (sysstr == "XeXe") { + return kXeXe; + } else { + LOGF(fatal, "DptDptCorrelations::getSystemType(). Wrong system type: %d", sysstr.c_str()); + } return kPbPb; } +/// \brief Type of data according to the configuration string +/// \param datastr The data type configuration string +/// \return Internal code for the passed kind of data string +GenType getGenType(std::string const& datastr) +{ + /* we have to figure out how extract the type of data*/ + if (datastr.empty() or (datastr == "data")) { + return kData; + } else if (datastr == "MC") { + return kMC; + } else if (datastr == "FastMC") { + return kFastMC; + } else if (datastr == "OnTheFlyMC") { + return kOnTheFly; + } else { + LOGF(fatal, "DptDptCorrelations::getGenType(). Wrong type of dat: %d", datastr.c_str()); + } + return kData; +} + template bool IsEvtSelected(CollisionObject const& collision, float& centormult) { - using namespace filteranalyistask; + using namespace filteranalysistask; - if (collision.alias()[kINT7]) { + bool trigsel = false; + if (fDataType != kData) { + trigsel = true; + } else if (collision.alias()[kINT7]) { if (collision.sel7()) { - /* TODO: vertex quality checks */ - if (zvtxlow < collision.posZ() and collision.posZ() < zvtxup) { - switch (fCentMultEstimator) { - case kV0M: - if (collision.centV0M() < 100 and 0 < collision.centV0M()) { - centormult = collision.centV0M(); - return true; - } - break; - default: - break; - } - return false; + trigsel = true; + } + } + + bool zvtxsel = false; + /* TODO: vertex quality checks */ + if (zvtxlow < collision.posZ() and collision.posZ() < zvtxup) { + zvtxsel = true; + } + + bool centmultsel = false; + switch (fCentMultEstimator) { + case kV0M: + if (collision.centV0M() < 100 and 0 < collision.centV0M()) { + centormult = collision.centV0M(); + centmultsel = true; } - return false; + break; + default: + break; + } + return trigsel and zvtxsel and centmultsel; +} + +template +bool IsEvtSelectedNoCentMult(CollisionObject const& collision, float& centormult) +{ + using namespace filteranalysistask; + + bool trigsel = false; + if (fDataType != kData) { + trigsel = true; + } else if (collision.alias()[kINT7]) { + if (collision.sel7() or collision.sel8()) { + trigsel = true; } } - return false; + + bool zvtxsel = false; + /* TODO: vertex quality checks */ + if (zvtxlow < collision.posZ() and collision.posZ() < zvtxup) { + zvtxsel = true; + } + + bool centmultsel = false; + switch (fCentMultEstimator) { + case kNOCM: + centormult = 50.0; + centmultsel = true; + break; + default: + break; + } + return trigsel and zvtxsel and centmultsel; } template @@ -237,6 +336,8 @@ struct DptDptCorrelationsFilterAnalysisTask { Configurable cfgTrackType{"trktype", 1, "Type of selected tracks: 0 = no selection, 1 = global tracks FB96"}; Configurable cfgProcessPairs{"processpairs", true, "Process pairs: false = no, just singles, true = yes, process pairs"}; Configurable cfgCentMultEstimator{"centmultestimator", "V0M", "Centrality/multiplicity estimator detector: default V0M"}; + Configurable cfgDataType{"datatype", "data", "Data type: data, MC, FastMC, OnTheFlyMC. Default data"}; + Configurable cfgSystem{"syst", "PbPb", "System: pp, PbPb, Pbp, pPb, XeXe. Default PbPb"}; Configurable cfgBinning{"binning", {28, -7.0, 7.0, 18, 0.2, 2.0, 16, -0.8, 0.8, 72, 0.5}, @@ -247,9 +348,48 @@ struct DptDptCorrelationsFilterAnalysisTask { Produces acceptedevents; Produces scannedtracks; + template + void filterTracks(TrackListObject const& ftracks) + { + using namespace filteranalysistask; + + for (auto& track : ftracks) { + /* before track selection */ + fhPtB->Fill(track.pt()); + fhEtaB->Fill(track.eta()); + fhPhiB->Fill(track.phi()); + fhEtaVsPhiB->Fill(track.phi(), track.eta()); + fhPtVsEtaB->Fill(track.eta(), track.pt()); + if (track.sign() > 0) { + fhPtPosB->Fill(track.pt()); + } else { + fhPtNegB->Fill(track.pt()); + } + + /* track selection */ + /* tricky because the boolean columns issue */ + bool asone, astwo; + AcceptTrack(track, asone, astwo); + if (asone or astwo) { + /* the track has been accepted */ + fhPtA->Fill(track.pt()); + fhEtaA->Fill(track.eta()); + fhPhiA->Fill(track.phi()); + fhEtaVsPhiA->Fill(track.phi(), track.eta()); + fhPtVsEtaA->Fill(track.eta(), track.pt()); + if (track.sign() > 0) { + fhPtPosA->Fill(track.pt()); + } else { + fhPtNegA->Fill(track.pt()); + } + } + scannedtracks((uint8_t)asone, (uint8_t)astwo); + } + } + void init(InitContext const&) { - using namespace filteranalyistask; + using namespace filteranalysistask; /* update with the configurable values */ /* the binning */ @@ -267,12 +407,15 @@ struct DptDptCorrelationsFilterAnalysisTask { /* the centrality/multiplicity estimation */ if (cfgCentMultEstimator->compare("V0M") == 0) { fCentMultEstimator = kV0M; + } else if (cfgCentMultEstimator->compare("NOCM") == 0) { + fCentMultEstimator = kNOCM; } else { - LOGF(FATAL, "Centrality/Multiplicity estimator %s not supported yet", cfgCentMultEstimator->c_str()); + LOGF(fatal, "Centrality/Multiplicity estimator %s not supported yet", cfgCentMultEstimator->c_str()); } /* if the system type is not known at this time, we have to put the initalization somewhere else */ - fSystem = getSystemType(); + fSystem = getSystemType(cfgSystem); + fDataType = getGenType(cfgDataType); /* create the output list which will own the task histograms */ TList* fOutputList = new TList(); @@ -333,9 +476,9 @@ struct DptDptCorrelationsFilterAnalysisTask { fOutputList->Add(fhPtVsEtaA); } - void process(aod::CollisionEvSelCent const& collision, soa::Join const& ftracks) + void processWithCent(aod::CollisionEvSelCent const& collision, soa::Join const& ftracks) { - using namespace filteranalyistask; + using namespace filteranalysistask; // LOGF(INFO,"New collision with %d filtered tracks", ftracks.size()); fhCentMultB->Fill(collision.centV0M()); @@ -346,40 +489,32 @@ struct DptDptCorrelationsFilterAnalysisTask { acceptedevent = true; fhCentMultA->Fill(collision.centV0M()); fhVertexZA->Fill(collision.posZ()); - // LOGF(INFO,"New accepted collision with %d filtered tracks", ftracks.size()); + filterTracks(ftracks); + } else { for (auto& track : ftracks) { - /* before track selection */ - fhPtB->Fill(track.pt()); - fhEtaB->Fill(track.eta()); - fhPhiB->Fill(track.phi()); - fhEtaVsPhiB->Fill(track.phi(), track.eta()); - fhPtVsEtaB->Fill(track.eta(), track.pt()); - if (track.sign() > 0) { - fhPtPosB->Fill(track.pt()); - } else { - fhPtNegB->Fill(track.pt()); - } - - /* track selection */ - /* tricky because the boolean columns issue */ - bool asone, astwo; - AcceptTrack(track, asone, astwo); - if (asone or astwo) { - /* the track has been accepted */ - fhPtA->Fill(track.pt()); - fhEtaA->Fill(track.eta()); - fhPhiA->Fill(track.phi()); - fhEtaVsPhiA->Fill(track.phi(), track.eta()); - fhPtVsEtaA->Fill(track.eta(), track.pt()); - if (track.sign() > 0) { - fhPtPosA->Fill(track.pt()); - } else { - fhPtNegA->Fill(track.pt()); - } - } - scannedtracks((uint8_t)asone, (uint8_t)astwo); + scannedtracks((uint8_t) false, (uint8_t) false); } + } + acceptedevents((uint8_t)acceptedevent, centormult); + } + void processWithoutCent(aod::CollisionEvSel const& collision, soa::Join const& ftracks) + { + using namespace filteranalysistask; + + /* the task does not have access to either centrality nor multiplicity + classes information, so it has to live without it. + For the time being we assign a value of 50% */ + fhCentMultB->Fill(50.0); + fhVertexZB->Fill(collision.posZ()); + bool acceptedevent = false; + float centormult = -100.0; + if (IsEvtSelectedNoCentMult(collision, centormult)) { + acceptedevent = true; + fhCentMultA->Fill(50.0); + fhVertexZA->Fill(collision.posZ()); + + filterTracks(ftracks); } else { for (auto& track : ftracks) { scannedtracks((uint8_t) false, (uint8_t) false); @@ -408,16 +543,16 @@ struct DptDptCorrelationsTask { TH2F* fhSum2PtPt_vsDEtaDPhi[4]; //!) ({p_T}_2 - <{p_T}_2>) \f$ distribution vs \f$\Delta\eta,\;\Delta\phi\f$ 1-1,1-2,2-1,2-2, combinations /* versus centrality/multiplicity profiles */ - TProfile* fhN1_vsC[2]; //!) ({p_T}_2 - <{p_T}_2>) \f$ distribution vs event centrality 1-1,1-2,2-1,2-2, combinations - TProfile* fhN2nw_vsC[4]; //!) ({p_T}_2 - <{p_T}_2>) \f$ distribution vs \f$\Delta\eta,\;\Delta\phi\f$ distribution vs event centrality 1-1,1-2,2-1,2-2, combinations + TProfile* fhN1_vsC[2]; //!) ({p_T}_2 - <{p_T}_2>) \f$ distribution vs event centrality/multiplicity 1-1,1-2,2-1,2-2, combinations + TProfile* fhN2nw_vsC[4]; //!) ({p_T}_2 - <{p_T}_2>) \f$ distribution vs \f$\Delta\eta,\;\Delta\phi\f$ distribution vs event centrality/multiplicity 1-1,1-2,2-1,2-2, combinations const char* tname[2] = {"1", "2"}; ///< the external track names, one and two, for histogram creation const char* trackPairsNames[4] = {"OO", "OT", "TO", "TT"}; @@ -588,6 +723,28 @@ struct DptDptCorrelationsTask { fhSum2PtPt_vsDEtaDPhi[pix]->SetEntries(fhSum2PtPt_vsDEtaDPhi[pix]->GetEntries() + n2); } + template + void processCollision(TrackListObject const& Tracks1, TrackListObject const& Tracks2, float zvtx, float centmult) + { + using namespace correlationstask; + + if (not processpairs) { + /* process single tracks */ + processSingles(Tracks1, 0, zvtx); /* track one */ + processSingles(Tracks2, 1, zvtx); /* track two */ + } else { + /* process track magnitudes */ + /* TODO: the centrality should be chosen non detector dependent */ + processTracks(Tracks1, 0, centmult); /* track one */ + processTracks(Tracks2, 1, centmult); /* track one */ + /* process pair magnitudes */ + processTrackPairs(Tracks1, Tracks1, kOO, centmult); + processTrackPairs(Tracks1, Tracks2, kOT, centmult); + processTrackPairs(Tracks2, Tracks1, kTO, centmult); + processTrackPairs(Tracks2, Tracks2, kTT, centmult); + } + } + void init(TList* fOutputList) { using namespace correlationstask; @@ -636,16 +793,16 @@ struct DptDptCorrelationsTask { .Data(), etabins, etalow, etaup, phibins, philow, phiup); fhN1_vsC[i] = new TProfile(TString::Format("n1_%s_vsM", tname[i]).Data(), - TString::Format("#LT n_{1} #GT (weighted);Centrality (%%);#LT n_{1} #GT").Data(), + TString::Format("#LT n_{1} #GT (weighted);Centrality/Multiplicity (%%);#LT n_{1} #GT").Data(), 100, 0.0, 100.0); fhSum1Pt_vsC[i] = new TProfile(TString::Format("sumPt_%s_vsM", tname[i]), - TString::Format("#LT #Sigma p_{t,%s} #GT (weighted);Centrality (%%);#LT #Sigma p_{t,%s} #GT (GeV/c)", tname[i], tname[i]).Data(), + TString::Format("#LT #Sigma p_{t,%s} #GT (weighted);Centrality/Multiplicity (%%);#LT #Sigma p_{t,%s} #GT (GeV/c)", tname[i], tname[i]).Data(), 100, 0.0, 100.0); fhN1nw_vsC[i] = new TProfile(TString::Format("n1Nw_%s_vsM", tname[i]).Data(), - TString::Format("#LT n_{1} #GT;Centrality (%%);#LT n_{1} #GT").Data(), + TString::Format("#LT n_{1} #GT;Centrality/Multiplicity (%%);#LT n_{1} #GT").Data(), 100, 0.0, 100.0); fhSum1Ptnw_vsC[i] = new TProfile(TString::Format("sumPtNw_%s_vsM", tname[i]).Data(), - TString::Format("#LT #Sigma p_{t,%s} #GT;Centrality (%%);#LT #Sigma p_{t,%s} #GT (GeV/c)", tname[i], tname[i]).Data(), 100, 0.0, 100.0); + TString::Format("#LT #Sigma p_{t,%s} #GT;Centrality/Multiplicity (%%);#LT #Sigma p_{t,%s} #GT (GeV/c)", tname[i], tname[i]).Data(), 100, 0.0, 100.0); fOutputList->Add(fhN1_vsEtaPhi[i]); fOutputList->Add(fhSum1Pt_vsEtaPhi[i]); fOutputList->Add(fhN1_vsC[i]); @@ -672,12 +829,12 @@ struct DptDptCorrelationsTask { fhN2_vsPtPt[i] = new TH2F(TString::Format("n2_12_vsPtVsPt_%s", pname), TString::Format("#LT n_{2} #GT (%s);p_{t,1} (GeV/c);p_{t,2} (GeV/c);#LT n_{2} #GT", pname), ptbins, ptlow, ptup, ptbins, ptlow, ptup); - fhN2_vsC[i] = new TProfile(TString::Format("n2_12_vsM_%s", pname), TString::Format("#LT n_{2} #GT (%s) (weighted);Centrality (%%);#LT n_{2} #GT", pname), 100, 0.0, 100.0); - fhSum2PtPt_vsC[i] = new TProfile(TString::Format("sumPtPt_12_vsM_%s", pname), TString::Format("#LT #Sigma p_{t,1}p_{t,2} #GT (%s) (weighted);Centrality (%%);#LT #Sigma p_{t,1}p_{t,2} #GT (GeV^{2})", pname), 100, 0.0, 100.0); - fhSum2DptDpt_vsC[i] = new TProfile(TString::Format("sumDptDpt_12_vsM_%s", pname), TString::Format("#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (%s) (weighted);Centrality (%%);#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (GeV^{2})", pname), 100, 0.0, 100.0); - fhN2nw_vsC[i] = new TProfile(TString::Format("n2Nw_12_vsM_%s", pname), TString::Format("#LT n_{2} #GT (%s);Centrality (%%);#LT n_{2} #GT", pname), 100, 0.0, 100.0); - fhSum2PtPtnw_vsC[i] = new TProfile(TString::Format("sumPtPtNw_12_vsM_%s", pname), TString::Format("#LT #Sigma p_{t,1}p_{t,2} #GT (%s);Centrality (%%);#LT #Sigma p_{t,1}p_{t,2} #GT (GeV^{2})", pname), 100, 0.0, 100.0); - fhSum2DptDptnw_vsC[i] = new TProfile(TString::Format("sumDptDptNw_12_vsM_%s", pname), TString::Format("#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (%s);Centrality (%%);#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (GeV^{2})", pname), 100, 0.0, 100.0); + fhN2_vsC[i] = new TProfile(TString::Format("n2_12_vsM_%s", pname), TString::Format("#LT n_{2} #GT (%s) (weighted);Centrality/Multiplicity (%%);#LT n_{2} #GT", pname), 100, 0.0, 100.0); + fhSum2PtPt_vsC[i] = new TProfile(TString::Format("sumPtPt_12_vsM_%s", pname), TString::Format("#LT #Sigma p_{t,1}p_{t,2} #GT (%s) (weighted);Centrality/Multiplicity (%%);#LT #Sigma p_{t,1}p_{t,2} #GT (GeV^{2})", pname), 100, 0.0, 100.0); + fhSum2DptDpt_vsC[i] = new TProfile(TString::Format("sumDptDpt_12_vsM_%s", pname), TString::Format("#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (%s) (weighted);Centrality/Multiplicity (%%);#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (GeV^{2})", pname), 100, 0.0, 100.0); + fhN2nw_vsC[i] = new TProfile(TString::Format("n2Nw_12_vsM_%s", pname), TString::Format("#LT n_{2} #GT (%s);Centrality/Multiplicity (%%);#LT n_{2} #GT", pname), 100, 0.0, 100.0); + fhSum2PtPtnw_vsC[i] = new TProfile(TString::Format("sumPtPtNw_12_vsM_%s", pname), TString::Format("#LT #Sigma p_{t,1}p_{t,2} #GT (%s);Centrality/Multiplicity (%%);#LT #Sigma p_{t,1}p_{t,2} #GT (GeV^{2})", pname), 100, 0.0, 100.0); + fhSum2DptDptnw_vsC[i] = new TProfile(TString::Format("sumDptDptNw_12_vsM_%s", pname), TString::Format("#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (%s);Centrality/Multiplicity (%%);#LT #Sigma (p_{t,1} - #LT p_{t,1} #GT)(p_{t,2} - #LT p_{t,2} #GT) #GT (GeV^{2})", pname), 100, 0.0, 100.0); /* the statistical uncertainties will be estimated by the subsamples method so let's get rid of the error tracking */ fhN2_vsDEtaDPhi[i]->SetBit(TH1::kIsNotW); @@ -816,7 +973,7 @@ struct DptDptCorrelationsTask { } } - void process(soa::Filtered>::iterator const& collision, aod::FilteredTracks const& tracks) + void process(soa::Filtered>::iterator const& collision, aod::FilteredTracks const& tracks) { using namespace correlationstask; @@ -833,21 +990,7 @@ struct DptDptCorrelationsTask { } if (rgfound) { - if (not processpairs) { - /* process single tracks */ - dataCE[ixDCE]->processSingles(Tracks1, 0, collision.posZ()); /* track one */ - dataCE[ixDCE]->processSingles(Tracks2, 1, collision.posZ()); /* track two */ - } else { - /* process track magnitudes */ - /* TODO: the centrality should be chosen non detector dependent */ - dataCE[ixDCE]->processTracks(Tracks1, 0, collision.centmult()); /* track one */ - dataCE[ixDCE]->processTracks(Tracks2, 1, collision.centmult()); /* track one */ - /* process pair magnitudes */ - dataCE[ixDCE]->processTrackPairs(Tracks1, Tracks1, kOO, collision.centmult()); - dataCE[ixDCE]->processTrackPairs(Tracks1, Tracks2, kOT, collision.centmult()); - dataCE[ixDCE]->processTrackPairs(Tracks2, Tracks1, kTO, collision.centmult()); - dataCE[ixDCE]->processTrackPairs(Tracks2, Tracks2, kTT, collision.centmult()); - } + dataCE[ixDCE]->processCollision(Tracks1, Tracks2, collision.posZ(), collision.centmult()); } } }; @@ -876,7 +1019,7 @@ struct TracksAndEventClassificationQA { Filter onlyacceptedevents = (aod::dptdptcorrelations::eventaccepted == (uint8_t) true); Filter onlyacceptedtracks = ((aod::dptdptcorrelations::trackacceptedasone == (uint8_t) true) or (aod::dptdptcorrelations::trackacceptedastwo == (uint8_t) true)); - void process(soa::Filtered>::iterator const& collision, + void process(soa::Filtered>::iterator const& collision, soa::Filtered> const& tracks) { if (collision.eventaccepted() != (uint8_t) true) { @@ -920,9 +1063,20 @@ struct TracksAndEventClassificationQA { WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) { - WorkflowSpec workflow{ - adaptAnalysisTask(cfgc), - adaptAnalysisTask(cfgc), - adaptAnalysisTask(cfgc)}; - return workflow; + std::string multest = cfgc.options().get("wfcentmultestimator"); + if (multest == "NOCM") { + /* no centrality/multiplicity classes available */ + WorkflowSpec workflow{ + adaptAnalysisTask(cfgc, Processes{&DptDptCorrelationsFilterAnalysisTask::processWithoutCent}), + adaptAnalysisTask(cfgc), + adaptAnalysisTask(cfgc)}; + return workflow; + } else { + /* centrality/multiplicity classes available */ + WorkflowSpec workflow{ + adaptAnalysisTask(cfgc, Processes{&DptDptCorrelationsFilterAnalysisTask::processWithCent}), + adaptAnalysisTask(cfgc), + adaptAnalysisTask(cfgc)}; + return workflow; + } } From 46c25a729c44feadcef5e6ebffe8427698b10d4e Mon Sep 17 00:00:00 2001 From: Sean Murray Date: Wed, 14 Jul 2021 14:51:09 +0200 Subject: [PATCH 272/314] modify endpoint definition and sort tracklets before sending --- .../include/TRDReconstruction/CruRawReader.h | 2 +- .../include/TRDReconstruction/EventRecord.h | 3 +- .../TRD/reconstruction/src/CruRawReader.cxx | 84 +++----------- .../TRD/reconstruction/src/DataReaderTask.cxx | 3 +- .../TRD/reconstruction/src/EventRecord.cxx | 20 +++- .../reconstruction/src/TrackletsParser.cxx | 31 ++--- Detectors/TRD/simulation/src/Trap2CRU.cxx | 109 +++++------------- 7 files changed, 74 insertions(+), 178 deletions(-) diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h index 37ddb3378bc18..53908afa5b283 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h @@ -92,7 +92,7 @@ class CruRawReader // std::vector getIR() { return mEventTriggers; } void getParsedObjects(std::vector& tracklets, std::vector& cdigits, std::vector& triggers); void getParsedObjectsandClear(std::vector& tracklets, std::vector& digits, std::vector& triggers); - void buildDPLOutputs(o2::framework::ProcessingContext& outputs); + void buildDPLOutputs(o2::framework::ProcessingContext& outputs, bool displaytracklets = false); int getDigitsFound() { return mTotalDigitsFound; } int getTrackletsFound() { return mTotalTrackletsFound; } int sumTrackletsFound() { return mEventRecords.sumTracklets(); } diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/EventRecord.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/EventRecord.h index fcfe5b70e40e4..0de27c1c4407d 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/EventRecord.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/EventRecord.h @@ -64,6 +64,7 @@ class EventRecord void addTracklets(std::vector::iterator& start, std::vector::iterator& end); void addTracklets(std::vector& tracklets); //void printStream(std::ostream& stream) const; + void sortByHCID(); bool operator==(const EventRecord& o) const { @@ -96,7 +97,7 @@ class EventStorage void addTracklets(InteractionRecord& ir, std::vector& tracklets); void addTracklets(InteractionRecord& ir, std::vector::iterator& start, std::vector::iterator& end); void unpackData(std::vector& triggers, std::vector& tracklets, std::vector& digits); - void sendData(o2::framework::ProcessingContext& pc); + void sendData(o2::framework::ProcessingContext& pc, bool displaytracklets = false); //this could replace by keeing a running total on addition TODO void sumTrackletsDigitsTriggers(uint64_t& tracklets, uint64_t& digits, uint64_t& triggers); int sumTracklets(); diff --git a/Detectors/TRD/reconstruction/src/CruRawReader.cxx b/Detectors/TRD/reconstruction/src/CruRawReader.cxx index 266f759082902..d306e1ed44c09 100644 --- a/Detectors/TRD/reconstruction/src/CruRawReader.cxx +++ b/Detectors/TRD/reconstruction/src/CruRawReader.cxx @@ -104,7 +104,6 @@ bool CruRawReader::processHBFs(int datasizealreadyread, bool verbose) auto packetCount = o2::raw::RDHUtils::getPacketCounter(rdh); o2::InteractionRecord a = o2::raw::RDHUtils::getTriggerIR(rdh); mIR = a; - //mDataPointer += headerSize/4; mDataEndPointer = (const uint32_t*)((char*)rdh + offsetToNext); // copy the contents of the current rdh into the buffer to be parsed std::memcpy((char*)&mHBFPayload[0] + currentsaveddatacount, reinterpret_cast(rdh) + headerSize, rdhpayload); @@ -115,20 +114,6 @@ bool CruRawReader::processHBFs(int datasizealreadyread, bool verbose) rdh = reinterpret_cast(reinterpret_cast(rdh) + offsetToNext); if ((char*)(rdh) < (char*)&mHBFPayload[0] + mDataBufferSize) { //if (reinterpret_cast(rdh) < (char*)&mHBFPayload[0] + mDataBufferSize) { - if (mVerbose) { - LOG(info) << __func__ << " " << __LINE__; - LOG(info) << "rdh position is still inside the buffer"; - LOG(info) << __func__ << " " << __LINE__; - LOG(info) << "0x;" << std::hex << (void*)rdh; - LOG(info) << "0x;" << std::hex << (void*)rdh; - LOG(info) << "0x;" << std::hex << (void*)rdh; - LOG(info) << "0x;" << std::hex << (void*)rdh; - LOG(info) << "0x;" << std::hex << (void*)rdh; - LOG(info) << "0x;" << std::hex << (void*)rdh; - LOG(info) << "0x;" << std::hex << (void*)rdh; - // o2::raw::RDHUtils::printRDH(rdh); - LOG(info) << __func__ << " " << __LINE__; - } // we can still copy into this buffer. } else { LOG(warn) << "next rdh exceeds the bounds of the cru payload buffer"; @@ -140,12 +125,12 @@ bool CruRawReader::processHBFs(int datasizealreadyread, bool verbose) } } //increment the data pointer by the size of the stop rdh. - mDataPointer = reinterpret_cast(reinterpret_cast(rdh) + o2::raw::RDHUtils::getOffsetToNext(rdh)); //rdh->offsetToNext);//o2::raw::RDHUtils::getOffsetToNext(rdh); // jump over the stop rdh that kicked us out of the loop + mDataPointer = reinterpret_cast(reinterpret_cast(rdh) + o2::raw::RDHUtils::getOffsetToNext(rdh)); // at this point the entire HBF data payload is sitting in mHBFPayload and the total data count is mTotalHBFPayLoad int counthalfcru = 0; mHBFoffset32 = 0; - while ((mHBFoffset32 < ((mTotalHBFPayLoad) / 4))) { //} && mTotalHBFPayLoad>0) { // need at least a complete half cru header else we are in an error condition any case. + while ((mHBFoffset32 < ((mTotalHBFPayLoad) / 4))) { if (mVerbose) { LOG(info) << "Looping over cruheaders in HBF, loop count " << counthalfcru << " current offset is" << mHBFoffset32 << " total payload is " << mTotalHBFPayLoad / 4 << " raw :" << mTotalHBFPayLoad; } @@ -176,9 +161,6 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) } //It will clean this code up *alot* // process a halfcru - // or continue with the remainder of an rdh o2 payload if we got to the end of cru - // or continue with a new rdh payload if we are not finished with the last cru payload. - // TODO the above 2 lines are not possible. uint32_t currentlinkindex = 0; uint32_t currentlinkoffset = 0; uint32_t currentlinksize = 0; @@ -193,7 +175,9 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) //reject halfcru if it starts with padding words. //this should only hit that instance where the cru payload is a "blank event" of o2::trd::constants::CRUPADDING32 if (mHBFPayload[cruhbfstartoffset] == o2::trd::constants::CRUPADDING32 && mHBFPayload[cruhbfstartoffset + 1] == o2::trd::constants::CRUPADDING32) { - // LOG(info) << "A###############################################################################################################"; + if (mVerbose) { + LOG(info) << "blank rdh payload"; + } return -1; } if (mTotalHBFPayLoad == 0) { @@ -203,11 +187,6 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) // well then read the halfcruheader. memcpy((char*)&mCurrentHalfCRUHeader, (void*)(&mHBFPayload[cruhbfstartoffset]), sizeof(mCurrentHalfCRUHeader)); //TODO remove the copy just use pointer dereferencing, doubt it will improve the speed much though. - //check the bunch crossings match .... they dont! - //if (mCurrentHalfCRUHeader.BunchCrossing != mIR.bc) { - // LOG(warn) << " BC mismatch rdh!=cru1/2header : " << mIR.bc << " != " << mCurrentHalfCRUHeader.BunchCrossing; - // printHalfCRUHeader(mCurrentHalfCRUHeader); - // } o2::trd::getlinkdatasizes(mCurrentHalfCRUHeader, mCurrentHalfCRULinkLengths); o2::trd::getlinkerrorflags(mCurrentHalfCRUHeader, mCurrentHalfCRULinkErrorFlags); mTotalHalfCRUDataLength256 = std::accumulate(mCurrentHalfCRULinkLengths.begin(), @@ -220,7 +199,6 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) //CHECK 1 does rdh endpoint match cru header end point. if (mCRUEndpoint != mCurrentHalfCRUHeader.EndPoint) { LOG(warn) << " Endpoint mismatch : CRU Half chamber header endpoint = " << mCurrentHalfCRUHeader.EndPoint << " rdh end point = " << mCRUEndpoint; - //TODO increment histogram bin. if (mVerbose) { LOG(info) << "******* LINK # " << currentlinkindex; } @@ -255,18 +233,17 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) int endpoint = ((TRDFeeID*)&mFEEID)->endpoint; int side = ((TRDFeeID*)&mFEEID)->side; //stack layer and side map to ori - int stack, layer, oriside; - int oriindex = currentlinkindex + constants::NLINKSPERHALFCRU * endpoint; // side denotes the pci side, upper or lower for the pair of 15 fibres. - FeeParam::unpackORI(oriindex, side, stack, layer, oriside); - int currentdetector = stack + layer + oriside; + int stack, layer, halfchamberside; + int oriindex = currentlinkindex + constants::NLINKSPERHALFCRU * endpoint; // endpoint denotes the pci side, upper or lower for the pair of 15 fibres. + FeeParam::unpackORI(oriindex, side, stack, layer, halfchamberside); + int currentdetector = stack * constants::NLAYER + layer + supermodule * constants::NLAYER * constants::NSTACK; int ori = 1; if (mVerbose) { - LOG(info) << "******* LINK # " << currentlinkindex << " and ORI:" << ori; + LOG(info) << "******* LINK # " << currentlinkindex << " and ORI:" << ori << " unpackORI(" << oriindex << "," << side << "," << stack << "," << layer << "," << halfchamberside << ") and an FEEID:" << std::hex << mFEEID << " det:" << std::dec << currentdetector; } // tracklet first then digit ?? // tracklets end with tracklet end marker(0x10001000 0x10001000), digits end with digit endmarker (0x0 0x0) if (linkstart != linkend) { // if link is not empty - // LOG(info) << "linkstart != linkend"; if (mVerbose) { LOG(info) << "parse tracklets "; @@ -275,7 +252,7 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) if (mVerbose) { LOG(info) << "mem copy with offset of : " << cruhbfstartoffset << " parsing tracklets with linkstart: " << linkstart << " ending at : " << linkend; } - trackletwordsread = mTrackletsParser.Parse(&mHBFPayload, linkstart, linkend, mFEEID, oriside, currentdetector, stack, layer, cleardigits, mByteSwap, mVerbose, mHeaderVerbose, mDataVerbose); // this will read up to the tracnklet end marker. + trackletwordsread = mTrackletsParser.Parse(&mHBFPayload, linkstart, linkend, mFEEID, halfchamberside, currentdetector, stack, layer, cleardigits, mByteSwap, mVerbose, mHeaderVerbose, mDataVerbose); // this will read up to the tracnklet end marker. if (mVerbose) { LOG(info) << "trackletwordsread:" << trackletwordsread << " mem copy with offset of : " << cruhbfstartoffset << " parsing with linkstart: " << linkstart << " ending at : " << linkend; } @@ -308,19 +285,6 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) sumtrackletwords = trackletwordsread; sumdigitwords = digitwordsread; mHBFoffset32 += digitwordsread; // all 3 in 32bit units - if (mDataVerbose) { - LOG(info) << "After parsing digits digitwordsread:" << digitwordsread << " trackletwordsread:" << trackletwordsread; - LOG(info) << " pointer content is :0x" << std::hex << mHBFPayload[mHBFoffset32 - 5]; - LOG(info) << " data pointer content is :0x" << std::hex << mHBFPayload[mHBFoffset32 - 4]; - LOG(info) << " data pointer content is :0x" << std::hex << mHBFPayload[mHBFoffset32 - 3]; - LOG(info) << " data pointer content is :0x" << std::hex << mHBFPayload[mHBFoffset32 - 2]; - LOG(info) << " data pointer content is :0x" << std::hex << mHBFPayload[mHBFoffset32 - 1]; - LOG(info) << "Current data pointer after coming back from digit parsing has content :0x" << std::hex << mHBFPayload[mHBFoffset32]; - LOG(info) << " data pointer content is :0x" << std::hex << mHBFPayload[mHBFoffset32 + 1]; - LOG(info) << " data pointer content is :0x" << std::hex << mHBFPayload[mHBFoffset32 + 2]; - LOG(info) << " data pointer content is :0x" << std::hex << mHBFPayload[mHBFoffset32 + 3]; - LOG(info) << "After parsing digits sumdigitwords:" << sumdigitwords << " sumtrackletwords:" << sumtrackletwords; - } } else { if (mVerbose) { LOG(info) << "link start and end are the same, link appears to be empty for link currentlinkdex"; @@ -333,17 +297,10 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) //as this is for a single cru half chamber header all the tracklets and digits are for the same trigger defined by the bc and orbit in the rdh which we hold in mIR mIR.bc = mCurrentHalfCRUHeader.BunchCrossing; // correct mIR to have the physics trigger bunchcrossing *NOT* the heartbeat trigger bunch crossing. - std::vector ta; - ta = mTrackletsParser.getTracklets(); - - //LOG(info) << "adding tracklets from trackletparser with a size of:" << mTrackletsParser.getTracklets().size(); - //mEventRecords.addTracklets(mIR, mTrackletsParser.getTrackletsbegin(), mTrackletsParser.getTrackletsend()); - //mEventRecords.addTracklets(mIR, std::begin(mTrackletsParser.getTracklets()), std::end(mTrackletsParser.getTracklets())); mEventRecords.addTracklets(mIR, mTrackletsParser.getTracklets()); if (mVerbose) { LOG(info) << "inserting tracklets from parser of size : " << mTrackletsParser.getTracklets().size() << " mEventRecordsTracklets is now :" << mEventRecords.sumTracklets(); } - //LOG(info) << "added tracklets from trackletparser with a size of:" << mTrackletsParser.getTracklets().size(); mTrackletsParser.clear(); mEventRecords.addDigits(mIR, std::begin(mDigitsParser.getDigits()), std::end(mDigitsParser.getDigits())); if (mVerbose) { @@ -354,15 +311,6 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) LOG(info) << "Event digits after eventi # : " << mEventRecords.sumDigits() << " having added : via sum=" << mDigitsParser.getDigits().size() << " digitsfound is " << mDigitsParser.getDigitsFound(); } int lasttrigger = 0, lastdigit = 0, lasttracklet = 0; - /*if (mEventTriggers.size() != 0) { - lasttrigger = mEventTriggers.size() - 1; - lastdigit = mEventTriggers[lasttrigger].getFirstDigit() + mEventTriggers[lasttrigger].getNumberOfDigits(); - lasttracklet = mEventTriggers[lasttrigger].getFirstTracklet() + mEventTriggers[lasttrigger].getNumberOfTracklets(); - } - LOG(info) << mIR << " digits : " << mEventDigits.size() << " tracklets : " << mEventTracklets.size(); - mEventTriggers.emplace_back(mIR, lastdigit, mEventDigits.size(), lasttracklet, mEventTracklets.size()); - */ - // now handled internall in mEventRecords //if we get here all is ok. return 1; } @@ -414,14 +362,9 @@ bool CruRawReader::run() if (mDataVerbose) { LOG(info) << " mDataBuffer :" << (void*)mDataBuffer << " and offset to start on is :" << totaldataread; } - //int mDatareadfromhbf = processHBFs(totaldataread, mVerbose); mDatareadfromhbf = 0; processHBFs(totaldataread, mVerbose); totaldataread += mDatareadfromhbf; - if (mDataVerbose) { - LOG(info) << "end with " << mDatareadfromhbf << " total data read : " << totaldataread; - LOG(info) << " about to end do while with " << (void*)mDataPointer << "-" << (void*)bufferptr << " < " << mDataBufferSize; - } } while (((char*)mDataPointer - mDataBuffer) < mDataBufferSize); return false; }; @@ -440,10 +383,9 @@ void CruRawReader::getParsedObjectsandClear(std::vector& tracklets, } //write the output data directly to the given DataAllocator from the datareader task. -void CruRawReader::buildDPLOutputs(o2::framework::ProcessingContext& pc) +void CruRawReader::buildDPLOutputs(o2::framework::ProcessingContext& pc, bool displaytracklets) { - mEventRecords.sendData(pc); - // pc.outputs().snapshot(Output{o2::header::gDataOriginTRD,"STATS",0,Lifetime::Timerframe},mStats); + mEventRecords.sendData(pc, displaytracklets); clearall(); // having now written the messages clear for next. } diff --git a/Detectors/TRD/reconstruction/src/DataReaderTask.cxx b/Detectors/TRD/reconstruction/src/DataReaderTask.cxx index cb0eafb161a48..242c9aa86e7be 100644 --- a/Detectors/TRD/reconstruction/src/DataReaderTask.cxx +++ b/Detectors/TRD/reconstruction/src/DataReaderTask.cxx @@ -47,7 +47,7 @@ void DataReaderTask::init(InitContext& ic) void DataReaderTask::sendData(ProcessingContext& pc, bool blankframe) { if (!blankframe) { - mReader.buildDPLOutputs(pc); + mReader.buildDPLOutputs(pc, mDataVerbose); } else { //ensure the objects we are sending back are indeed blank. //TODO maybe put this in buildDPLOutputs so sending all done in 1 place, not now though. @@ -127,7 +127,6 @@ void DataReaderTask::run(ProcessingContext& pc) if (mVerbose) { LOG(info) << "relevant vectors to read : " << mReader.sumTrackletsFound() << " tracklets and " << mReader.sumDigitsFound() << " compressed digits"; } - // mTriggers = mReader.getIR(); } else { // we have compressed data coming in from flp. mCompressedReader.setDataBuffer(payloadIn); mCompressedReader.setDataBufferSize(payloadInSize); diff --git a/Detectors/TRD/reconstruction/src/EventRecord.cxx b/Detectors/TRD/reconstruction/src/EventRecord.cxx index 3f7db8f403505..47fcc031ad365 100644 --- a/Detectors/TRD/reconstruction/src/EventRecord.cxx +++ b/Detectors/TRD/reconstruction/src/EventRecord.cxx @@ -64,6 +64,11 @@ void EventRecord::addTracklets(std::vector& tracklets) //mTracklets.insert(mTracklets.back(), tracklets.begin(),tracklets.back()); } +void EventRecord::sortByHCID() +{ + // sort the tracklets by HCID + std::stable_sort(std::begin(mTracklets), std::end(mTracklets), [this](const Tracklet64& trackleta, const Tracklet64& trackletb) { return trackleta.getHCID() < trackletb.getHCID(); }); +} // now for event storage void EventStorage::addDigits(InteractionRecord& ir, Digit& digit) { @@ -160,7 +165,7 @@ void EventStorage::unpackData(std::vector& triggers, std::vector< } } -void EventStorage::sendData(o2::framework::ProcessingContext& pc) +void EventStorage::sendData(o2::framework::ProcessingContext& pc, bool displaytracklets) { //at this point we know the total number of tracklets and digits and triggers. uint64_t trackletcount = 0; @@ -174,12 +179,25 @@ void EventStorage::sendData(o2::framework::ProcessingContext& pc) std::vector triggers; triggers.reserve(triggercount); for (auto& event : mEventRecords) { + //sort tracklets + event.sortByHCID(); + //TODO do this sort in parallel over the events tracklets.insert(std::end(tracklets), std::begin(event.getTracklets()), std::end(event.getTracklets())); digits.insert(std::end(digits), std::begin(event.getDigits()), std::end(event.getDigits())); triggers.emplace_back(event.getBCData(), digitcount, event.getDigits().size(), trackletcount, event.getTracklets().size()); digitcount += event.getDigits().size(); trackletcount += event.getTracklets().size(); } + if (displaytracklets) { // this is purely for trivial debugging purposes + for (auto& event : mEventRecords) { + LOG(info) << "***** Event : " << event.getBCData() << " digit count : " << event.getDigits().size() << " tracklet count : " << event.getTracklets().size(); + auto& trackletv = event.getTracklets(); + for (auto& tracklt : trackletv) { + LOG(info) << " " << std::distance(trackletv.begin(), trackletv.end()) << " " << tracklt; + } + LOG(info) << "*****"; + } + } LOG(info) << "Sending data onwards with " << digits.size() << " Digits and " << tracklets.size() << " Tracklets and " << triggers.size() << " Triggers"; pc.outputs().snapshot(o2::framework::Output{o2::header::gDataOriginTRD, "DIGITS", 0, o2::framework::Lifetime::Timeframe}, digits); pc.outputs().snapshot(o2::framework::Output{o2::header::gDataOriginTRD, "TRACKLETS", 0, o2::framework::Lifetime::Timeframe}, tracklets); diff --git a/Detectors/TRD/reconstruction/src/TrackletsParser.cxx b/Detectors/TRD/reconstruction/src/TrackletsParser.cxx index 203375384a169..b0e963e8f8896 100644 --- a/Detectors/TRD/reconstruction/src/TrackletsParser.cxx +++ b/Detectors/TRD/reconstruction/src/TrackletsParser.cxx @@ -90,11 +90,10 @@ int TrackletsParser::Parse() if (mState == StateFinished) { return mWordsRead; } - // for (uint32_t index = start; index < end; index++) { // loop over the entire cru payload. - //loop over all the words ... duh + //loop over all the words ... //check for tracklet end marker 0x1000 0x1000 - int index = std::distance(mStartParse, word); //mData->begin()); - int indexend = std::distance(word, mEndParse); //mData->begin()); + int index = std::distance(mStartParse, word); + int indexend = std::distance(word, mEndParse); std::array::iterator nextword = word; std::advance(nextword, 1); uint32_t nextwordcopy = *nextword; @@ -131,8 +130,6 @@ int TrackletsParser::Parse() mWordsRead++; mState = StateTrackletEndMarker; } - - // return mWordsRead; } if (*word == o2::trd::constants::CRUPADDING32) { @@ -150,13 +147,9 @@ int TrackletsParser::Parse() LOG(warn) << "Something wrong with TrackletHCHeader bit 11 is set but state is not " << StateTrackletMCMHeader << " its :" << mState; } //read the header - //we actually have an header word. + //we actually have a header word. mTrackletHCHeader = (TrackletHCHeader*)&word; //sanity check of trackletheader ?? - //if (!trackletHCHeaderSanityCheck(*mTrackletHCHeader)) { - // LOG(warn) << "Sanity check Failure HCHeader : " << std::hex << *word; - //} - mWordsRead++; mState = StateTrackletMCMHeader; // now we should read a MCMHeader next time through loop // TRDStatCounters.LinkPadWordCounts[mHCID]++; // keep track off all the padding words. @@ -177,9 +170,6 @@ int TrackletsParser::Parse() } else { mState = StateTrackletMCMData; //tracklet data; - // build tracklet. - //for the case of on flp build a vector of tracklets, then pack them into a data stream with a header. - //for dpl build a vector and connect it with a triggerrecord. mTrackletMCMData = (TrackletMCMData*)&(*word); if (mDataVerbose) { LOG(info) << std::hex << *word << " read a raw tracklet from the raw stream mcmheader "; @@ -211,6 +201,11 @@ int TrackletsParser::Parse() int pos = mTrackletMCMData->pos; int slope = mTrackletMCMData->slope; int hcid = mDetector * 2 + mRobSide; + if (mDataVerbose) { + LOG(info) << "Tracklet HCID : " << hcid << " mDetector:" << mDetector << " robside:" << mRobSide; + } + //TODO cross reference hcid to somewhere for a check. mDetector is assigned at the time of parser init. + // mTracklets.emplace_back(4, hcid, padrow, col, pos, slope, q0, q1, q2); // our format is always 4 if (mDataVerbose) { LOG(info) << "Tracklet added:" << 4 << "-" << hcid << "-" << padrow << "-" << col << "-" << pos << "-" << slope << "-" << q0 << ":" << q1 << ":" << q2; @@ -224,12 +219,9 @@ int TrackletsParser::Parse() auto nextdataword = std::next(word, 1); // the check is unambigous between trackletendmarker and mcmheader if ((*nextdataword) == constants::TRACKLETENDMARKER) { - // LOG(info) << "Next up we should be finished parsing next line should say found tracklet end markers "; - // LOG(info) << "changing state to Trackletendmarker from mcmdata"; mState = StateTrackletEndMarker; } else { mState = StateTrackletMCMHeader; - // LOG(info) << "changing state to TrackletMCmheader from mcmdata"; } } if (mcmtrackletcount > 3) { @@ -237,11 +229,6 @@ int TrackletsParser::Parse() } } } - - //accounting .... - // mCurrentLinkDataPosition256++; - // mCurrentHalfCRUDataPosition256++; - // mTotalHalfCRUDataLength++; } // else trackletloopcount++; } //end of for loop diff --git a/Detectors/TRD/simulation/src/Trap2CRU.cxx b/Detectors/TRD/simulation/src/Trap2CRU.cxx index 96035d167f027..04dfb5872b9ce 100644 --- a/Detectors/TRD/simulation/src/Trap2CRU.cxx +++ b/Detectors/TRD/simulation/src/Trap2CRU.cxx @@ -139,17 +139,7 @@ void Trap2CRU::sortDataToLinks() int firsttracklet = trig.getFirstTracklet(); int numtracklets = trig.getNumberOfTracklets(); for (int trackletcount = firsttracklet; trackletcount < firsttracklet + numtracklets; ++trackletcount) { - LOG(info) << "Tracklet : " << trackletcount << " details : hcid=" << mTracklets[trackletcount].getHCID() - << " det=" << mTracklets[trackletcount].getDetector() - << " mcm=" << mTracklets[trackletcount].getMCM() - << " rob=" << mTracklets[trackletcount].getROB() - << " col=" << mTracklets[trackletcount].getColumn() - << " padrow=" << mTracklets[trackletcount].getPadRow() - << " pos=" << mTracklets[trackletcount].getPosition() - << " slope=" << mTracklets[trackletcount].getSlope() - << " q0=" << mTracklets[trackletcount].getQ0() - << " q1=" << mTracklets[trackletcount].getQ1() - << " q2=" << mTracklets[trackletcount].getQ2(); + LOG(info) << "Tracklet : " << trackletcount << " details : hcid=" << mTracklets[trackletcount]; } } else { LOG(info) << "No Tracklets for this trigger"; @@ -168,16 +158,14 @@ void Trap2CRU::sortDataToLinks() << " pad=" << mDigits[mDigitsIndex[digitcount]].getPadCol() << " adcsum=" << mDigits[mDigitsIndex[digitcount]].getADCsum() << " hcid=" << mDigits[mDigitsIndex[digitcount]].getHCId(); - LOG(info) << "DDDDD " << mDigits[mDigitsIndex[digitcount]].getDetector() << ":" << mDigits[mDigitsIndex[digitcount]].getROB() << ":" << mDigits[mDigitsIndex[digitcount]].getMCM() << ":" << mDigits[mDigitsIndex[digitcount]].getChannel() << ":" << mDigits[mDigitsIndex[digitcount]].getADCsum() << ":" << mDigits[mDigitsIndex[digitcount]].getADC()[0] << ":" << mDigits[mDigitsIndex[digitcount]].getADC()[1] << ":" << mDigits[mDigitsIndex[digitcount]].getADC()[2] << "::" << mDigits[mDigitsIndex[digitcount]].getADC()[27] << ":" << mDigits[mDigitsIndex[digitcount]].getADC()[28] << ":" << mDigits[mDigitsIndex[digitcount]].getADC()[29]; - ; } } else { - LOG(error) << "No Digits for this trigger <----- this shoudl NEVER EVER HAPPEN"; + LOG(error) << "No Digits for this trigger <----- this should NEVER EVER HAPPEN"; } triggercount++; } - LOG(info) << "@@@@@@@@@@@@@@@@@ end of pre sort tracklets then digits @@@@@@@@@@@@@@@@@@@@@@@@@@@"; + LOG(info) << "end of pre sort tracklets then digits"; } // if verbose } @@ -221,11 +209,13 @@ void Trap2CRU::readTrapData() for (int link = 0; link < o2::trd::constants::NHALFCRU; link++) { // FeeID *was* 0xFEED, now is indicates the cru Supermodule, side (A/C) and endpoint. See RawData.cxx for details. int supermodule = link / 4; - int endpoint = link / 2; - int side = link % 2 ? 1 : 0; + int endpoint = link % 2; + int cru = link / 2; + int side = cru % 2; // A or C, 0 or 1 respectively: mFeeID = buildTRDFeeID(supermodule, side, endpoint); + LOG(info) << "FEEID;" << std::hex << mFeeID; mCruID = link / 2; - mEndPointID = link % 2 ? 1 : 0; + mEndPointID = endpoint; mLinkID = o2::trd::constants::TRDLINKID; std::string outFileLink; @@ -270,9 +260,6 @@ void Trap2CRU::readTrapData() totaltracklets += mTracklets.size(); totaldigits += mDigits.size(); //migrate digit trigger information into the tracklettrigger (historical) - // mergetriggerDigitRanges(); // merge data (if needed) from the digits trigger record to the tracklets trigger record (different files) - - //TODO figure out if want to care about unaligned trees. sortDataToLinks(); // each entry is a timeframe uint32_t linkcount = 0; @@ -334,7 +321,7 @@ uint32_t Trap2CRU::buildHalfCRUHeader(HalfCRUHeader& header, const uint32_t bc, uint32_t padding = 0; //lets first clear it out. clearHalfCRUHeader(header); - //TODO this bunchcrossing is not the same as the bunchcrossing in the rdh, which is effectively the bc coming in the parameter list to this function. + //this bunchcrossing is not the same as the bunchcrossing in the rdh, which is the bc coming in the parameter list to this function. See explanation in rawdata.h setHalfCRUHeader(header, crurdhversion, bunchcrossing, stopbits, endpoint, eventtype, feeid, cruid); //TODO come back and pull this from somewhere. return 1; @@ -362,8 +349,6 @@ bool Trap2CRU::isDigitOnLink(const int linkid, const int currentdigitpos) int Trap2CRU::buildDigitRawData(const int digitstartindex, const int digitendindex, const int mcm, const int rob, const uint32_t triggerrecordcount) { - LOG(debug) << __func__ << " digit start index:" << digitstartindex << " digitendindex " << digitendindex << " mcm : " << mcm << " rob: " << rob << " triggerrecordcount:" << triggerrecordcount; - LOG(debug) << "raw pointer at start : " << (void*)mRawDataPtr; //this is not zero suppressed. int digitwordswritten = 0; int digitswritten = 0; @@ -402,33 +387,22 @@ int Trap2CRU::buildDigitRawData(const int digitstartindex, const int digitendind //write these 2 now as we only have it now. if (startmcm != d->getMCM()) { LOG(error) << " we are on the wrong mcm:" << startmcm << "!=" << d->getMCM(); - //TODO should this be fatal? } if (startrob != d->getROB()) { LOG(error) << " we are on the wrong rob:" << startrob << "!=" << d->getROB(); - //TODO should this be fatal? } int channel = d->getChannel(); //set adcmask for the channel we currently have. - //LOG(info) << "setting bit :" << channel << " in mask " << adcmaskptr->adcmask; adcmaskptr->adcmask |= 1UL << channel; - // LOG(info) << "set bit :" << channel << " in mask " << adcmaskptr->adcmask; - // LOG(info) << "Setting adc mask to :0x" << std::hex << adcmaskptr->adcmask << " having just set channel : " << std::dec << channel; - // LOG(debug) << "writing real data to digit stream of " << std::hex << data.word; for (int timebin = 0; timebin < o2::trd::constants::TIMEBINS; timebin += 3) { data.x = adcdata[timebin]; data.y = adcdata[timebin + 1]; data.z = adcdata[timebin + 2]; data.c = 1; - //LOG(info) << "ADC values raw: 0x" << std::hex << data.word << std::dec << " adc:" << timebin << " = " << adcdata[timebin] << ":" << adcdata[timebin + 1] << ":" << adcdata[timebin + 2]; memcpy(mRawDataPtr, (char*)&data, sizeof(DigitMCMData)); // uint32 -- 4 bytes. - // LOG(info) << "ADC raw data written is digitmcmdata size=" << sizeof(DigitMCMData) << " actually 0x"<< std::hex<< ((DigitMCMData*)mRawDataPtr)->word; - // LOG(info) << " x:" << ((DigitMCMData*)mRawDataPtr)->x << " y:" << ((DigitMCMData*)mRawDataPtr)->y << " z:" << ((DigitMCMData*)mRawDataPtr)->z; - // LOG(info) << "adc mask is now : " << std::hex << adcmaskptr->adcmask; mRawDataPtr += sizeof(DigitMCMData); digitwordswritten++; } - //LOG(info) << "DDD Adding Digit to raw stream rob:mcm:channel " << d->getROB() << ":" << d->getMCM() << ":" << d->getChannel() << " adcmask is now :" << adcmaskptr->adcmask; if (mVerbosity) { LOG(info) << "DDDD " << d->getDetector() << ":" << d->getROB() << ":" << d->getMCM() << ":" << d->getChannel() << ":" << d->getADCsum() << ":" << d->getADC()[0] << ":" << d->getADC()[1] << ":" << d->getADC()[2] << "::" << d->getADC()[27] << ":" << d->getADC()[28] << ":" << d->getADC()[29]; } @@ -467,13 +441,13 @@ int Trap2CRU::buildTrackletRawData(const int trackletindex, const int linkid) mTracklets[trackletindex + trackletcounter].getQ1(), mTracklets[trackletindex + trackletcounter].getQ2()); int headerqpart = ((mTracklets[trackletindex + trackletcounter].getQ2()) << 2) + ((mTracklets[trackletindex + trackletcounter].getQ1()) >> 5); if (headerqpart == 0xff) { - LOG(info) << mTracklets[trackletindex + trackletcounter].getQ2() << 2 + ((mTracklets[trackletindex + trackletcounter].getQ1()) >> 5) + LOG(warn) << mTracklets[trackletindex + trackletcounter].getQ2() << 2 + ((mTracklets[trackletindex + trackletcounter].getQ1()) >> 5) << " <--- headerqpart calculation : part 2shit :" << mTracklets[trackletindex + trackletcounter].getQ2() << 2 << " part 5 shift : " << ((mTracklets[trackletindex + trackletcounter].getQ1()) >> 5) << " Q0:" << mTracklets[trackletindex + trackletcounter].getQ0() << " Q1:" << mTracklets[trackletindex + trackletcounter].getQ1() << " Q2:" << mTracklets[trackletindex + trackletcounter].getQ2(); - LOG(error) << " header part of pid is 0xff which is a no tracklet definition"; + LOG(warn) << " header part of pid is 0xff which is a no tracklet definition"; } switch (trackletcounter) { case 0: @@ -505,14 +479,6 @@ int Trap2CRU::buildTrackletRawData(const int trackletindex, const int linkid) mRawDataPtr += sizeof(TrackletMCMHeader); for (int i = 0; i < trackletcounter; ++i) { memcpy((char*)mRawDataPtr, (char*)&trackletdata[i], sizeof(TrackletMCMData)); - //LOG(info) << "TTT+TTT Adding tracklet to raw stream 0x" << std::hex << trackletdata[i].word << " header:" << header.word; - // if(trackletdata[i].word==0x48e05023){ - // int a=1; - // int d=1; - // while(d==1){ - // a=sin(rand()); - // } - // } mRawDataPtr += sizeof(TrackletMCMData); } if (trackletcounter == 0) { @@ -560,15 +526,14 @@ int Trap2CRU::writeTrackletHCHeader(const int eventcount, const uint32_t linkid) int detector = linkid / 2; TrackletHCHeader trackletheader; trackletheader.supermodule = linkid / 60; - trackletheader.stack = linkid; //TODO this is wrong, go back to the ori thing from Guido - trackletheader.layer = linkid; //TODO this is wrong. + trackletheader.stack = (detector % (o2::trd::constants::NLAYER * o2::trd::constants::NSTACK)) / o2::trd::constants::NLAYER; + trackletheader.layer = (detector % o2::trd::constants::NLAYER); trackletheader.one = 1; trackletheader.side = (linkid % 2) ? 1 : 0; - trackletheader.MCLK = eventcount * 42; // just has to be a consistant increasing number per event. + trackletheader.MCLK = eventcount * 42; // just has to be a constant increasing number per event for our purposes in sim to raw. trackletheader.format = 12; - if (mUseTrackletHCHeader) { // run 3 we also have a TrackletHalfChamber, that comes after thetracklet endmarker. + if (mUseTrackletHCHeader) { // run 3 we also have a TrackletHalfChamber. memcpy(mRawDataPtr, (char*)&trackletheader, sizeof(TrackletHCHeader)); - //LOG(info) << "Wrote tracklet HC : 0x" << std::hex << trackletheader.word; mRawDataPtr += 4; wordswritten++; } @@ -576,9 +541,8 @@ int Trap2CRU::writeTrackletHCHeader(const int eventcount, const uint32_t linkid) } int Trap2CRU::writeDigitHCHeader(const int eventcount, const uint32_t linkid) -{ // we have 2 HCHeaders defined Tracklet and Digit in Rawdata.h - //TODO is it a case of run2 and run3 ? for digithcheader and tracklethcheader? - //The parsing I am doing of CRU raw data only has a DigitHCHeader in it after the TrackletEndMarker ... confusion? +{ + // we have 2 HCHeaders defined Tracklet and Digit in Rawdata.h int wordswritten = 0; //from linkid we can get supermodule, stack, layer, side int detector = linkid / 2; @@ -590,16 +554,15 @@ int Trap2CRU::writeDigitHCHeader(const int eventcount, const uint32_t linkid) digitheader.layer = (detector % o2::trd::constants::NLAYER); digitheader.supermodule = linkid / 60; digitheader.numberHCW = 1; // number of additional words in th header, we are using 2 header words so 1 here. - digitheader.minor = 42; // my (shtm)erroneous version + digitheader.minor = 42; // my (shtm) version, not used digitheader.major = 4; // zero suppressed digitheader.version = 1; //new version of the header. we only have 1 version digitheader.res1 = 1; digitheader.ptrigcount = 1; //TODO put something more real in here? digitheader.ptrigphase = 1; //TODO put something more real in here? - digitheader.bunchcrossing = eventcount; //NB this is not the same as the bunchcrossing the rdh. + digitheader.bunchcrossing = eventcount; //NB this is not the same as the bunchcrossing the rdh. See RawData.h for explanation digitheader.numtimebins = 30; memcpy(mRawDataPtr, (char*)&digitheader, 8); // 8 because we are only using the first 2 32bit words of the header, the rest are optional. - //LOG(info) << "Wrote tracklet HC : 0x" << std::hex << digitheader.word0 << " 0x" << digitheader.word1; mRawDataPtr += 8; wordswritten += 2; return wordswritten; @@ -627,33 +590,29 @@ void Trap2CRU::convertTrapData(o2::trd::TriggerRecord const& triggerrecord, cons // int starttrackletindex = triggerrecord.getFirstTracklet(); int endtrackletindex = triggerrecord.getFirstTracklet() + triggerrecord.getNumberOfTracklets(); - //int64_t startdigitindex = mDigitTriggerRecords[triggercount].getFirstDigit(); int64_t startdigitindex = triggerrecord.getFirstDigit(); int64_t enddigitindex = triggerrecord.getFirstDigit() + triggerrecord.getNumberOfDigits(); - // int64_t enddigitindex = mDigitTriggerRecords[triggercount].getFirstDigit() + mDigitTriggerRecords[triggercount].getNumberOfDigits(); - - //LOG(info) << " --------- " << starttrackletindex << "::" << endtrackletindex << "::" << startdigitindex << "::" << enddigitindex << " current tracklet::digit" << mCurrentTracklet << "::" << mCurrentDigit; - // LOG(info) << " --------- " << starttrackletindex<<"::"< Date: Tue, 20 Jul 2021 17:22:48 +0200 Subject: [PATCH 273/314] fix linkid and hcid mapping and sorting --- .../include/DataFormatsTRD/HelperMethods.h | 59 +++++++++++++++++++ Detectors/TRD/base/include/TRDBase/FeeParam.h | 4 +- Detectors/TRD/base/src/FeeParam.cxx | 43 +++----------- .../TRD/reconstruction/src/CruRawReader.cxx | 6 +- .../TRD/reconstruction/src/DigitsParser.cxx | 40 ++----------- .../TRD/reconstruction/src/EventRecord.cxx | 2 +- .../reconstruction/src/TrackletsParser.cxx | 19 ++---- Detectors/TRD/simulation/src/Trap2CRU.cxx | 44 +++++++++----- 8 files changed, 109 insertions(+), 108 deletions(-) diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/HelperMethods.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/HelperMethods.h index 515b60326fa94..5155cacd5a428 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/HelperMethods.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/HelperMethods.h @@ -67,6 +67,65 @@ struct HelperMethods { } return irob % 2; } + + static int getStack(int det) + { + return det % (constants::NSTACK * constants::NLAYER) / constants::NLAYER; + }; + static int getLayer(int det) + { + return det % constants::NLAYER; + }; + + static int getORIinSuperModule(int detector, int readoutboard) + { + //given a detector and readoutboard + int ori = -1; + int trdstack = HelperMethods::getStack(detector); + int trdlayer = HelperMethods::getLayer(detector); + int side = HelperMethods::getROBSide(readoutboard); + //TODO ccdb lookup of detector/stack/layer/side for link id. + bool aside = false; + if (trdstack == 0 || trdstack == 1) { + aside = true; //aside + } else { + if (trdstack != 2) { + aside = false; //cside + } else { + if (side == 0) { + aside = true; //stack + } else { + aside = false; //stack2, halfchamber 1 + } + } + } + if (aside) { + ori = trdstack * 12 + (5 - trdlayer + side * 5) + trdlayer / 6 + side; // <- that is correct for A side at least for now, probably not for very long LUT as that will come form CCDB ni anycase. + } else { + //cside + int newside = side; + if (trdstack == 2) { + newside = 0; // the last part of C side CRU is a special case. + } + ori = (4 - trdstack) * 12 + (5 - trdlayer + newside * 5) + trdlayer / 6 + newside; + ori += 30; // 30 to offset if from the a side link , 69 links in total + } + //see TDP for explanation of mapping TODO should probably come from CCDB + return ori; + }; + + static int getLinkIDfromHCID(int hcid) + { + //return a number in range [0:29] for the link related to this hcid with in its respective CRU + //lower 15 is endpoint 0 and upper 15 is endpoint 1 + //a side has 30, c side has 30 to give 60 links for a supermodule + int detector = hcid / 2; + int supermodule = hcid / 60; + int chamberside = hcid % 2; // 0 for side 0, 1 for side 1; + int ori = -1; + // now offset for supermodule (+60*supermodule); + return HelperMethods::getORIinSuperModule(detector, chamberside) + 60 * supermodule; // it takes readoutboard but only cares if its odd or even hence side here. + }; }; } // namespace trd diff --git a/Detectors/TRD/base/include/TRDBase/FeeParam.h b/Detectors/TRD/base/include/TRDBase/FeeParam.h index 01b5c660940ea..d30af06fe9989 100644 --- a/Detectors/TRD/base/include/TRDBase/FeeParam.h +++ b/Detectors/TRD/base/include/TRDBase/FeeParam.h @@ -71,10 +71,10 @@ class FeeParam // wiring static int getORI(int detector, int readoutboard); - static int getORIinSM(int detector, int readoutboard); static void unpackORI(int link, int side, int& stack, int& layer, int& halfchamberside); // void createORILookUpTable(); - static int getORIfromHCID(int hcid); + static int getORIinSuperModule(int detector, int readoutboard); + static int getLinkIDfromHCID(int hcid); static int getHCIDfromORI(int ori, int readoutboard); // TODO we need more info than just ori, for now readoutboard is there ... might change // tracklet simulation diff --git a/Detectors/TRD/base/src/FeeParam.cxx b/Detectors/TRD/base/src/FeeParam.cxx index ae1884d65726d..6a1e89f47f04c 100644 --- a/Detectors/TRD/base/src/FeeParam.cxx +++ b/Detectors/TRD/base/src/FeeParam.cxx @@ -410,47 +410,22 @@ int FeeParam::getORI(int detector, int readoutboard) { int supermodule = detector / NCHAMBERPERSEC; /// LOG(info) << "getORI : " << detector << " :: " << readoutboard << " -- " << getORIinSM(detector, readoutboard) << " " << getORIinSM(detector, readoutboard) + NCHAMBERPERSEC * 2 * detector; - return getORIinSM(detector, readoutboard) + NCHAMBER * 2 * detector; // 60 ORI per supermodule + return getORIinSuperModule(detector, readoutboard) + NCHAMBER * 2 * detector; // 60 ORI per supermodule } -int FeeParam::getORIinSM(int detector, int readoutboard) +int FeeParam::getORIinSuperModule(int detector, int readoutboard) { - int ori = -1; - int chamberside = 0; - int trdstack = Geometry::getStack(detector); - int trdlayer = Geometry::getLayer(detector); - int side = getROBSide(readoutboard); - //see TDP for explanation of mapping TODO should probably come from CCDB - if (trdstack < 2 || (trdstack == 2 && side == 0)) // A Side - { - ori = trdstack * 12 + (5 - trdlayer + side * 5) + trdlayer / 6 + side; // <- that is correct for A side at least for now, probably not for very long LUT as that will come form CCDB ni anycase. - } else { - if (trdstack > 2 || (trdstack == 2 && side == 1)) // CSide - { - int newside = side; - if (trdstack == 2) { - newside = 0; // the last part of C side CRU is a special case. - } - ori = (4 - trdstack) * 12 + (5 - trdlayer + newside * 5) + trdlayer / 6 + newside; - } else { - LOG(warn) << " something wrong with calculation of ORI for detector " << detector << " and readoutboard" << readoutboard; - } - } - // now offset for supermodule (+60*supermodule); - - return ori; + return HelperMethods::getORIinSuperModule(detector, readoutboard); } -int FeeParam::getORIfromHCID(int hcid) +int FeeParam::getLinkIDfromHCID(int hcid) { - int detector = hcid / 2; - int side = hcid % 2; // 0 for side 0, 1 for side 1; - int ori = -1; - int chamberside = 0; - int trdstack = Geometry::getStack(detector); - int trdlayer = Geometry::getLayer(detector); - return getORIinSM(detector, side); // it takes readoutboard but only cares if its odd or even hence side here. + return HelperMethods::getLinkIDfromHCID(hcid); + //return a number in range [0:29] for the link related to this hcid with in its respective CRU + //lower 15 is endpoint 0 and upper 15 is endpoint 1 + //a side has 30, c side has 30 to give 60 links for a supermodule } + int FeeParam::getHCIDfromORI(int ori, int readoutboard) { // ori = 60*SM+offset[0-29 A, 30-59 C] diff --git a/Detectors/TRD/reconstruction/src/CruRawReader.cxx b/Detectors/TRD/reconstruction/src/CruRawReader.cxx index d306e1ed44c09..2e7f1377701f5 100644 --- a/Detectors/TRD/reconstruction/src/CruRawReader.cxx +++ b/Detectors/TRD/reconstruction/src/CruRawReader.cxx @@ -237,9 +237,8 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) int oriindex = currentlinkindex + constants::NLINKSPERHALFCRU * endpoint; // endpoint denotes the pci side, upper or lower for the pair of 15 fibres. FeeParam::unpackORI(oriindex, side, stack, layer, halfchamberside); int currentdetector = stack * constants::NLAYER + layer + supermodule * constants::NLAYER * constants::NSTACK; - int ori = 1; if (mVerbose) { - LOG(info) << "******* LINK # " << currentlinkindex << " and ORI:" << ori << " unpackORI(" << oriindex << "," << side << "," << stack << "," << layer << "," << halfchamberside << ") and an FEEID:" << std::hex << mFEEID << " det:" << std::dec << currentdetector; + LOG(info) << "******* LINK # " << currentlinkindex << " and unpackORI(" << oriindex << "," << side << "," << stack << "," << layer << "," << halfchamberside << ") and an FEEID:" << std::hex << mFEEID << " det:" << std::dec << currentdetector; } // tracklet first then digit ?? // tracklets end with tracklet end marker(0x10001000 0x10001000), digits end with digit endmarker (0x0 0x0) @@ -265,9 +264,6 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) LOG(info) << "parse digits"; } //linkstart and linkend already have the multiple cruheaderoffsets built in - if (mVerbose) { - LOG(info) << "mem copy with offset of : " << cruhbfstartoffset << " parsing digits with linkstart: " << linkstart << " ending at : " << linkend; - } digitwordsread = mDigitsParser.Parse(&mHBFPayload, linkstart, linkend, currentdetector, cleardigits, mByteSwap, mVerbose, mHeaderVerbose, mDataVerbose); if (digitwordsread != std::distance(linkstart, linkend)) { //we have the data corruption problem of a pile of stuff at the end of a link, jump over it. diff --git a/Detectors/TRD/reconstruction/src/DigitsParser.cxx b/Detectors/TRD/reconstruction/src/DigitsParser.cxx index cd9fa5bc37f7c..fa7c4c9f553f3 100644 --- a/Detectors/TRD/reconstruction/src/DigitsParser.cxx +++ b/Detectors/TRD/reconstruction/src/DigitsParser.cxx @@ -113,6 +113,10 @@ int DigitsParser::Parse(bool verbose) if (mHeaderVerbose) { printDigitHCHeader(*mDigitHCHeader); } + if (mDigitHCHeader->word0 == 0x0 || mDigitHCHeader->word1 == 0x0) { + LOG(warn) << "Missing DigitHCHeader, reading digit end marker of zeros??"; + printDigitHCHeader(*mDigitHCHeader); + } mBufferLocation += 2; mDataWordsParsed += 2; std::advance(mStartParse, 2); @@ -183,22 +187,6 @@ int DigitsParser::Parse(bool verbose) if (!digitMCMHeaderSanityCheck(mDigitMCMHeader)) { LOG(warn) << "Sanity check Failure Digit MCMHeader : " << std::hex << mDigitMCMHeader->word; - LOG(warn) << "Sanity check Failure Digit MCMHeader word: " << std::hex << *word; - DigitMCMHeader* t; - tmpword = std::prev(word, 3); - printDigitMCMHeader(*(DigitMCMHeader*)(tmpword)); - tmpword = std::prev(word, 2); - printDigitMCMHeader(*(DigitMCMHeader*)(tmpword)); - tmpword = std::prev(word, 1); - printDigitMCMHeader(*(DigitMCMHeader*)(tmpword)); - printDigitMCMHeader(*mDigitMCMHeader); - tmpword = std::next(word, 1); - printDigitMCMHeader(*(DigitMCMHeader*)(tmpword)); - tmpword = std::next(word, 2); - printDigitMCMHeader(*(DigitMCMHeader*)(tmpword)); - tmpword = std::next(word, 3); - printDigitMCMHeader(*(DigitMCMHeader*)(tmpword)); - LOG(warn) << "Sanity check Failure Digit MCMHeader print out finished"; } else { LOG(info) << "Sanity check passed for digitmcmheader"; printDigitMCMHeader(*mDigitMCMHeader); @@ -236,9 +224,6 @@ int DigitsParser::Parse(bool verbose) } // we dont care about the year flag, we are >2007 already. } else { - //if (mState == StateDigitMCMHeader && *word!=o2::trd::constants::CRUPADDING32) { - // LOG(warn) << " state is MCMHeader but we have just bypassed it as the bitmask is wrong :" << std::hex << *word; - //} if (*word == o2::trd::constants::CRUPADDING32) { if (mVerbose) { LOG(info) << "state padding and word : 0x" << std::hex << *word << " state is:" << mState; @@ -261,12 +246,6 @@ int DigitsParser::Parse(bool verbose) LOG(info) << " digit end marker state ..."; } } else { - //if (mState != StateDigitMCMData) { - // LOG(warn) << "something is wrong we are in the statement for MCMdata, but the state is : " << mState << " and MCMData state is:" << StateDigitMCMData; - //} - if (mVerbose || mDataVerbose) { - //LOG(info) << "mDigitMCMData with state=" << mState << " is at " << mBufferLocation << " had value 0x" << std::hex << *word << " mcmdatacount of : " << mcmdatacount << " adc#" << mcmadccount; - } //for the case of on flp build a vector of tracklets, then pack them into a data stream with a header. //for dpl build a vector and connect it with a triggerrecord. mDataWordsParsed++; @@ -280,13 +259,9 @@ int DigitsParser::Parse(bool verbose) LOG(info) << "digittimebinoffset = " << digittimebinoffset; } mADCValues[digittimebinoffset++] = mDigitMCMData->x; - // digittimebinoffset+=1; mADCValues[digittimebinoffset++] = mDigitMCMData->y; mADCValues[digittimebinoffset++] = mDigitMCMData->z; - // if(mcmadccount==0){ - // startmcmdataindex=word; - // } if (digittimebinoffset > constants::TIMEBINS) { LOG(fatal) << "too many timebins to insert into mADCValues digittimebinoffset:" << digittimebinoffset; } @@ -317,14 +292,11 @@ int DigitsParser::Parse(bool verbose) //set that bit to zero if (mADCMask == 0) { //no more adc for zero suppression. - // LOG(info) << "ADCMask is zero, we should change state to something useful"; //now we should either have another MCMHeader, or End marker if (*word != 0 && *(std::next(word)) != 0) { // end marker is a sequence of 32 bit 2 zeros. mState = StateDigitMCMHeader; - // LOG(info) << "ADCMask is zero, changing state to MCMHeader"; } else { mState = StateDigitEndMarker; - // LOG(info) << "ADCMask is zero, changing state to Endmarker"; } } } @@ -332,7 +304,6 @@ int DigitsParser::Parse(bool verbose) // if(mDataVerbose){ // CompressedDigit t = mDigits.back(); //now fill in the adc values --- here because in commented code above if all 3 increments were there then it froze - // LOG(info) << " DDD "<< mDigitMCMHeader->eventcount << " Digit " << mDetector << " -" << mROB << "-" << mMCM <<"-" << mChannel; if (mDataVerbose) { uint32_t adcsum = 0; for (auto adc : mADCValues) { @@ -375,9 +346,6 @@ int DigitsParser::Parse(bool verbose) if (!(mState == StateDigitMCMHeader || mState == StatePadding || mState == StateDigitEndMarker)) { LOG(warn) << "Exiting parsing but the state is wrong ... mState= " << mState; - if (mVerbose) { - LOG(info) << "Exiting parsing but the state is wrong ... mState= " << mState; - } } return mDataWordsParsed; } diff --git a/Detectors/TRD/reconstruction/src/EventRecord.cxx b/Detectors/TRD/reconstruction/src/EventRecord.cxx index 47fcc031ad365..e426c344507e2 100644 --- a/Detectors/TRD/reconstruction/src/EventRecord.cxx +++ b/Detectors/TRD/reconstruction/src/EventRecord.cxx @@ -56,12 +56,12 @@ void EventRecord::addTracklets(std::vector::iterator& start, std::ve { mTracklets.insert(std::end(mTracklets), start, end); } + void EventRecord::addTracklets(std::vector& tracklets) { for (auto tracklet : tracklets) { mTracklets.push_back(tracklet); } - //mTracklets.insert(mTracklets.back(), tracklets.begin(),tracklets.back()); } void EventRecord::sortByHCID() diff --git a/Detectors/TRD/reconstruction/src/TrackletsParser.cxx b/Detectors/TRD/reconstruction/src/TrackletsParser.cxx index b0e963e8f8896..dc2db3231b9eb 100644 --- a/Detectors/TRD/reconstruction/src/TrackletsParser.cxx +++ b/Detectors/TRD/reconstruction/src/TrackletsParser.cxx @@ -120,16 +120,7 @@ int TrackletsParser::Parse() std::array::iterator hchword = word; std::advance(hchword, 2); uint32_t halfchamberheaderint = *hchword; - if ((((*hchword) & (0x1 << 11)) != 0) && !mIgnoreTrackletHCHeader) { //TrackletHCHeader has bit 11 set to 1 always. Check for state because raw data can have bit 11 set! - //read the header - //we actually have an header word. - mTrackletHCHeader = (TrackletHCHeader*)&word; - if (mHeaderVerbose) { - LOG(info) << "state mcmheader and word : 0x" << std::hex << *word << " sanity check : " << trackletHCHeaderSanityCheck(*mTrackletHCHeader); - } - mWordsRead++; - mState = StateTrackletEndMarker; - } + mState = StateTrackletEndMarker; return mWordsRead; } if (*word == o2::trd::constants::CRUPADDING32) { @@ -140,15 +131,15 @@ int TrackletsParser::Parse() } else { //now for Tracklet hc header if ((((*word) & (0x1 << 11)) != 0) && !mIgnoreTrackletHCHeader && mState == StateTrackletHCHeader) { //TrackletHCHeader has bit 11 set to 1 always. Check for state because raw data can have bit 11 set! - if (mHeaderVerbose) { - LOG(info) << "mTrackletHCHeader is has value 0x" << std::hex << *word; - } if (mState != StateTrackletHCHeader) { LOG(warn) << "Something wrong with TrackletHCHeader bit 11 is set but state is not " << StateTrackletMCMHeader << " its :" << mState; } //read the header //we actually have a header word. mTrackletHCHeader = (TrackletHCHeader*)&word; + if (mHeaderVerbose) { + LOG(info) << "state trackletHCheader and word : 0x" << std::hex << *word << " sanity check : " << trackletHCHeaderSanityCheck(*mTrackletHCHeader); + } //sanity check of trackletheader ?? mWordsRead++; mState = StateTrackletMCMHeader; // now we should read a MCMHeader next time through loop @@ -202,7 +193,7 @@ int TrackletsParser::Parse() int slope = mTrackletMCMData->slope; int hcid = mDetector * 2 + mRobSide; if (mDataVerbose) { - LOG(info) << "Tracklet HCID : " << hcid << " mDetector:" << mDetector << " robside:" << mRobSide; + LOG(info) << "Tracklet HCID : " << hcid << " mDetector:" << mDetector << " robside:" << mRobSide << " " << mTrackletMCMHeader->padrow << ":" << mTrackletMCMHeader->col << " ---- " << mTrackletHCHeader->supermodule << ":" << mTrackletHCHeader->stack << ":" << mTrackletHCHeader->layer << ":" << mTrackletHCHeader->side << " rawhcheader : 0x" << std::hex << std::hex << mTrackletHCHeader->word; } //TODO cross reference hcid to somewhere for a check. mDetector is assigned at the time of parser init. // diff --git a/Detectors/TRD/simulation/src/Trap2CRU.cxx b/Detectors/TRD/simulation/src/Trap2CRU.cxx index 04dfb5872b9ce..89374882623ad 100644 --- a/Detectors/TRD/simulation/src/Trap2CRU.cxx +++ b/Detectors/TRD/simulation/src/Trap2CRU.cxx @@ -97,10 +97,16 @@ void Trap2CRU::sortDataToLinks() if (mVerbosity) { LOG(debug) << " sorting digits from : " << trig.getFirstTracklet() << " till " << trig.getFirstTracklet() + trig.getNumberOfTracklets(); } + // sort to link order *NOT* hcid order ... + // link is defined by stack,layer,halfchamberside. + // tracklet data we have hcid,padrow,colum. + // hcid/2 = detector, detector implies stack and layer, and hcid odd/even gives side. std::stable_sort(std::begin(mTracklets) + trig.getFirstTracklet(), std::begin(mTracklets) + trig.getNumberOfTracklets() + trig.getFirstTracklet(), [this](auto&& t1, auto&& t2) { - if (t1.getHCID() != t2.getHCID()) { - return t1.getHCID() < t2.getHCID(); + int link1 = HelperMethods::getLinkIDfromHCID(t1.getHCID()); + int link2 = HelperMethods::getLinkIDfromHCID(t2.getHCID()); + if (link1 != link2) { + return link1 < link2; } if (t1.getPadRow() != t2.getPadRow()) { return t1.getPadRow() < t2.getPadRow(); @@ -114,9 +120,9 @@ void Trap2CRU::sortDataToLinks() } std::stable_sort(mDigitsIndex.begin() + trig.getFirstDigit(), mDigitsIndex.begin() + trig.getNumberOfDigits() + trig.getFirstDigit(), //,digitcompare); [this](const uint32_t i, const uint32_t j) { - uint32_t hcida = mDigits[i].getDetector() * 2 + (mDigits[i].getROB() % 2); - uint32_t hcidb = mDigits[j].getDetector() * 2 + (mDigits[j].getROB() % 2); - if(hcida!=hcidb){return hcidagetDetector() * 2 + (digit->getROB() % 2)) == linkid) { + int link = HelperMethods::getLinkIDfromHCID(digit->getDetector() * 2 + (digit->getROB() % 2)); + if (link == linkid) { return true; } return false; @@ -435,7 +442,7 @@ int Trap2CRU::buildTrackletRawData(const int trackletindex, const int linkid) if (mVerbosity) { LOG(info) << header; } - while (linkid == mTracklets[trackletindex + trackletcounter].getHCID() && header.col == mTracklets[trackletindex + trackletcounter].getColumn() && header.padrow == mTracklets[trackletindex + trackletcounter].getPadRow()) { + while (linkid == HelperMethods::getLinkIDfromHCID(mTracklets[trackletindex + trackletcounter].getHCID()) && header.col == mTracklets[trackletindex + trackletcounter].getColumn() && header.padrow == mTracklets[trackletindex + trackletcounter].getPadRow()) { buildTrackletMCMData(trackletdata[trackletcounter], mTracklets[trackletindex + trackletcounter].getSlope(), mTracklets[trackletindex + trackletcounter].getPosition(), mTracklets[trackletindex + trackletcounter].getQ0(), mTracklets[trackletindex + trackletcounter].getQ1(), mTracklets[trackletindex + trackletcounter].getQ2()); @@ -529,11 +536,18 @@ int Trap2CRU::writeTrackletHCHeader(const int eventcount, const uint32_t linkid) trackletheader.stack = (detector % (o2::trd::constants::NLAYER * o2::trd::constants::NSTACK)) / o2::trd::constants::NLAYER; trackletheader.layer = (detector % o2::trd::constants::NLAYER); trackletheader.one = 1; + if (mVerbosity) { + LOG(info) << "Tracklet linkid : " << linkid << ":" + << " " << trackletheader.supermodule << ":" << trackletheader.stack << ":" << trackletheader.layer << ":" << trackletheader.side; + } trackletheader.side = (linkid % 2) ? 1 : 0; trackletheader.MCLK = eventcount * 42; // just has to be a constant increasing number per event for our purposes in sim to raw. trackletheader.format = 12; if (mUseTrackletHCHeader) { // run 3 we also have a TrackletHalfChamber. memcpy(mRawDataPtr, (char*)&trackletheader, sizeof(TrackletHCHeader)); + if (mVerbosity) { + LOG(info) << "writing tracklethcheader of 0x" << std::hex << trackletheader.word; + } mRawDataPtr += 4; wordswritten++; } @@ -664,18 +678,16 @@ void Trap2CRU::convertTrapData(o2::trd::TriggerRecord const& triggerrecord, cons rawwords += trackletendmarker; adccounter = 0; rawwordsbefore = rawwords; + //always write the digit hc header + hcheaderwords = writeDigitHCHeader(triggercount, linkid); + linkwordswritten += hcheaderwords; + rawwords += hcheaderwords; //although if there are trackelts there better be some digits unless the digits are switched off. if (mCurrentDigit < mDigits.size()) { while (isDigitOnLink(linkid, mCurrentDigit) && mCurrentDigit < enddigitindex && mEventDigitCount % mDigitRate == 0) { if (mVerbosity) { LOG(info) << "at top of digit while loop calc linkid :" << linkid << " : " << mDigits[mDigitsIndex[mCurrentDigit]].getDetector() * 2 + mDigits[mDigitsIndex[mCurrentDigit]].getROB() % 2 << " actual link=" << linkid; } - if (isFirstDigit) { - int hcheaderwords = writeDigitHCHeader(triggercount, linkid); - linkwordswritten += hcheaderwords; - rawwords += hcheaderwords; - isFirstDigit = false; - } //while we are on a single mcm, copy the digits timebins to the array. int digitcounter = 0; int currentROB = mDigits[mDigitsIndex[mCurrentDigit]].getROB(); From 27cb4743c749edf5af7be6a5fcfec0b2aa5a1d18 Mon Sep 17 00:00:00 2001 From: Sean Murray Date: Thu, 22 Jul 2021 21:36:00 +0200 Subject: [PATCH 274/314] partial fix for charges clang --- .../TRD/include/DataFormatsTRD/RawData.h | 4 +- DataFormats/Detectors/TRD/src/RawData.cxx | 16 ++++--- .../reconstruction/src/TrackletsParser.cxx | 3 +- Detectors/TRD/simulation/src/Trap2CRU.cxx | 48 ++++++++++--------- 4 files changed, 38 insertions(+), 33 deletions(-) diff --git a/DataFormats/Detectors/TRD/include/DataFormatsTRD/RawData.h b/DataFormats/Detectors/TRD/include/DataFormatsTRD/RawData.h index d788cb39c6bae..e5e6729be9fd2 100644 --- a/DataFormats/Detectors/TRD/include/DataFormatsTRD/RawData.h +++ b/DataFormats/Detectors/TRD/include/DataFormatsTRD/RawData.h @@ -171,7 +171,7 @@ struct TrackletMCMHeader { uint32_t word; struct { uint32_t oneb : 1; // - uint32_t pid0 : 8; // part of pid for tracklet 0 + uint32_t pid0 : 8; // part of pid for tracklet 0 // 6 bits of Q2 and 2 bits of Q1 uint32_t pid1 : 8; // part of pid for tracklet 1 uint32_t pid2 : 8; // part of pid for tracklet 2 uint32_t col : 2; // 2 bits for position in pad direction. @@ -190,7 +190,7 @@ struct TrackletMCMData { struct { uint8_t checkbit : 1; // uint16_t slope : 8; // Deflection angle of tracklet - uint16_t pid : 12; // Particle Identity + uint16_t pid : 12; // Particle Identity 7 bits of Q0 and 5 bits of Q1 uint16_t pos : 11; // Position of tracklet, signed 11 bits, granularity 1/80 pad widths, -12.80 to +12.80, relative to centre of pad 10 } __attribute__((__packed__)); }; diff --git a/DataFormats/Detectors/TRD/src/RawData.cxx b/DataFormats/Detectors/TRD/src/RawData.cxx index b339c4eaf3e41..0d65f32c778d2 100644 --- a/DataFormats/Detectors/TRD/src/RawData.cxx +++ b/DataFormats/Detectors/TRD/src/RawData.cxx @@ -68,7 +68,7 @@ void buildTrackletMCMData(TrackletMCMData& trackletword, const uint slope, const { trackletword.slope = slope; trackletword.pos = pos; - trackletword.pid = q0 | ((q1 & 0xff) << 8); //q2 sits with a bit of q1 in the header pid word. + trackletword.pid = (q0 & 0x7f) | ((q1 & 0x1f) << 7); //q2 sits with upper 2 bits of q1 in the header pid word, hence the 0x1f so 5 bits are used here. trackletword.checkbit = 1; } @@ -127,17 +127,19 @@ uint32_t getQFromRaw(const o2::trd::TrackletMCMHeader* header, const o2::trd::Tr LOG(warn) << " unknown trackletindex to getQFromRaw : " << pidindex; break; } + //qa is 6bits of Q2 and 2 bits of Q1 //second part of pid is in the TrackletMCMData qb = data->pid; + //qb is 7 bits Q0 and 5 bits of Q1 switch (pidindex) { - case 0: - pid = qa & 0xffc >> 2; + case 0: //Q0 + pid = (qb >> 5) & 0x7f; // 7 bits at the top of all of Q0 break; - case 1: - pid = ((qa & 0x3) << 5) | (qb >> 6); + case 1: //Q1 + pid = ((qa & 0x3) << 5) | (qb >> 5); // 2 bits of qb and 5 bits of qb for Q1 .. 7 bits break; - case 2: - pid = qb & 0x3f; + case 2: //Q2 + pid = (qa >> 2) & 0x2f; // 6 bits shifted down by bits 2 to 8 ... 6 bits break; default: LOG(warn) << " unknown pid index of : " << pidindex; diff --git a/Detectors/TRD/reconstruction/src/TrackletsParser.cxx b/Detectors/TRD/reconstruction/src/TrackletsParser.cxx index dc2db3231b9eb..8f528450eb50f 100644 --- a/Detectors/TRD/reconstruction/src/TrackletsParser.cxx +++ b/Detectors/TRD/reconstruction/src/TrackletsParser.cxx @@ -143,7 +143,6 @@ int TrackletsParser::Parse() //sanity check of trackletheader ?? mWordsRead++; mState = StateTrackletMCMHeader; // now we should read a MCMHeader next time through loop - // TRDStatCounters.LinkPadWordCounts[mHCID]++; // keep track off all the padding words. } else { //not TrackletMCMHeader if ((*word) & 0x80000001 && mState == StateTrackletMCMHeader) { //TrackletMCMHeader has the bits on either end always 1 //mcmheader @@ -223,7 +222,7 @@ int TrackletsParser::Parse() } // else trackletloopcount++; } //end of for loop - //sanity check, we should now see a digit Half Chamber Header in the following 2 32bit words. + //sanity check LOG(warn) << " end of Trackelt parsing but we are exiting with out a tracklet end marker with " << mWordsRead << " 32bit words read"; return mWordsRead; } diff --git a/Detectors/TRD/simulation/src/Trap2CRU.cxx b/Detectors/TRD/simulation/src/Trap2CRU.cxx index 89374882623ad..27ef0f5d3fed0 100644 --- a/Detectors/TRD/simulation/src/Trap2CRU.cxx +++ b/Detectors/TRD/simulation/src/Trap2CRU.cxx @@ -118,7 +118,7 @@ void Trap2CRU::sortDataToLinks() if (mVerbosity) { LOG(debug) << " sorting digits from : " << trig.getFirstDigit() << " till " << trig.getFirstDigit() + trig.getNumberOfDigits(); } - std::stable_sort(mDigitsIndex.begin() + trig.getFirstDigit(), mDigitsIndex.begin() + trig.getNumberOfDigits() + trig.getFirstDigit(), //,digitcompare); + std::stable_sort(mDigitsIndex.begin() + trig.getFirstDigit(), mDigitsIndex.begin() + trig.getNumberOfDigits() + trig.getFirstDigit(), [this](const uint32_t i, const uint32_t j) { int link1=HelperMethods::getLinkIDfromHCID(mDigits[i].getDetector() * 2 + (mDigits[i].getROB() % 2)); int link2=HelperMethods::getLinkIDfromHCID(mDigits[j].getDetector() * 2 + (mDigits[j].getROB() % 2)); @@ -132,9 +132,6 @@ void Trap2CRU::sortDataToLinks() std::chrono::duration duration = std::chrono::high_resolution_clock::now() - sortstart; if (mVerbosity) { LOG(info) << "TRD Digit/Tracklet Sorting took " << duration.count() << " s"; - } - if (mVerbosity) { - LOG(info) << "@@@@@@@@@@@@@@@@@ pre sort tracklets then digits @@@@@@@@@@@@@@@@@@@@@@@@@@@"; int triggercount = 0; for (auto& trig : mTrackletTriggerRecords) { @@ -438,23 +435,30 @@ int Trap2CRU::buildTrackletRawData(const int trackletindex, const int linkid) header.padrow = mTracklets[trackletindex].getPadRow(); header.onea = 1; header.oneb = 1; - int trackletcounter = 0; + header.pid0 = 0xff; + header.pid1 = 0xff; + header.pid2 = 0xff; + unsigned int trackletcounter = 0; if (mVerbosity) { - LOG(info) << header; + LOG(info) << "After instantiation header is : 0x" << header.word << " " << header; } while (linkid == HelperMethods::getLinkIDfromHCID(mTracklets[trackletindex + trackletcounter].getHCID()) && header.col == mTracklets[trackletindex + trackletcounter].getColumn() && header.padrow == mTracklets[trackletindex + trackletcounter].getPadRow()) { - buildTrackletMCMData(trackletdata[trackletcounter], mTracklets[trackletindex + trackletcounter].getSlope(), - mTracklets[trackletindex + trackletcounter].getPosition(), mTracklets[trackletindex + trackletcounter].getQ0(), - mTracklets[trackletindex + trackletcounter].getQ1(), mTracklets[trackletindex + trackletcounter].getQ2()); - int headerqpart = ((mTracklets[trackletindex + trackletcounter].getQ2()) << 2) + ((mTracklets[trackletindex + trackletcounter].getQ1()) >> 5); - if (headerqpart == 0xff) { - LOG(warn) << mTracklets[trackletindex + trackletcounter].getQ2() << 2 + ((mTracklets[trackletindex + trackletcounter].getQ1()) >> 5) - << " <--- headerqpart calculation : part 2shit :" << mTracklets[trackletindex + trackletcounter].getQ2() << 2 - << " part 5 shift : " << ((mTracklets[trackletindex + trackletcounter].getQ1()) >> 5) - << " Q0:" << mTracklets[trackletindex + trackletcounter].getQ0() - << " Q1:" << mTracklets[trackletindex + trackletcounter].getQ1() - << " Q2:" << mTracklets[trackletindex + trackletcounter].getQ2(); - LOG(warn) << " header part of pid is 0xff which is a no tracklet definition"; + int trackletoffset = trackletindex + trackletcounter; + buildTrackletMCMData(trackletdata[trackletcounter], mTracklets[trackletoffset].getSlope(), + mTracklets[trackletoffset].getPosition(), mTracklets[trackletoffset].getQ0(), + mTracklets[trackletoffset].getQ1(), mTracklets[trackletoffset].getQ2()); + unsigned int headerqpart = ((mTracklets[trackletoffset].getQ2() & 0x2f) << 2) + ((mTracklets[trackletoffset].getQ1() >> 6) & 0x3); + //all 6 bits of Q1 and 2 upper bits of 7bit Q1 + if (mVerbosity) { + if (mTracklets[trackletoffset].getQ2() > 0x2f) { + LOGP(warning, "Tracklet Q2 out of range for raw data {0:#x}", mTracklets[trackletoffset].getQ2()); + } + if (mTracklets[trackletoffset].getQ1() > 0x7f) { + LOGP(warning, "Tracklet Q1 out of range for raw data {0:#x}", mTracklets[trackletoffset].getQ1()); + } + if (mTracklets[trackletoffset].getQ0() > 0x7f) { + LOGP(warning, "Tracklet Q0 out of range for raw data {0:#x}", mTracklets[trackletoffset].getQ0()); + } } switch (trackletcounter) { case 0: @@ -462,14 +466,14 @@ int Trap2CRU::buildTrackletRawData(const int trackletindex, const int linkid) break; case 1: header.pid1 = headerqpart; - if (header.pid1 == 0xff) { - LOG(warn) << "ZZ we are setting pid1 but pid0 is not set, a second tracklet but no first one?"; + if (header.pid0 == 0xff) { + LOG(warn) << "we are setting pid1 but pid0 is not set, a second tracklet but no first one?"; } break; case 2: header.pid2 = headerqpart; if (header.pid1 == 0xff || header.pid0 == 0xff) { - LOG(warn) << "ZZ we are setting pid2 but pid0/1 is not set, a second tracklet but no first one?" << header.pid0 << " " << header.pid1; + LOG(warn) << "we are setting pid2 but pid0/1 is not set, a second tracklet but no first one?" << header.pid0 << " " << header.pid1; } break; default: @@ -652,7 +656,7 @@ void Trap2CRU::convertTrapData(o2::trd::TriggerRecord const& triggerrecord, cons bool isFirstDigit = true; int trackletcounter = 0; if (mVerbosity) { - LOG(info) << __func__ << " " << __LINE__ << " is tracklet on link : " << linkid << " mcurrentdigit:" << mCurrentTracklet << " endtrackletindex:" << endtrackletindex << " is on link: " << isTrackletOnLink(linkid, mCurrentTracklet) << " and digits current digit:" << mCurrentDigit << " enddigitindex:" << enddigitindex << "is digit on link:" << isDigitOnLink(linkid, mCurrentDigit); + LOG(info) << "tracklet on link : " << linkid << " mcurrentdigit:" << mCurrentTracklet << " endtrackletindex:" << endtrackletindex << " is on link: " << isTrackletOnLink(linkid, mCurrentTracklet) << " and digits current digit:" << mCurrentDigit << " enddigitindex:" << enddigitindex << "is digit on link:" << isDigitOnLink(linkid, mCurrentDigit); } if (isTrackletOnLink(linkid, mCurrentTracklet) || isDigitOnLink(linkid, mCurrentDigit)) { // we have some data somewhere for this link From 3716da358c339189dcfcd9a7d9121f8e91b01bed Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Wed, 21 Jul 2021 23:28:26 +0200 Subject: [PATCH 275/314] DPL: add driverStart callback to ServiceSpec --- Framework/Core/include/Framework/ServiceSpec.h | 5 +++++ Framework/Core/src/ArrowSupport.cxx | 1 + 2 files changed, 6 insertions(+) diff --git a/Framework/Core/include/Framework/ServiceSpec.h b/Framework/Core/include/Framework/ServiceSpec.h index a861fd7f9b105..fc690afca94db 100644 --- a/Framework/Core/include/Framework/ServiceSpec.h +++ b/Framework/Core/include/Framework/ServiceSpec.h @@ -90,6 +90,9 @@ using ServicePostDispatching = std::function; /// Callback invoked when the driver enters the init phase. using ServiceDriverInit = std::function; +/// Callback invoked when the driver enters the init phase. +using ServiceDriverStartup = std::function; + /// A specification for a Service. /// A Service is a utility class which does not perform /// data processing itself, but it can be used by the data processor @@ -142,6 +145,8 @@ struct ServiceSpec { ServiceExitCallback exit = nullptr; /// Callback invoked on driver entering the INIT state ServiceDriverInit driverInit = nullptr; + /// Callback invoked when starting the driver + ServiceDriverStartup driverStartup = nullptr; /// Kind of service being specified. ServiceKind kind = ServiceKind::Serial; diff --git a/Framework/Core/src/ArrowSupport.cxx b/Framework/Core/src/ArrowSupport.cxx index b54e610b4b700..2b972ca2a5d59 100644 --- a/Framework/Core/src/ArrowSupport.cxx +++ b/Framework/Core/src/ArrowSupport.cxx @@ -355,6 +355,7 @@ o2::framework::ServiceSpec ArrowSupport::arrowBackendSpec() once = true; } }, + nullptr, ServiceKind::Global}; } From 91d17dd0986ebb0be8c86ddfa62e834675f4c578 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Wed, 21 Jul 2021 23:23:33 +0200 Subject: [PATCH 276/314] DPL: add driver service for configuration --- Framework/Core/CMakeLists.txt | 1 + Framework/Core/src/CommonDriverServices.cxx | 29 +++++++++++++++++++++ Framework/Core/src/CommonDriverServices.h | 25 ++++++++++++++++++ Framework/Core/src/CommonServices.cxx | 8 ++++++ Framework/Core/src/runDataProcessing.cxx | 5 ++++ 5 files changed, 68 insertions(+) create mode 100644 Framework/Core/src/CommonDriverServices.cxx create mode 100644 Framework/Core/src/CommonDriverServices.h diff --git a/Framework/Core/CMakeLists.txt b/Framework/Core/CMakeLists.txt index 54d8411fbc78b..51eaf4279ec13 100644 --- a/Framework/Core/CMakeLists.txt +++ b/Framework/Core/CMakeLists.txt @@ -25,6 +25,7 @@ o2_add_library(Framework src/CommonDataProcessors.cxx src/CommonServices.cxx src/CommonMessageBackends.cxx + src/CommonDriverServices.cxx src/CompletionPolicy.cxx src/CompletionPolicyHelpers.cxx src/ComputingQuotaEvaluator.cxx diff --git a/Framework/Core/src/CommonDriverServices.cxx b/Framework/Core/src/CommonDriverServices.cxx new file mode 100644 index 0000000000000..aa65348f8fc99 --- /dev/null +++ b/Framework/Core/src/CommonDriverServices.cxx @@ -0,0 +1,29 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "CommonDriverServices.h" +#include "Framework/CommonServices.h" + +// Make sure we can use aggregated initialisers. +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wpedantic" + +namespace o2::framework +{ + +std::vector o2::framework::CommonDriverServices::defaultServices() +{ + return { + CommonServices::configurationSpec()}; +} +} // namespace o2::framework + +#pragma GCC diagnostic pop diff --git a/Framework/Core/src/CommonDriverServices.h b/Framework/Core/src/CommonDriverServices.h new file mode 100644 index 0000000000000..56b00010b1ebc --- /dev/null +++ b/Framework/Core/src/CommonDriverServices.h @@ -0,0 +1,25 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#ifndef O2_FRAMEWORK_COMMONDRIVERSERVICES_H_ +#define O2_FRAMEWORK_COMMONDRIVERSERVICES_H_ + +#include "Framework/ServiceSpec.h" +#include + +namespace o2::framework +{ +struct CommonDriverServices { + static std::vector defaultServices(); +}; +} // namespace o2::framework + +#endif // O2_FRAMEWORK_COMMONDRIVERSERVICES_H_ diff --git a/Framework/Core/src/CommonServices.cxx b/Framework/Core/src/CommonServices.cxx index 135fe5ef8ade1..2811770a1e6cc 100644 --- a/Framework/Core/src/CommonServices.cxx +++ b/Framework/Core/src/CommonServices.cxx @@ -264,6 +264,14 @@ o2::framework::ServiceSpec CommonServices::configurationSpec() ConfigurationFactory::getConfiguration(backend).release()}; }, .configure = noConfiguration(), + .driverStartup = [](ServiceRegistry& registry, boost::program_options::variables_map const& vmap) { + if (vmap.count("configuration") == 0) { + registry.registerService(ServiceHandle{0, nullptr}); + return; + } + auto backend = vmap["configuration"].as(); + registry.registerService(ServiceHandle{TypeIdHelpers::uniqueId(), + ConfigurationFactory::getConfiguration(backend).release()}); }, .kind = ServiceKind::Global}; } diff --git a/Framework/Core/src/runDataProcessing.cxx b/Framework/Core/src/runDataProcessing.cxx index 1942e88437299..29b1d1fb708d1 100644 --- a/Framework/Core/src/runDataProcessing.cxx +++ b/Framework/Core/src/runDataProcessing.cxx @@ -16,6 +16,7 @@ #include "Framework/ConfigParamSpec.h" #include "Framework/ConfigContext.h" #include "Framework/ComputingQuotaEvaluator.h" +#include "CommonDriverServices.h" #include "Framework/DataProcessingDevice.h" #include "Framework/DataProcessorSpec.h" #include "Framework/Plugins.h" @@ -1301,6 +1302,10 @@ int runStateMachine(DataProcessorSpecs const& workflow, std::vector preScheduleCallbacks; std::vector postScheduleCallbacks; std::vector driverInitCallbacks; + std::vector driverServices = CommonDriverServices::defaultServices(); + for (auto& service : driverServices) { + service.driverStartup(serviceRegistry, varmap); + } serviceRegistry.registerService(ServiceRegistryHelpers::handleForService(devicesManager)); From a7b25bc5ed00c0cda9866ed185c216a574987fe6 Mon Sep 17 00:00:00 2001 From: jgrosseo Date: Mon, 26 Jul 2021 15:45:57 +0200 Subject: [PATCH 277/314] Use slice and array (#6629) --- .../Core/include/Framework/AnalysisDataModel.h | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/Framework/Core/include/Framework/AnalysisDataModel.h b/Framework/Core/include/Framework/AnalysisDataModel.h index 5c44932f61e55..012f1a7601fdd 100644 --- a/Framework/Core/include/Framework/AnalysisDataModel.h +++ b/Framework/Core/include/Framework/AnalysisDataModel.h @@ -510,14 +510,22 @@ namespace aod using FullFwdTracks = soa::Join; using FullFwdTrack = FullFwdTracks::iterator; +// Some tracks cannot be uniquely identified with a collision. Some tracks cannot be assigned to a collision at all. +// Those tracks have -1 as collision index and have an entry in the following table. Either of the two following then applies: +// If a track has several matching collisions these are listed in the Collision array. In this case the BC slice is not filled +// If on the contrary, a track has no matching collision and can only be assigned through its estimated time, it is assigned all +// BCs which are compatible with this time. As the BCs are time ordered, a slice is used to store the relation. In this case +// no entry is found in the collision member. namespace ambiguoustracks { -DECLARE_SOA_INDEX_COLUMN(Collision, collision); //! Collision index -DECLARE_SOA_INDEX_COLUMN(Track, track); //! Track index +DECLARE_SOA_INDEX_COLUMN(Track, track); //! Track index +DECLARE_SOA_SLICE_INDEX_COLUMN(BC, bc); //! BC index (slice for 1 to N entries) +// TODO to be replaced by a variable length array +DECLARE_SOA_ARRAY_INDEX_COLUMN(Collision, collision, 2); //! Collision index } // namespace ambiguoustracks DECLARE_SOA_TABLE(AmbiguousTracks, "AOD", "AMBIGUOUSTRACK", //! Table for tracks which are not uniquely associated with a collision - ambiguoustracks::CollisionId, ambiguoustracks::TrackId); + ambiguoustracks::TrackId, ambiguoustracks::BCIdSlice, ambiguoustracks::CollisionIds); using AmbiguousTrack = AmbiguousTracks::iterator; From e4e31d67a9389b74a00583956891f60e510704ed Mon Sep 17 00:00:00 2001 From: Dmitri Peresunko Date: Sat, 24 Jul 2021 14:50:06 +0300 Subject: [PATCH 278/314] Corrupted raw data handling improved; Impact on PHOS implemented; Alignment from surway2019 updated --- Detectors/PHOS/base/files/alignment.root | Bin 2009 -> 2261 bytes .../PHOS/base/include/PHOSBase/Geometry.h | 4 ++ Detectors/PHOS/base/src/Geometry.cxx | 39 ++++++++++++++++++ .../PHOS/reconstruction/src/AltroDecoder.cxx | 8 +++- .../include/PHOSSimulation/GeometryParams.h | 2 +- 5 files changed, 51 insertions(+), 2 deletions(-) diff --git a/Detectors/PHOS/base/files/alignment.root b/Detectors/PHOS/base/files/alignment.root index d9a2195f5dacfe224055472830e46cf0df970555..d4248de4167ce2177625a41714a7dfe65422ee2b 100644 GIT binary patch literal 2261 zcmb7_3pCVO9LMjN7t2w~CTvVnIc*1FsN{{Mfc$8k99J?Fm8y}x^Z_j7;Wd&32SNB{;_ z0sz~$Va3OQ$}28#6Mg=9*Qa@KlhbMX zwLSH)h__~1hdu(gaJG;g~#QGa@a@}5$VfN_f!MT z1R%nlWY(uNY?}E=y1Sy#JY(;TkKbD#u@`v_Wf*)Nn;Ef|~f5h_Y;kZSUa=L{TsmYS0_}zD`huYglJvfd<4ZZ$n zf1#RW<6hb&20P~V$?_^$xm)B9HLF`L)7E)hcc%Nak!^7g7nP)`TvHx9tNksj(pVBy zAh?nDR{saj+6$u_(vqTSScz+Z@`Nm$`?Y=7_IQFqbKd zDn*sw(@&T@*G}gocv{7FTjGQu1yoPsF$1u*KPOIgLp2QSd z(z;c;I_c;9Z6=y0y7Zfq3}5cNy8T%~U|VX&^X|A)%0>yZBYvyvzEN?&9Fp;a8-=={ zu-L|{qappnpj4+tuTrYeD^EKcyZm^sd;wEzkbSRS@8Ihr@hdmjekg0NCR}KbGuyIm zfOglv%+@?V)2gJ6kZ7J3WTtwn`)2^F-*6>fu|}m*Rbmp;5EK}H87bH_9KH6$<%5JnL?vWg~9BE5?S0LQngL74m|oB>*?k*S%};& z(Qq6kBzn~!QnxW4j+vhU^=iArG1_w}>D}*Ou9?3)D{mXzr@G@O5#NVJO8q0lx{DFJ z`Yn!B8XVlvE`o2HjhE-=J_4c?17XBfIIS21L1dtZnE0JTL7<=r`_LAdGC2}tH4F(+ zItdc%DUjH+pBSCobsH~>-MTa1QQsXNeXxca?|l>MHJ;}>hgJu(7t-eXbts@l>6Oi^ z0?Uy)m(G~&0<+4QnK?g|!o9{OLB}ElQ1HN_7deGG2$CV0-mDhbqsB5PNx=AwV0?|Z z>y05X!=7*K>Bl~pX(2)35s#yA)OnM`LB0hH4(aM7aBQZ66OrZN%X*Y9i(1Pl>vYSM z5mJ1iKI$;kb%1g-M$rO$ohMc}g)pIxLxz{m$$x=5QvNySWf%cRl^8u9urq+W4$Q(; za&JNrhkR3g!-f$!&HW(l1swKW&3a0(#&{^7`-r>!7#!JGILLoCdAuN@f{cC<$~6A7 sZ>LW~SKm&bM$COXeHyp$<)5`e48I=Ze{RI88@p~Y1zBXG=fMX22fCB{C;$Ke literal 2009 zcmXTQ&o5zM_+-Suz>vbgzM6U?s9CSVd zD@Y$$F9X8|pf(2}2J2^FU|UbnQD?z+&jah%2iyGsq@O#)JvHCMH?gEBvx40>KczG$ z)dXbnECxm(DFY_OfXYF^z`)GLz`&87lb@8B6K}}iP&~P(Zq7~Z1LfgUXTRrOYyZH+ zyzYHfjQxu~_O(j28T$)YmabplI>r7;%O|sQcawqiT*LYYy!#uRpT>)?PTT*YPw@R2 z{~Pv=CWq%r))d;m|Gz5csN}Q#*=}|we705gAWs4TIt>)U@C@TxpeQ!a7!&K6l#Q9$ zZ4CMcYP@>m+S|_AKRCHkY`r;;{X1zEixQL5_KEc^E_3%CvcI~qt98Swk3hO9s&MlT z`w*#2orrt=``<}(N@lIe-Jg7~NAiBw3!rCyE|$NqVsB&oq51rj7<5m-_}DzdRE5Jc zMnrnX{=|Bvg=@GA57fSrnC^L}!v5^^&sCJyH>$MS*t{(imVE4M$`GjnOcZ5^27 z(P?a+VRpyi8DIh;Dw!QfN#DT`tx|NL#%$$x)lVDje;4g2G;fkVp8qhPp_Wal> zy+5LI#*$~zkI_8=r!2$Ce4Q z_}5JcI~sbyN!m4FMdt4`b8ow8Cad*2#Qref`=arW)3(cfZ>88D_PD(}?LMm=S@Ot{ z{oc$pE93KfjQx`qe-tfV(U{b^=t}ODd+!71)XmB;zjCtoM7QJnXq{UJ9NT8MSbg17 zJXyIQgL=qRaVjN!)wbX?btnOd+RTrmIoWI_^~c~?6;+Y{Swo=1&+0=7??La z*sw}&sjk~E<*TpDWJRU<|G)VV^5p46{_Iru#h2g3FK)I~TFdZxUfmYO3;YRz_f0RT zpSn;y@6P6_3pMN4EWYx+W-dd!e;R zmC=~W{)d@OKXLACrtg{IXLj+4KYe|G@%gU4>-jt1Jm);e|LFW0UF+M)r?hX$Z=RiH z;K25|hfzLL-my%0#xZ@-sf=%?pNf1q*;y|r_l3okBa%BCy@btYRTK*CS}E_IC9-2O zXYs!Y$<6cEZrZ$OllauBl57^cZ?_rD-jI`!G0Q4CFY9D6i>1Mab|3MZ`KDcm-&#Bp z<1C-zE_ULlf#qhC{i*k_R-{Y3aLi(UC~~blinqHe!65wf4Bz$Q%h?QOyBVL97tPmC zKF@GHQ@oNTAjkDo!(*8ZK4%}N9;jS@Uh?%bmoN2kK4E`Svof0f+ssb0vK$YJ()%Pk z(X`?)&nC9@>5xy*;-AOCKe%o^5HA#eI0cvpKY)w#1K^|yu1bJa061x4t4e?}po#~h z)MR)7(u1`Mz@{8eA&X5po?;A}ay$hEP`MS@2V4mMf-7iXR>bOGU{+& currentCellContainer, std::vector& currentTRUContainer) { - mOutputHWErrors.clear(); mOutputFitChi.clear(); @@ -140,6 +139,13 @@ void AltroDecoder::readChannels(const std::vector& buffer, CaloRawFitt while (currentsample < header.mPayloadSize) { int bunchlength = mBunchwords[currentsample] - 2, // remove words for bunchlength and starttime starttime = mBunchwords[currentsample + 1]; + if (bunchlength < 0) { // corrupted data, + short fec = header.mHardwareAddress >> 7 & 0xf; //try to extract FEE number from header + short branch = header.mHardwareAddress >> 11 & 0x1; + fec += kGeneralTRUErr * branch; + mOutputHWErrors.emplace_back(mddl, fec, 6); //6: channel payload error + break; + } //extract sample properties CaloRawFitter::FitStatus fitResult = rawFitter->evaluate(gsl::span(&mBunchwords[currentsample + 2], std::min((unsigned long)bunchlength, mBunchwords.size() - currentsample - 2))); currentsample += bunchlength + 2; diff --git a/Detectors/PHOS/simulation/include/PHOSSimulation/GeometryParams.h b/Detectors/PHOS/simulation/include/PHOSSimulation/GeometryParams.h index a0a1928c2ea18..c7e819038459c 100644 --- a/Detectors/PHOS/simulation/include/PHOSSimulation/GeometryParams.h +++ b/Detectors/PHOS/simulation/include/PHOSSimulation/GeometryParams.h @@ -48,7 +48,7 @@ class GeometryParams final : public TNamed int getNZ() const { return mNz; } int getNCristalsInModule() const { return mNPhi * mNz; } int getNModules() const { return mNModules; } - float getPHOSAngle(int index) const { return mPHOSAngle[index - 1]; } + float getPHOSAngle(int index) const { return mPHOSAngle[index]; } float* getPHOSParams() { return mPHOSParams; } // Half-sizes of PHOS trapecoid float* getPHOSATBParams() { return mPHOSATBParams; } // Half-sizes of PHOS trapecoid float getOuterBoxSize(int index) const { return 2. * mPHOSParams[index]; } From ed127f8411844e7fb494ede0bb154fceba3e54a8 Mon Sep 17 00:00:00 2001 From: wiechula Date: Tue, 20 Jul 2021 16:04:58 +0200 Subject: [PATCH 279/314] TPC: Update laser track drift velocity calibration * add device to pre-filter laser track candiates (tpc-laser-track-filter) * split device for - simple local processing (tpc-calib-laser-tracks) - distributed processing (tpc-laser-tracks-calibrator) * new struct for calibration data storage * drift velocity calibration separately for A-/C-Side * code cleanup --- .../include/TPCCalibration/CalibLaserTracks.h | 131 +++++++++-- .../TPCCalibration/LaserTracksCalibrator.h | 12 +- .../TPC/calibration/src/CalibLaserTracks.cxx | 212 +++++++++++++----- .../calibration/src/LaserTracksCalibrator.cxx | 14 +- .../calibration/src/TPCCalibrationLinkDef.h | 2 + Detectors/TPC/workflow/CMakeLists.txt | 11 + Detectors/TPC/workflow/README.md | 71 ++++++ .../TPCWorkflow/CalibLaserTracksSpec.h | 25 ++- .../TPCWorkflow/LaserTrackFilterSpec.h | 29 +++ .../TPCWorkflow/LaserTracksCalibratorSpec.h | 67 +++--- .../TPC/workflow/src/LaserTrackFilterSpec.cxx | 105 +++++++++ .../workflow/src/tpc-calib-laser-tracks.cxx | 26 ++- .../workflow/src/tpc-laser-track-filter.cxx | 75 +++++++ .../src/tpc-laser-tracks-calibrator.cxx | 42 ++++ 14 files changed, 692 insertions(+), 130 deletions(-) create mode 100644 Detectors/TPC/workflow/include/TPCWorkflow/LaserTrackFilterSpec.h create mode 100644 Detectors/TPC/workflow/src/LaserTrackFilterSpec.cxx create mode 100644 Detectors/TPC/workflow/src/tpc-laser-track-filter.cxx create mode 100644 Detectors/TPC/workflow/src/tpc-laser-tracks-calibrator.cxx diff --git a/Detectors/TPC/calibration/include/TPCCalibration/CalibLaserTracks.h b/Detectors/TPC/calibration/include/TPCCalibration/CalibLaserTracks.h index 4a22598e53ad6..e689efb41890b 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/CalibLaserTracks.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/CalibLaserTracks.h @@ -11,6 +11,12 @@ /// \file CalibLaserTracks.h /// \brief calibration using laser tracks +/// +/// This class associated tpc tracks with ideal laser track positions from the data base +/// The difference in z-Position, separately on the A- and C-Side, is then used to +/// calculate a drift velocity correction factor as well as the trigger offset. +/// A vector of mathced laser track IDs can be used to monitor the laser system alignment. +/// /// \author Jens Wiechula, Jens.Wiechula@ikf.uni-frankfurt.de #ifndef TPC_CalibLaserTracks_H_ @@ -32,7 +38,35 @@ using o2::track::TrackParCov; struct TimePair { float x1{0.f}; float x2{0.f}; - float time{0.f}; + uint64_t time{0}; +}; + +struct LtrCalibData { + size_t processedTFs{}; ///< number of processed TFs with laser track candidates + uint64_t firstTime{}; ///< first time stamp of processed TFs + uint64_t lastTime{}; ///< last time stamp of processed TFs + float dvCorrectionA{}; ///< drift velocity correction factor A-Side + float dvCorrectionC{}; ///< drift velocity correction factor C-Side + float dvOffsetA{}; ///< drift velocity trigger offset A-Side + float dvOffsetC{}; ///< drift velocity trigger offset C-Side + uint16_t nTracksA{}; ///< number of tracks used for A-Side fit + uint16_t nTracksC{}; ///< number of tracks used for C-Side fit + std::vector matchedLtrIDs; ///< list of matched laser track IDs + + void reset() + { + processedTFs = 0; + firstTime = 0; + lastTime = 0; + dvCorrectionA = 0; + dvCorrectionC = 0; + dvOffsetA = 0; + dvOffsetC = 0; + nTracksA = 0; + nTracksC = 0; + + matchedLtrIDs.clear(); + } }; class CalibLaserTracks @@ -48,25 +82,40 @@ class CalibLaserTracks mBz{other.mBz}, mDriftV{other.mDriftV}, mZbinWidth{other.mZbinWidth}, - mTFtime{other.mTFtime}, - mDVall{other.mDVall}, - mZmatchPairsTF{other.mZmatchPairsTF}, - mZmatchPairs{other.mZmatchPairs}, - mDVperTF{other.mDVperTF}, - mWriteDebugTree{other.mWriteDebugTree} + mTFstart{other.mTFstart}, + mTFend{other.mTFend}, + mCalibDataTF{other.mCalibDataTF}, + mCalibData{other.mCalibData}, + mZmatchPairsTFA{other.mZmatchPairsTFA}, + mZmatchPairsTFC{other.mZmatchPairsTFC}, + mZmatchPairsA{other.mZmatchPairsA}, + mZmatchPairsC{other.mZmatchPairsC}, + mWriteDebugTree{other.mWriteDebugTree}, + mFinalized{other.mFinalized} { } ~CalibLaserTracks() = default; + /// process all tracks of one TF void fill(const gsl::span tracks); + + /// process all tracks of one TF void fill(std::vector const& tracks); + + /// process single track void processTrack(const TrackTPC& track); + /// try to associate track with ideal laser track + /// \return laser track ID; -1 in case of no match int findLaserTrackID(TrackPar track, int side = -1); - static float getPhiNearbySectorEdge(const TrackPar& param); + + /// calculate phi of nearest laser rod static float getPhiNearbyLaserRod(const TrackPar& param, int side); + /// check if param is closer to a laser rod than 1/4 of a sector width + static bool hasNearbyLaserRod(const TrackPar& param, int side); + /// trigger position for track z position correction void setTriggerPos(int triggerPos) { mTriggerPos = triggerPos; } @@ -83,15 +132,34 @@ class CalibLaserTracks void print() const; /// check amount of data (to be improved) - bool hasEnoughData() const { return mZmatchPairs.size() > 100; } + /// at least numTFs with laser track candidate and 50 tracks per side per TF + bool hasEnoughData(size_t numTFs = 1) const { return mCalibData.processedTFs >= numTFs && mZmatchPairsA.size() > 50 * numTFs && mZmatchPairsC.size() > 50 * numTFs; } + + /// number of associated laser tracks on both sides for all processed TFs + size_t getMatchedPairs() const { return getMatchedPairsA() + getMatchedPairsC(); } + + /// number of associated laser tracks for all processed TFs on the A-Side + size_t getMatchedPairsA() const { return mZmatchPairsA.size(); } - /// number of associated laser tracks - size_t getMatchedPairs() const { return mZmatchPairs.size(); } + /// number of associated laser tracks for all processed TFs on the C-Side + size_t getMatchedPairsC() const { return mZmatchPairsC.size(); } + + /// number of associated laser tracks presently processed TFs on the A-Side + size_t getMatchedPairsTFA() const { return mZmatchPairsA.size(); } + + /// number of associated laser tracks presently processed TFs on the C-Side + size_t getMatchedPairsTFC() const { return mZmatchPairsC.size(); } /// time frame time of presently processed time frame /// should be called before calling processTrack(s) - void setTFtime(float tfTime) { mTFtime = tfTime; } - float getTFtime() const { return mTFtime; } + void setTFtimes(uint64_t tfStart, uint64_t tfEnd = 0) + { + mTFstart = tfStart; + mTFend = tfEnd; + } + + uint64_t getTFstart() const { return mTFstart; } + uint64_t getTFend() const { return mTFend; } void setWriteDebugTree(bool write) { mWriteDebugTree = write; } bool getWriteDebugTree() const { return mWriteDebugTree; } @@ -102,26 +170,41 @@ class CalibLaserTracks /// sort TimePoint vectors void sort(std::vector& trackMatches); + /// drift velocity fit information for presently processed time frame + const LtrCalibData& getCalibDataTF() { return mCalibDataTF; } + /// drift velocity fit information for full data set - const TimePair& getDVall() { return mDVall; } + const LtrCalibData& getCalibData() { return mCalibData; } + + /// name of the debug output tree + void setDebugOutputName(std::string_view name) { mDebugOutputName = name; } private: - int mTriggerPos{0}; ///< trigger position, if < 0 it treats it as the CE position - float mBz{0.5}; ///< Bz field in kGaus - float mDriftV{0}; ///< drift velocity used during reconstruction - float mZbinWidth{0}; ///< width of a bin in us - float mTFtime{0}; ///< time of present TF - TimePair mDVall{}; ///< fit result over all accumulated data - std::vector mZmatchPairsTF; ///< ideal vs. mesured z poitions for associated laser tracks in present time frame - std::vector mZmatchPairs; ///< ideal vs. mesured z poitions for associated laser tracks assumulated over all time frames - std::vector mDVperTF; ///< drift velocity and time offset per TF - bool mWriteDebugTree{false}; ///< create debug output tree + int mTriggerPos{0}; ///< trigger position, if < 0 it treats it as the CE position + float mBz{0.5}; ///< Bz field in Tesla + float mDriftV{0}; ///< drift velocity used during reconstruction + float mZbinWidth{0}; ///< width of a bin in us + uint64_t mTFstart{0}; ///< start time of processed time frames + uint64_t mTFend{0}; ///< end time of processed time frames + LtrCalibData mCalibDataTF{}; ///< calibration data for single TF (debugging) + LtrCalibData mCalibData{}; ///< final calibration data + std::vector mZmatchPairsTFA; ///< ideal vs. mesured z positions in present time frame A-Side (debugging) + std::vector mZmatchPairsTFC; ///< ideal vs. mesured z positions in present time frame C-Side (debugging) + std::vector mZmatchPairsA; ///< ideal vs. mesured z positions assumulated over all time frames A-Side + std::vector mZmatchPairsC; ///< ideal vs. mesured z positions assumulated over all time frames C-Side + bool mWriteDebugTree{false}; ///< create debug output tree + bool mFinalized{false}; ///< if the finalize method was already called + std::string mDebugOutputName{"CalibLaserTracks_debug.root"}; ///< name of the debug output tree + LaserTrackContainer mLaserTracks; //!< laser track data base std::unique_ptr mDebugStream; //!< debug output streamer /// update reconstruction parameters void updateParameters(); + /// perform fits on the matched z-position pairs to extract the drift velocity correction factor and trigger offset + void fillCalibData(LtrCalibData& calibData, const std::vector& pairsA, const std::vector& pairsC); + ClassDefNV(CalibLaserTracks, 1); }; diff --git a/Detectors/TPC/calibration/include/TPCCalibration/LaserTracksCalibrator.h b/Detectors/TPC/calibration/include/TPCCalibration/LaserTracksCalibrator.h index fe777704a6151..a3a713bde672f 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/LaserTracksCalibrator.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/LaserTracksCalibrator.h @@ -34,16 +34,20 @@ class LaserTracksCalibrator : public o2::calibration::TimeSlotCalibrationgetMatchedPairs() >= mMinEntries; } + bool hasEnoughData(const Slot& slot) const final { return slot.getContainer()->hasEnoughData(mMinEntries); } void initOutput() final; void finalizeSlot(Slot& slot) final; Slot& emplaceNewSlot(bool front, TFType tstart, TFType tend) final; - const auto& getDVperSlot() { return mDVperSlot; } + const auto& getCalibPerSlot() { return mCalibPerSlot; } + + void setWriteDebug(bool debug = true) { mWriteDebug = debug; } + bool getWriteDebug() const { return mWriteDebug; } private: - size_t mMinEntries = 100; - std::vector mDVperSlot; ///< drift velocity per slot + size_t mMinEntries = 100; ///< laser tracks of these amount of time frames + std::vector mCalibPerSlot; ///< drift velocity per slot + bool mWriteDebug = false; ///< if to save debug trees ClassDefOverride(LaserTracksCalibrator, 1); }; diff --git a/Detectors/TPC/calibration/src/CalibLaserTracks.cxx b/Detectors/TPC/calibration/src/CalibLaserTracks.cxx index b69fcbf0ac5a7..8f5ef3665a626 100644 --- a/Detectors/TPC/calibration/src/CalibLaserTracks.cxx +++ b/Detectors/TPC/calibration/src/CalibLaserTracks.cxx @@ -28,10 +28,39 @@ void CalibLaserTracks::fill(std::vector const& tracks) //______________________________________________________________________________ void CalibLaserTracks::fill(const gsl::span tracks) { + // ===| clean up TF data |=== + mZmatchPairsTFA.clear(); + mZmatchPairsTFC.clear(); + mCalibDataTF.reset(); + + if (!tracks.size()) { + return; + } + + // ===| associate tracks with ideal laser track positions |=== for (const auto& track : tracks) { processTrack(track); } + // ===| set TF start and end times |=== + if (mCalibData.firstTime == 0 && mCalibData.lastTime == 0) { + mCalibData.firstTime = mTFstart; + } + + auto tfEnd = mTFend; + if (tfEnd == 0) { + tfEnd = mTFstart; + } + mCalibData.lastTime = tfEnd; + + mCalibDataTF.firstTime = mTFstart; + mCalibDataTF.lastTime = tfEnd; + + // ===| TF counters |=== + ++mCalibData.processedTFs; + ++mCalibDataTF.processedTFs; + + // ===| finalize TF processing |=== endTF(); } @@ -42,6 +71,7 @@ void CalibLaserTracks::processTrack(const TrackTPC& track) return; } + // use outer parameters which are closest to the laser mirrors auto parOutAtLtr = track.getOuterParam(); // track should have been alreay propagated close to the laser mirrors @@ -49,7 +79,7 @@ void CalibLaserTracks::processTrack(const TrackTPC& track) return; } - // recalculate z position based on trigger or CE position + // recalculate z position based on trigger or CE position if needed float zTrack = parOutAtLtr.getZ(); // TODO: calculation has to be improved @@ -69,24 +99,39 @@ void CalibLaserTracks::processTrack(const TrackTPC& track) // try association with ideal laser track and rotate parameters const int side = track.hasCSideClusters(); const int laserTrackID = findLaserTrackID(parOutAtLtr, side); + if (laserTrackID < 0 || laserTrackID >= LaserTrack::NumberOfTracks) { return; } - LaserTrack ltr = mLaserTracks.getTrack(laserTrackID); + auto ltr = mLaserTracks.getTrack(laserTrackID); parOutAtLtr.rotateParam(ltr.getAlpha()); parOutAtLtr.propagateParamTo(ltr.getX(), mBz); - mZmatchPairsTF.emplace_back(TimePair{ltr.getZ(), parOutAtLtr.getZ(), mTFtime}); + if (ltr.getSide() == 0) { + mZmatchPairsA.emplace_back(TimePair{ltr.getZ(), parOutAtLtr.getZ(), mTFstart}); + mZmatchPairsTFA.emplace_back(TimePair{ltr.getZ(), parOutAtLtr.getZ(), mTFstart}); + } else { + mZmatchPairsC.emplace_back(TimePair{ltr.getZ(), parOutAtLtr.getZ(), mTFstart}); + mZmatchPairsTFC.emplace_back(TimePair{ltr.getZ(), parOutAtLtr.getZ(), mTFstart}); + } + + mCalibData.matchedLtrIDs.emplace_back(laserTrackID); + mCalibDataTF.matchedLtrIDs.emplace_back(laserTrackID); + // ===| debug output |======================================================== if (mWriteDebugTree) { if (!mDebugStream) { - mDebugStream = std::make_unique("CalibLaserTracks_debug.root", "recreate"); + mDebugStream = std::make_unique(mDebugOutputName.data(), "recreate"); } + auto writeTrack = track; *mDebugStream << "ltrMatch" + << "tfStart=" << mTFstart + << "tfEnd=" << mTFend << "ltr=" << ltr // matched ideal laser track << "trOutLtr=" << parOutAtLtr // track rotated and propagated to ideal track position + << "TPCTracks=" << writeTrack // original TPC track << "\n"; } } @@ -94,7 +139,7 @@ void CalibLaserTracks::processTrack(const TrackTPC& track) //______________________________________________________________________________ int CalibLaserTracks::findLaserTrackID(TrackPar outerParam, int side) { - //const auto phisec = getPhiNearbySectorEdge(outerParam); + // ===| rotate outer param to closes laser rod |=== const auto phisec = getPhiNearbyLaserRod(outerParam, side); if (!outerParam.rotateParam(phisec)) { return -1; @@ -103,21 +148,18 @@ int CalibLaserTracks::findLaserTrackID(TrackPar outerParam, int side) if (side < 0) { side = outerParam.getZ() < 0; } + + // ===| laser rod |=== const int rod = std::nearbyint((phisec - LaserTrack::FirstRodPhi[side]) / LaserTrack::RodDistancePhi); - //printf("\n\nside: %i\n", side); - const auto xyzGlo = outerParam.getXYZGlo(); - auto phi = std::atan2(xyzGlo.Y(), xyzGlo.X()); - o2::math_utils::bringTo02Pi(phi); - //printf("rod: %d (phisec: %.2f, phi: %.2f\n", rod, phisec, phi); - int bundle = -1; - int beam = -1; + + // ===| laser bundle |=== float mindist = 1000; const auto outerParamZ = std::abs(outerParam.getZ()); - //printf("outerParamZ: %.2f\n", outerParamZ); + + int bundle = -1; for (size_t i = 0; i < LaserTrack::CoarseBundleZPos.size(); ++i) { const float dist = std::abs(outerParamZ - LaserTrack::CoarseBundleZPos[i]); - //printf("laserZ: %.2f (%.2f, %.2f)\n", LaserTrack::CoarseBundleZPos[i], dist, mindist); if (dist < mindist) { mindist = dist; bundle = i; @@ -128,10 +170,11 @@ int CalibLaserTracks::findLaserTrackID(TrackPar outerParam, int side) return -1; } - //printf("bundle: %i\n", bundle); - + // ===| laser beam |=== const auto outerParamsInBundle = mLaserTracks.getTracksInBundle(side, rod, bundle); mindist = 1000; + + int beam = -1; for (int i = 0; i < outerParamsInBundle.size(); ++i) { const auto louterParam = outerParamsInBundle[i]; if (i == 0) { @@ -144,43 +187,40 @@ int CalibLaserTracks::findLaserTrackID(TrackPar outerParam, int side) } } - //printf("beam: %i (%.4f)\n", beam, mindist); if (mindist > 0.01) { return -1; } + // ===| track ID from side, rod, bundle and beam |=== const int trackID = LaserTrack::NumberOfTracks / 2 * side + LaserTrack::BundlesPerRod * LaserTrack::TracksPerBundle * rod + LaserTrack::TracksPerBundle * bundle + beam; - //printf("trackID: %d\n", trackID); - return trackID; } //______________________________________________________________________________ -float CalibLaserTracks::getPhiNearbySectorEdge(const TrackPar& param) +float CalibLaserTracks::getPhiNearbyLaserRod(const TrackPar& param, int side) { - // rotate to nearest laser bundle const auto xyzGlo = param.getXYZGlo(); - auto phi = std::atan2(xyzGlo.Y(), xyzGlo.X()); + auto phi = std::atan2(xyzGlo.Y(), xyzGlo.X()) - LaserTrack::FirstRodPhi[side % 2]; o2::math_utils::bringTo02PiGen(phi); - const auto phisec = std::nearbyint(phi / LaserTrack::SectorSpanRad) * LaserTrack::SectorSpanRad; - //printf("%.2f : %.2f\n", phi, phisec); - return (phisec); + phi = std::nearbyint(phi / LaserTrack::RodDistancePhi) * LaserTrack::RodDistancePhi + LaserTrack::FirstRodPhi[side % 2]; + o2::math_utils::bringTo02PiGen(phi); + return phi; } //______________________________________________________________________________ -float CalibLaserTracks::getPhiNearbyLaserRod(const TrackPar& param, int side) +bool CalibLaserTracks::hasNearbyLaserRod(const TrackPar& param, int side) { const auto xyzGlo = param.getXYZGlo(); - auto phi = std::atan2(xyzGlo.Y(), xyzGlo.X()) - LaserTrack::FirstRodPhi[side % 2]; + const auto phiTrack = std::atan2(xyzGlo.Y(), xyzGlo.X()); + auto phi = phiTrack - LaserTrack::FirstRodPhi[side % 2]; o2::math_utils::bringTo02PiGen(phi); phi = std::nearbyint(phi / LaserTrack::RodDistancePhi) * LaserTrack::RodDistancePhi + LaserTrack::FirstRodPhi[side % 2]; o2::math_utils::bringTo02PiGen(phi); - //printf("%.2f : %.2f\n", phi, phisec); - return phi; + return std::abs(phi - phiTrack) < LaserTrack::SectorSpanRad / 4.; } //______________________________________________________________________________ @@ -198,51 +238,83 @@ void CalibLaserTracks::merge(const CalibLaserTracks* other) if (!other) { return; } - mZmatchPairs.insert(mZmatchPairs.end(), mZmatchPairsTF.begin(), mZmatchPairsTF.end()); - mDVperTF.insert(mDVperTF.end(), other->mDVperTF.begin(), other->mDVperTF.end()); + mCalibData.processedTFs += other->mCalibData.processedTFs; + + const auto sizeAthis = mZmatchPairsA.size(); + const auto sizeCthis = mZmatchPairsC.size(); + const auto sizeAother = other->mZmatchPairsA.size(); + const auto sizeCother = other->mZmatchPairsC.size(); - sort(mZmatchPairs); - sort(mDVperTF); + mZmatchPairsA.insert(mZmatchPairsA.end(), other->mZmatchPairsA.begin(), other->mZmatchPairsA.end()); + mZmatchPairsC.insert(mZmatchPairsC.end(), other->mZmatchPairsC.begin(), other->mZmatchPairsC.end()); + + auto& ltrIDs = mCalibData.matchedLtrIDs; + auto& ltrIDsOther = other->mCalibData.matchedLtrIDs; + ltrIDs.insert(ltrIDs.end(), ltrIDsOther.begin(), ltrIDsOther.end()); + + mCalibData.firstTime = std::min(mCalibData.firstTime, other->mCalibData.firstTime); + mCalibData.lastTime = std::max(mCalibData.lastTime, other->mCalibData.lastTime); + + sort(mZmatchPairsA); + sort(mZmatchPairsC); + + LOGP(info, "Merged CalibLaserTracks with mached pairs {} / {} + {} / {} = {} / {} (this +_other A- / C-Side)", sizeAthis, sizeCthis, sizeAother, sizeCother, mZmatchPairsA.size(), mZmatchPairsC.size()); } //______________________________________________________________________________ void CalibLaserTracks::endTF() { - if (!mZmatchPairsTF.size()) { - return; - } - - mZmatchPairs.insert(mZmatchPairs.end(), mZmatchPairsTF.begin(), mZmatchPairsTF.end()); - - auto fitResult = fit(mZmatchPairsTF); - mDVperTF.emplace_back(fitResult); + LOGP(info, "Ending time frame {} - {} with {} / {} matched laser tracks (total: {} / {}) on the A / C-Side", mTFstart, mTFend, mZmatchPairsTFA.size(), mZmatchPairsTFC.size(), mZmatchPairsA.size(), mZmatchPairsC.size()); + fillCalibData(mCalibDataTF, mZmatchPairsTFA, mZmatchPairsTFC); if (mDebugStream) { (*mDebugStream) << "tfData" - << "tfTime=" << mTFtime - << "zPairs=" << mZmatchPairsTF - << "dvFit=" << fitResult + << "tfStart=" << mTFstart + << "tfEnf=" << mTFend + << "zPairsA=" << mZmatchPairsTFA + << "zPairsC=" << mZmatchPairsTFC + << "calibData=" << mCalibDataTF << "\n"; } - - mZmatchPairsTF.clear(); } //______________________________________________________________________________ void CalibLaserTracks::finalize() { - mDVall = fit(mZmatchPairs); + mFinalized = true; + sort(mZmatchPairsA); + sort(mZmatchPairsC); + + fillCalibData(mCalibData, mZmatchPairsA, mZmatchPairsC); + + //auto& ltrIDs = mCalibData.matchedLtrIDs; + //std::sort(ltrIDs.begin(), ltrIDs.end()); + //ltrIDs.erase(std::unique(ltrIDs.begin(), ltrIDs.end()), ltrIDs.end()); if (mDebugStream) { (*mDebugStream) << "finalData" - << "zPairs=" << mZmatchPairs - << "fitPairs=" << mDVperTF - << "fullFit=" << mDVall + << "zPairsA=" << mZmatchPairsA + << "zPairsC=" << mZmatchPairsC + << "calibData=" << mCalibData << "\n"; + + mDebugStream->Close(); } +} + +//______________________________________________________________________________ +void CalibLaserTracks::fillCalibData(LtrCalibData& calibData, const std::vector& pairsA, const std::vector& pairsC) +{ + auto dvA = fit(pairsA); + auto dvC = fit(pairsC); + + calibData.dvOffsetA = dvA.x1; + calibData.dvCorrectionA = dvA.x2; + calibData.nTracksA = uint16_t(pairsA.size()); - sort(mZmatchPairs); - sort(mDVperTF); + calibData.dvOffsetC = dvC.x1; + calibData.dvCorrectionC = dvC.x2; + calibData.nTracksC = uint16_t(pairsC.size()); } //______________________________________________________________________________ @@ -256,7 +328,7 @@ TimePair CalibLaserTracks::fit(const std::vector& trackMatches) const fit.StoreData(false); fit.ClearPoints(); - float meanTime = 0; + uint64_t meanTime = 0; for (const auto& point : trackMatches) { double x = point.x1; double y = point.x2; @@ -265,7 +337,7 @@ TimePair CalibLaserTracks::fit(const std::vector& trackMatches) const meanTime += point.time; } - meanTime /= float(trackMatches.size()); + meanTime /= uint64_t(trackMatches.size()); const float robustFraction = 0.9; const int minPoints = 6; @@ -288,10 +360,40 @@ TimePair CalibLaserTracks::fit(const std::vector& trackMatches) const //______________________________________________________________________________ void CalibLaserTracks::sort(std::vector& trackMatches) { - std::sort(mZmatchPairs.begin(), mZmatchPairs.end(), [](const auto& first, const auto& second) { return first.time < second.time; }); + std::sort(trackMatches.begin(), trackMatches.end(), [](const auto& first, const auto& second) { return first.time < second.time; }); } //______________________________________________________________________________ void CalibLaserTracks::print() const { + if (mFinalized) { + LOGP(info, + "Processed {} TFs from {} - {}; found tracks: {} / {}; T0 offsets: {} / {}; dv correction factors: {} / {} for A- / C-Side", + mCalibData.processedTFs, + mCalibData.firstTime, + mCalibData.lastTime, + mCalibData.nTracksA, + mCalibData.nTracksC, + mCalibData.dvOffsetA, + mCalibData.dvOffsetC, + mCalibData.dvCorrectionA, + mCalibData.dvCorrectionC); + } else { + LOGP(info, + "Processed {} TFs from {} - {}; **Not finalized**", + mCalibData.processedTFs, + mCalibData.firstTime, + mCalibData.lastTime); + + LOGP(info, + "Last processed TF from {} - {}; found tracks: {} / {}; T0 offsets: {} / {}; dv correction factors: {} / {} for A- / C-Side", + mCalibDataTF.firstTime, + mCalibDataTF.lastTime, + mCalibDataTF.nTracksA, + mCalibDataTF.nTracksC, + mCalibDataTF.dvOffsetA, + mCalibDataTF.dvOffsetC, + mCalibDataTF.dvCorrectionA, + mCalibDataTF.dvCorrectionC); + } } diff --git a/Detectors/TPC/calibration/src/LaserTracksCalibrator.cxx b/Detectors/TPC/calibration/src/LaserTracksCalibrator.cxx index ba68cb35f1977..e3b6a18c7e764 100644 --- a/Detectors/TPC/calibration/src/LaserTracksCalibrator.cxx +++ b/Detectors/TPC/calibration/src/LaserTracksCalibrator.cxx @@ -9,7 +9,7 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#include "Framework/Logger.h" +#include #include "TPCCalibration/LaserTracksCalibrator.h" @@ -17,7 +17,7 @@ using namespace o2::tpc; void LaserTracksCalibrator::initOutput() { - mDVperSlot.clear(); + mCalibPerSlot.clear(); } //______________________________________________________________________________ @@ -27,7 +27,7 @@ void LaserTracksCalibrator::finalizeSlot(Slot& slot) calibLaser.finalize(); calibLaser.print(); - mDVperSlot.emplace_back(calibLaser.getDVall()); + mCalibPerSlot.emplace_back(calibLaser.getCalibData()); } //______________________________________________________________________________ @@ -36,5 +36,13 @@ LaserTracksCalibrator::Slot& LaserTracksCalibrator::emplaceNewSlot(bool front, T auto& cont = getSlots(); auto& slot = front ? cont.emplace_front(tstart, tend) : cont.emplace_back(tstart, tend); slot.setContainer(std::make_unique()); + auto& calibLaser = *slot.getContainer(); + //calibLaser.setTFtimes(tstart, tend); + + if (mWriteDebug) { + calibLaser.setWriteDebugTree(mWriteDebug); + calibLaser.setDebugOutputName(fmt::format("CalibLaserTracks_debug_{}_{}.root", tstart, tend)); + } + return slot; } diff --git a/Detectors/TPC/calibration/src/TPCCalibrationLinkDef.h b/Detectors/TPC/calibration/src/TPCCalibrationLinkDef.h index 9587bb7f8d8cb..f86cf77613769 100644 --- a/Detectors/TPC/calibration/src/TPCCalibrationLinkDef.h +++ b/Detectors/TPC/calibration/src/TPCCalibrationLinkDef.h @@ -34,7 +34,9 @@ #pragma link C++ class o2::calibration::TimeSlot +; #pragma link C++ class o2::calibration::TimeSlotCalibration +; #pragma link C++ class o2::tpc::TimePair +; +#pragma link C++ class o2::tpc::LtrCalibData +; #pragma link C++ class std::vector +; +#pragma link C++ class std::vector +; #pragma link C++ class o2::tpc::IDCGroup +; #pragma link C++ class o2::tpc::IDCGroupHelperRegion +; #pragma link C++ class o2::tpc::IDCGroupHelperSector +; diff --git a/Detectors/TPC/workflow/CMakeLists.txt b/Detectors/TPC/workflow/CMakeLists.txt index 04093be8ae226..f84fb8cbc645d 100644 --- a/Detectors/TPC/workflow/CMakeLists.txt +++ b/Detectors/TPC/workflow/CMakeLists.txt @@ -25,6 +25,7 @@ o2_add_library(TPCWorkflow src/IDCToVectorSpec.cxx src/CalibdEdxSpec.cxx src/MIPTrackFilterSpec.cxx + src/LaserTrackFilterSpec.cxx TARGETVARNAME targetName PUBLIC_LINK_LIBRARIES O2::Framework O2::DataFormatsTPC O2::DPLUtils O2::TPCReconstruction @@ -64,11 +65,21 @@ o2_add_executable(calib-pedestal SOURCES src/tpc-calib-pedestal.cxx PUBLIC_LINK_LIBRARIES O2::TPCWorkflow) +o2_add_executable(laser-tracks-calibrator + COMPONENT_NAME tpc + SOURCES src/tpc-laser-tracks-calibrator.cxx + PUBLIC_LINK_LIBRARIES O2::TPCWorkflow) + o2_add_executable(calib-laser-tracks COMPONENT_NAME tpc SOURCES src/tpc-calib-laser-tracks.cxx PUBLIC_LINK_LIBRARIES O2::TPCWorkflow) +o2_add_executable(laser-track-filter + COMPONENT_NAME tpc + SOURCES src/tpc-laser-track-filter.cxx + PUBLIC_LINK_LIBRARIES O2::TPCWorkflow) + o2_add_executable(integrate-idc COMPONENT_NAME tpc SOURCES src/tpc-integrate-idc.cxx diff --git a/Detectors/TPC/workflow/README.md b/Detectors/TPC/workflow/README.md index 81ef1dfcbee42..e34faa2813edf 100644 --- a/Detectors/TPC/workflow/README.md +++ b/Detectors/TPC/workflow/README.md @@ -190,6 +190,77 @@ Remove the `--no-write-ccdb` option and add | o2-calibration-ccdb-populator-workflow ``` +### Laser track calibration +#### Laser track filter +`o2-tpc-laser-track-filter` filters `TPC/TRACKS` looking for laser track candidates. The output is provided as `TPC/LASERTRACKS`. +With the option `--enable-writer`, the filtere tracks can be writte to file (`tpc-laser-tracks.root`). + +#### linear workflow reading from a local track file, direclty running the calibration component +By default `o2-tpc-calib-laser-tracks` assumes non-filtered `TPC/TRACKS` as input. +Using the option `--use-filtered-tracks` the input `TPC/LASERTRACKS` will be used. + +**running without laser track filter** +```bash +o2-tpc-file-reader --input-type tracks --disable-mc --tpc-track-reader '--infile tpctracks.root' \ + | o2-tpc-calib-laser-tracks --write-debug +``` + +**running with laser track filter** +```bash +o2-tpc-file-reader --input-type tracks --disable-mc --tpc-track-reader '--infile tpctracks.root' \ + | o2-tpc-laser-track-filter \ + | o2-tpc-calib-laser-tracks --use-filtered-tracks --write-debug --run +``` + +#### linear workflow reading from a local track file, running with time slot calibration +The time slot calibration assumes as input prefiltered laser track candates (`o2-tpc-laser-track-filter`). +They are published as `TPC/LASERTRACKS`. + +##### Options + --tf-per-slot arg (=5000) number of TFs per calibration time slot + --max-delay arg (=3) number of slots in past to consider + --min-entries arg (=100) minimum number of TFs with at least 50 tracks on each sideto finalize a slot + so 100 means 5000 matched laser tracks on each side. + --write-debug write a debug output tree. + +```bash +o2-tpc-file-reader --input-type tracks --disable-mc --tpc-track-reader '--infile tpctracks.root' \ + | o2-tpc-laser-track-filter \ + | o2-tpc-laser-tracks-calibrator --write-debug --min-entries 100 --tf-per-slot 5000 --run +``` + +#### simple distributed workflow with output and input proxy, running with time slot calibration +**Sending side zeromq** +```bash +o2-tpc-file-reader --input-type tracks --disable-mc --tpc-track-reader '--infile tpctracks.root' \ + | o2-tpc-laser-track-filter \ + | o2-dpl-output-proxy --channel-config "name=downstream,method=connect,address=tcp://localhost:30453,type=push,transport=zeromq" --dataspec lasertracks:TPC/LASERTRACKS -b --run +``` + +**Receeving side zeromq** +```bash +o2-dpl-raw-proxy --dataspec lasertracks:TPC/LASERTRACKS/0 --channel-config "name=readout-proxy,type=pull,method=bind,address=tcp://localhost:30453,rateLogging=1,transport=zeromq" \ + | o2-tpc-laser-tracks-calibrator --write-debug --min-entries 100 --tf-per-slot 5000 --run +``` + +**Sending side shmem** +```bash +ARGS_ALL="--session tpc-laser-tracks -b" +o2-tpc-file-reader $ARGS_ALL --input-type tracks --disable-mc --tpc-track-reader '--infile tpctracks.root' \ + | o2-tpc-laser-track-filter $ARGS_ALL \ + | o2-dpl-output-proxy $ARGS_ALL --channel-config "name=downstream,type=push,method=bind,address=ipc://@tpc-laser-tracks-0,transport=shmem,rateLogging=1" --dataspec lasertracks:TPC/LASERTRACKS \ + | o2-dpl-run $ARGS_ALL --run + +``` + +**Receeving side shmem** +```bash +ARGS_ALL="--session tpc-laser-tracks -b" +o2-dpl-raw-proxy $ARGS_ALL --dataspec lasertracks:TPC/LASERTRACKS/0 --channel-config "name=readout-proxy,type=pull,method=connect,address=ipc://@tpc-laser-tracks-0,transport=shmem,rateLogging=1" \ + | o2-tpc-laser-tracks-calibrator $ARGS_ALL --write-debug --min-entries 100 --tf-per-slot 5000 \ + | o2-dpl-run $ARGS_ALL --run +``` + ## Running the recontruction on GBT raw data This requires to do zero suppression in the first stage. For this the `DigiDump` class is used, wrapped in an o2 workflow. diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/CalibLaserTracksSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/CalibLaserTracksSpec.h index 750176aa66598..b5f32bfa85e41 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/CalibLaserTracksSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/CalibLaserTracksSpec.h @@ -9,8 +9,8 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#ifndef O2_CALIBRATION_LHCCLOCK_CALIBRATOR_H -#define O2_CALIBRATION_LHCCLOCK_CALIBRATOR_H +#ifndef O2_TPC_CalibLaserTracksSpec_H +#define O2_TPC_CalibLaserTracksSpec_H /// @file CalibLaserTracksSpec.h /// @brief Device to run tpc laser track calibration @@ -40,20 +40,22 @@ class CalibLaserTracksDevice : public o2::framework::Task void run(o2::framework::ProcessingContext& pc) final { + const auto dph = o2::header::get(pc.inputs().get("input").header); + const auto startTime = dph->startTime; + const auto endTime = dph->startTime + dph->duration; + auto data = pc.inputs().get>("input"); - //LOG(INFO) << "Processing TF " << tfcounter << " with " << data.size() << " tracks"; + mCalib.setTFtimes(startTime, endTime); mCalib.fill(data); - sendOutput(pc.outputs()); - //const auto& infoVec = mCalib->getLHCphaseInfoVector(); - //LOG(INFO) << "Created " << infoVec.size() << " objects for TF " << tfcounter; + + //sendOutput(pc.outputs()); } void endOfStream(o2::framework::EndOfStreamContext& ec) final { LOGP(info, "CalibLaserTracksDevice::endOfStream: Finalizing calibration"); mCalib.finalize(); - const auto& dvData = mCalib.getDVall(); - LOGP(info, "T0 offset: {}, dv correction factor: {}", dvData.x1, dvData.x2); + mCalib.print(); sendOutput(ec.outputs()); } @@ -68,19 +70,18 @@ class CalibLaserTracksDevice : public o2::framework::Task } }; -DataProcessorSpec getCalibLaserTracks() +DataProcessorSpec getCalibLaserTracks(const std::string inputSpec) { using device = o2::tpc::CalibLaserTracksDevice; std::vector outputs; - outputs.emplace_back(ConcreteDataTypeMatcher{"TPC", "LtrZmatch"}); + outputs.emplace_back(ConcreteDataTypeMatcher{"TPC", "LtrCalibData"}); return DataProcessorSpec{ "tpc-calib-laser-tracks", - Inputs{{"input", "TPC", "TRACKS"}}, + select(inputSpec.data()), outputs, AlgorithmSpec{adaptFromTask()}, Options{ - //{"tf-per-slot", VariantType::Int, 5, {"number of TFs per calibration time slot"}}, {"write-debug", VariantType::Bool, false, {"write a debug output tree."}}, }}; } diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/LaserTrackFilterSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/LaserTrackFilterSpec.h new file mode 100644 index 0000000000000..63089ef4b0f67 --- /dev/null +++ b/Detectors/TPC/workflow/include/TPCWorkflow/LaserTrackFilterSpec.h @@ -0,0 +1,29 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#ifndef O2_TPC_LaserTrackFilterSpec_H +#define O2_TPC_LaserTrackFilterSpec_H + +/// @file LaserTrackFilterSpec.h +/// @brief Device to filter out laser tracks + +#include "Framework/DataProcessorSpec.h" + +using namespace o2::framework; + +namespace o2::tpc +{ + +DataProcessorSpec getLaserTrackFilter(); + +} // namespace o2::tpc + +#endif diff --git a/Detectors/TPC/workflow/include/TPCWorkflow/LaserTracksCalibratorSpec.h b/Detectors/TPC/workflow/include/TPCWorkflow/LaserTracksCalibratorSpec.h index 35ab3f8ac09b1..ebf09380e2db3 100644 --- a/Detectors/TPC/workflow/include/TPCWorkflow/LaserTracksCalibratorSpec.h +++ b/Detectors/TPC/workflow/include/TPCWorkflow/LaserTracksCalibratorSpec.h @@ -9,10 +9,10 @@ // granted to it by virtue of its status as an Intergovernmental Organization // or submit itself to any jurisdiction. -#ifndef O2_CALIBRATION_LHCCLOCK_CALIBRATOR_H -#define O2_CALIBRATION_LHCCLOCK_CALIBRATOR_H +#ifndef O2_TPC_LaserTracksCalibratorSpec_H +#define O2_TPC_LaserTracksCalibratorSpec_H -/// @file CalibLaserTracksSpec.h +/// @file LaserTracksCalibratorSpec.h /// @brief Device to run tpc laser track calibration #include "TPCCalibration/LaserTracksCalibrator.h" @@ -35,28 +35,35 @@ class LaserTracksCalibratorDevice : public o2::framework::Task public: void init(o2::framework::InitContext& ic) final { - int minEnt = std::max(300, ic.options().get("min-entries")); - int slotL = ic.options().get("tf-per-slot"); - int delay = ic.options().get("max-delay"); + const int minEnt = ic.options().get("min-tfs"); + const int slotL = ic.options().get("tf-per-slot"); + const int delay = ic.options().get("max-delay"); + const bool debug = ic.options().get("write-debug"); + mCalibrator = std::make_unique(minEnt); mCalibrator->setSlotLength(slotL); mCalibrator->setMaxSlotsDelay(delay); + mCalibrator->setWriteDebug(debug); } void run(o2::framework::ProcessingContext& pc) final { - auto tfcounter = o2::header::get(pc.inputs().get("input").header)->startTime; - auto data = pc.inputs().get>("input"); - LOG(INFO) << "Processing TF " << tfcounter << " with " << data.size() << " tracks"; - mCalibrator->process(tfcounter, data); - sendOutput(pc.outputs()); - //const auto& infoVec = mCalibrator->getLHCphaseInfoVector(); - //LOG(INFO) << "Created " << infoVec.size() << " objects for TF " << tfcounter; + const auto dph = o2::header::get(pc.inputs().get("laserTracks").header); + const auto startTime = dph->startTime; + const auto endTime = dph->startTime + dph->duration - 1; + + auto data = pc.inputs().get>("laserTracks"); + LOGP(info, "Processing TF with start time {} and {} tracks", startTime, data.size()); + + mCalibrator->getSlotForTF(startTime).getContainer()->setTFtimes(startTime, endTime); + mCalibrator->process(startTime, data); + + //sendOutput(pc.outputs()); } void endOfStream(o2::framework::EndOfStreamContext& ec) final { - LOG(INFO) << "Finalizing calibration"; + LOGP(info, "LaserTracksCalibratorDevice::endOfStream: Finalizing calibration"); constexpr uint64_t INFINITE_TF = 0xffffffffffffffff; mCalibrator->checkSlotsToFinalize(INFINITE_TF); sendOutput(ec.outputs()); @@ -68,27 +75,30 @@ class LaserTracksCalibratorDevice : public o2::framework::Task //________________________________________________________________ void sendOutput(DataAllocator& output) { - // extract CCDB infos and calibration objects, convert it to TMemFile and send them to the output - // TODO in principle, this routine is generic, can be moved to Utils.h using clbUtils = o2::calibration::Utils; - const auto& object = mCalibrator->getDVperSlot(); + // TODO: save vector of objects or single objects + const auto& object = mCalibrator->getCalibPerSlot(); + + if (!object.size()) { + LOGP(error, "drift velocity calibration vector is empty"); + return; + } o2::ccdb::CcdbObjectInfo w; auto image = o2::ccdb::CcdbApi::createObjectImage(&object, &w); w.setPath("TPC/Calib/LaserTracks"); - w.setStartValidityTimestamp(object.front().time); - w.setEndValidityTimestamp(object.back().time); + w.setStartValidityTimestamp(object.front().firstTime); + w.setEndValidityTimestamp(object.back().lastTime); - LOG(INFO) << "Sending object " << w.getPath() << "/" << w.getFileName() << " of size " << image->size() - << " bytes, valid for " << w.getStartValidityTimestamp() << " : " << w.getEndValidityTimestamp(); - output.snapshot(Output{o2::calibration::Utils::gDataOriginCDBPayload, "TPC_CalibLtr", 0}, *image.get()); // vector - output.snapshot(Output{o2::calibration::Utils::gDataOriginCDBWrapper, "TPC_CalibLtr", 0}, w); // root-serialized + LOGP(info, "Sending object {} / {} of size {} bytes, valid for {} : {} ", w.getPath(), w.getFileName(), image->size(), w.getStartValidityTimestamp(), w.getEndValidityTimestamp()); + output.snapshot(Output{o2::calibration::Utils::gDataOriginCDBPayload, "TPC_CalibLtr", 0}, *image.get()); + output.snapshot(Output{o2::calibration::Utils::gDataOriginCDBWrapper, "TPC_CalibLtr", 0}, w); mCalibrator->initOutput(); } }; -DataProcessorSpec getCalibLaserTracks() +DataProcessorSpec getLaserTracksCalibrator() { using device = o2::tpc::LaserTracksCalibratorDevice; using clbUtils = o2::calibration::Utils; @@ -97,14 +107,15 @@ DataProcessorSpec getCalibLaserTracks() outputs.emplace_back(ConcreteDataTypeMatcher{o2::calibration::Utils::gDataOriginCDBPayload, "TPC_CalibLtr"}); outputs.emplace_back(ConcreteDataTypeMatcher{o2::calibration::Utils::gDataOriginCDBWrapper, "TPC_CalibLtr"}); return DataProcessorSpec{ - "tpc-calib-laser-tracks", - Inputs{{"input", "TPC", "TRACKS"}}, + "tpc-laser-tracks-calibrator", + Inputs{{"laserTracks", "TPC", "LASERTRACKS"}}, outputs, AlgorithmSpec{adaptFromTask()}, Options{ - {"tf-per-slot", VariantType::Int, 5, {"number of TFs per calibration time slot"}}, + {"tf-per-slot", VariantType::Int, 5000, {"number of TFs per calibration time slot"}}, {"max-delay", VariantType::Int, 3, {"number of slots in past to consider"}}, - {"min-entries", VariantType::Int, 500, {"minimum number of entries to fit single time slot"}}, + {"min-tfs", VariantType::Int, 100, {"minimum number of TFs with enough laser tracks to finalize a slot"}}, + {"write-debug", VariantType::Bool, false, {"write a debug output tree."}}, }}; } diff --git a/Detectors/TPC/workflow/src/LaserTrackFilterSpec.cxx b/Detectors/TPC/workflow/src/LaserTrackFilterSpec.cxx new file mode 100644 index 0000000000000..2d5ae71ac4c39 --- /dev/null +++ b/Detectors/TPC/workflow/src/LaserTrackFilterSpec.cxx @@ -0,0 +1,105 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +/// @file LaserTrackFilterSpec.cxx +/// @brief Device to filter out laser tracks + +#include +#include + +#include "DataFormatsTPC/TrackTPC.h" +#include "TPCCalibration/CalibLaserTracks.h" +#include "Framework/Task.h" +#include "Framework/ConfigParamRegistry.h" +#include "Framework/ControlService.h" +#include "Framework/WorkflowSpec.h" + +using namespace o2::framework; + +namespace o2::tpc +{ + +class LaserTrackFilterDevice : public o2::framework::Task +{ + public: + void init(o2::framework::InitContext& ic) final + { + } + + void run(o2::framework::ProcessingContext& pc) final + { + const auto tracks = pc.inputs().get>("tracks"); + std::copy_if(tracks.begin(), tracks.end(), std::back_inserter(mLaserTracks), + [this](const auto& track) { return isLaserTrackCandidate(track); }); + + LOGP(info, "Filtered {} laser track candidates out of {} total tpc tracks", mLaserTracks.size(), tracks.size()); + + sendOutput(pc.outputs()); + } + + void endOfStream(o2::framework::EndOfStreamContext& ec) final + { + } + + private: + std::vector mLaserTracks; + + //________________________________________________________________ + void sendOutput(DataAllocator& output) + { + output.snapshot(Output{"TPC", "LASERTRACKS", 0}, mLaserTracks); + mLaserTracks.clear(); + } + + bool isLaserTrackCandidate(const TrackTPC& track) + { + if (track.getP() < 1) { + return false; + } + + if (track.getNClusters() < 80) { + //return false; + } + + if (track.hasBothSidesClusters()) { + return false; + } + + const auto& parOutLtr = track.getOuterParam(); + if (parOutLtr.getX() < 220) { + return false; + } + + const int side = track.hasCSideClusters(); + if (!CalibLaserTracks::hasNearbyLaserRod(parOutLtr, side)) { + return false; + } + + return true; + } +}; + +DataProcessorSpec getLaserTrackFilter() +{ + using device = o2::tpc::LaserTrackFilterDevice; + + std::vector outputs; + outputs.emplace_back("TPC", "LASERTRACKS", 0, o2::framework::Lifetime::Timeframe); + + return DataProcessorSpec{ + "tpc-laser-track-filter", + Inputs{{"tracks", "TPC", "TRACKS", 0}}, + outputs, + AlgorithmSpec{adaptFromTask()}, + Options{}}; +} + +} // namespace o2::tpc diff --git a/Detectors/TPC/workflow/src/tpc-calib-laser-tracks.cxx b/Detectors/TPC/workflow/src/tpc-calib-laser-tracks.cxx index 8524c255c096a..e287b712439d9 100644 --- a/Detectors/TPC/workflow/src/tpc-calib-laser-tracks.cxx +++ b/Detectors/TPC/workflow/src/tpc-calib-laser-tracks.cxx @@ -11,22 +11,40 @@ #include "Framework/DataProcessorSpec.h" #include "TPCWorkflow/CalibLaserTracksSpec.h" +#include "Framework/CompletionPolicy.h" +#include "Framework/CompletionPolicyHelpers.h" using namespace o2::framework; +// customize the completion policy +void customize(std::vector& policies) +{ + using o2::framework::CompletionPolicy; + policies.push_back(CompletionPolicyHelpers::defineByName("tpc-calib-laser-tracks", CompletionPolicy::CompletionOp::Consume)); +} + // we need to add workflow options before including Framework/runDataProcessing -void customize(std::vector& workflowOptions) +void customize(std::vector& workflowOptions) { - // option allowing to set parameters + std::vector options{ + {"input-spec", VariantType::String, "input:TPC/TRACKS", {"selection string input specs"}}, + {"use-filtered-tracks", VariantType::Bool, false, {"use prefiltered laser tracks as input"}}, + }; + + std::swap(workflowOptions, options); } // ------------------------------------------------------------------ #include "Framework/runDataProcessing.h" -WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) +WorkflowSpec defineDataProcessing(ConfigContext const& config) { WorkflowSpec specs; - specs.emplace_back(o2::tpc::getCalibLaserTracks()); + std::string inputSpec = config.options().get("input-spec"); + if (config.options().get("use-filtered-tracks")) { + inputSpec = "input:TPC/LASERTRACKS"; + } + specs.emplace_back(o2::tpc::getCalibLaserTracks(inputSpec)); return specs; } diff --git a/Detectors/TPC/workflow/src/tpc-laser-track-filter.cxx b/Detectors/TPC/workflow/src/tpc-laser-track-filter.cxx new file mode 100644 index 0000000000000..561f972886326 --- /dev/null +++ b/Detectors/TPC/workflow/src/tpc-laser-track-filter.cxx @@ -0,0 +1,75 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "DPLUtils/MakeRootTreeWriterSpec.h" +#include "Framework/WorkflowSpec.h" +#include "Framework/ConfigParamSpec.h" +#include "Framework/CompletionPolicy.h" +#include "Framework/CompletionPolicyHelpers.h" +#include "TPCWorkflow/LaserTrackFilterSpec.h" +#include "DataFormatsTPC/TrackTPC.h" + +using namespace o2::framework; +using namespace o2::tpc; + +template +using BranchDefinition = MakeRootTreeWriterSpec::BranchDefinition; + +// customize the completion policy +void customize(std::vector& policies) +{ + using o2::framework::CompletionPolicy; + policies.push_back(CompletionPolicyHelpers::defineByName("tpc-laser-track-filter", CompletionPolicy::CompletionOp::Consume)); +} + +// we need to add workflow options before including Framework/runDataProcessing +void customize(std::vector& workflowOptions) +{ + std::vector options{ + {"enable-writer", VariantType::Bool, false, {"selection string input specs"}}, + }; + + std::swap(workflowOptions, options); +} +#include "Framework/runDataProcessing.h" + +WorkflowSpec defineDataProcessing(ConfigContext const& config) +{ + + using namespace o2::tpc; + + WorkflowSpec workflow; + workflow.emplace_back(getLaserTrackFilter()); + + if (config.options().get("enable-writer")) { + const char* processName = "tpc-laser-track-writer"; + const char* defaultFileName = "tpc-laser-tracks.root"; + const char* defaultTreeName = "tpcrec"; + + //branch definitions for RootTreeWriter spec + using TrackOutputType = std::vector; + + // a spectator callback which will be invoked by the tree writer with the extracted object + // we are using it for printing a log message + auto logger = BranchDefinition::Spectator([](TrackOutputType const& tracks) { + LOG(INFO) << "writing " << tracks.size() << " track(s)"; + }); + auto tracksdef = BranchDefinition{InputSpec{"inputTracks", "TPC", "LASERTRACKS", 0}, // + "TPCTracks", "track-branch-name", // + 1, // + logger}; // + + workflow.push_back(MakeRootTreeWriterSpec(processName, defaultFileName, defaultTreeName, + std::move(tracksdef))()); + } + + return workflow; +} diff --git a/Detectors/TPC/workflow/src/tpc-laser-tracks-calibrator.cxx b/Detectors/TPC/workflow/src/tpc-laser-tracks-calibrator.cxx new file mode 100644 index 0000000000000..422c4a841d785 --- /dev/null +++ b/Detectors/TPC/workflow/src/tpc-laser-tracks-calibrator.cxx @@ -0,0 +1,42 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include "Framework/DataProcessorSpec.h" +#include "Framework/CompletionPolicy.h" +#include "Framework/CompletionPolicyHelpers.h" + +#include "TPCWorkflow/LaserTracksCalibratorSpec.h" + +using namespace o2::framework; + +// customize the completion policy +void customize(std::vector& policies) +{ + using o2::framework::CompletionPolicy; + policies.push_back(CompletionPolicyHelpers::defineByName("tpc-laser-tracks-calibrator", CompletionPolicy::CompletionOp::Consume)); +} + +// we need to add workflow options before including Framework/runDataProcessing +void customize(std::vector& workflowOptions) +{ + // option allowing to set parameters +} + +// ------------------------------------------------------------------ + +#include "Framework/runDataProcessing.h" + +WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) +{ + WorkflowSpec specs; + specs.emplace_back(o2::tpc::getLaserTracksCalibrator()); + return specs; +} From fb1af2762a3e48fed8bac0a2c4fa7815137adb87 Mon Sep 17 00:00:00 2001 From: wiechula Date: Tue, 20 Jul 2021 23:08:30 +0200 Subject: [PATCH 280/314] TPC: several unrelated smaller fixes and improvements --- .../include/TPCCalibration/CalibRawBase.h | 4 +-- .../calibration/macro/drawNoiseAndPedestal.C | 5 +++ Detectors/TPC/calibration/macro/drawPulser.C | 6 ++-- Detectors/TPC/calibration/macro/dumpDigits.C | 1 + .../calibration/macro/preparePedestalFiles.C | 33 ++++++++++++++----- Detectors/TPC/calibration/src/DigitDump.cxx | 3 ++ .../TPC/monitor/macro/RunSimpleEventDisplay.C | 2 +- Detectors/TPC/monitor/macro/startMonitor | 6 +++- .../include/TPCReconstruction/RawReaderCRU.h | 29 ++++++++++++++-- .../src/CalDetMergerPublisherSpec.cxx | 8 +++-- 10 files changed, 77 insertions(+), 20 deletions(-) diff --git a/Detectors/TPC/calibration/include/TPCCalibration/CalibRawBase.h b/Detectors/TPC/calibration/include/TPCCalibration/CalibRawBase.h index a9cf4bc032cd5..dfb6b7985e3de 100644 --- a/Detectors/TPC/calibration/include/TPCCalibration/CalibRawBase.h +++ b/Detectors/TPC/calibration/include/TPCCalibration/CalibRawBase.h @@ -453,7 +453,7 @@ inline CalibRawBase::ProcessStatus CalibRawBase::processEventRawReaderCRU(int ev return ProcessStatus::NoMoreData; } else if (!isPresentEventComplete()) { status = ProcessStatus::IncompleteEvent; - } else if (mPresentEventNumber == size_t(lastEvent)) { + } else if (mPresentEventNumber >= size_t(lastEvent)) { status = ProcessStatus::LastEvent; } @@ -461,7 +461,7 @@ inline CalibRawBase::ProcessStatus CalibRawBase::processEventRawReaderCRU(int ev ++mNevents; } else { status = ProcessStatus::IncompleteEvent; - if (mPresentEventNumber == size_t(lastEvent)) { + if (mPresentEventNumber >= size_t(lastEvent)) { status = ProcessStatus::LastEvent; } } diff --git a/Detectors/TPC/calibration/macro/drawNoiseAndPedestal.C b/Detectors/TPC/calibration/macro/drawNoiseAndPedestal.C index 2232808ff275a..2947c37c9ef20 100644 --- a/Detectors/TPC/calibration/macro/drawNoiseAndPedestal.C +++ b/Detectors/TPC/calibration/macro/drawNoiseAndPedestal.C @@ -12,6 +12,7 @@ #if !defined(__CLING__) || defined(__ROOTCLING__) #include #include +#include #include "TROOT.h" #include "TMath.h" @@ -68,6 +69,10 @@ TObjArray* drawNoiseAndPedestal(std::string_view pedestalFile, int mode = 0, std gROOT->cd(); f.GetObject("Pedestals", calPedestal); f.GetObject("Noise", calNoise); + if (!calNoise) { + calNoise = new CalDet("Noise"); + fmt::print("Noise object not found in file {}, creating a dummy object\n", pedestalFile); + } } // mode 1 handling diff --git a/Detectors/TPC/calibration/macro/drawPulser.C b/Detectors/TPC/calibration/macro/drawPulser.C index 77b8951a40efe..0ae7f568b3765 100644 --- a/Detectors/TPC/calibration/macro/drawPulser.C +++ b/Detectors/TPC/calibration/macro/drawPulser.C @@ -94,15 +94,15 @@ TObjArray* drawPulser(TString pulserFile, int mode = 0, std::string_view outDir } if (type == 1) { - tMin = 425.f; - tMax = 485.f; + tMin = 490.f; + tMax = 510.f; wMin = 0.6; wMax = 0.8; qMin = 5.f; qMax = 500.f; } - auto arrT0 = painter::makeSummaryCanvases(*calT0, 100, tMin, tMax); + auto arrT0 = painter::makeSummaryCanvases(*calT0, 300, tMin, tMax); auto arrWidth = painter::makeSummaryCanvases(*calWidth, 100, wMin, wMax); auto arrQtot = painter::makeSummaryCanvases(*calQtot, 100, qMin, qMax); diff --git a/Detectors/TPC/calibration/macro/dumpDigits.C b/Detectors/TPC/calibration/macro/dumpDigits.C index 526c2cd85fb98..813489e6ca752 100644 --- a/Detectors/TPC/calibration/macro/dumpDigits.C +++ b/Detectors/TPC/calibration/macro/dumpDigits.C @@ -32,6 +32,7 @@ void dumpDigits(std::vector fileInfos, TString outputFileName dig.setTimeBinRange(firstTimeBin, lastTimeBin); dig.setNoiseThreshold(noiseThreshold); dig.setSkipIncompleteEvents(false); + dig.checkDuplicates(true); CalibRawBase::ProcessStatus status = CalibRawBase::ProcessStatus::Ok; for (const auto& fileInfo : fileInfos) { diff --git a/Detectors/TPC/calibration/macro/preparePedestalFiles.C b/Detectors/TPC/calibration/macro/preparePedestalFiles.C index 3fb1f969f38ec..7d4db0915f946 100644 --- a/Detectors/TPC/calibration/macro/preparePedestalFiles.C +++ b/Detectors/TPC/calibration/macro/preparePedestalFiles.C @@ -22,6 +22,7 @@ #include "TSystem.h" #include "TString.h" +#include "TPCBase/CDBInterface.h" #include "TPCBase/Mapper.h" #include "TPCBase/CalDet.h" #include "TPCBase/Utils.h" @@ -74,22 +75,38 @@ constexpr float fixedSizeToFloat(uint32_t value) return float(value) * FloatConversion; } -void preparePedestalFiles(const std::string_view pedestalFileName, const TString outputDir = "./", float sigmaNoise = 3, float minADC = 2, float pedestalOffset = 0, bool onlyFilled = false) +void preparePedestalFiles(const std::string_view pedestalFile, const TString outputDir = "./", float sigmaNoise = 3, float minADC = 2, float pedestalOffset = 0, bool onlyFilled = false) { static constexpr float FloatConversion = 1.f / float(1 << 2); using namespace o2::tpc; const auto& mapper = Mapper::instance(); - TFile f(pedestalFileName.data()); - gROOT->cd(); - // ===| load noise and pedestal from file |=== CalDet output("Pedestals"); - CalDet* calPedestal = nullptr; - CalDet* calNoise = nullptr; - f.GetObject("Pedestals", calPedestal); - f.GetObject("Noise", calNoise); + const CalDet* calPedestal = nullptr; + const CalDet* calNoise = nullptr; + + if (pedestalFile.find("cdb") != std::string::npos) { + auto& cdb = CDBInterface::instance(); + if (pedestalFile.find("cdb-test") == 0) { + cdb.setURL("http://ccdb-test.cern.ch:8080"); + } else if (pedestalFile.find("cdb-prod") == 0) { + cdb.setURL(""); + } + const auto timePos = pedestalFile.find("@"); + if (timePos != std::string_view::npos) { + std::cout << "set time stamp " << std::stol(pedestalFile.substr(timePos + 1).data()) << "\n"; + cdb.setTimeStamp(std::stol(pedestalFile.substr(timePos + 1).data())); + } + calPedestal = &cdb.getPedestals(); + calNoise = &cdb.getNoise(); + } else { + TFile f(pedestalFile.data()); + gROOT->cd(); + f.GetObject("Pedestals", calPedestal); + f.GetObject("Noise", calNoise); + } DataMap pedestalValues; DataMap thresholdlValues; diff --git a/Detectors/TPC/calibration/src/DigitDump.cxx b/Detectors/TPC/calibration/src/DigitDump.cxx index f226cf9c1b6ef..d4da07b857c31 100644 --- a/Detectors/TPC/calibration/src/DigitDump.cxx +++ b/Detectors/TPC/calibration/src/DigitDump.cxx @@ -186,6 +186,9 @@ void DigitDump::checkDuplicates(bool removeDuplicates) for (size_t iSec = 0; iSec < Sector::MAXSECTOR; ++iSec) { auto& digits = mDigits[iSec]; + if (!digits.size()) { + continue; + } size_t nDuplicates = 0; if (removeDuplicates) { diff --git a/Detectors/TPC/monitor/macro/RunSimpleEventDisplay.C b/Detectors/TPC/monitor/macro/RunSimpleEventDisplay.C index 4d961877c48ca..8c8ca69360a62 100644 --- a/Detectors/TPC/monitor/macro/RunSimpleEventDisplay.C +++ b/Detectors/TPC/monitor/macro/RunSimpleEventDisplay.C @@ -580,7 +580,7 @@ void Next(int eventNumber = -1) } case Status::NoMoreData: { std::cout << "No more data to be read\n"; - return; + //return; break; } case Status::NoReaders: { diff --git a/Detectors/TPC/monitor/macro/startMonitor b/Detectors/TPC/monitor/macro/startMonitor index a9adecda17365..1b442076e51ac 100755 --- a/Detectors/TPC/monitor/macro/startMonitor +++ b/Detectors/TPC/monitor/macro/startMonitor @@ -82,7 +82,11 @@ if [[ $fileInfo =~ : ]]; then timeBins=${fileInfo#*:} timeBins=${timeBins%%:*} else - fileInfo=${fileInfo}:${timeBins} + fileInfo=${fileInfo}:${lastTimeBin} +fi + +if [[ $lastTimeBin -gt $timeBins ]]; then + timeBins=$lastTimeBin fi # ===| command building and execution |========================================= diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderCRU.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderCRU.h index 73efcbd835a6a..ef0ae33e01904 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderCRU.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawReaderCRU.h @@ -138,6 +138,26 @@ class ADCRawData /// overloading output stream operator to output ADCRawData friend std::ostream& operator<<(std::ostream& output, const ADCRawData& rawData); + /// reset + void reset() + { + mOutputStream = 0; + mNumTimeBins = 0; + for (auto& data : mADCRaw) { + data.clear(); + } + } + + bool hasData() const + { + for (auto& data : mADCRaw) { + if (data.size()) { + return true; + } + } + return false; + } + private: uint32_t mOutputStream{0}; // variable to set the output stream for the << operator uint32_t mNumTimeBins{0}; // variable to set the number of timebins for the << operator @@ -357,12 +377,15 @@ class RawReaderCRUEventSync return false; } if (rawDataType == RAWDataType::GBT) { - return link.isComplete(); + if (!link.isComplete()) { + return false; + } } if (rawDataType == RAWDataType::LinkZS) { - return link.HBEndSeen; + if (link.IsPresent && !link.HBEndSeen) { + return false; + } } - return false; } return true; } diff --git a/Detectors/TPC/workflow/src/CalDetMergerPublisherSpec.cxx b/Detectors/TPC/workflow/src/CalDetMergerPublisherSpec.cxx index ff5159b200db2..51f36a0d32f55 100644 --- a/Detectors/TPC/workflow/src/CalDetMergerPublisherSpec.cxx +++ b/Detectors/TPC/workflow/src/CalDetMergerPublisherSpec.cxx @@ -110,8 +110,12 @@ class CalDetMergerPublisherSpec : public o2::framework::Task { LOGP(info, "endOfStream"); - dumpCalibData(); - sendOutput(ec.outputs()); + if (mReceivedLanes.count() == mLanesToExpect) { + dumpCalibData(); + sendOutput(ec.outputs()); + } else { + LOGP(info, "Received lanes {} does not match expected lanes {}, object already sent", mReceivedLanes.count(), mLanesToExpect); + } ec.services().get().readyToQuit(QuitRequest::Me); } From a775c102c5b570a32bd39220c98c7efc9bbfb841 Mon Sep 17 00:00:00 2001 From: wiechula Date: Tue, 20 Jul 2021 23:09:11 +0200 Subject: [PATCH 281/314] TPC: fix treatment of sync offset in LinkZS data Ideally, the sync offset is aligned to the largest offset within one TF. This value can be found by looping over all data once but requires access to the full TF. Alternatively, an assumption about the largest sync offset can be made. Some unrealted fixes are includes as well --- .../TPCReconstruction/RawProcessingHelpers.h | 2 +- .../src/RawProcessingHelpers.cxx | 6 +- .../TPC/reconstruction/src/RawReaderCRU.cxx | 15 ++-- .../workflow/src/CalibProcessingHelper.cxx | 90 ++++++++++++++++++- 4 files changed, 99 insertions(+), 14 deletions(-) diff --git a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawProcessingHelpers.h b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawProcessingHelpers.h index 4cc4f10f9ce76..edb06eedf1e12 100644 --- a/Detectors/TPC/reconstruction/include/TPCReconstruction/RawProcessingHelpers.h +++ b/Detectors/TPC/reconstruction/include/TPCReconstruction/RawProcessingHelpers.h @@ -25,7 +25,7 @@ namespace raw_processing_helpers using ADCCallback = std::function; -bool processZSdata(const char* data, size_t size, rdh_utils::FEEIDType feeId, uint32_t orbit, uint32_t referenceOrbit, ADCCallback fillADC, bool useTimeBin = false); +bool processZSdata(const char* data, size_t size, rdh_utils::FEEIDType feeId, uint32_t orbit, uint32_t referenceOrbit, uint32_t syncOffsetReference, ADCCallback fillADC, bool useTimeBin = false); } // namespace raw_processing_helpers } // namespace tpc diff --git a/Detectors/TPC/reconstruction/src/RawProcessingHelpers.cxx b/Detectors/TPC/reconstruction/src/RawProcessingHelpers.cxx index 7b6550567419a..be3c5eb99574d 100644 --- a/Detectors/TPC/reconstruction/src/RawProcessingHelpers.cxx +++ b/Detectors/TPC/reconstruction/src/RawProcessingHelpers.cxx @@ -22,7 +22,7 @@ using namespace o2::tpc; //______________________________________________________________________________ -bool raw_processing_helpers::processZSdata(const char* data, size_t size, rdh_utils::FEEIDType feeId, uint32_t orbit, uint32_t referenceOrbit, ADCCallback fillADC, bool useTimeBin) +bool raw_processing_helpers::processZSdata(const char* data, size_t size, rdh_utils::FEEIDType feeId, uint32_t orbit, uint32_t referenceOrbit, uint32_t syncOffsetReference, ADCCallback fillADC, bool useTimeBin) { const auto& mapper = Mapper::instance(); @@ -78,8 +78,8 @@ bool raw_processing_helpers::processZSdata(const char* data, size_t size, rdh_ut const uint32_t numberOfWords = zsdata->getDataWords(); assert(expectedWords == numberOfWords); - const uint32_t bunchCrossingHeader = zsdata->getBunchCrossing(); - uint32_t syncOffset = header.syncOffsetBC % 16; + const uint32_t bunchCrossingHeader = zsdata->getBunchCrossing() + syncOffsetReference; + uint32_t syncOffset = header.syncOffsetBC; if (useTimeBin) { const uint32_t timebinHeader = (header.syncOffsetCRUCycles << 8) | header.syncOffsetBC; diff --git a/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx b/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx index 5306065cc626a..f512c0283b0d4 100644 --- a/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx +++ b/Detectors/TPC/reconstruction/src/RawReaderCRU.cxx @@ -95,6 +95,7 @@ void RawReaderCRUEventSync::analyse(RAWDataType rawDataType) } if (!cruInfo.isComplete(rawDataType)) { + LOGP(info, "CRU info is incomplete"); event.IsComplete = false; break; } @@ -327,7 +328,8 @@ int RawReaderCRU::scanFile() RDHUtils::setFEEID(rdh, feeId); } - const auto heartbeatOrbit = isTFfile ? dh.firstTForbit : RDHUtils::getHeartBeatOrbit(rdh); + const auto heartbeatOrbit = RDHUtils::getHeartBeatOrbit(rdh); + const auto heartbeatOrbitEvent = isTFfile ? dh.firstTForbit : RDHUtils::getHeartBeatOrbit(rdh); const auto endPoint = rdh_utils::getEndPoint(feeId); const auto linkID = rdh_utils::getLink(feeId); const auto globalLinkID = linkID + endPoint * 12; @@ -345,9 +347,9 @@ int RawReaderCRU::scanFile() RawReaderCRUEventSync::LinkInfo* linkInfo = nullptr; if (mManager) { // in case of triggered mode, we use the first heartbeat orbit as event identifier - if ((lastHeartbeatOrbit == 0) || (heartbeatOrbit != lastHeartbeatOrbit)) { - mManager->mEventSync.createEvent(heartbeatOrbit, mManager->getDataType()); - lastHeartbeatOrbit = heartbeatOrbit; + if ((lastHeartbeatOrbit == 0) || (heartbeatOrbitEvent != lastHeartbeatOrbit)) { + mManager->mEventSync.createEvent(heartbeatOrbitEvent, mManager->getDataType()); + lastHeartbeatOrbit = heartbeatOrbitEvent; } linkInfo = &mManager->mEventSync.getLinkInfo(rdh, mManager->getDataType()); mManager->mEventSync.setCRUSeen(mCRU, mReaderNumber); @@ -801,7 +803,8 @@ void RawReaderCRU::processLinkZS() } file.seekg(payloadOffset, file.beg); file.read(buffer, payloadSize); - o2::tpc::raw_processing_helpers::processZSdata(buffer, payloadSize, packet.getFEEID(), packet.getHeartBeatOrbit(), firstOrbitInEvent, mManager->mLinkZSCallback, false); // last parameter should be true for MW2 data + const uint32_t syncOffsetReference = 144; // <<< TODO: fix value as max offset over all links + o2::tpc::raw_processing_helpers::processZSdata(buffer, payloadSize, packet.getFEEID(), packet.getHeartBeatOrbit(), firstOrbitInEvent, syncOffsetReference, mManager->mLinkZSCallback, false); // last parameter should be true for MW2 data } } @@ -819,7 +822,7 @@ void RawReaderCRU::processLinks(const uint32_t linkMask) // check if selected event is valid if (mEventNumber >= mManager->mEventSync.getNumberOfEvents()) { - O2ERROR("Selected event number %u is larger then the events in the file %lu", mEventNumber, mManager->mEventSync.getNumberOfEvents()); + O2ERROR("Selected event number %u is larger than the events in file %lu", mEventNumber, mManager->mEventSync.getNumberOfEvents()); return; } diff --git a/Detectors/TPC/workflow/src/CalibProcessingHelper.cxx b/Detectors/TPC/workflow/src/CalibProcessingHelper.cxx index 7d72bd36a478e..49962853c3645 100644 --- a/Detectors/TPC/workflow/src/CalibProcessingHelper.cxx +++ b/Detectors/TPC/workflow/src/CalibProcessingHelper.cxx @@ -18,6 +18,7 @@ #include "DPLUtils/RawParser.h" #include "DetectorsRaw/RDHUtils.h" #include "Headers/DataHeaderHelpers.h" +#include "DataFormatsTPC/ZeroSuppressionLinkBased.h" #include "TPCBase/RDHUtils.h" #include "TPCReconstruction/RawReaderCRU.h" @@ -30,7 +31,8 @@ using namespace o2::framework; using RDHUtils = o2::raw::RDHUtils; void processGBT(o2::framework::RawParser<>& parser, std::unique_ptr& reader, const rdh_utils::FEEIDType feeID); -void processLinkZS(o2::framework::RawParser<>& parser, std::unique_ptr& reader, uint32_t firstOrbit); +void processLinkZS(o2::framework::RawParser<>& parser, std::unique_ptr& reader, uint32_t firstOrbit, uint32_t syncOffsetReference); +uint32_t getBCsyncOffsetReference(InputRecord& inputs, const std::vector& filter); uint64_t calib_processing_helper::processRawData(o2::framework::InputRecord& inputs, std::unique_ptr& reader, bool useOldSubspec, const std::vector& sectors) { @@ -52,8 +54,21 @@ uint64_t calib_processing_helper::processRawData(o2::framework::InputRecord& inp bool readFirst = false; uint32_t firstOrbit = 0; + // for LinkZS data the maximum sync offset is needed to align the data properly. + // getBCsyncOffsetReference only works, if the full TF is seen. Alternatively, this value could be set + // fixed to e.g. 144 or 152 which is the maximum sync delay expected + // this is less precise and might lead to more time bins which have to be removed at the beginnig + // or end of the TF + // uint32_t syncOffsetReference = getBCsyncOffsetReference(inputs, filter); + uint32_t syncOffsetReference = 144; + for (auto const& ref : InputRecordWalker(inputs, filter)) { const auto* dh = DataRefUtils::getHeader(ref); + // skip empty HBF + if (dh->payloadSize == 2 * sizeof(o2::header::RAWDataHeader)) { + continue; + } + firstOrbit = dh->firstTForbit; // ---| extract hardware information to do the processing |--- @@ -115,7 +130,7 @@ uint64_t calib_processing_helper::processRawData(o2::framework::InputRecord& inp } if (isLinkZS) { - processLinkZS(parser, reader, firstOrbit); + processLinkZS(parser, reader, firstOrbit, syncOffsetReference); } else { processGBT(parser, reader, feeID); } @@ -126,6 +141,8 @@ uint64_t calib_processing_helper::processRawData(o2::framework::InputRecord& inp void processGBT(o2::framework::RawParser<>& parser, std::unique_ptr& reader, const rdh_utils::FEEIDType feeID) { + // TODO: currently this will only work for HBa1, since the sync is in the first packet and + // the decoder expects all packets of one link to be processed at once rdh_utils::FEEIDType cruID, linkID, endPoint; rdh_utils::getMapping(feeID, cruID, endPoint, linkID); const auto globalLinkID = linkID + endPoint * 12; @@ -162,7 +179,7 @@ void processGBT(o2::framework::RawParser<>& parser, std::unique_ptrrunADCDataCallback(rawData); } -void processLinkZS(o2::framework::RawParser<>& parser, std::unique_ptr& reader, uint32_t firstOrbit) +void processLinkZS(o2::framework::RawParser<>& parser, std::unique_ptr& reader, uint32_t firstOrbit, uint32_t syncOffsetReference) { for (auto it = parser.begin(), end = parser.end(); it != end; ++it) { auto* rdhPtr = it.get_if(); @@ -174,11 +191,76 @@ void processLinkZS(o2::framework::RawParser<>& parser, std::unique_ptrgetManager()->getLinkZSCallback(), useTimeBins); + raw_processing_helpers::processZSdata(data, size, feeID, orbit, firstOrbit, syncOffsetReference, reader->getManager()->getLinkZSCallback(), useTimeBins); + } +} + +// find the global sync offset reference, using the large sync offset to avoid negative time bins +uint32_t getBCsyncOffsetReference(InputRecord& inputs, const std::vector& filter) +{ + uint32_t syncOffsetReference = 0; + + for (auto const& ref : InputRecordWalker(inputs, filter)) { + const auto* dh = DataRefUtils::getHeader(ref); + // skip empty HBF + if (dh->payloadSize == 2 * sizeof(o2::header::RAWDataHeader)) { + continue; + } + + const gsl::span raw = inputs.get>(ref); + o2::framework::RawParser parser(raw.data(), raw.size()); + + for (auto it = parser.begin(), end = parser.end(); it != end; ++it) { + auto* rdhPtr = it.get_if(); + if (!rdhPtr) { + LOGP(fatal, "could not get RDH from packet"); + } + + // only process LinkZSdata, only supported for data where this is already set in the UL + const auto detField = RDHUtils::getDetectorField(*rdhPtr); + if (detField != 1) { + continue; + } + + const auto data = (const char*)it.data(); + const auto size = it.size(); + + zerosupp_link_based::ContainerZS* zsdata = (zerosupp_link_based::ContainerZS*)data; + const zerosupp_link_based::ContainerZS* const zsdataEnd = (zerosupp_link_based::ContainerZS*)(data + size); + + while (zsdata < zsdataEnd) { + const auto& header = zsdata->cont.header; + // align to header word if needed + if (!header.hasCorrectMagicWord()) { + zsdata = (zerosupp_link_based::ContainerZS*)((const char*)zsdata + sizeof(zerosupp_link_based::Header)); + continue; + } + + // skip trigger info + if (header.isTriggerInfo()) { + zsdata = zsdata->next(); + continue; + } + + syncOffsetReference = std::max(header.syncOffsetBC, syncOffsetReference); + + // only read first time bin for each link + break; + } + } } + + LOGP(info, "syncOffsetReference in this TF: {}", syncOffsetReference); + return syncOffsetReference; } From 1f43d80a5ce11767e66f51ebf4eb0116d71cc515 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Mon, 26 Jul 2021 12:28:53 +0200 Subject: [PATCH 282/314] DPL Analysis: sanitize writing of tables * Fix memory leaks * Fix deletion of non-owned memory * Fix memory corruption due to the fact wrong costructor is used for the an array of boolean. --- .../Core/include/Framework/TableTreeHelpers.h | 3 +- Framework/Core/src/TableTreeHelpers.cxx | 46 +++++-------------- 2 files changed, 12 insertions(+), 37 deletions(-) diff --git a/Framework/Core/include/Framework/TableTreeHelpers.h b/Framework/Core/include/Framework/TableTreeHelpers.h index e33f0eb92e6d2..89b88140f890c 100644 --- a/Framework/Core/include/Framework/TableTreeHelpers.h +++ b/Framework/Core/include/Framework/TableTreeHelpers.h @@ -97,7 +97,7 @@ class TableToTree TTree* mTreePtr; // a list of BranchIterator - std::vector mBranchIterators; + std::vector> mBranchIterators; // table to convert std::shared_ptr mTable; @@ -106,7 +106,6 @@ class TableToTree TableToTree(std::shared_ptr table, TFile* file, const char* treename); - ~TableToTree(); // add branches bool addBranch(std::shared_ptr col, std::shared_ptr field); diff --git a/Framework/Core/src/TableTreeHelpers.cxx b/Framework/Core/src/TableTreeHelpers.cxx index ddf8539f13402..8a0c22d7c304f 100644 --- a/Framework/Core/src/TableTreeHelpers.cxx +++ b/Framework/Core/src/TableTreeHelpers.cxx @@ -143,16 +143,7 @@ BranchIterator::~BranchIterator() { delete mBranchBuffer; - delete mVariable_o; - delete mVariable_ub; - delete mVariable_us; - delete mVariable_ui; - delete mVariable_ul; - delete mVariable_s; - delete mVariable_i; - delete mVariable_l; - delete mVariable_f; - delete mVariable_d; + delete[] mVariable_o; } bool BranchIterator::getStatus() @@ -209,11 +200,7 @@ bool BranchIterator::initBranch(TTree* tree) } mBranchPtr = tree->Branch(mBranchName.c_str(), mBranchBuffer, mLeaflistString.c_str()); - if (mBranchPtr) { - return true; - } else { - return false; - } + return mBranchPtr != nullptr; } bool BranchIterator::initDataBuffer(Int_t ib) @@ -231,7 +218,7 @@ bool BranchIterator::initDataBuffer(Int_t ib) switch (mElementType) { case arrow::Type::type::BOOL: if (!mVariable_o) { - mVariable_o = new bool(mNumberElements); + mVariable_o = new bool[mNumberElements]; } mArray_o = std::dynamic_pointer_cast(chunkToUse); for (int ii = 0; ii < mNumberElements; ii++) { @@ -386,34 +373,23 @@ TableToTree::TableToTree(std::shared_ptr table, } } -TableToTree::~TableToTree() -{ - // clean up branch iterators - mBranchIterators.clear(); -} - bool TableToTree::addBranch(std::shared_ptr col, std::shared_ptr field) { - BranchIterator* brit = new BranchIterator(mTreePtr, col, field); - if (brit->getStatus()) { - mBranchIterators.push_back(brit); + auto brit = std::make_unique(mTreePtr, col, field); + if (!brit->getStatus()) { + return false; } - - return brit->getStatus(); + mBranchIterators.emplace_back(std::move(brit)); + return true; } bool TableToTree::addAllBranches() { bool status = mTable->num_columns() > 0; + for (auto ii = 0; ii < mTable->num_columns(); ii++) { - BranchIterator* brit = - new BranchIterator(mTreePtr, mTable->column(ii), mTable->schema()->field(ii)); - if (brit->getStatus()) { - mBranchIterators.push_back(brit); - } else { - status = false; - } + status &= addBranch(mTable->column(ii), mTable->schema()->field(ii)); } return status; @@ -428,7 +404,7 @@ TTree* TableToTree::process() mTreePtr->Fill(); // update the branches - for (auto brit : mBranchIterators) { + for (auto& brit : mBranchIterators) { togo &= brit->push(); } } From e4aa560833b049722581f7e44d30f536ae961115 Mon Sep 17 00:00:00 2001 From: anerokhi <44967087+anerokhi@users.noreply.github.com> Date: Mon, 26 Jul 2021 10:48:55 +0300 Subject: [PATCH 283/314] PWGPP/qaEfficiency: Prevent expensive copying --- Analysis/Tasks/PWGPP/qaEfficiency.cxx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Analysis/Tasks/PWGPP/qaEfficiency.cxx b/Analysis/Tasks/PWGPP/qaEfficiency.cxx index e33da8481e9d0..b9313339818a7 100644 --- a/Analysis/Tasks/PWGPP/qaEfficiency.cxx +++ b/Analysis/Tasks/PWGPP/qaEfficiency.cxx @@ -209,7 +209,7 @@ struct QaTrackingEfficiency { } recoEvt.resize(nevts); - auto rejectParticle = [&](auto p, auto h) { + auto rejectParticle = [&](const auto& p, auto h) { histos.fill(h, 1); const auto evtReconstructed = std::find(recoEvt.begin(), recoEvt.end(), p.mcCollision().globalIndex()) != recoEvt.end(); if (!evtReconstructed) { // Check that the event is reconstructed From 00cba713b13c0dc3aa6799fb40dd56ddfe8ad887 Mon Sep 17 00:00:00 2001 From: Piotr Konopka Date: Mon, 26 Jul 2021 10:05:30 +0200 Subject: [PATCH 284/314] [QC-626] Data Sampling: Support again varying subspecs in different parts --- Utilities/DataSampling/src/Dispatcher.cxx | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/Utilities/DataSampling/src/Dispatcher.cxx b/Utilities/DataSampling/src/Dispatcher.cxx index 976bb171e555d..710bd9faa8c84 100644 --- a/Utilities/DataSampling/src/Dispatcher.cxx +++ b/Utilities/DataSampling/src/Dispatcher.cxx @@ -87,11 +87,16 @@ void Dispatcher::run(ProcessingContext& ctx) if (firstPart.header == nullptr) { continue; } - const auto* inputHeader = header::get(firstPart.header); - ConcreteDataMatcher inputMatcher{inputHeader->dataOrigin, inputHeader->dataDescription, inputHeader->subSpecification}; + const auto* firstInputHeader = header::get(firstPart.header); + ConcreteDataMatcher inputMatcher{firstInputHeader->dataOrigin, firstInputHeader->dataDescription, firstInputHeader->subSpecification}; for (auto& policy : mPolicies) { + // fixme: in principle matching could be broken by having query "TST/RAWDATA/0" and having parts with just + // the first subspec == 0, but others could be different. However, we trust that DPL does necessary checks + // during workflow validation and when passing messages (e.g. query "TST/RAWDATA/0" should not match + // a "TST/RAWDATA/*" output. if (auto route = policy->match(inputMatcher); route != nullptr && policy->decide(firstPart)) { + auto routeAsConcreteDataType = DataSpecUtils::asConcreteDataTypeMatcher(*route); auto dsheader = prepareDataSamplingHeader(*policy); for (const auto& part : inputIt) { if (part.header != nullptr) { @@ -101,12 +106,12 @@ void Dispatcher::run(ProcessingContext& ctx) header::Stack headerStack{ std::move(extractAdditionalHeaders(part.header)), dsheader}; + const auto* partInputHeader = header::get(part.header); - auto routeAsConcreteDataType = DataSpecUtils::asConcreteDataTypeMatcher(*route); Output output{ routeAsConcreteDataType.origin, routeAsConcreteDataType.description, - inputMatcher.subSpec, + partInputHeader->subSpecification, part.spec->lifetime, std::move(headerStack)}; send(ctx.outputs(), part, output); From 46c872ee36bfa5120c297307b3c994613817fcec Mon Sep 17 00:00:00 2001 From: Matthias Richter Date: Fri, 23 Jul 2021 11:05:10 +0200 Subject: [PATCH 285/314] DPL RootTreeWriter: always amend branch name(s) if the callback is configured So far, branch names have only been amended for branch definitions handling more than one branch. The more logical behavior is to amend whenever a callback is configured. --- .../Utils/include/DPLUtils/RootTreeWriter.h | 20 +++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/Framework/Utils/include/DPLUtils/RootTreeWriter.h b/Framework/Utils/include/DPLUtils/RootTreeWriter.h index 45f49891a2b20..441d16728ad04 100644 --- a/Framework/Utils/include/DPLUtils/RootTreeWriter.h +++ b/Framework/Utils/include/DPLUtils/RootTreeWriter.h @@ -188,9 +188,9 @@ class RootTreeWriter /// number of branches controlled by this definition for the same type size_t nofBranches = 1; /// extractor function for the index for parallel branches - IndexExtractor getIndex; // = [](o2::framework::DataRef const&) {return 0;} + IndexExtractor getIndex = nullptr; /// get name of branch from base name and index - BranchNameMapper getName = [](std::string base, size_t i) { return base + "_" + std::to_string(i); }; + BranchNameMapper getName = nullptr; using Fill = std::function; using FillExt = std::function; @@ -317,8 +317,9 @@ class RootTreeWriter void setBranchName(size_t index, const char* branchName) { auto& spec = mBranchSpecs.at(index); - if (spec.names.size() > 1 && spec.getName) { - // set the branch names for this group + if (spec.getName) { + // set the branch names for this group, we also amend if there is only one branch but + // the callback is configured size_t idx = 0; std::generate(spec.names.begin(), spec.names.end(), [&]() { return spec.getName(branchName, idx++); }); } else { @@ -423,8 +424,8 @@ class RootTreeWriter std::vector names; std::vector branches; TClass* classinfo = nullptr; - IndexExtractor getIndex; - BranchNameMapper getName; + IndexExtractor getIndex = nullptr; + BranchNameMapper getName = nullptr; }; using InputContext = InputRecord; @@ -845,12 +846,15 @@ class RootTreeWriter // a getIndex function makes only sense if there are multiple branches assert(def.nofBranches <= 1 || def.getIndex); if (def.nofBranches > 1) { + // FIXME: should that be an exception since assert is disabled in the normal build? assert(def.getIndex && def.getName); mBranchSpecs.back().getIndex = def.getIndex; - mBranchSpecs.back().getName = def.getName; mBranchSpecs.back().names.resize(def.nofBranches); + } - // fill the branch names by calling the getName callback + // always amend the branch name(s) if the callback is configured + if (def.getName) { + mBranchSpecs.back().getName = def.getName; idx = 0; std::generate(mBranchSpecs.back().names.begin(), mBranchSpecs.back().names.end(), [&def, &idx]() { return def.getName(def.branchName, idx++); }); From 4eff506c7c5d6732fe2861fd3d3c3264fabbb37c Mon Sep 17 00:00:00 2001 From: David Rohr Date: Mon, 26 Jul 2021 10:02:23 +0200 Subject: [PATCH 286/314] GPU: Fix compiler warning --- GPU/Common/GPUCommonMath.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GPU/Common/GPUCommonMath.h b/GPU/Common/GPUCommonMath.h index 114f5522bca4c..6e8d438cb4a1c 100644 --- a/GPU/Common/GPUCommonMath.h +++ b/GPU/Common/GPUCommonMath.h @@ -275,7 +275,7 @@ GPUdi() unsigned int GPUCommonMath::Clz(unsigned int x) return x == 0 ? 32 : CHOICE(__builtin_clz(x), __clz(x), __builtin_clz(x)); // use builtin if available #else for (int i = 31; i >= 0; i--) { - if (x & (1 << i)) { + if (x & (1u << i)) { return (31 - i); } } From 43ce1e4bf08a4d33db5c32643736cb6158739121 Mon Sep 17 00:00:00 2001 From: David Rohr Date: Mon, 26 Jul 2021 10:02:41 +0200 Subject: [PATCH 287/314] FST: In the conversion tool, write to stdout even if InfoLogger is available --- prodtests/full-system-test/convert-raw-to-tf-file.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/prodtests/full-system-test/convert-raw-to-tf-file.sh b/prodtests/full-system-test/convert-raw-to-tf-file.sh index 01f392b658da4..04f6eeec93940 100755 --- a/prodtests/full-system-test/convert-raw-to-tf-file.sh +++ b/prodtests/full-system-test/convert-raw-to-tf-file.sh @@ -29,6 +29,7 @@ sleep 15 echo Starting Readout export O2_INFOLOGGER_OPTIONS="floodProtection=0" +export O2_INFOLOGGER_MODE=stdout o2-readout-exe file:rdo_TF.cfg &> readout.log & RD_PID=$! echo Readout PID: $RD_PID From 02d991421c58db9ba90a4e2342b628dba4ac4115 Mon Sep 17 00:00:00 2001 From: David Rohr Date: Mon, 26 Jul 2021 10:08:05 +0200 Subject: [PATCH 288/314] DPL: Forward more FMQ command line option --- Framework/Core/src/DeviceSpecHelpers.cxx | 2 ++ Framework/Core/test/test_FrameworkDataFlowToDDS.cxx | 8 ++++---- Framework/Core/test/test_FrameworkDataFlowToO2Control.cxx | 8 ++++++++ 3 files changed, 14 insertions(+), 4 deletions(-) diff --git a/Framework/Core/src/DeviceSpecHelpers.cxx b/Framework/Core/src/DeviceSpecHelpers.cxx index f42814ba2607e..a89e0ca6bbca6 100644 --- a/Framework/Core/src/DeviceSpecHelpers.cxx +++ b/Framework/Core/src/DeviceSpecHelpers.cxx @@ -1112,6 +1112,7 @@ void DeviceSpecHelpers::prepareArguments(bool defaultQuiet, bool defaultStopped, realOdesc.add_options()("post-fork-command", bpo::value()); realOdesc.add_options()("shm-segment-size", bpo::value()); realOdesc.add_options()("shm-mlock-segment", bpo::value()); + realOdesc.add_options()("shm-mlock-segment-on-creation", bpo::value()); realOdesc.add_options()("shm-zero-segment", bpo::value()); realOdesc.add_options()("shm-throw-bad-alloc", bpo::value()); realOdesc.add_options()("shm-segment-id", bpo::value()); @@ -1258,6 +1259,7 @@ boost::program_options::options_description DeviceSpecHelpers::getForwardedDevic ("channel-prefix", bpo::value()->default_value(""), "prefix to use for multiplexing multiple workflows in the same session") // ("shm-segment-size", bpo::value(), "size of the shared memory segment in bytes") // ("shm-mlock-segment", bpo::value()->default_value("false"), "mlock shared memory segment") // + ("shm-mlock-segment-on-creation", bpo::value()->default_value("false"), "mlock shared memory segment once on creation") // ("shm-zero-segment", bpo::value()->default_value("false"), "zero shared memory segment") // ("shm-throw-bad-alloc", bpo::value()->default_value("true"), "throw if insufficient shm memory") // ("shm-segment-id", bpo::value()->default_value("0"), "shm segment id") // diff --git a/Framework/Core/test/test_FrameworkDataFlowToDDS.cxx b/Framework/Core/test/test_FrameworkDataFlowToDDS.cxx index 080935a247c95..f495ae61a5350 100644 --- a/Framework/Core/test/test_FrameworkDataFlowToDDS.cxx +++ b/Framework/Core/test/test_FrameworkDataFlowToDDS.cxx @@ -115,16 +115,16 @@ BOOST_AUTO_TEST_CASE(TestDDS) dumpDeviceSpec2DDS(ss, devices, executions, command); auto expected = R"EXPECTED( - foo | LD_PRELOAD=libSegFault.so SEGFAULT_SIGNALS="all" foo --id A --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --channel-config "name=from_A_to_B,type=push,method=bind,address=ipc://@localhostworkflow-id_22000,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_A_to_C,type=push,method=bind,address=ipc://@localhostworkflow-id_22001,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds + foo | LD_PRELOAD=libSegFault.so SEGFAULT_SIGNALS="all" foo --id A --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-mlock-segment-on-creation false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --channel-config "name=from_A_to_B,type=push,method=bind,address=ipc://@localhostworkflow-id_22000,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_A_to_C,type=push,method=bind,address=ipc://@localhostworkflow-id_22001,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds - foo | LD_PRELOAD=libSegFault.so SEGFAULT_SIGNALS="all" foo --id B --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --channel-config "name=from_B_to_D,type=push,method=bind,address=ipc://@localhostworkflow-id_22002,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_A_to_B,type=pull,method=connect,address=ipc://@localhostworkflow-id_22000,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds + foo | LD_PRELOAD=libSegFault.so SEGFAULT_SIGNALS="all" foo --id B --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-mlock-segment-on-creation false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --channel-config "name=from_B_to_D,type=push,method=bind,address=ipc://@localhostworkflow-id_22002,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_A_to_B,type=pull,method=connect,address=ipc://@localhostworkflow-id_22000,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds - foo | LD_PRELOAD=libSegFault.so SEGFAULT_SIGNALS="all" foo --id C --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --channel-config "name=from_C_to_D,type=push,method=bind,address=ipc://@localhostworkflow-id_22003,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_A_to_C,type=pull,method=connect,address=ipc://@localhostworkflow-id_22001,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds + foo | LD_PRELOAD=libSegFault.so SEGFAULT_SIGNALS="all" foo --id C --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-mlock-segment-on-creation false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --channel-config "name=from_C_to_D,type=push,method=bind,address=ipc://@localhostworkflow-id_22003,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_A_to_C,type=pull,method=connect,address=ipc://@localhostworkflow-id_22001,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds - foo | LD_PRELOAD=libSegFault.so SEGFAULT_SIGNALS="all" foo --id D --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --a-param 1 --b-param "" --c-param "foo;bar" --channel-config "name=from_B_to_D,type=pull,method=connect,address=ipc://@localhostworkflow-id_22002,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_C_to_D,type=pull,method=connect,address=ipc://@localhostworkflow-id_22003,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds + foo | LD_PRELOAD=libSegFault.so SEGFAULT_SIGNALS="all" foo --id D --shm-monitor false --log-color false --color false --jobs 4 --severity info --shm-mlock-segment false --shm-mlock-segment-on-creation false --shm-segment-id 0 --shm-throw-bad-alloc true --shm-zero-segment false --stacktrace-on-signal all --a-param 1 --b-param "" --c-param "foo;bar" --channel-config "name=from_B_to_D,type=pull,method=connect,address=ipc://@localhostworkflow-id_22002,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --channel-config "name=from_C_to_D,type=pull,method=connect,address=ipc://@localhostworkflow-id_22003,transport=shmem,rateLogging=0,rcvBufSize=1,sndBufSize=1" --session dpl_workflow-id --plugin dds diff --git a/Framework/Core/test/test_FrameworkDataFlowToO2Control.cxx b/Framework/Core/test/test_FrameworkDataFlowToO2Control.cxx index cb9e5937c3e98..6380e132569ab 100644 --- a/Framework/Core/test/test_FrameworkDataFlowToO2Control.cxx +++ b/Framework/Core/test/test_FrameworkDataFlowToO2Control.cxx @@ -179,6 +179,8 @@ const std::vector expectedTasks{ - "'info'" - "--shm-mlock-segment" - "'false'" + - "--shm-mlock-segment-on-creation" + - "'false'" - "--shm-segment-id" - "'0'" - "--shm-zero-segment" @@ -241,6 +243,8 @@ const std::vector expectedTasks{ - "'info'" - "--shm-mlock-segment" - "'false'" + - "--shm-mlock-segment-on-creation" + - "'false'" - "--shm-segment-id" - "'0'" - "--shm-zero-segment" @@ -303,6 +307,8 @@ const std::vector expectedTasks{ - "'info'" - "--shm-mlock-segment" - "'false'" + - "--shm-mlock-segment-on-creation" + - "'false'" - "--shm-segment-id" - "'0'" - "--shm-zero-segment" @@ -366,6 +372,8 @@ const std::vector expectedTasks{ - "'info'" - "--shm-mlock-segment" - "'false'" + - "--shm-mlock-segment-on-creation" + - "'false'" - "--shm-segment-id" - "'0'" - "--shm-zero-segment" From 2cad45f4d1db9eee0434095c70c05443207080d3 Mon Sep 17 00:00:00 2001 From: David Rohr Date: Mon, 26 Jul 2021 10:08:33 +0200 Subject: [PATCH 289/314] FST: Need longer delay after creating DD DATA SHM segment --- prodtests/full-system-test/datadistribution.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/prodtests/full-system-test/datadistribution.sh b/prodtests/full-system-test/datadistribution.sh index 1c2e80abc552c..2d20a02ac7c6d 100755 --- a/prodtests/full-system-test/datadistribution.sh +++ b/prodtests/full-system-test/datadistribution.sh @@ -9,7 +9,7 @@ if [ `which StfBuilder 2> /dev/null | wc -l` == "0" ]; then fi # For benchmark only, do NOT copy&paste! -export DATADIST_SHM_DELAY=10 +export DATADIST_SHM_DELAY=30 export DATADIST_FILE_READ_COUNT=$NTIMEFRAMES export TF_DIR=./raw/timeframe From 5c285c4cd04fc7b0bf4dc7a42f6a20beecadfdda Mon Sep 17 00:00:00 2001 From: David Rohr Date: Mon, 26 Jul 2021 10:09:05 +0200 Subject: [PATCH 290/314] FST: Fix NUMA balancing issue, need to mlock memory directly after segment creation once --- prodtests/full-system-test/dpl-workflow.sh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/prodtests/full-system-test/dpl-workflow.sh b/prodtests/full-system-test/dpl-workflow.sh index c1b97b01216f6..0dc71e03957a4 100755 --- a/prodtests/full-system-test/dpl-workflow.sh +++ b/prodtests/full-system-test/dpl-workflow.sh @@ -30,6 +30,9 @@ fi if [ $NUMAGPUIDS != 0 ]; then ARGS_ALL+=" --child-driver 'numactl --membind $NUMAID --cpunodebind $NUMAID'" fi +if [ $GPUTYPE != "CPU" ]; then + ARGS_ALL+=" --shm-mlock-segment-on-creation 1" +fi # Set some individual workflow arguments depending on configuration CTF_DETECTORS=ITS,MFT,TPC,TOF,FT0,MID,EMC,PHS,CPV,ZDC,FDD,HMP,FV0,TRD,MCH From c4a2bc540e5bbdeee288ee0cbed9f104577e4dee Mon Sep 17 00:00:00 2001 From: David Rohr Date: Mon, 26 Jul 2021 10:31:37 +0200 Subject: [PATCH 291/314] GPU Workflow: make sure to create lock file with correct permissions also when process umask is set --- GPU/Workflow/src/GPUWorkflowSpec.cxx | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/GPU/Workflow/src/GPUWorkflowSpec.cxx b/GPU/Workflow/src/GPUWorkflowSpec.cxx index 582f5eb719107..ce2a514b5df3d 100644 --- a/GPU/Workflow/src/GPUWorkflowSpec.cxx +++ b/GPU/Workflow/src/GPUWorkflowSpec.cxx @@ -299,10 +299,12 @@ DataProcessorSpec getGPURecoWorkflowSpec(gpuworkflow::CompletionPolicyData* poli if (info.size) { int fd = 0; if (confParam.mutexMemReg) { - fd = open("/tmp/o2_gpu_memlock_mutex.lock", O_RDWR | O_CREAT | O_CLOEXEC, S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH); + mode_t mask = S_IRUSR | S_IWUSR | S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH; + fd = open("/tmp/o2_gpu_memlock_mutex.lock", O_RDWR | O_CREAT | O_CLOEXEC, mask); if (fd == -1) { throw std::runtime_error("Error opening lock file"); } + fchmod(fd, mask); if (lockf(fd, F_LOCK, 0)) { throw std::runtime_error("Error locking file"); } From 41dea529d5eb62b83ef406df05bb1f38524b9392 Mon Sep 17 00:00:00 2001 From: David Rohr Date: Mon, 26 Jul 2021 13:17:15 +0200 Subject: [PATCH 292/314] GPU: Build benchmark only for O2 builds --- GPU/CMakeLists.txt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/GPU/CMakeLists.txt b/GPU/CMakeLists.txt index 7019f951b25fb..eed1b51e61035 100644 --- a/GPU/CMakeLists.txt +++ b/GPU/CMakeLists.txt @@ -22,7 +22,7 @@ add_subdirectory(Common) add_subdirectory(Utils) add_subdirectory(TPCFastTransformation) add_subdirectory(GPUTracking) -add_subdirectory(GPUbenchmark) if(ALIGPU_BUILD_TYPE STREQUAL "O2") + add_subdirectory(GPUbenchmark) add_subdirectory(Workflow) endif() From 7669cee8eff31cab09f81ab3f9d4117fa6c72455 Mon Sep 17 00:00:00 2001 From: David Rohr Date: Mon, 26 Jul 2021 13:41:49 +0200 Subject: [PATCH 293/314] GPU Display: don't draw clusters multiple times if cluster 2 collision association not available --- GPU/GPUTracking/display/GPUDisplay.cxx | 80 +++++++++++++------------- 1 file changed, 41 insertions(+), 39 deletions(-) diff --git a/GPU/GPUTracking/display/GPUDisplay.cxx b/GPU/GPUTracking/display/GPUDisplay.cxx index cf9a78437e96d..a5e6fb1dfced0 100644 --- a/GPU/GPUTracking/display/GPUDisplay.cxx +++ b/GPU/GPUTracking/display/GPUDisplay.cxx @@ -807,51 +807,53 @@ GPUDisplay::vboList GPUDisplay::DrawClusters(int iSlice, int select, unsigned in { size_t startCount = mVertexBufferStart[iSlice].size(); size_t startCountInner = mVertexBuffer[iSlice].size(); - const int firstCluster = (mCollisionClusters.size() > 1 && iCol > 0) ? mCollisionClusters[iCol - 1][iSlice] : 0; - const int lastCluster = (mCollisionClusters.size() > 1 && iCol + 1 < mCollisionClusters.size()) ? mCollisionClusters[iCol][iSlice] : (mParam->par.earlyTpcTransform ? mIOPtrs->nClusterData[iSlice] : mIOPtrs->clustersNative ? mIOPtrs->clustersNative->nClustersSector[iSlice] : 0); - for (int cidInSlice = firstCluster; cidInSlice < lastCluster; cidInSlice++) { - const int cid = GET_CID(iSlice, cidInSlice); - if (mCfgH.hideUnmatchedClusters && mQA && mQA->SuppressHit(cid)) { - continue; - } - bool draw = mGlobalPos[cid].w == select; - - if (mCfgH.markAdjacentClusters) { - const int attach = mIOPtrs->mergedTrackHitAttachment[cid]; - if (attach) { - if (mCfgH.markAdjacentClusters >= 32) { - if (mQA && mQA->clusterRemovable(attach, mCfgH.markAdjacentClusters == 33)) { + if (mCollisionClusters.size() > 0 || iCol == 0) { + const int firstCluster = (mCollisionClusters.size() > 1 && iCol > 0) ? mCollisionClusters[iCol - 1][iSlice] : 0; + const int lastCluster = (mCollisionClusters.size() > 1 && iCol + 1 < mCollisionClusters.size()) ? mCollisionClusters[iCol][iSlice] : (mParam->par.earlyTpcTransform ? mIOPtrs->nClusterData[iSlice] : mIOPtrs->clustersNative ? mIOPtrs->clustersNative->nClustersSector[iSlice] : 0); + for (int cidInSlice = firstCluster; cidInSlice < lastCluster; cidInSlice++) { + const int cid = GET_CID(iSlice, cidInSlice); + if (mCfgH.hideUnmatchedClusters && mQA && mQA->SuppressHit(cid)) { + continue; + } + bool draw = mGlobalPos[cid].w == select; + + if (mCfgH.markAdjacentClusters) { + const int attach = mIOPtrs->mergedTrackHitAttachment[cid]; + if (attach) { + if (mCfgH.markAdjacentClusters >= 32) { + if (mQA && mQA->clusterRemovable(attach, mCfgH.markAdjacentClusters == 33)) { + draw = select == tMARKED; + } + } else if ((mCfgH.markAdjacentClusters & 2) && (attach & gputpcgmmergertypes::attachTube)) { draw = select == tMARKED; - } - } else if ((mCfgH.markAdjacentClusters & 2) && (attach & gputpcgmmergertypes::attachTube)) { - draw = select == tMARKED; - } else if ((mCfgH.markAdjacentClusters & 1) && (attach & (gputpcgmmergertypes::attachGood | gputpcgmmergertypes::attachTube)) == 0) { - draw = select == tMARKED; - } else if ((mCfgH.markAdjacentClusters & 4) && (attach & gputpcgmmergertypes::attachGoodLeg) == 0) { - draw = select == tMARKED; - } else if ((mCfgH.markAdjacentClusters & 16) && (attach & gputpcgmmergertypes::attachHighIncl)) { - draw = select == tMARKED; - } else if (mCfgH.markAdjacentClusters & 8) { - if (fabsf(mIOPtrs->mergedTracks[attach & gputpcgmmergertypes::attachTrackMask].GetParam().GetQPt()) > 20.f) { + } else if ((mCfgH.markAdjacentClusters & 1) && (attach & (gputpcgmmergertypes::attachGood | gputpcgmmergertypes::attachTube)) == 0) { + draw = select == tMARKED; + } else if ((mCfgH.markAdjacentClusters & 4) && (attach & gputpcgmmergertypes::attachGoodLeg) == 0) { + draw = select == tMARKED; + } else if ((mCfgH.markAdjacentClusters & 16) && (attach & gputpcgmmergertypes::attachHighIncl)) { draw = select == tMARKED; + } else if (mCfgH.markAdjacentClusters & 8) { + if (fabsf(mIOPtrs->mergedTracks[attach & gputpcgmmergertypes::attachTrackMask].GetParam().GetQPt()) > 20.f) { + draw = select == tMARKED; + } } } + } else if (mCfgH.markClusters) { + short flags; + if (mParam->par.earlyTpcTransform) { + flags = mIOPtrs->clusterData[iSlice][cidInSlice].flags; + } else { + flags = mIOPtrs->clustersNative->clustersLinear[cid].getFlags(); + } + const bool match = flags & mCfgH.markClusters; + draw = (select == tMARKED) ? (match) : (draw && !match); + } else if (mCfgH.markFakeClusters) { + const bool fake = (mQA->HitAttachStatus(cid)); + draw = (select == tMARKED) ? (fake) : (draw && !fake); } - } else if (mCfgH.markClusters) { - short flags; - if (mParam->par.earlyTpcTransform) { - flags = mIOPtrs->clusterData[iSlice][cidInSlice].flags; - } else { - flags = mIOPtrs->clustersNative->clustersLinear[cid].getFlags(); + if (draw) { + mVertexBuffer[iSlice].emplace_back(mGlobalPos[cid].x, mGlobalPos[cid].y, mCfgH.projectXY ? 0 : mGlobalPos[cid].z); } - const bool match = flags & mCfgH.markClusters; - draw = (select == tMARKED) ? (match) : (draw && !match); - } else if (mCfgH.markFakeClusters) { - const bool fake = (mQA->HitAttachStatus(cid)); - draw = (select == tMARKED) ? (fake) : (draw && !fake); - } - if (draw) { - mVertexBuffer[iSlice].emplace_back(mGlobalPos[cid].x, mGlobalPos[cid].y, mCfgH.projectXY ? 0 : mGlobalPos[cid].z); } } insertVertexList(iSlice, startCountInner, mVertexBuffer[iSlice].size()); From f63a915166d4963fe02b1efe8a6bbfa0ed4d3f60 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Tue, 27 Jul 2021 09:27:17 +0200 Subject: [PATCH 294/314] DPL: automatically load objecs from CCDB (#6755) --- .../Headers/include/Headers/DataHeader.h | 1 + Framework/Core/CMakeLists.txt | 2 + .../Core/include/Framework/DataRefUtils.h | 8 ++++ .../Core/include/Framework/InputRecord.h | 3 ++ .../include/Framework/SerializationMethods.h | 25 ++++++++++ Framework/Core/src/DataRefUtils.cxx | 43 +++++++++++++++++ Framework/Core/src/LifetimeHelpers.cxx | 8 ++-- Framework/TestWorkflows/CMakeLists.txt | 6 +++ .../TestWorkflows/src/test_CCDBFetcher.cxx | 48 +++++++++++++++++++ 9 files changed, 140 insertions(+), 4 deletions(-) create mode 100644 Framework/Core/src/DataRefUtils.cxx create mode 100644 Framework/TestWorkflows/src/test_CCDBFetcher.cxx diff --git a/DataFormats/Headers/include/Headers/DataHeader.h b/DataFormats/Headers/include/Headers/DataHeader.h index 62afee27882bf..67e48041073b9 100644 --- a/DataFormats/Headers/include/Headers/DataHeader.h +++ b/DataFormats/Headers/include/Headers/DataHeader.h @@ -317,6 +317,7 @@ constexpr o2::header::SerializationMethod gSerializationMethodAny{"*******"}; constexpr o2::header::SerializationMethod gSerializationMethodInvalid{"INVALID"}; constexpr o2::header::SerializationMethod gSerializationMethodNone{"NONE"}; constexpr o2::header::SerializationMethod gSerializationMethodROOT{"ROOT"}; +constexpr o2::header::SerializationMethod gSerializationMethodCCDB{"CCDB"}; constexpr o2::header::SerializationMethod gSerializationMethodFlatBuf{"FLATBUF"}; constexpr o2::header::SerializationMethod gSerializationMethodArrow{"ARROW"}; diff --git a/Framework/Core/CMakeLists.txt b/Framework/Core/CMakeLists.txt index 51eaf4279ec13..4504f262bea8c 100644 --- a/Framework/Core/CMakeLists.txt +++ b/Framework/Core/CMakeLists.txt @@ -43,6 +43,7 @@ o2_add_library(Framework src/DataProcessingDevice.cxx src/DataProcessingHeader.cxx src/DataProcessingHelpers.cxx + src/DataRefUtils.cxx src/SourceInfoHeader.cxx src/DataProcessor.cxx src/DataRelayer.cxx @@ -127,6 +128,7 @@ o2_add_library(Framework FairMQ::FairMQ O2::CommonUtils O2::MathUtils + O2::CCDB O2::FrameworkFoundation O2::Headers O2::MemoryResources diff --git a/Framework/Core/include/Framework/DataRefUtils.h b/Framework/Core/include/Framework/DataRefUtils.h index 0a9e6d6b24a02..97ded9972bc2d 100644 --- a/Framework/Core/include/Framework/DataRefUtils.h +++ b/Framework/Core/include/Framework/DataRefUtils.h @@ -23,6 +23,7 @@ #include #include +#include namespace o2::framework { @@ -150,8 +151,15 @@ struct DataRefUtils { } }); return std::move(result); + } else if constexpr (is_specialization::value == true) { + using wrapped = typename T::wrapped_type; + using DataHeader = o2::header::DataHeader; + std::unique_ptr result(static_cast(DataRefUtils::decodeCCDB(ref, typeid(wrapped)))); + return std::move(result); } } + // Decode a CCDB object using the CcdbApi. + static void* decodeCCDB(DataRef const& ref, std::type_info const& info); static o2::header::DataHeader::PayloadSizeType getPayloadSize(const DataRef& ref) { diff --git a/Framework/Core/include/Framework/InputRecord.h b/Framework/Core/include/Framework/InputRecord.h index 08f2b053f4c30..240e524f7d701 100644 --- a/Framework/Core/include/Framework/InputRecord.h +++ b/Framework/Core/include/Framework/InputRecord.h @@ -383,6 +383,9 @@ class InputRecord // return type with owning Deleter instance, forwarding to default_deleter std::unique_ptr> result(DataRefUtils::as>(ref).release()); return result; + } else if (method == o2::header::gSerializationMethodCCDB) { + std::unique_ptr> result(DataRefUtils::as>(ref).release()); + return result; } else { throw runtime_error("Attempt to extract object from message with unsupported serialization type"); } diff --git a/Framework/Core/include/Framework/SerializationMethods.h b/Framework/Core/include/Framework/SerializationMethods.h index 54e53c5af884f..4d20e8861fad5 100644 --- a/Framework/Core/include/Framework/SerializationMethods.h +++ b/Framework/Core/include/Framework/SerializationMethods.h @@ -100,6 +100,31 @@ class BoostSerialized private: wrapped_type& mRef; }; + +template +class CCDBSerialized +{ + public: + using non_messageable = o2::framework::MarkAsNonMessageable; + using wrapped_type = T; + using hint_type = HintType; + + static_assert(std::is_pointer::value == false, "wrapped type can not be a pointer"); + static_assert(std::is_pointer::value == false, "hint type can not be a pointer"); + + CCDBSerialized() = delete; + CCDBSerialized(wrapped_type& ref, hint_type* hint = nullptr) : mRef(ref), mHint(hint) {} + + T& operator()() { return mRef; } + T const& operator()() const { return mRef; } + + hint_type* getHint() const { return mHint; } + + private: + wrapped_type& mRef; + hint_type* mHint; // optional hint e.g. class info or class name +}; + } // namespace framework } // namespace o2 #endif // FRAMEWORK_SERIALIZATIONMETHODS_H diff --git a/Framework/Core/src/DataRefUtils.cxx b/Framework/Core/src/DataRefUtils.cxx new file mode 100644 index 0000000000000..e25311942ae14 --- /dev/null +++ b/Framework/Core/src/DataRefUtils.cxx @@ -0,0 +1,43 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. + +#include +#include "CCDB/CcdbApi.h" +#include "Framework/DataRefUtils.h" +#include +#include +#include "Framework/RuntimeError.h" + +namespace o2::framework +{ +// Adapted from CcdbApi private method interpretAsTMemFileAndExtract +// If the former is moved to public, throws on error and could be changed to +// not require a mutex we could use it. +void* DataRefUtils::decodeCCDB(DataRef const& ref, std::type_info const& tinfo) +{ + void* result = nullptr; + Int_t previousErrorLevel = gErrorIgnoreLevel; + gErrorIgnoreLevel = kFatal; + auto* dh = o2::header::get(ref.header); + TMemFile memFile("name", const_cast(ref.payload), dh->payloadSize, "READ"); + gErrorIgnoreLevel = previousErrorLevel; + if (memFile.IsZombie()) { + return nullptr; + } + TClass* tcl = TClass::GetClass(tinfo); + result = ccdb::CcdbApi::extractFromTFile(memFile, tcl); + if (!result) { + throw runtime_error_f("Couldn't retrieve object corresponding to %s from TFile", tcl->GetName()); + } + memFile.Close(); + return result; +} +} // namespace o2::framework diff --git a/Framework/Core/src/LifetimeHelpers.cxx b/Framework/Core/src/LifetimeHelpers.cxx index 6e725d4925265..3d9c4d11990de 100644 --- a/Framework/Core/src/LifetimeHelpers.cxx +++ b/Framework/Core/src/LifetimeHelpers.cxx @@ -161,7 +161,7 @@ size_t readToMessage(void* p, size_t size, size_t nmemb, void* userdata) o2::vector* buffer = (o2::vector*)userdata; size_t oldSize = buffer->size(); buffer->resize(oldSize + nmemb * size); - memcpy(buffer->data() + oldSize, userdata, nmemb * size); + memcpy(buffer->data() + oldSize, p, nmemb * size); return size * nmemb; } @@ -199,9 +199,8 @@ ExpirationHandler::Handler auto& rawDeviceService = services.get(); auto&& transport = rawDeviceService.device()->GetChannel(sourceChannel, 0).Transport(); auto channelAlloc = o2::pmr::getTransportAllocator(transport); - o2::vector payloadBuffer; + o2::vector payloadBuffer{transport->GetMemoryResource()}; payloadBuffer.reserve(10000); // we begin with messages of 10KB - auto payload = o2::pmr::getMessage(std::forward>(payloadBuffer), transport->GetMemoryResource()); CURL* curl = curl_easy_init(); if (curl == nullptr) { @@ -251,10 +250,11 @@ ExpirationHandler::Handler double dl; res = curl_easy_getinfo(curl, CURLINFO_SIZE_DOWNLOAD, &dl); dh.payloadSize = payloadBuffer.size(); - dh.payloadSerializationMethod = gSerializationMethodNone; + dh.payloadSerializationMethod = gSerializationMethodCCDB; DataProcessingHeader dph{timestamp, 1}; auto header = o2::pmr::getMessage(o2::header::Stack{channelAlloc, dh, dph}); + auto payload = o2::pmr::getMessage(std::forward>(payloadBuffer), transport->GetMemoryResource()); ref.header = std::move(header); ref.payload = std::move(payload); diff --git a/Framework/TestWorkflows/CMakeLists.txt b/Framework/TestWorkflows/CMakeLists.txt index 77895556881ea..7ad0b3e349cc3 100644 --- a/Framework/TestWorkflows/CMakeLists.txt +++ b/Framework/TestWorkflows/CMakeLists.txt @@ -93,6 +93,12 @@ o2_add_dpl_workflow(tof-dummy-ccdb PUBLIC_LINK_LIBRARIES O2::TOFReconstruction COMPONENT_NAME TestWorkflows) +# Detector specific dummy workflows +o2_add_dpl_workflow(test-ccdb-fetcher + SOURCES src/test_CCDBFetcher.cxx + PUBLIC_LINK_LIBRARIES O2::DataFormatsTOF O2::Framework + COMPONENT_NAME TestWorkflows) + if(BUILD_SIMULATION) o2_add_executable( ITSClusterizers diff --git a/Framework/TestWorkflows/src/test_CCDBFetcher.cxx b/Framework/TestWorkflows/src/test_CCDBFetcher.cxx new file mode 100644 index 0000000000000..817b901dfa9cd --- /dev/null +++ b/Framework/TestWorkflows/src/test_CCDBFetcher.cxx @@ -0,0 +1,48 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. +#include "Framework/runDataProcessing.h" +#include "Framework/ServiceRegistry.h" +#include "Framework/ControlService.h" +#include "Framework/CCDBParamSpec.h" +#include "DataFormatsTOF/CalibLHCphaseTOF.h" + +#include +#include + +using namespace o2::framework; +using namespace o2::header; + +// This is how you can define your processing in a declarative way +WorkflowSpec defineDataProcessing(ConfigContext const&) +{ + return WorkflowSpec{ + { + "A", + {InputSpec{"somecondition", "TOF", "LHCphase", 0, Lifetime::Condition, {ccdbParamSpec("TOF/LHCphase")}}, + InputSpec{"sometimer", "TST", "BAR", 0, Lifetime::Timer, {startTimeParamSpec(1638548475371)}}}, + {OutputSpec{"TST", "A1", 0, Lifetime::Timeframe}}, + AlgorithmSpec{ + adaptStateless([](DataAllocator& outputs, InputRecord& inputs, ControlService& control) { + auto ref = inputs.get("somecondition"); + auto header = o2::header::get(ref.header); + if (header->payloadSize != 2048) { + LOGP(ERROR, "Wrong size for condition payload (expected {}, found {}", 2048, header->payloadSize); + } + auto condition = inputs.get("somecondition"); + for (size_t pi = 0; pi < condition->size(); pi++) { + LOGP(INFO, "Phase at {} for timestamp {} is {}", pi, condition->timestamp(pi), condition->LHCphase(pi)); + } + control.readyToQuit(QuitRequest::All); + })}, + Options{ + {"test-option", VariantType::String, "test", {"A test option"}}}, + }}; +} From a1f450832da2362638753ea3f962fa8dd37bb286 Mon Sep 17 00:00:00 2001 From: shahoian Date: Mon, 26 Jul 2021 14:21:01 +0200 Subject: [PATCH 295/314] add ITS layers patten to TrkClusRef from AfterBurner --- .../ITSMFT/common/include/DataFormatsITSMFT/TrkClusRef.h | 3 +++ Detectors/GlobalTracking/src/MatchTPCITS.cxx | 4 +++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/TrkClusRef.h b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/TrkClusRef.h index 87ec641e55f43..164fd850fd539 100644 --- a/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/TrkClusRef.h +++ b/DataFormats/Detectors/ITSMFT/common/include/DataFormatsITSMFT/TrkClusRef.h @@ -25,7 +25,10 @@ namespace itsmft // can refer to max 15 indices in the vector of total length <268435456, i.e. 17895697 tracks in worst case struct TrkClusRef : public o2::dataformats::RangeRefComp<4> { using o2::dataformats::RangeRefComp<4>::RangeRefComp; + uint16_t pattern = 0; ///< layers pattern + GPUd() int getNClusters() const { return getEntries(); } + bool hasHitOnLayer(int i) { return pattern & (0x1 << i); } ClassDefNV(TrkClusRef, 1); }; diff --git a/Detectors/GlobalTracking/src/MatchTPCITS.cxx b/Detectors/GlobalTracking/src/MatchTPCITS.cxx index 5c8ae074e15aa..95a773989234d 100644 --- a/Detectors/GlobalTracking/src/MatchTPCITS.cxx +++ b/Detectors/GlobalTracking/src/MatchTPCITS.cxx @@ -1366,6 +1366,7 @@ bool MatchTPCITS::refitABTrack(int iITSAB, const TPCABSeed& seed) // refit track outward in the ITS const auto& itsClRefs = mABTrackletRefs[iITSAB]; int nclRefit = 0, ncl = itsClRefs.getNClusters(); + uint16_t patt = 0; float chi2 = 0.f; // NOTE: the ITS cluster absolute indices are stored from inner to outer layers for (int icl = itsClRefs.getFirstEntry(); icl < itsClRefs.getEntriesBound(); icl++) { @@ -1668,18 +1669,19 @@ void MatchTPCITS::refitABWinners() const auto& ABSeed = mTPCABSeeds[wid]; int start = mABTrackletClusterIDs.size(); int lID = ABSeed.winLinkID, ncl = 0; + auto& clref = mABTrackletRefs.emplace_back(start, ncl); while (lID > MinusOne) { const auto& winL = ABSeed.getLink(lID); if (winL.clID > MinusOne) { mABTrackletClusterIDs.push_back(winL.clID); ncl++; + clref.pattern |= 0x1 << winL.layerID; if (mMCTruthON) { accountClusterLabel(winL.clID); } } lID = winL.parentID; } - mABTrackletRefs.emplace_back(start, ncl); if (!refitABTrack(mABTrackletRefs.size() - 1, ABSeed)) { // on failure, destroy added tracklet reference mABTrackletRefs.pop_back(); mABTrackletClusterIDs.resize(start); From a6b313146975dae78d6887dc2acd4eaf7b3aace6 Mon Sep 17 00:00:00 2001 From: shahoian Date: Mon, 26 Jul 2021 14:21:12 +0200 Subject: [PATCH 296/314] Account ITS-TPC AfterBurner tracks in AOD producer --- Detectors/AOD/src/AODProducerWorkflowSpec.cxx | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx index 4f5c7ac27b3c1..cdaab0659bd81 100644 --- a/Detectors/AOD/src/AODProducerWorkflowSpec.cxx +++ b/Detectors/AOD/src/AODProducerWorkflowSpec.cxx @@ -212,6 +212,9 @@ void AODProducerWorkflowDPL::fillTrackTablesPerCollision(int collisionID, const auto& tpcClusRefs = data.getTPCTracksClusterRefs(); const auto& tpcClusShMap = data.clusterShMapTPC; const auto& tpcClusAcc = data.getTPCClusters(); + const auto& tpcTracks = data.getTPCTracks(); + const auto& itsTracks = data.getITSTracks(); + const auto& itsABRefs = data.getITSABRefs(); for (int src = GIndex::NSources; src--;) { int start = trackRef.getFirstEntryOfSource(src); @@ -228,11 +231,12 @@ void AODProducerWorkflowDPL::fillTrackTablesPerCollision(int collisionID, auto contributorsGID = data.getSingleDetectorRefs(trackIndex); const auto& trackPar = data.getTrackParam(trackIndex); if (contributorsGID[GIndex::Source::ITS].isIndexSet()) { - const auto& itsOrig = data.getITSTrack(contributorsGID[GIndex::ITS]); - extraInfoHolder.itsClusterMap = itsOrig.getPattern(); + extraInfoHolder.itsClusterMap = itsTracks[contributorsGID[GIndex::ITS].getIndex()].getPattern(); + } else if (contributorsGID[GIndex::Source::ITSAB].isIndexSet()) { // this is an ITS-TPC afterburner contributor + extraInfoHolder.itsClusterMap = itsABRefs[contributorsGID[GIndex::Source::ITSAB].getIndex()].pattern; } if (contributorsGID[GIndex::Source::TPC].isIndexSet()) { - const auto& tpcOrig = data.getTPCTrack(contributorsGID[GIndex::TPC]); + const auto& tpcOrig = tpcTracks[contributorsGID[GIndex::TPC].getIndex()]; extraInfoHolder.tpcInnerParam = tpcOrig.getP(); extraInfoHolder.tpcChi2NCl = tpcOrig.getNClusters() ? tpcOrig.getChi2() / tpcOrig.getNClusters() : 0; extraInfoHolder.tpcSignal = tpcOrig.getdEdx().dEdxTotTPC; From 329a45d8edd3d0cd263b5daf5e95e73cc9a2e862 Mon Sep 17 00:00:00 2001 From: mario6829 Date: Tue, 27 Jul 2021 09:54:59 +0200 Subject: [PATCH 297/314] Implementation of the ITS Half Barrels (#6584) * Implementation of the ITS Half Barrels * Fixing ITSMisaligner macro for new method names with Half Barrels * Do not set Layer as alignable volume * Fixed number of half barrels * Revert "Fixed number of half barrels" This reverts commit 4f52866c8f191f23ed22dea4feb2717927adbb29. * Fixed number of half barrels * Correctly add half barrel number to hit generation and chip index number Co-authored-by: Mario Sitta --- .../ITS/base/include/ITSBase/GeometryTGeo.h | 93 +++++++++----- .../ITSMFT/ITS/base/src/GeometryTGeo.cxx | 118 +++++++++++++----- .../ITSMFT/ITS/macros/test/ITSMisaligner.C | 22 ++-- .../include/ITSSimulation/Detector.h | 19 ++- .../include/ITSSimulation/V3Layer.h | 12 +- .../ITSMFT/ITS/simulation/src/Detector.cxx | 64 +++++++--- .../ITSMFT/ITS/simulation/src/V3Layer.cxx | 83 +++++++----- 7 files changed, 287 insertions(+), 124 deletions(-) diff --git a/Detectors/ITSMFT/ITS/base/include/ITSBase/GeometryTGeo.h b/Detectors/ITSMFT/ITS/base/include/ITSBase/GeometryTGeo.h index 66c15c8e26796..508fc91eaeda0 100644 --- a/Detectors/ITSMFT/ITS/base/include/ITSBase/GeometryTGeo.h +++ b/Detectors/ITSMFT/ITS/base/include/ITSBase/GeometryTGeo.h @@ -103,34 +103,39 @@ class GeometryTGeo : public o2::itsmft::GeometryTGeo int getNumberOfChipsPerModule(int lay) const { return mNumberOfChipsPerModule[lay]; } int getNumberOfChipsPerHalfStave(int lay) const { return mNumberOfChipsPerHalfStave[lay]; } int getNumberOfChipsPerStave(int lay) const { return mNumberOfChipsPerStave[lay]; } + int getNumberOfChipsPerHalfBarrel(int lay) const { return mNumberOfChipsPerHalfBarrel[lay]; } int getNumberOfChipsPerLayer(int lay) const { return mNumberOfChipsPerLayer[lay]; } int getNumberOfModules(int lay) const { return mNumberOfModules[lay]; } int getNumberOfHalfStaves(int lay) const { return mNumberOfHalfStaves[lay]; } int getNumberOfStaves(int lay) const { return mNumberOfStaves[lay]; } + int getNumberOfHalfBarrels() const { return mNumberOfHalfBarrels; } int getNumberOfLayers() const { return mNumberOfLayers; } int getChipIndex(int lay, int detInLay) const { return getFirstChipIndex(lay) + detInLay; } /// This routine computes the chip index number from the layer, stave, and chip number in stave /// \param int lay The layer number. Starting from 0. + /// \param int hba The halfbarrel number. Starting from 0 /// \param int sta The stave number. Starting from 0 /// \param int chipInStave The chip number in the stave. Starting from 0 - int getChipIndex(int lay, int sta, int detInSta) const; + int getChipIndex(int lay, int hba, int sta, int detInSta) const; /// This routine computes the chip index number from the layer, stave, substave and chip number /// in substave /// \param int lay The layer number. Starting from 0. + /// \param int hba The halfbarrel number. Starting from 0 /// \param int sta The stave number. Starting from 0 /// \param int substa The substave number. Starting from 0 /// \param int chipInSStave The chip number in the sub stave. Starting from 0 - int getChipIndex(int lay, int sta, int subSta, int detInSubSta) const; + int getChipIndex(int lay, int hba, int sta, int subSta, int detInSubSta) const; /// This routine computes the chip index number from the layer,stave, substave module and /// chip number in module. /// \param int lay The layer number. Starting from 0. + /// \param int hba The halfbarrel number. Starting from 0 /// \param int sta The stave number. Starting from 0 /// \param int substa The substave number. Starting from 0 /// \param int module The module number ... /// \param int chipInSStave The chip number in the module. Starting from 0 - int getChipIndex(int lay, int sta, int subSta, int md, int detInMod) const; + int getChipIndex(int lay, int hba, int sta, int subSta, int md, int detInMod) const; /// This routine computes the layer, stave, substave, module and chip number /// given the chip index number @@ -142,9 +147,23 @@ class GeometryTGeo : public o2::itsmft::GeometryTGeo /// \param int chip The detector number. Starting from 0 bool getChipId(int index, int& lay, int& sta, int& ssta, int& mod, int& chip) const; + /// This routine computes the layer, half barrel, stave, substave, + /// module and chip number given the chip index number + /// \param int index The chip index number, starting from zero. + /// \param int lay The layer number. Starting from 0 + /// \param int hba The half barrel number. Starting from 0 + /// \param int sta The stave number. Starting from 0 + /// \param int ssta The halfstave number. Starting from 0 + /// \param int mod The module number. Starting from 0 + /// \param int chip The detector number. Starting from 0 + bool getChipId(int index, int& lay, int& hba, int& sta, int& ssta, int& mod, int& chip) const; + /// Get chip layer, from 0 int getLayer(int index) const; + /// Get chip half barrel, from 0 + int getHalfBarrel(int index) const; + /// Get chip stave, from 0 int getStave(int index) const; @@ -174,15 +193,15 @@ class GeometryTGeo : public o2::itsmft::GeometryTGeo return o2::base::GeometryManager::getSymbolicName(getDetID(), index); } - const char* getSymbolicName(int lay, int sta, int det) const + const char* getSymbolicName(int lay, int hba, int sta, int det) const { /// return symbolic name of sensor - return getSymbolicName(getChipIndex(lay, sta, det)); + return getSymbolicName(getChipIndex(lay, hba, sta, det)); } /// Get the transformation matrix for a given chip (NOT A SENSOR!!!) 'index' by quering the TGeoManager TGeoHMatrix* getMatrix(int index) const { return o2::base::GeometryManager::getMatrix(getDetID(), index); } - TGeoHMatrix* getMatrix(int lay, int sta, int sens) const { return getMatrix(getChipIndex(lay, sta, sens)); } + TGeoHMatrix* getMatrix(int lay, int hba, int sta, int sens) const { return getMatrix(getChipIndex(lay, hba, sta, sens)); } bool getOriginalMatrix(int index, TGeoHMatrix& m) const { /// Get the original (ideal geometry) TGeo matrix for a given chip identified by 'index' @@ -190,25 +209,25 @@ class GeometryTGeo : public o2::itsmft::GeometryTGeo return o2::base::GeometryManager::getOriginalMatrix(getDetID(), index, m); } - bool getOriginalMatrix(int lay, int sta, int det, TGeoHMatrix& m) const + bool getOriginalMatrix(int lay, int hba, int sta, int det, TGeoHMatrix& m) const { /// Get the original (ideal geometry) TGeo matrix for a given chip identified by 'index' /// The method is slow, so it should be used with great care (for caching only) - return getOriginalMatrix(getChipIndex(lay, sta, det), m); + return getOriginalMatrix(getChipIndex(lay, hba, sta, det), m); } - const Mat3D& getMatrixT2L(int lay, int sta, int det) const { return getMatrixT2L(getChipIndex(lay, sta, det)); } + const Mat3D& getMatrixT2L(int lay, int hba, int sta, int det) const { return getMatrixT2L(getChipIndex(lay, hba, sta, det)); } const Mat3D& getMatrixSensor(int index) const { return getMatrixL2G(index); } - const Mat3D& getMatrixSensor(int lay, int sta, int det) + const Mat3D& getMatrixSensor(int lay, int hba, int sta, int det) { // get positioning matrix of the sensor, alias to getMatrixL2G - return getMatrixSensor(getChipIndex(lay, sta, det)); + return getMatrixSensor(getChipIndex(lay, hba, sta, det)); } - const Rot2D& getMatrixT2GRot(int lay, int sta, int sens) + const Rot2D& getMatrixT2GRot(int lay, int hba, int sta, int sens) { /// get matrix for tracking to global frame transformation - return getMatrixT2GRot(getChipIndex(lay, sta, sens)); + return getMatrixT2GRot(getChipIndex(lay, hba, sta, sens)); } bool isTrackingFrameCached() const { return !mCacheRefX.empty(); } @@ -237,6 +256,7 @@ class GeometryTGeo : public o2::itsmft::GeometryTGeo static const char* getITSVolPattern() { return sVolumeName.c_str(); } static const char* getITSLayerPattern() { return sLayerName.c_str(); } + static const char* getITSHalfBarrelPattern() { return sHalfBarrelName.c_str(); } static const char* getITSWrapVolPattern() { return sWrapperVolumeName.c_str(); } static const char* getITSStavePattern() { return sStaveName.c_str(); } static const char* getITSHalfStavePattern() { return sHalfStaveName.c_str(); } @@ -245,6 +265,7 @@ class GeometryTGeo : public o2::itsmft::GeometryTGeo static const char* getITSSensorPattern() { return sSensorName.c_str(); } static void setITSVolPattern(const char* nm) { sVolumeName = nm; } static void setITSLayerPattern(const char* nm) { sLayerName = nm; } + static void setITSHalfBarrelPattern(const char* nm) { sHalfBarrelName = nm; } static void setITSWrapVolPattern(const char* nm) { sWrapperVolumeName = nm; } static void setITSStavePattern(const char* nm) { sStaveName = nm; } static void setITSHalfStavePattern(const char* nm) { sHalfStaveName = nm; } @@ -256,17 +277,20 @@ class GeometryTGeo : public o2::itsmft::GeometryTGeo /// sym name of the layer static const char* composeSymNameLayer(int lr); - /// Sym name of the stave at given layer - static const char* composeSymNameStave(int lr, int sta); + /// Sym name of the half barrel at given layer + static const char* composeSymNameHalfBarrel(int lr, int hba); /// Sym name of the stave at given layer - static const char* composeSymNameHalfStave(int lr, int sta, int ssta); + static const char* composeSymNameStave(int lr, int hba, int sta); - /// Sym name of the substave at given layer/stave - static const char* composeSymNameModule(int lr, int sta, int ssta, int mod); + /// Sym name of the stave at given layer/halfbarrel + static const char* composeSymNameHalfStave(int lr, int hba, int sta, int ssta); - /// Sym name of the chip in the given layer/stave/substave/module - static const char* composeSymNameChip(int lr, int sta, int ssta, int mod, int chip); + /// Sym name of the substave at given layer/halfbarrel/stave + static const char* composeSymNameModule(int lr, int hba, int sta, int ssta, int mod); + + /// Sym name of the chip in the given layer/halfbarrel/stave/substave/module + static const char* composeSymNameChip(int lr, int hba, int sta, int ssta, int mod, int chip); protected: /// Get the transformation matrix of the SENSOR (not necessary the same as the chip) @@ -290,6 +314,10 @@ class GeometryTGeo : public o2::itsmft::GeometryTGeo /// \param lay: layer number from 0 int extractNumberOfChipsPerModule(int lay, int& nrow) const; + /// Determines the number of halfbarrels in the layer + /// \param lay: layer number, starting from 0 + int extractNumberOfHalfBarrels() const; + /// Determines the number of layers in the Geometry /// \param lay: layer number, starting from 0 int extractNumberOfStaves(int lay) const; @@ -325,23 +353,26 @@ class GeometryTGeo : public o2::itsmft::GeometryTGeo protected: static constexpr int MAXLAYERS = 15; ///< max number of active layers - Int_t mNumberOfLayers; ///< number of layers - std::vector mNumberOfStaves; ///< number of staves/layer(layer) - std::vector mNumberOfHalfStaves; ///< the number of substaves/stave(layer) - std::vector mNumberOfModules; ///< number of modules/substave(layer) - std::vector mNumberOfChipsPerModule; ///< number of chips per module (group of chips on substaves) - std::vector mNumberOfChipRowsPerModule; ///< number of chips rows per module (relevant for OB modules) - std::vector mNumberOfChipsPerHalfStave; ///< number of chips per substave - std::vector mNumberOfChipsPerStave; ///< number of chips per stave - std::vector mNumberOfChipsPerLayer; ///< number of chips per stave - std::vector mLastChipIndex; ///< max ID of the detctor in the layer - std::array mLayerToWrapper; ///< Layer to wrapper correspondence + Int_t mNumberOfLayers; ///< number of layers + Int_t mNumberOfHalfBarrels; ///< number of halfbarrels + std::vector mNumberOfStaves; ///< number of staves/layer(layer) + std::vector mNumberOfHalfStaves; ///< the number of substaves/stave(layer) + std::vector mNumberOfModules; ///< number of modules/substave(layer) + std::vector mNumberOfChipsPerModule; ///< number of chips per module (group of chips on substaves) + std::vector mNumberOfChipRowsPerModule; ///< number of chips rows per module (relevant for OB modules) + std::vector mNumberOfChipsPerHalfStave; ///< number of chips per substave + std::vector mNumberOfChipsPerStave; ///< number of chips per stave + std::vector mNumberOfChipsPerHalfBarrel; ///< number of chips per halfbarrel + std::vector mNumberOfChipsPerLayer; ///< number of chips per stave + std::vector mLastChipIndex; ///< max ID of the detctor in the layer + std::array mLayerToWrapper; ///< Layer to wrapper correspondence std::vector mCacheRefX; ///< sensors tracking plane reference X std::vector mCacheRefAlpha; ///< sensors tracking plane reference alpha static std::string sVolumeName; ///< Mother volume name static std::string sLayerName; ///< Layer name + static std::string sHalfBarrelName; ///< HalfBarrel name static std::string sStaveName; ///< Stave name static std::string sHalfStaveName; ///< HalfStave name static std::string sModuleName; ///< Module name diff --git a/Detectors/ITSMFT/ITS/base/src/GeometryTGeo.cxx b/Detectors/ITSMFT/ITS/base/src/GeometryTGeo.cxx index 6db3c601d4b59..54490df3259a1 100644 --- a/Detectors/ITSMFT/ITS/base/src/GeometryTGeo.cxx +++ b/Detectors/ITSMFT/ITS/base/src/GeometryTGeo.cxx @@ -54,6 +54,7 @@ o2::its::GeometryTGeo::~GeometryTGeo() = default; std::string GeometryTGeo::sVolumeName = "ITSV"; ///< Mother volume name std::string GeometryTGeo::sLayerName = "ITSULayer"; ///< Layer name +std::string GeometryTGeo::sHalfBarrelName = "ITSUHalfBarrel"; ///< HalfBarrel name std::string GeometryTGeo::sStaveName = "ITSUStave"; ///< Stave name std::string GeometryTGeo::sHalfStaveName = "ITSUHalfStave"; ///< HalfStave name std::string GeometryTGeo::sModuleName = "ITSUModule"; ///< Module name @@ -90,15 +91,15 @@ void GeometryTGeo::adopt(GeometryTGeo* raw) } //__________________________________________________________________________ -int GeometryTGeo::getChipIndex(int lay, int sta, int chipInStave) const +int GeometryTGeo::getChipIndex(int lay, int hba, int sta, int chipInStave) const { - return getFirstChipIndex(lay) + mNumberOfChipsPerStave[lay] * sta + chipInStave; + return getFirstChipIndex(lay) + mNumberOfChipsPerHalfBarrel[lay] * hba + mNumberOfChipsPerStave[lay] * sta + chipInStave; } //__________________________________________________________________________ -int GeometryTGeo::getChipIndex(int lay, int sta, int substa, int chipInSStave) const +int GeometryTGeo::getChipIndex(int lay, int hba, int sta, int substa, int chipInSStave) const { - int n = getFirstChipIndex(lay) + mNumberOfChipsPerStave[lay] * sta + chipInSStave; + int n = getFirstChipIndex(lay) + mNumberOfChipsPerHalfBarrel[lay] * hba + mNumberOfChipsPerStave[lay] * sta + chipInSStave; if (mNumberOfHalfStaves[lay] && substa > 0) { n += mNumberOfChipsPerHalfStave[lay] * substa; } @@ -106,12 +107,12 @@ int GeometryTGeo::getChipIndex(int lay, int sta, int substa, int chipInSStave) c } //__________________________________________________________________________ -int GeometryTGeo::getChipIndex(int lay, int sta, int substa, int md, int chipInMod) const +int GeometryTGeo::getChipIndex(int lay, int hba, int sta, int substa, int md, int chipInMod) const { if (mNumberOfHalfStaves[lay] == 0) { - return getChipIndex(lay, md, chipInMod); + return getChipIndex(lay, substa, md, chipInMod); } else { - int n = getFirstChipIndex(lay) + mNumberOfChipsPerStave[lay] * sta + chipInMod; + int n = getFirstChipIndex(lay) + mNumberOfChipsPerHalfBarrel[lay] * hba + mNumberOfChipsPerStave[lay] * sta + chipInMod; if (mNumberOfHalfStaves[lay] && substa > 0) { n += mNumberOfChipsPerHalfStave[lay] * substa; } @@ -140,6 +141,17 @@ int GeometryTGeo::getLayer(int index) const return lay; } +//__________________________________________________________________________ +int GeometryTGeo::getHalfBarrel(int index) const +{ + int lay = 0; + while (index > mLastChipIndex[lay]) { + lay++; + } + index -= getFirstChipIndex(lay); + return index / mNumberOfChipsPerHalfBarrel[lay]; +} + //__________________________________________________________________________ int GeometryTGeo::getStave(int index) const { @@ -243,6 +255,23 @@ bool GeometryTGeo::getChipId(int index, int& lay, int& sta, int& hsta, int& mod, return kTRUE; } +//__________________________________________________________________________ +bool GeometryTGeo::getChipId(int index, int& lay, int& hba, int& sta, int& hsta, int& mod, int& chip) const +{ + lay = getLayer(index); + index -= getFirstChipIndex(lay); + hba = mNumberOfHalfBarrels > 0 ? index / mNumberOfChipsPerHalfBarrel[lay] : -1; + index %= mNumberOfChipsPerHalfBarrel[lay]; + sta = index / mNumberOfChipsPerStave[lay]; + index %= mNumberOfChipsPerStave[lay]; + hsta = mNumberOfHalfStaves[lay] > 0 ? index / mNumberOfChipsPerHalfStave[lay] : -1; + index %= mNumberOfChipsPerHalfStave[lay]; + mod = mNumberOfModules[lay] > 0 ? index / mNumberOfChipsPerModule[lay] : -1; + chip = index % mNumberOfChipsPerModule[lay]; + + return kTRUE; +} + //__________________________________________________________________________ const char* GeometryTGeo::composeSymNameLayer(int lr) { @@ -250,29 +279,36 @@ const char* GeometryTGeo::composeSymNameLayer(int lr) } //__________________________________________________________________________ -const char* GeometryTGeo::composeSymNameStave(int lr, int stave) +const char* GeometryTGeo::composeSymNameHalfBarrel(int lr, int hbarrel) { - return Form("%s/%s%d", composeSymNameLayer(lr), getITSStavePattern(), stave); + return hbarrel >= 0 ? Form("%s/%s%d", composeSymNameLayer(lr), getITSHalfBarrelPattern(), hbarrel) + : composeSymNameLayer(lr); } //__________________________________________________________________________ -const char* GeometryTGeo::composeSymNameHalfStave(int lr, int stave, int substave) +const char* GeometryTGeo::composeSymNameStave(int lr, int hbarrel, int stave) { - return substave >= 0 ? Form("%s/%s%d", composeSymNameStave(lr, stave), getITSHalfStavePattern(), substave) - : composeSymNameStave(lr, stave); + return Form("%s/%s%d", composeSymNameHalfBarrel(lr, hbarrel), getITSStavePattern(), stave); } //__________________________________________________________________________ -const char* GeometryTGeo::composeSymNameModule(int lr, int stave, int substave, int mod) +const char* GeometryTGeo::composeSymNameHalfStave(int lr, int hba, int stave, int substave) { - return mod >= 0 ? Form("%s/%s%d", composeSymNameHalfStave(lr, stave, substave), getITSModulePattern(), mod) - : composeSymNameHalfStave(lr, stave, substave); + return substave >= 0 ? Form("%s/%s%d", composeSymNameStave(lr, hba, stave), getITSHalfStavePattern(), substave) + : composeSymNameStave(lr, hba, stave); } //__________________________________________________________________________ -const char* GeometryTGeo::composeSymNameChip(int lr, int sta, int substave, int mod, int chip) +const char* GeometryTGeo::composeSymNameModule(int lr, int hba, int stave, int substave, int mod) { - return Form("%s/%s%d", composeSymNameModule(lr, sta, substave, mod), getITSChipPattern(), chip); + return mod >= 0 ? Form("%s/%s%d", composeSymNameHalfStave(lr, hba, stave, substave), getITSModulePattern(), mod) + : composeSymNameHalfStave(lr, hba, stave, substave); +} + +//__________________________________________________________________________ +const char* GeometryTGeo::composeSymNameChip(int lr, int hba, int sta, int substave, int mod, int chip) +{ + return Form("%s/%s%d", composeSymNameModule(lr, hba, sta, substave, mod), getITSChipPattern(), chip); } //__________________________________________________________________________ @@ -285,8 +321,8 @@ TGeoHMatrix* GeometryTGeo::extractMatrixSensor(int index) const // // Therefore we need to add a shift - int lay, stav, sstav, mod, chipInMod; - getChipId(index, lay, stav, sstav, mod, chipInMod); + int lay, hba, stav, sstav, mod, chipInMod; + getChipId(index, lay, hba, stav, sstav, mod, chipInMod); int wrID = mLayerToWrapper[lay]; @@ -297,7 +333,13 @@ TGeoHMatrix* GeometryTGeo::extractMatrixSensor(int index) const } path += - Form("%s%d_1/%s%d_%d/", GeometryTGeo::getITSLayerPattern(), lay, GeometryTGeo::getITSStavePattern(), lay, stav); + Form("%s%d_1/", GeometryTGeo::getITSLayerPattern(), lay); + + if (mNumberOfHalfBarrels > 0) { + path += Form("%s%d_%d/", GeometryTGeo::getITSHalfBarrelPattern(), lay, hba); + } + path += + Form("%s%d_%d/", GeometryTGeo::getITSStavePattern(), lay, stav); if (mNumberOfHalfStaves[lay] > 0) { path += Form("%s%d_%d/", GeometryTGeo::getITSHalfStavePattern(), lay, sstav); @@ -357,10 +399,12 @@ void GeometryTGeo::Build(int loadTrans) mNumberOfChipRowsPerModule.resize(mNumberOfLayers); mNumberOfChipsPerHalfStave.resize(mNumberOfLayers); mNumberOfChipsPerStave.resize(mNumberOfLayers); + mNumberOfChipsPerHalfBarrel.resize(mNumberOfLayers); mNumberOfChipsPerLayer.resize(mNumberOfLayers); mLastChipIndex.resize(mNumberOfLayers); int numberOfChips = 0; + mNumberOfHalfBarrels = extractNumberOfHalfBarrels(); for (int i = 0; i < mNumberOfLayers; i++) { mNumberOfStaves[i] = extractNumberOfStaves(i); mNumberOfHalfStaves[i] = extractNumberOfHalfStaves(i); @@ -369,6 +413,7 @@ void GeometryTGeo::Build(int loadTrans) mNumberOfChipsPerHalfStave[i] = mNumberOfChipsPerModule[i] * Max(1, mNumberOfModules[i]); mNumberOfChipsPerStave[i] = mNumberOfChipsPerHalfStave[i] * Max(1, mNumberOfHalfStaves[i]); mNumberOfChipsPerLayer[i] = mNumberOfChipsPerStave[i] * mNumberOfStaves[i]; + mNumberOfChipsPerHalfBarrel[i] = mNumberOfChipsPerLayer[i] / Max(1, mNumberOfHalfBarrels); numberOfChips += mNumberOfChipsPerLayer[i]; mLastChipIndex[i] = numberOfChips - 1; } @@ -506,29 +551,42 @@ int GeometryTGeo::extractNumberOfLayers() return numberOfLayers; } +//__________________________________________________________________________ +int GeometryTGeo::extractNumberOfHalfBarrels() const +{ + // We take in account that we always have 2 and only 2 half barrels + int numberOfHalfBarrels = 2; + + return numberOfHalfBarrels; +} + //__________________________________________________________________________ int GeometryTGeo::extractNumberOfStaves(int lay) const { int numberOfStaves = 0; - char laynam[30]; - snprintf(laynam, 30, "%s%d", getITSLayerPattern(), lay); - TGeoVolume* volLr = gGeoManager->GetVolume(laynam); - if (!volLr) { - LOG(FATAL) << "can't find " << laynam << " volume"; + char hbarnam[30]; + if (mNumberOfHalfBarrels == 0) { + snprintf(hbarnam, 30, "%s%d", getITSLayerPattern(), lay); + } else { + snprintf(hbarnam, 30, "%s%d", getITSHalfBarrelPattern(), lay); + } + TGeoVolume* volHb = gGeoManager->GetVolume(hbarnam); + if (!volHb) { + LOG(FATAL) << "can't find " << hbarnam << " volume"; return -1; } - // Loop on all layer nodes, count Stave volumes by checking names - int nNodes = volLr->GetNodes()->GetEntries(); + // Loop on all half barrel nodes, count Stave volumes by checking names + int nNodes = volHb->GetNodes()->GetEntries(); for (int j = 0; j < nNodes; j++) { // LOG(INFO) << "L" << lay << " " << j << " of " << nNodes << " " - // << volLr->GetNodes()->At(j)->GetName() << " " + // << volHb->GetNodes()->At(j)->GetName() << " " // << getITSStavePattern() << " -> " << numberOfStaves; - if (strstr(volLr->GetNodes()->At(j)->GetName(), getITSStavePattern())) { + if (strstr(volHb->GetNodes()->At(j)->GetName(), getITSStavePattern())) { numberOfStaves++; } } - return numberOfStaves; + return mNumberOfHalfBarrels > 0 ? (numberOfStaves * mNumberOfHalfBarrels) : numberOfStaves; } //__________________________________________________________________________ diff --git a/Detectors/ITSMFT/ITS/macros/test/ITSMisaligner.C b/Detectors/ITSMFT/ITS/macros/test/ITSMisaligner.C index b6131ae8951f5..6ff9a89420477 100644 --- a/Detectors/ITSMFT/ITS/macros/test/ITSMisaligner.C +++ b/Detectors/ITSMFT/ITS/macros/test/ITSMisaligner.C @@ -45,20 +45,26 @@ void ITSMisaligner(const std::string& ccdbHost = "http://ccdb-test.cern.ch:8080" pars = generateMisalignment(xLay, yLay, zLay, psiLay, thetaLay, phiLay); params.emplace_back(symname.c_str(), -1, pars[0], pars[1], pars[2], pars[3], pars[4], pars[5], glo); - for (int ist = 0; ist < geom->getNumberOfStaves(ilr); ist++) { - symname = geom->composeSymNameStave(ilr, ist); + for (int ihb = 0; ihb < geom->getNumberOfHalfBarrels(); ihb++) { + symname = geom->composeSymNameHalfBarrel(ilr, ihb); pars = generateMisalignment(xSta, ySta, zSta, psiSta, thetaSta, phiSta); params.emplace_back(symname.c_str(), -1, pars[0], pars[1], pars[2], pars[3], pars[4], pars[5], glo); - for (int ihst = 0; ihst < geom->getNumberOfHalfStaves(ilr); ihst++) { - symname = geom->composeSymNameHalfStave(ilr, ist, ihst); - pars = generateMisalignment(xHSt, yHSt, zHSt, psiHSt, thetaHSt, phiHSt); + for (int ist = 0; ist < geom->getNumberOfStaves(ilr) / 2; ist++) { + symname = geom->composeSymNameStave(ilr, ihb, ist); + pars = generateMisalignment(xSta, ySta, zSta, psiSta, thetaSta, phiSta); params.emplace_back(symname.c_str(), -1, pars[0], pars[1], pars[2], pars[3], pars[4], pars[5], glo); - for (int imd = 0; imd < geom->getNumberOfModules(ilr); imd++) { - symname = geom->composeSymNameModule(ilr, ist, ihst, imd); - pars = generateMisalignment(xMod, yMod, zMod, psiMod, thetaMod, phiMod); + for (int ihst = 0; ihst < geom->getNumberOfHalfStaves(ilr); ihst++) { + symname = geom->composeSymNameHalfStave(ilr, ihb, ist, ihst); + pars = generateMisalignment(xHSt, yHSt, zHSt, psiHSt, thetaHSt, phiHSt); params.emplace_back(symname.c_str(), -1, pars[0], pars[1], pars[2], pars[3], pars[4], pars[5], glo); + + for (int imd = 0; imd < geom->getNumberOfModules(ilr); imd++) { + symname = geom->composeSymNameModule(ilr, ihb, ist, ihst, imd); + pars = generateMisalignment(xMod, yMod, zMod, psiMod, thetaMod, phiMod); + params.emplace_back(symname.c_str(), -1, pars[0], pars[1], pars[2], pars[3], pars[4], pars[5], glo); + } } } } diff --git a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/Detector.h b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/Detector.h index e28d319a35892..5d2ea789ecb3b 100644 --- a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/Detector.h +++ b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/Detector.h @@ -183,39 +183,50 @@ class Detector : public o2::base::DetImpl /// \param lastUID on output, UID of the last volume void addAlignableVolumesLayer(Int_t lr, TString& parent, Int_t& lastUID) const; + /// Add alignable Half Barrel volumes + /// \param lr layer number + /// \param hb half barrel number + /// \param parent path of the parent volume + /// \param lastUID on output, UID of the last volume + void addAlignableVolumesHalfBarrel(Int_t lr, Int_t hb, TString& parent, Int_t& lastUID) const; + /// Add alignable Stave volumes /// \param lr layer number + /// \param hb half barrel number /// \param st stave number /// \param parent path of the parent volume /// \param lastUID on output, UID of the last volume - void addAlignableVolumesStave(Int_t lr, Int_t st, TString& parent, Int_t& lastUID) const; + void addAlignableVolumesStave(Int_t lr, Int_t hb, Int_t st, TString& parent, Int_t& lastUID) const; /// Add alignable HalfStave volumes /// \param lr layer number + /// \param hb half barrel number /// \param st stave number /// \param hst half stave number /// \param parent path of the parent volume /// \param lastUID on output, UID of the last volume - void addAlignableVolumesHalfStave(Int_t lr, Int_t st, Int_t hst, TString& parent, Int_t& lastUID) const; + void addAlignableVolumesHalfStave(Int_t lr, Int_t hb, Int_t st, Int_t hst, TString& parent, Int_t& lastUID) const; /// Add alignable Module volumes /// \param lr layer number + /// \param hb half barrel number /// \param st stave number /// \param hst half stave number /// \param md module number /// \param parent path of the parent volume /// \param lastUID on output, UID of the last volume - void addAlignableVolumesModule(Int_t lr, Int_t st, Int_t hst, Int_t md, TString& parent, Int_t& lastUID) const; + void addAlignableVolumesModule(Int_t lr, Int_t hb, Int_t st, Int_t hst, Int_t md, TString& parent, Int_t& lastUID) const; /// Add alignable Chip volumes /// \param lr layer number + /// \param hb half barrel number /// \param st stave number /// \param hst half stave number /// \param md module number /// \param ch chip number /// \param parent path of the parent volume /// \param lastUID on output, UID of the last volume - void addAlignableVolumesChip(Int_t lr, Int_t st, Int_t hst, Int_t md, Int_t ch, TString& parent, + void addAlignableVolumesChip(Int_t lr, Int_t hb, Int_t st, Int_t hst, Int_t md, Int_t ch, TString& parent, Int_t& lastUID) const; /// Return Chip Volume UID diff --git a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V3Layer.h b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V3Layer.h index 15c46e39374d3..62e09abcbdd68 100644 --- a/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V3Layer.h +++ b/Detectors/ITSMFT/ITS/simulation/include/ITSSimulation/V3Layer.h @@ -39,7 +39,8 @@ class V3Layer : public V11Geometry { public: - enum { kStave, + enum { kHalfBarrel, + kStave, kHalfStave, kModule, kChip, @@ -87,6 +88,8 @@ class V3Layer : public V11Geometry Int_t getChipType() const { return mChipTypeID; } + Int_t getNumberOfHalfBarrelsPerParent() const { return mHierarchy[kHalfBarrel]; } + Int_t getNumberOfStavesPerParent() const { return mHierarchy[kStave]; } Int_t getNumberOfHalfStavesPerParent() const { return mHierarchy[kHalfStave]; } @@ -145,12 +148,15 @@ class V3Layer : public V11Geometry virtual void createLayer(TGeoVolume* motherVolume); private: - /// Creates the actual Layer and places inside its mother volume + /// Creates a half barrel + TGeoVolume* createHalfBarrel(); + + /// Creates a "turbo" half barrel /// A so-called "turbo" layer is a layer where staves overlap in phi /// User can set width and tilt angle, no check is performed here /// to avoid volume overlaps /// \param motherVolume The TGeoVolume owing the volume structure - void createLayerTurbo(TGeoVolume* motherVolume); + TGeoVolume* createHalfBarrelTurbo(); /// Computes the inner radius of the air container for the Turbo configuration /// as the radius of either the circle tangent to the stave or the circle diff --git a/Detectors/ITSMFT/ITS/simulation/src/Detector.cxx b/Detectors/ITSMFT/ITS/simulation/src/Detector.cxx index b37cc52726733..96b6819854ec5 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/Detector.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/Detector.cxx @@ -343,12 +343,13 @@ Bool_t Detector::ProcessHits(FairVolume* vol) TLorentzVector positionStop; fMC->TrackPosition(positionStop); // Retrieve the indices with the volume path - int stave(0), halfstave(0), chipinmodule(0), module; + int halfbarrel(0), stave(0), halfstave(0), chipinmodule(0), module; fMC->CurrentVolOffID(1, chipinmodule); fMC->CurrentVolOffID(2, module); fMC->CurrentVolOffID(3, halfstave); fMC->CurrentVolOffID(4, stave); - int chipindex = mGeometryTGeo->getChipIndex(lay, stave, halfstave, module, chipinmodule); + fMC->CurrentVolOffID(5, halfbarrel); + int chipindex = mGeometryTGeo->getChipIndex(lay, halfbarrel, stave, halfstave, module, chipinmodule); Hit* p = addHit(stack->GetCurrentTrackNumber(), chipindex, mTrackData.mPositionStart.Vect(), positionStop.Vect(), mTrackData.mMomentumStart.Vect(), mTrackData.mMomentumStart.E(), positionStop.T(), @@ -1037,6 +1038,7 @@ void Detector::addAlignableVolumesLayer(int lr, TString& parent, Int_t& lastUID) // Add alignable volumes for a Layer and its daughters // // Created: 06 Mar 2018 Mario Sitta First version (mainly ported from AliRoot) + // Updated: 06 Jul 2021 Mario Sitta Do not set Layer as alignable volume // TString wrpV = @@ -1044,31 +1046,56 @@ void Detector::addAlignableVolumesLayer(int lr, TString& parent, Int_t& lastUID) TString path = Form("%s/%s/%s%d_1", parent.Data(), wrpV.Data(), GeometryTGeo::getITSLayerPattern(), lr); TString sname = GeometryTGeo::composeSymNameLayer(lr); - LOG(DEBUG) << "Add " << sname << " <-> " << path; + const V3Layer* lrobj = mGeometry[lr]; + Int_t nhbarrel = lrobj->getNumberOfHalfBarrelsPerParent(); + Int_t start = nhbarrel > 0 ? 0 : -1; + for (Int_t hb = start; hb < nhbarrel; hb++) { + addAlignableVolumesHalfBarrel(lr, hb, path, lastUID); + } - if (!gGeoManager->SetAlignableEntry(sname.Data(), path.Data())) { - LOG(FATAL) << "Unable to set alignable entry ! " << sname << " : " << path; + return; +} + +void Detector::addAlignableVolumesHalfBarrel(Int_t lr, Int_t hb, TString& parent, Int_t& lastUID) const +{ + // + // Add alignable volumes for a Half barrel and its daughters + // + // Created: 28 Jun 2021 Mario Sitta First version (based on similar methods) + // + + TString path = parent; + if (hb >= 0) { + path = Form("%s/%s%d_%d", parent.Data(), GeometryTGeo::getITSHalfBarrelPattern(), lr, hb); + TString sname = GeometryTGeo::composeSymNameHalfBarrel(lr, hb); + + LOG(DEBUG) << "Add " << sname << " <-> " << path; + + if (!gGeoManager->SetAlignableEntry(sname.Data(), path.Data())) { + LOG(FATAL) << "Unable to set alignable entry ! " << sname << " : " << path; + } } const V3Layer* lrobj = mGeometry[lr]; Int_t nstaves = lrobj->getNumberOfStavesPerParent(); for (int st = 0; st < nstaves; st++) { - addAlignableVolumesStave(lr, st, path, lastUID); + addAlignableVolumesStave(lr, hb, st, path, lastUID); } return; } -void Detector::addAlignableVolumesStave(Int_t lr, Int_t st, TString& parent, Int_t& lastUID) const +void Detector::addAlignableVolumesStave(Int_t lr, Int_t hb, Int_t st, TString& parent, Int_t& lastUID) const { // // Add alignable volumes for a Stave and its daughters // // Created: 06 Mar 2018 Mario Sitta First version (mainly ported from AliRoot) + // Updated: 29 Jun 2021 Mario Sitta Hal Barrel index added // TString path = Form("%s/%s%d_%d", parent.Data(), GeometryTGeo::getITSStavePattern(), lr, st); - TString sname = GeometryTGeo::composeSymNameStave(lr, st); + TString sname = GeometryTGeo::composeSymNameStave(lr, hb, st); LOG(DEBUG) << "Add " << sname << " <-> " << path; @@ -1080,24 +1107,25 @@ void Detector::addAlignableVolumesStave(Int_t lr, Int_t st, TString& parent, Int Int_t nhstave = lrobj->getNumberOfHalfStavesPerParent(); Int_t start = nhstave > 0 ? 0 : -1; for (Int_t sst = start; sst < nhstave; sst++) { - addAlignableVolumesHalfStave(lr, st, sst, path, lastUID); + addAlignableVolumesHalfStave(lr, hb, st, sst, path, lastUID); } return; } -void Detector::addAlignableVolumesHalfStave(Int_t lr, Int_t st, Int_t hst, TString& parent, Int_t& lastUID) const +void Detector::addAlignableVolumesHalfStave(Int_t lr, Int_t hb, Int_t st, Int_t hst, TString& parent, Int_t& lastUID) const { // // Add alignable volumes for a HalfStave (if any) and its daughters // // Created: 06 Mar 2018 Mario Sitta First version (mainly ported from AliRoot) + // Updated: 29 Jun 2021 Mario Sitta Hal Barrel index added // TString path = parent; if (hst >= 0) { path = Form("%s/%s%d_%d", parent.Data(), GeometryTGeo::getITSHalfStavePattern(), lr, hst); - TString sname = GeometryTGeo::composeSymNameHalfStave(lr, st, hst); + TString sname = GeometryTGeo::composeSymNameHalfStave(lr, hb, st, hst); LOG(DEBUG) << "Add " << sname << " <-> " << path; @@ -1110,24 +1138,25 @@ void Detector::addAlignableVolumesHalfStave(Int_t lr, Int_t st, Int_t hst, TStri Int_t nmodules = lrobj->getNumberOfModulesPerParent(); Int_t start = nmodules > 0 ? 0 : -1; for (Int_t md = start; md < nmodules; md++) { - addAlignableVolumesModule(lr, st, hst, md, path, lastUID); + addAlignableVolumesModule(lr, hb, st, hst, md, path, lastUID); } return; } -void Detector::addAlignableVolumesModule(Int_t lr, Int_t st, Int_t hst, Int_t md, TString& parent, Int_t& lastUID) const +void Detector::addAlignableVolumesModule(Int_t lr, Int_t hb, Int_t st, Int_t hst, Int_t md, TString& parent, Int_t& lastUID) const { // // Add alignable volumes for a Module (if any) and its daughters // // Created: 06 Mar 2018 Mario Sitta First version (mainly ported from AliRoot) + // Updated: 29 Jun 2021 Mario Sitta Hal Barrel index added // TString path = parent; if (md >= 0) { path = Form("%s/%s%d_%d", parent.Data(), GeometryTGeo::getITSModulePattern(), lr, md); - TString sname = GeometryTGeo::composeSymNameModule(lr, st, hst, md); + TString sname = GeometryTGeo::composeSymNameModule(lr, hb, st, hst, md); LOG(DEBUG) << "Add " << sname << " <-> " << path; @@ -1139,23 +1168,24 @@ void Detector::addAlignableVolumesModule(Int_t lr, Int_t st, Int_t hst, Int_t md const V3Layer* lrobj = mGeometry[lr]; Int_t nchips = lrobj->getNumberOfChipsPerParent(); for (Int_t ic = 0; ic < nchips; ic++) { - addAlignableVolumesChip(lr, st, hst, md, ic, path, lastUID); + addAlignableVolumesChip(lr, hb, st, hst, md, ic, path, lastUID); } return; } -void Detector::addAlignableVolumesChip(Int_t lr, Int_t st, Int_t hst, Int_t md, Int_t ch, TString& parent, +void Detector::addAlignableVolumesChip(Int_t lr, Int_t hb, Int_t st, Int_t hst, Int_t md, Int_t ch, TString& parent, Int_t& lastUID) const { // // Add alignable volumes for a Chip // // Created: 06 Mar 2018 Mario Sitta First version (mainly ported from AliRoot) + // Updated: 29 Jun 2021 Mario Sitta Hal Barrel index added // TString path = Form("%s/%s%d_%d", parent.Data(), GeometryTGeo::getITSChipPattern(), lr, ch); - TString sname = GeometryTGeo::composeSymNameChip(lr, st, hst, md, ch); + TString sname = GeometryTGeo::composeSymNameChip(lr, hb, st, hst, md, ch); Int_t modUID = chipVolUID(lastUID++); LOG(DEBUG) << "Add " << sname << " <-> " << path; diff --git a/Detectors/ITSMFT/ITS/simulation/src/V3Layer.cxx b/Detectors/ITSMFT/ITS/simulation/src/V3Layer.cxx index b644b6c4afb0f..4c2897c42ebeb 100644 --- a/Detectors/ITSMFT/ITS/simulation/src/V3Layer.cxx +++ b/Detectors/ITSMFT/ITS/simulation/src/V3Layer.cxx @@ -310,6 +310,35 @@ V3Layer::V3Layer(Int_t lay, Bool_t turbo, Int_t debug) V3Layer::~V3Layer() = default; void V3Layer::createLayer(TGeoVolume* motherVolume) +{ + std::string volumeName; + + volumeName = fmt::format("{:s}{:d}", GeometryTGeo::getITSLayerPattern(), mLayerNumber); + TGeoVolume* layerVolume = new TGeoVolumeAssembly(volumeName.c_str()); + + // Call for creation of a single Half Barrel + // and put two copies in the Layer volume + TGeoVolume* halfBarrel; + + // If a Turbo layer is requested, do it + if (mIsTurbo) { + halfBarrel = createHalfBarrelTurbo(); + } else { + halfBarrel = createHalfBarrel(); + } + + layerVolume->AddNode(halfBarrel, 0, nullptr); + layerVolume->AddNode(halfBarrel, 1, new TGeoRotation("", 180, 0, 0)); + mHierarchy[kHalfBarrel] = 2; + + // Finally put everything in the mother volume + motherVolume->AddNode(layerVolume, 1, nullptr); + + // geometry is served + return; +} + +TGeoVolume* V3Layer::createHalfBarrel() { const Int_t nameLen = 30; char volumeName[nameLen]; @@ -345,47 +374,40 @@ void V3Layer::createLayer(TGeoVolume* motherVolume) LOG(FATAL) << "Sensor thickness " << mSensorThickness << " is greater than chip thickness " << mChipThickness; } - // If a Turbo layer is requested, do it and exit - if (mIsTurbo) { - createLayerTurbo(motherVolume); - return; - } - // First create the stave container alpha = (360. / (2 * mNumberOfStaves)) * DegToRad(); // mStaveWidth = mLayerRadius*Tan(alpha); - snprintf(volumeName, nameLen, "%s%d", GeometryTGeo::getITSLayerPattern(), mLayerNumber); - TGeoVolume* layerVolume = new TGeoVolumeAssembly(volumeName); - layerVolume->SetUniqueID(mChipTypeID); + snprintf(volumeName, nameLen, "%s%d", GeometryTGeo::getITSHalfBarrelPattern(), mLayerNumber); + TGeoVolume* halfBarrelVolume = new TGeoVolumeAssembly(volumeName); + halfBarrelVolume->SetUniqueID(mChipTypeID); - // layerVolume->SetVisibility(kFALSE); - layerVolume->SetVisibility(kTRUE); - layerVolume->SetLineColor(1); + // halfBarrelVolume->SetVisibility(kFALSE); + halfBarrelVolume->SetVisibility(kTRUE); + halfBarrelVolume->SetLineColor(1); TGeoVolume* stavVol = createStave(); // Now build up the layer alpha = 360. / mNumberOfStaves; Double_t r = mLayerRadius + (static_cast(stavVol->GetShape()))->GetDY(); - for (Int_t j = 0; j < mNumberOfStaves; j++) { + mHierarchy[kStave] = 0; + for (Int_t j = 0; j < mNumberOfStaves / 2; j++) { Double_t phi = j * alpha + mPhi0; xpos = r * cosD(phi); // r*sinD(-phi); ypos = r * sinD(phi); // r*cosD(-phi); zpos = 0.; phi += 90; - layerVolume->AddNode(stavVol, j, new TGeoCombiTrans(xpos, ypos, zpos, new TGeoRotation("", phi, 0, 0))); + halfBarrelVolume->AddNode(stavVol, j, new TGeoCombiTrans(xpos, ypos, zpos, new TGeoRotation("", phi, 0, 0))); + mHierarchy[kStave]++; } - // Finally put everything in the mother volume - motherVolume->AddNode(layerVolume, 1, nullptr); - // geometry is served - return; + return halfBarrelVolume; } -void V3Layer::createLayerTurbo(TGeoVolume* motherVolume) +TGeoVolume* V3Layer::createHalfBarrelTurbo() { const Int_t nameLen = 30; char volumeName[nameLen]; @@ -401,30 +423,29 @@ void V3Layer::createLayerTurbo(TGeoVolume* motherVolume) LOG(WARNING) << "Stave tilt angle (" << mStaveTilt << ") greater than 45deg"; } - snprintf(volumeName, nameLen, "%s%d", GeometryTGeo::getITSLayerPattern(), mLayerNumber); - TGeoVolume* layerVolume = new TGeoVolumeAssembly(volumeName); - layerVolume->SetUniqueID(mChipTypeID); - layerVolume->SetVisibility(kTRUE); - layerVolume->SetLineColor(1); + snprintf(volumeName, nameLen, "%s%d", GeometryTGeo::getITSHalfBarrelPattern(), mLayerNumber); + TGeoVolume* halfBarrelVolume = new TGeoVolumeAssembly(volumeName); + halfBarrelVolume->SetUniqueID(mChipTypeID); + halfBarrelVolume->SetVisibility(kTRUE); + halfBarrelVolume->SetLineColor(1); TGeoVolume* stavVol = createStave(); // Now build up the layer alpha = 360. / mNumberOfStaves; Double_t r = mLayerRadius /* +chip thick ?! */; - for (Int_t j = 0; j < mNumberOfStaves; j++) { + mHierarchy[kStave] = 0; + for (Int_t j = 0; j < mNumberOfStaves / 2; j++) { Double_t phi = j * alpha + mPhi0; xpos = r * cosD(phi); // r*sinD(-phi); ypos = r * sinD(phi); // r*cosD(-phi); zpos = 0.; phi += 90; - layerVolume->AddNode(stavVol, j, - new TGeoCombiTrans(xpos, ypos, zpos, new TGeoRotation("", phi - mStaveTilt, 0, 0))); + halfBarrelVolume->AddNode(stavVol, j, + new TGeoCombiTrans(xpos, ypos, zpos, new TGeoRotation("", phi - mStaveTilt, 0, 0))); + mHierarchy[kStave]++; } - // Finally put everything in the mother volume - motherVolume->AddNode(layerVolume, 1, nullptr); - - return; + return halfBarrelVolume; } TGeoVolume* V3Layer::createStave(const TGeoManager* /*mgr*/) From 564ca5c75b2244c88483d26f8dd28702b6e6b861 Mon Sep 17 00:00:00 2001 From: sevdokim Date: Thu, 22 Jul 2021 10:28:25 +0200 Subject: [PATCH 298/314] Fix RawWriter & proper CCDB handling in Digitizer --- .../CPV/reconstruction/src/RawDecoder.cxx | 3 + .../include/CPVSimulation/Digitizer.h | 10 +- Detectors/CPV/simulation/src/Digitizer.cxx | 86 ++++++------- Detectors/CPV/simulation/src/RawCreator.cxx | 5 + Detectors/CPV/simulation/src/RawWriter.cxx | 121 +++++++++++------- 5 files changed, 126 insertions(+), 99 deletions(-) diff --git a/Detectors/CPV/reconstruction/src/RawDecoder.cxx b/Detectors/CPV/reconstruction/src/RawDecoder.cxx index e49b3efe8d04a..09ab34eeb76e0 100644 --- a/Detectors/CPV/reconstruction/src/RawDecoder.cxx +++ b/Detectors/CPV/reconstruction/src/RawDecoder.cxx @@ -55,6 +55,9 @@ RawErrorType_t RawDecoder::readChannels() while (b != e) { //payload must start with cpvheader folowed by cpvwords and finished with cpvtrailer CpvHeader header(b, e); if (header.isOK()) { + LOG(DEBUG) << "RawDecoder::readChannels() : " + << "I read cpv header for orbit = " << header.orbit() + << " and BC = " << header.bc(); if (!isHeaderExpected) { //actually, header was not expected LOG(ERROR) << "RawDecoder::readChannels() : " << "header was not expected"; diff --git a/Detectors/CPV/simulation/include/CPVSimulation/Digitizer.h b/Detectors/CPV/simulation/include/CPVSimulation/Digitizer.h index b14effc8bf5f3..87b00913d54a0 100644 --- a/Detectors/CPV/simulation/include/CPVSimulation/Digitizer.h +++ b/Detectors/CPV/simulation/include/CPVSimulation/Digitizer.h @@ -45,11 +45,11 @@ class Digitizer : public TObject float simulatePedestalNoise(int absId); private: - static constexpr short NCHANNELS = 23040; //128*60*3: toatl number of CPV channels - std::unique_ptr mCalibParams; /// Calibration coefficients - std::unique_ptr mPedestals; /// Pedestals - std::unique_ptr mBadMap; /// Bad channel map - std::array mArrayD; ///array of digits (for inner use) + static constexpr short NCHANNELS = 23040; //128*60*3: toatl number of CPV channels + CalibParams* mCalibParams; /// Calibration coefficients + Pedestals* mPedestals; /// Pedestals + BadChannelMap* mBadMap; /// Bad channel map + std::array mArrayD; ///array of digits (for inner use) std::array mDigitThresholds; ClassDefOverride(Digitizer, 3); }; diff --git a/Detectors/CPV/simulation/src/Digitizer.cxx b/Detectors/CPV/simulation/src/Digitizer.cxx index f749dbe18d4dd..fbfddad2b0328 100644 --- a/Detectors/CPV/simulation/src/Digitizer.cxx +++ b/Detectors/CPV/simulation/src/Digitizer.cxx @@ -12,7 +12,8 @@ #include "CPVSimulation/Digitizer.h" #include "SimulationDataFormat/MCCompLabel.h" #include "CPVBase/CPVSimParams.h" -#include "CCDB/CcdbApi.h" +#include "CCDB/CCDBTimeStampUtils.h" +#include "CCDB/BasicCCDBManager.h" #include #include "FairLogger.h" // for LOG @@ -27,53 +28,48 @@ using namespace o2::cpv; //_______________________________________________________________________ void Digitizer::init() { - if (!mCalibParams) { - if (o2::cpv::CPVSimParams::Instance().mCCDBPath.compare("localtest") == 0) { - mCalibParams.reset(new CalibParams(1)); // test default calibration - LOG(INFO) << "[CPVDigitizer] No reading calibration from ccdb requested, set default"; - } else { - LOG(INFO) << "[CPVDigitizer] can not get calibration object from ccdb yet. Using default"; - mCalibParams.reset(new CalibParams(1)); // test default calibration - // o2::ccdb::CcdbApi ccdb; - // std::map metadata; // do we want to store any meta data? - // ccdb.init("http://ccdb-test.cern.ch:8080"); // or http://localhost:8080 for a local installation - // mCalibParams = ccdb.retrieveFromTFileAny("CPV/Calib", metadata, mEventTime); - // if (!mCalibParams) { - // LOG(FATAL) << "[CPVDigitizer] can not get calibration object from ccdb"; - // } + LOG(INFO) << "CPVDigitizer::init() : CCDB Url = " << o2::cpv::CPVSimParams::Instance().mCCDBPath.data(); + if (o2::cpv::CPVSimParams::Instance().mCCDBPath.compare("localtest") == 0) { + mCalibParams = new CalibParams(1); // test default calibration + mPedestals = new Pedestals(1); // test default pedestals + mBadMap = new BadChannelMap(1); // test default bad channels + LOG(INFO) << "[CPVDigitizer] No reading calibration from ccdb requested, set default"; + } else { + auto& ccdbMgr = o2::ccdb::BasicCCDBManager::instance(); + ccdbMgr.setURL(o2::cpv::CPVSimParams::Instance().mCCDBPath.data()); + bool isCcdbReachable = ccdbMgr.isHostReachable(); //if host is not reachable we can use only dummy calibration + if (!isCcdbReachable) { + LOG(FATAL) << "[CPVDigitizer] CCDB Host is not reachable!!!"; + return; } - } - if (!mPedestals) { - if (o2::cpv::CPVSimParams::Instance().mCCDBPath.compare("localtest") == 0) { - mPedestals.reset(new Pedestals(1)); // test default calibration - LOG(INFO) << "[CPVDigitizer] No reading calibration from ccdb requested, set default"; - } else { - LOG(INFO) << "[CPVDigitizer] can not get pedestal object from ccdb yet. Using default"; - mPedestals.reset(new Pedestals(1)); // test default calibration - // o2::ccdb::CcdbApi ccdb; - // std::map metadata; // do we want to store any meta data? - // ccdb.init("http://ccdb-test.cern.ch:8080"); // or http://localhost:8080 for a local installation - // mPedestals = ccdb.retrieveFromTFileAny("CPV/Calib", metadata, mEventTime); - // if (!mPedestals) { - // LOG(FATAL) << "[CPVDigitizer] can not get calibration object from ccdb"; - // } + ccdbMgr.setCaching(true); //make local cache of remote objects + ccdbMgr.setLocalObjectValidityChecking(true); //query objects from remote site only when local one is not valid + //read calibration from ccdb (for now do it only at the beginning of dataprocessing) + //TODO: setup timestam according to anchors + ccdbMgr.setTimestamp(o2::ccdb::getCurrentTimestamp()); + + LOG(INFO) << "CCDB: Reading o2::cpv::CalibParams from CPV/Calib/Gains"; + mCalibParams = ccdbMgr.get("CPV/Calib/Gains"); + if (!mCalibParams) { + LOG(ERROR) << "Cannot get o2::cpv::CalibParams from CCDB. using dummy calibration!"; + mCalibParams = new CalibParams(1); } - } - if (!mBadMap) { - if (o2::cpv::CPVSimParams::Instance().mCCDBPath.compare("localtest") == 0) { - mBadMap.reset(new BadChannelMap(1)); // test default calibration - LOG(INFO) << "[CPVDigitizer] No reading calibration from ccdb requested, set default"; - } else { - LOG(INFO) << "[CPVDigitizer] can not get bad channel map object from ccdb yet. Using default"; - mBadMap.reset(new BadChannelMap(1)); // test default calibration - // o2::ccdb::CcdbApi ccdb; - // std::map metadata; // do we want to store any meta data? - // ccdb.init("http://ccdb-test.cern.ch:8080"); // or http://localhost:8080 for a local installation - // mBadMap = ccdb.retrieveFromTFileAny("CPV/Calib", metadata, mEventTime); - // if (!mBadMap) { - // LOG(FATAL) << "[CPVDigitizer] can not get calibration object from ccdb"; - // } + + LOG(INFO) << "CCDB: Reading o2::cpv::Pedestals from CPV/Calib/Pedestals"; + mPedestals = ccdbMgr.get("CPV/Calib/Pedestals"); + if (!mPedestals) { + LOG(ERROR) << "Cannot get o2::cpv::Pedestals from CCDB. using dummy calibration!"; + mPedestals = new Pedestals(1); } + + LOG(INFO) << "CCDB: Reading o2::cpv::BadChannelMap from CPV/Calib/BadChannelMap"; + mBadMap = ccdbMgr.get("CPV/Calib/BadChannelMap"); + if (!mBadMap) { + LOG(ERROR) << "Cannot get o2::cpv::BadChannelMap from CCDB. using dummy calibration!"; + mBadMap = new BadChannelMap(1); + } + + LOG(INFO) << "Task configuration is done."; } //signal thresolds for digits diff --git a/Detectors/CPV/simulation/src/RawCreator.cxx b/Detectors/CPV/simulation/src/RawCreator.cxx index 631426a213269..12ed8fd8f51e6 100644 --- a/Detectors/CPV/simulation/src/RawCreator.cxx +++ b/Detectors/CPV/simulation/src/RawCreator.cxx @@ -118,6 +118,11 @@ int main(int argc, const char** argv) // Loop over all entries in the tree, where each tree entry corresponds to a time frame for (auto en : *treereader) { + LOG(DEBUG) << "RawCreator::main() : I call rawwriter.digitsToRaw(). " + << "Sending following tree: "; + for (int i = 0; i < (*triggerbranch).size(); i++) { + LOG(DEBUG) << (*triggerbranch)[i]; + } rawwriter.digitsToRaw(*digitbranch, *triggerbranch); } rawwriter.getWriter().writeConfFile("CPV", "RAWDATA", o2::utils::Str::concat_string(outputdir, "/CPVraw.cfg")); diff --git a/Detectors/CPV/simulation/src/RawWriter.cxx b/Detectors/CPV/simulation/src/RawWriter.cxx index 9279d1c924ad3..b0b5e92f7c724 100644 --- a/Detectors/CPV/simulation/src/RawWriter.cxx +++ b/Detectors/CPV/simulation/src/RawWriter.cxx @@ -115,14 +115,6 @@ void RawWriter::digitsToRaw(gsl::span digitsbranch, gsl::span digitsbranch, const gsl::span trgs) { - //Array used to sort properly digits - for (int i = kNcc; i--;) { - for (int j = kNDilogic; j--;) { - for (int k = kNGasiplex; k--;) { - mPadCharge[i][j][k].clear(); - } - } - } //clear payload mPayload.clear(); @@ -132,11 +124,25 @@ bool RawWriter::processOrbit(const gsl::span digitsbranch, const int gbtWordCounter = 0; int gbtWordCounterBeforeCPVTrailer = 0; + bool isHeaderClosedWithTrailer = false; int nMaxGbtWordsPerPage = o2::raw::RDHUtils::MAXCRUPage / o2::raw::RDHUtils::GBTWord; //512*16/16 = 512; nMaxGbtWordsPerPage -= 4; //rdh size = 4 gbt words for (auto& trg : trgs) { + LOG(DEBUG) << "RawWriter::processOrbit() : " + << "I start to process trigger record (orbit = " << trg.getBCData().orbit + << ", BC = " << trg.getBCData().bc << ")"; + LOG(DEBUG) << "First entry = " << trg.getFirstEntry() << ", Number of objects = " << trg.getNumberOfObjects(); gbtWordCounterBeforeCPVTrailer = 0; //every trigger we start this counter from 0 + //Clear array which is used to store digits + for (int i = kNcc; i--;) { + for (int j = kNDilogic; j--;) { + for (int k = kNGasiplex; k--;) { + mPadCharge[i][j][k].clear(); + } + } + } + //make payload for current trigger int nDigsInTrg = 0; for (auto& dig : gsl::span(digitsbranch.data() + trg.getFirstEntry(), trg.getNumberOfObjects())) { @@ -153,8 +159,9 @@ bool RawWriter::processOrbit(const gsl::span digitsbranch, const mPadCharge[ccId][dil][gas].emplace_back(charge, pad); nDigsInTrg++; } + LOG(DEBUG) << "I produced " << nDigsInTrg << " digits for this trigger record"; - //we need to write header + trailer + at least 1 payload word + //we need to write header + at least 1 payload word + trailer if (nMaxGbtWordsPerPage - gbtWordCounter < 3) { //otherwise flush already prepared data to file LOG(DEBUG) << "RawWriter::processOrbit() : before header: adding preformatted dma page of size " << mPayload.size(); mRawWriter->addData(feeid, cru, link, endpoint, trg.getBCData(), gsl::span(mPayload.data(), mPayload.size()), preformatted); @@ -168,11 +175,18 @@ bool RawWriter::processOrbit(const gsl::span digitsbranch, const for (int i = 0; i < 16; i++) { mPayload.push_back(header.mBytes[i]); } + isHeaderClosedWithTrailer = false; + LOG(DEBUG) << "RawWriter::processOrbit() : " + << "I wrote cpv header for orbit = " << trg.getBCData().orbit + << " and BC = " << trg.getBCData().bc; + gbtWordCounter++; gbtWordCounterBeforeCPVTrailer++; - int ccWordCounter = 0; + int nDigsToWriteLeft = nDigsInTrg; + for (char ccId = 0; ccId < kNcc; ccId++) { + int ccWordCounter = 0; for (char dil = 0; dil < kNDilogic; dil++) { for (char gas = 0; gas < kNGasiplex; gas++) { for (padCharge& pc : mPadCharge[ccId][dil][gas]) { @@ -186,6 +200,7 @@ bool RawWriter::processOrbit(const gsl::span digitsbranch, const mPayload.push_back(currentword.mBytes[1]); mPayload.push_back(currentword.mBytes[2]); ccWordCounter++; + nDigsToWriteLeft--; if (ccWordCounter % 3 == 0) { // complete 3 channels (72 bit) + CC index (8 bits) + 6 empty bits = Generate 128 bits of data mPayload.push_back(ccId); for (int i = 6; i--;) { @@ -193,67 +208,75 @@ bool RawWriter::processOrbit(const gsl::span digitsbranch, const } gbtWordCounter++; gbtWordCounterBeforeCPVTrailer++; - if (nMaxGbtWordsPerPage - gbtWordCounter < 2) { //the only space for trailer left on current page - CpvTrailer tr(gbtWordCounterBeforeCPVTrailer, trg.getBCData().bc, true); //add trailer and flush page to file + if (nMaxGbtWordsPerPage - gbtWordCounter == 1) { //the only space for trailer left on current page + CpvTrailer tr(gbtWordCounterBeforeCPVTrailer, trg.getBCData().bc, nDigsToWriteLeft == 0); //add trailer and flush page to file for (int i = 0; i < 16; i++) { mPayload.push_back(tr.mBytes[i]); } + isHeaderClosedWithTrailer = true; LOG(DEBUG) << "RawWriter::processOrbit() : middle of payload: adding preformatted dma page of size " << mPayload.size(); mRawWriter->addData(feeid, cru, link, endpoint, trg.getBCData(), gsl::span(mPayload.data(), mPayload.size()), preformatted); mPayload.clear(); gbtWordCounter = 0; gbtWordCounterBeforeCPVTrailer = 0; - if (nDigsInTrg > gbtWordCounterBeforeCPVTrailer - 1) { //some digits left for writing - for (int i = 0; i < 16; i++) { //so put a new header and continue - mPayload.push_back(header.mBytes[i]); + if (nDigsToWriteLeft) { //some digits left for writing + CpvHeader newHeader(trg.getBCData(), false, true); + for (int i = 0; i < 16; i++) { //so put a new header and continue + mPayload.push_back(newHeader.mBytes[i]); } + isHeaderClosedWithTrailer = false; gbtWordCounter++; gbtWordCounterBeforeCPVTrailer++; } } } } - if (ccWordCounter % 3 != 0) { - while (ccWordCounter % 3 != 0) { - mPayload.push_back(char(255)); - mPayload.push_back(char(255)); - mPayload.push_back(char(255)); - ccWordCounter++; - } - mPayload.push_back(ccId); - for (int i = 6; i--;) { - mPayload.push_back(char(0)); + } + } //end of dil cycle + if (ccWordCounter % 3 != 0) { + while (ccWordCounter % 3 != 0) { + mPayload.push_back(char(255)); + mPayload.push_back(char(255)); + mPayload.push_back(char(255)); + ccWordCounter++; + } + mPayload.push_back(ccId); + for (int i = 6; i--;) { + mPayload.push_back(char(0)); + } + gbtWordCounter++; + gbtWordCounterBeforeCPVTrailer++; + if (nMaxGbtWordsPerPage - gbtWordCounter == 1) { //the only space for trailer left on current page + CpvTrailer tr(gbtWordCounterBeforeCPVTrailer, trg.getBCData().bc, nDigsToWriteLeft == 0); //add trailer and flush page to file + for (int i = 0; i < 16; i++) { + mPayload.push_back(tr.mBytes[i]); + } + isHeaderClosedWithTrailer = true; + LOG(DEBUG) << "RawWriter::processOrbit() : middle of payload (after filling empty words): adding preformatted dma page of size " << mPayload.size(); + mRawWriter->addData(feeid, cru, link, endpoint, trg.getBCData(), gsl::span(mPayload.data(), mPayload.size()), preformatted); + mPayload.clear(); + gbtWordCounter = 0; + gbtWordCounterBeforeCPVTrailer = 0; + if (nDigsToWriteLeft) { //some digits left for writing + for (int i = 0; i < 16; i++) { //so put a new header and continue + mPayload.push_back(header.mBytes[i]); } + isHeaderClosedWithTrailer = false; gbtWordCounter++; gbtWordCounterBeforeCPVTrailer++; - if (nMaxGbtWordsPerPage - gbtWordCounter < 2) { //the only space for trailer left on current page - CpvTrailer tr(gbtWordCounterBeforeCPVTrailer, trg.getBCData().bc, true); //add trailer and flush page to file - for (int i = 0; i < 16; i++) { - mPayload.push_back(tr.mBytes[i]); - } - LOG(DEBUG) << "RawWriter::processOrbit() : middle of payload (after filling empty words): adding preformatted dma page of size " << mPayload.size(); - mRawWriter->addData(feeid, cru, link, endpoint, trg.getBCData(), gsl::span(mPayload.data(), mPayload.size()), preformatted); - mPayload.clear(); - gbtWordCounter = 0; - gbtWordCounterBeforeCPVTrailer = 0; - if (nDigsInTrg > gbtWordCounterBeforeCPVTrailer - 1) { //some digits left for writing - for (int i = 0; i < 16; i++) { //so put a new header and continue - mPayload.push_back(header.mBytes[i]); - } - gbtWordCounter++; - gbtWordCounterBeforeCPVTrailer++; - } - } } } } + } //end of ccId cycle + if (!isHeaderClosedWithTrailer) { + CpvTrailer tr(gbtWordCounterBeforeCPVTrailer, trg.getBCData().bc, true); + for (int i = 0; i < 16; i++) { + mPayload.push_back(tr.mBytes[i]); + } + isHeaderClosedWithTrailer = true; + gbtWordCounterBeforeCPVTrailer = 0; + gbtWordCounter++; } - CpvTrailer tr(gbtWordCounterBeforeCPVTrailer, trg.getBCData().bc, true); //cout GBT words - for (int i = 0; i < 16; i++) { - mPayload.push_back(tr.mBytes[i]); - } - gbtWordCounterBeforeCPVTrailer++; - gbtWordCounter++; } //end of for (auto& trg : trgs) if (mPayload.size()) { //flush payload to file (if any) LOG(DEBUG) << "RawWriter::processOrbit() : final payload: adding preformatted dma page of size " << mPayload.size(); From eb556de778877309bb7489686b3b61ae1f82fbb3 Mon Sep 17 00:00:00 2001 From: sevdokim Date: Mon, 26 Jul 2021 11:54:42 +0200 Subject: [PATCH 299/314] Added check for valid geometry addresses --- Detectors/CPV/base/include/CPVBase/Geometry.h | 4 +- Detectors/CPV/base/src/Geometry.cxx | 61 +++++++++++-------- .../include/CPVReconstruction/RawDecoder.h | 2 +- .../CPV/reconstruction/src/RawDecoder.cxx | 28 ++++++--- .../CPVWorkflow/RawToDigitConverterSpec.h | 6 +- .../workflow/src/RawToDigitConverterSpec.cxx | 32 +++++----- 6 files changed, 79 insertions(+), 54 deletions(-) diff --git a/Detectors/CPV/base/include/CPVBase/Geometry.h b/Detectors/CPV/base/include/CPVBase/Geometry.h index 643afa3a4c087..32586b8ac363a 100644 --- a/Detectors/CPV/base/include/CPVBase/Geometry.h +++ b/Detectors/CPV/base/include/CPVBase/Geometry.h @@ -88,8 +88,8 @@ class Geometry static void absIdToRelPosInModule(unsigned short absId, float& x, float& z); static bool relToAbsNumbering(const short* relId, unsigned short& absId); - static void hwaddressToAbsId(short ccId, short dil, short gas, short pad, unsigned short& absId); - static void absIdToHWaddress(unsigned short absId, short& ccId, short& dil, short& gas, short& pad); + static bool hwaddressToAbsId(short ccId, short dil, short gas, short pad, unsigned short& absId); + static bool absIdToHWaddress(unsigned short absId, short& ccId, short& dil, short& gas, short& pad); static unsigned short getTotalNPads() { return kNCHANNELS; } static bool IsPadExists(unsigned short absId) diff --git a/Detectors/CPV/base/src/Geometry.cxx b/Detectors/CPV/base/src/Geometry.cxx index 532f9759bffaa..eba148f4e4e43 100644 --- a/Detectors/CPV/base/src/Geometry.cxx +++ b/Detectors/CPV/base/src/Geometry.cxx @@ -28,7 +28,10 @@ bool Geometry::absToRelNumbering(unsigned short absId, short* relid) // relid[0] = CPV Module number 1:fNModules // relid[1] = Column number inside a CPV module (Phi coordinate) // relid[2] = Row number inside a CPV module (Z coordinate) - + if (absId >= kNCHANNELS) { + LOG(DEBUG) << "Wrong absId = " << absId << " > kNCHANNELS=" << kNCHANNELS; + return false; + } const short nCPV = kNumberOfCPVPadsPhi * kNumberOfCPVPadsZ; relid[0] = absId / nCPV + 2; absId -= (relid[0] - 2) * nCPV; @@ -102,52 +105,62 @@ bool Geometry::relToAbsNumbering(const short* relId, unsigned short& absId) return true; } -void Geometry::hwaddressToAbsId(short ccId, short dil, short gas, short pad, unsigned short& absId) +bool Geometry::hwaddressToAbsId(short ccId, short dil, short gas, short pad, unsigned short& absId) { + //check if hw address is valid + bool isGoodHWAddress = true; + if (pad < 0 || pad >= kNPAD) { + LOG(DEBUG) << "Geometry::hwaddressToAbsId() : Wrong pad address: pad=" << pad << " >= kNPAD=" << kNPAD; + isGoodHWAddress = false; + } + if (dil < 0 || dil >= kNDilogic) { + LOG(DEBUG) << "Geometry::hwaddressToAbsId() : Wrong dil address: dil=" << dil << " >= kNDilogic=" << kNDilogic; + isGoodHWAddress = false; + } + if (gas < 0 || gas >= kNGas) { + LOG(DEBUG) << "Geometry::hwaddressToAbsId() : Wrong gasiplex address: gas=" << gas << " >= kNGas=" << kNGas; + isGoodHWAddress = false; + } + //return false in no success case + if (!isGoodHWAddress) { + return false; + } short pZ = mPadToZ[pad]; short pPhi = mPadToPhi[pad]; short relid[3] = {short(ccId / 8 + 2), short((ccId % 8) * 16 + (dil / 2) * 8 + 7 - pPhi), short((dil % 2) * 30 + gas * 6 + pZ)}; - relToAbsNumbering(relid, absId); + return relToAbsNumbering(relid, absId); } -void Geometry::absIdToHWaddress(unsigned short absId, short& ccId, short& dil, short& gas, short& pad) +bool Geometry::absIdToHWaddress(unsigned short absId, short& ccId, short& dil, short& gas, short& pad) { // Convert absId to hw address // Arguments: ccId: 0 -- 7 - mod 2; 8...15 mod 3; 16...23 mod 4 //dilogic: 0..3, gas=0..5, pad:0..47 short relid[3]; - absToRelNumbering(absId, relid); + if (!absToRelNumbering(absId, relid)) { + return false; //wrong absId passed + } ccId = (relid[0] - 2) * 8 + relid[1] / 16; dil = 2 * ((relid[1] % 16) / 8) + relid[2] / 30; // Dilogic# 0..3 gas = (relid[2] % 30) / 6; // gasiplex# 0..4 pad = mPadMap[relid[2] % 6][7 - relid[1] % 8]; // pad 0..47 - if (pad < 0 || pad > kNPAD) { - LOG(ERROR) << "Wrong pad address: pad=" << pad << " > kNPAD=" << kNPAD; - pad = 0; - dil = 0; - gas = 0; - ccId = 0; - return; + bool isAbsIdOk = true; + if (pad < 0 || pad >= kNPAD) { + LOG(DEBUG) << "Wrong pad address: pad=" << pad << " >= kNPAD=" << kNPAD; + isAbsIdOk = false; } if (dil < 0 || dil >= kNDilogic) { - LOG(ERROR) << "Wrong dil address: dil=" << dil << " > kNDilogic=" << kNDilogic; - pad = 0; - dil = 0; - gas = 0; - ccId = 0; - return; + LOG(DEBUG) << "Wrong dil address: dil=" << dil << " >= kNDilogic=" << kNDilogic; + isAbsIdOk = false; } if (gas < 0 || gas >= kNGas) { - LOG(ERROR) << "Wrong gasiplex address: gas=" << gas << " > kNGas=" << kNGas; - pad = 0; - dil = 0; - gas = 0; - ccId = 0; - return; + LOG(DEBUG) << "Wrong gasiplex address: gas=" << gas << " >= kNGas=" << kNGas; + isAbsIdOk = false; } + return isAbsIdOk; } diff --git a/Detectors/CPV/reconstruction/include/CPVReconstruction/RawDecoder.h b/Detectors/CPV/reconstruction/include/CPVReconstruction/RawDecoder.h index 7a72f37b5b903..322cce079e0d5 100644 --- a/Detectors/CPV/reconstruction/include/CPVReconstruction/RawDecoder.h +++ b/Detectors/CPV/reconstruction/include/CPVReconstruction/RawDecoder.h @@ -104,7 +104,7 @@ class RawDecoder RawErrorType_t readChannels(); private: - void addDigit(uint32_t padWord, short ddl, uint16_t bc); + bool addDigit(uint32_t padWord, short ddl, uint16_t bc); void removeLastNDigits(int n); RawReaderMemory& mRawReader; ///< underlying raw reader diff --git a/Detectors/CPV/reconstruction/src/RawDecoder.cxx b/Detectors/CPV/reconstruction/src/RawDecoder.cxx index 09ab34eeb76e0..8917799417657 100644 --- a/Detectors/CPV/reconstruction/src/RawDecoder.cxx +++ b/Detectors/CPV/reconstruction/src/RawDecoder.cxx @@ -85,9 +85,15 @@ RawErrorType_t RawDecoder::readChannels() wordCountFromLastHeader++; for (int i = 0; i < 3; i++) { PadWord pw = {word.cpvPadWord(i)}; - if (pw.zero == 0) { - addDigit(pw.mDataWord, word.ccId(), currentBC); - nDigitsAddedFromLastHeader++; + if (pw.zero == 0) { //cpv pad word, not control or empty + if (addDigit(pw.mDataWord, word.ccId(), currentBC)) { + nDigitsAddedFromLastHeader++; + } else { + LOG(DEBUG) << "RawDecoder::readChannels() : " + << "read pad word with non-valid pad address"; + unsigned int dil = pw.dil, gas = pw.gas, address = pw.address; + mErrors.emplace_back(word.ccId(), dil, gas, address, kPadAddress); + } } } } else { //this may be trailer @@ -129,8 +135,15 @@ RawErrorType_t RawDecoder::readChannels() return kOK; } -void RawDecoder::addDigit(uint32_t w, short ccId, uint16_t bc) +bool RawDecoder::addDigit(uint32_t w, short ccId, uint16_t bc) { + //add digit + PadWord pad = {w}; + unsigned short absId; + if (!o2::cpv::Geometry::hwaddressToAbsId(ccId, pad.dil, pad.gas, pad.address, absId)) { + return false; + } + //new bc -> add bc reference if (mBCRecords.empty() || (mBCRecords.back().bc != bc)) { mBCRecords.push_back(BCRecord(bc, mDigits.size(), mDigits.size())); @@ -138,15 +151,12 @@ void RawDecoder::addDigit(uint32_t w, short ccId, uint16_t bc) mBCRecords.back().lastDigit++; } - //add digit - PadWord pad = {w}; - unsigned short absId; - o2::cpv::Geometry::hwaddressToAbsId(ccId, pad.dil, pad.gas, pad.address, absId); - AddressCharge ac = {0}; ac.Address = absId; ac.Charge = pad.charge; mDigits.push_back(ac.mDataWord); + + return true; } void RawDecoder::removeLastNDigits(int n) diff --git a/Detectors/CPV/workflow/include/CPVWorkflow/RawToDigitConverterSpec.h b/Detectors/CPV/workflow/include/CPVWorkflow/RawToDigitConverterSpec.h index 5d25cf7c4b0f8..6b86ee2231498 100644 --- a/Detectors/CPV/workflow/include/CPVWorkflow/RawToDigitConverterSpec.h +++ b/Detectors/CPV/workflow/include/CPVWorkflow/RawToDigitConverterSpec.h @@ -67,9 +67,9 @@ class RawToDigitConverterSpec : public framework::Task bool mIsPedestalData; ///< Do not subtract pedestals if true bool mIsUsingCcdbMgr; ///< Are we using CCDB manager? long mCurrentTimeStamp; ///< Current timestamp for CCDB querying - std::unique_ptr mCalibParams; ///< CPV calibration - std::unique_ptr mPedestals; ///< CPV pedestals - std::unique_ptr mBadMap; ///< BadMap + CalibParams* mCalibParams; ///< CPV calibration + Pedestals* mPedestals; ///< CPV pedestals + BadChannelMap* mBadMap; ///< BadMap std::vector mOutputDigits; ///< Container with output cells std::vector mOutputTriggerRecords; ///< Container with output cells std::vector mOutputHWErrors; ///< Errors occured in reading data diff --git a/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx b/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx index 7379c5c40cbf0..c09c337d0687a 100644 --- a/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx +++ b/Detectors/CPV/workflow/src/RawToDigitConverterSpec.cxx @@ -51,10 +51,11 @@ void RawToDigitConverterSpec::init(framework::InitContext& ctx) //dummy calibration objects if (ccdbUrl.compare("localtest") == 0) { // test default calibration mIsUsingCcdbMgr = false; - mCalibParams = std::make_unique(1); - mBadMap = std::make_unique(1); - mPedestals = std::make_unique(1); + mCalibParams = new o2::cpv::CalibParams(1); + mBadMap = new o2::cpv::BadChannelMap(1); + mPedestals = new o2::cpv::Pedestals(1); LOG(INFO) << "No reading calibration from ccdb requested, using dummy calibration for testing"; + LOG(INFO) << "Task configuration is done."; return; //localtest = no reading ccdb } @@ -65,9 +66,10 @@ void RawToDigitConverterSpec::init(framework::InitContext& ctx) if (!mIsUsingCcdbMgr) { LOG(ERROR) << "Host " << ccdbUrl << " is not reachable!!!"; LOG(ERROR) << "Using dummy calibration"; - mCalibParams = std::make_unique(1); - mBadMap = std::make_unique(1); - mPedestals = std::make_unique(1); + mCalibParams = new o2::cpv::CalibParams(1); + mBadMap = new o2::cpv::BadChannelMap(1); + mPedestals = new o2::cpv::Pedestals(1); + } else { ccdbMgr.setCaching(true); //make local cache of remote objects ccdbMgr.setLocalObjectValidityChecking(true); //query objects from remote site only when local one is not valid @@ -78,20 +80,20 @@ void RawToDigitConverterSpec::init(framework::InitContext& ctx) mCurrentTimeStamp = o2::ccdb::getCurrentTimestamp(); ccdbMgr.setTimestamp(mCurrentTimeStamp); - mCalibParams.reset(ccdbMgr.get("CPV/Calib/Gains")); + mCalibParams = ccdbMgr.get("CPV/Calib/Gains"); if (!mCalibParams) { - LOG(ERROR) << "Cannot get o2::cpv::CalibParams from CCDB. using dummy calibration!"; - mCalibParams = std::make_unique(1); + LOG(ERROR) << "Cannot get o2::cpv::CalibParams from CCDB. Using dummy calibration!"; + mCalibParams = new o2::cpv::CalibParams(1); } - mBadMap.reset(ccdbMgr.get("CPV/Calib/BadChannelMap")); + mBadMap = ccdbMgr.get("CPV/Calib/BadChannelMap"); if (!mBadMap) { - LOG(ERROR) << "Cannot get o2::cpv::BadChannelMap from CCDB. using dummy calibration!"; - mBadMap = std::make_unique(1); + LOG(ERROR) << "Cannot get o2::cpv::BadChannelMap from CCDB. Using dummy calibration!"; + mBadMap = new o2::cpv::BadChannelMap(1); } - mPedestals.reset(ccdbMgr.get("CPV/Calib/Pedestals")); + mPedestals = ccdbMgr.get("CPV/Calib/Pedestals"); if (!mPedestals) { - LOG(ERROR) << "Cannot get o2::cpv::Pedestals from CCDB. using dummy calibration!"; - mPedestals = std::make_unique(1); + LOG(ERROR) << "Cannot get o2::cpv::Pedestals from CCDB. Using dummy calibration!"; + mPedestals = new o2::cpv::Pedestals(1); } LOG(INFO) << "Task configuration is done."; } From bd46d51a88ce1a3c0b33228f270976c2f157aefb Mon Sep 17 00:00:00 2001 From: jgrosseo Date: Tue, 27 Jul 2021 21:58:13 +0200 Subject: [PATCH 300/314] Shorthand isPrimaryParticle (#6749) * Shorthand isPrimaryParticle * MC example with accessing particles and tracks * Remove MC.h from library --- Analysis/ALICE3/src/alice3-lutmaker.cxx | 4 +-- .../ALICE3/src/alice3-qa-singleparticle.cxx | 4 +-- Analysis/ALICE3/src/pidFTOFqa.cxx | 2 +- Analysis/ALICE3/src/pidRICHqa.cxx | 4 +-- Analysis/Core/CMakeLists.txt | 1 - Analysis/Core/include/AnalysisCore/MC.h | 9 +++++- Analysis/Tasks/PID/qaTOFMC.cxx | 4 +-- .../Tasks/PWGLF/NucleiSpectraEfficiency.cxx | 4 +-- Analysis/Tasks/PWGLF/raacharged.cxx | 6 ++-- Analysis/Tasks/PWGLF/trackchecks.cxx | 6 ++-- Analysis/Tasks/PWGPP/qaEfficiency.cxx | 2 +- Analysis/Tasks/PWGPP/qaEventTrack.cxx | 6 ++-- Analysis/Tutorials/src/mcHistograms.cxx | 30 +++++++++++++++++-- 13 files changed, 56 insertions(+), 26 deletions(-) diff --git a/Analysis/ALICE3/src/alice3-lutmaker.cxx b/Analysis/ALICE3/src/alice3-lutmaker.cxx index fa512799f0338..3d8bd24cc2201 100644 --- a/Analysis/ALICE3/src/alice3-lutmaker.cxx +++ b/Analysis/ALICE3/src/alice3-lutmaker.cxx @@ -103,7 +103,7 @@ struct Alice3LutMaker { if (mcParticle.pdgCode() != pdg) { continue; } - if (selPrim.value && !MC::isPhysicalPrimary(mcParticle)) { // Requiring is physical primary + if (selPrim.value && !MC::isPhysicalPrimary(mcParticle)) { // Requiring is physical primary continue; } @@ -133,7 +133,7 @@ struct Alice3LutMaker { if (mcParticle.pdgCode() != pdg) { continue; } - if (!MC::isPhysicalPrimary(mcParticle)) { // Requiring is physical primary + if (!MC::isPhysicalPrimary(mcParticle)) { // Requiring is physical primary continue; } diff --git a/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx b/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx index 268c4d7e35e3d..81938595e5064 100644 --- a/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx +++ b/Analysis/ALICE3/src/alice3-qa-singleparticle.cxx @@ -118,13 +118,13 @@ struct Alice3SingleParticle { continue; } auto mother = mcParticle.mother0_as(); - if (MC::isPhysicalPrimary(mcParticle)) { + if (MC::isPhysicalPrimary(mcParticle)) { histos.get(HIST("primaries"))->Fill(Form("%i", mother.pdgCode()), 1.f); } else { histos.get(HIST("secondaries"))->Fill(Form("%i", mother.pdgCode()), 1.f); } if (doPrint) { - LOG(INFO) << "Track " << track.globalIndex() << " is a " << mcParticle.pdgCode() << " and comes from a " << mother.pdgCode() << " and is " << (MC::isPhysicalPrimary(mcParticle) ? "" : "not") << " a primary"; + LOG(INFO) << "Track " << track.globalIndex() << " is a " << mcParticle.pdgCode() << " and comes from a " << mother.pdgCode() << " and is " << (MC::isPhysicalPrimary(mcParticle) ? "" : "not") << " a primary"; } } } diff --git a/Analysis/ALICE3/src/pidFTOFqa.cxx b/Analysis/ALICE3/src/pidFTOFqa.cxx index 4914de807c28a..7e0ee3f9335e5 100644 --- a/Analysis/ALICE3/src/pidFTOFqa.cxx +++ b/Analysis/ALICE3/src/pidFTOFqa.cxx @@ -152,7 +152,7 @@ struct ftofPidQaMC { if (pdgCode != 0 && abs(mcParticle.pdgCode()) != pdgCode) { continue; } - if (useOnlyPhysicsPrimary == 1 && !MC::isPhysicalPrimary(mcParticle)) { // Selecting primaries + if (useOnlyPhysicsPrimary == 1 && !MC::isPhysicalPrimary(mcParticle)) { // Selecting primaries histos.fill(HIST("p/Sec"), track.p()); continue; } diff --git a/Analysis/ALICE3/src/pidRICHqa.cxx b/Analysis/ALICE3/src/pidRICHqa.cxx index 5cb700fd302ad..b89e315bbe514 100644 --- a/Analysis/ALICE3/src/pidRICHqa.cxx +++ b/Analysis/ALICE3/src/pidRICHqa.cxx @@ -167,7 +167,7 @@ struct richPidQaMc { if (abs(particle.pdgCode()) == PDGs[pidIndex]) { histos.fill(HIST(hnsigmaMC[pidIndex]), track.pt(), nsigma); - if (MC::isPhysicalPrimary(particle)) { // Selecting primaries + if (MC::isPhysicalPrimary(particle)) { // Selecting primaries histos.fill(HIST(hnsigmaMCprm[pidIndex]), track.pt(), nsigma); } else { histos.fill(HIST(hnsigmaMCsec[pidIndex]), track.pt(), nsigma); @@ -250,7 +250,7 @@ struct richPidQaMc { } histos.fill(HIST(hnsigma[pid_type]), track.pt(), nsigma); histos.fill(HIST(hdelta[pid_type]), track.p(), delta); - if (MC::isPhysicalPrimary(mcParticle)) { // Selecting primaries + if (MC::isPhysicalPrimary(mcParticle)) { // Selecting primaries histos.fill(HIST(hnsigmaprm[pid_type]), track.pt(), nsigma); histos.fill(HIST("p/Prim"), track.p()); } else { diff --git a/Analysis/Core/CMakeLists.txt b/Analysis/Core/CMakeLists.txt index bc4a674b231b7..2b1266a3aa782 100644 --- a/Analysis/Core/CMakeLists.txt +++ b/Analysis/Core/CMakeLists.txt @@ -20,7 +20,6 @@ o2_target_root_dictionary(AnalysisCore include/AnalysisCore/TrackSelection.h include/AnalysisCore/TrackSelectionDefaults.h include/AnalysisCore/TriggerAliases.h - include/AnalysisCore/MC.h LINKDEF src/AnalysisCoreLinkDef.h) o2_add_executable(merger diff --git a/Analysis/Core/include/AnalysisCore/MC.h b/Analysis/Core/include/AnalysisCore/MC.h index 54e0c17cef813..5c5e725e5a33d 100644 --- a/Analysis/Core/include/AnalysisCore/MC.h +++ b/Analysis/Core/include/AnalysisCore/MC.h @@ -13,6 +13,7 @@ #define MC_H #include "Framework/Logger.h" +#include "Framework/AnalysisDataModel.h" #include "TPDGCode.h" @@ -61,7 +62,7 @@ bool isStable(int pdg) // Ported from AliRoot AliStack::IsPhysicalPrimary template -bool isPhysicalPrimary(Particle& particle) +bool isPhysicalPrimary(Particle const& particle) { // Test if a particle is a physical primary according to the following definition: // Particles produced in the collision including products of strong and @@ -169,6 +170,12 @@ bool isPhysicalPrimary(Particle& particle) } } +// Short hand for the standard type +bool isPhysicalPrimary(o2::aod::McParticle const& particle) +{ + return isPhysicalPrimary(particle); +} + }; // namespace MC #endif diff --git a/Analysis/Tasks/PID/qaTOFMC.cxx b/Analysis/Tasks/PID/qaTOFMC.cxx index 8d4ba5314c95f..855922522470e 100644 --- a/Analysis/Tasks/PID/qaTOFMC.cxx +++ b/Analysis/Tasks/PID/qaTOFMC.cxx @@ -135,7 +135,7 @@ struct pidTOFTaskQA { if (abs(particle.pdgCode()) == PDGs[pidIndex]) { histos.fill(HIST(hnsigmaMC[pidIndex]), track.pt(), nsigma); - if (MC::isPhysicalPrimary(particle)) { // Selecting primaries + if (MC::isPhysicalPrimary(particle)) { // Selecting primaries histos.fill(HIST(hnsigmaMCprm[pidIndex]), track.pt(), nsigma); } else { histos.fill(HIST(hnsigmaMCsec[pidIndex]), track.pt(), nsigma); @@ -190,7 +190,7 @@ struct pidTOFTaskQA { histos.fill(HIST(hnsigma[pid_type]), t.pt(), nsigma); histos.fill(HIST("event/tofbeta"), t.p(), t.beta()); const auto particle = t.mcParticle(); - if (MC::isPhysicalPrimary(particle)) { // Selecting primaries + if (MC::isPhysicalPrimary(particle)) { // Selecting primaries histos.fill(HIST(hnsigmaprm[pid_type]), t.pt(), nsigma); histos.fill(HIST("event/tofbetaPrm"), t.p(), t.beta()); } else { diff --git a/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx b/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx index 19753e7b12643..cd6ef867b1765 100644 --- a/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx +++ b/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx @@ -70,7 +70,7 @@ struct NucleiSpectraEfficiencyGen { spectra.add("histGenPt", "generated particles", HistType::kTH1F, {ptAxis}); } - void process(aod::McCollision const& mcCollision, aod::McParticles& mcParticles) + void process(aod::McCollision const& mcCollision, aod::McParticles const& mcParticles) { // // loop over generated particles and fill generated particles @@ -79,7 +79,7 @@ struct NucleiSpectraEfficiencyGen { if (mcParticleGen.pdgCode() != -1000020030) { continue; } - if (!MC::isPhysicalPrimary(mcParticleGen)) { + if (!MC::isPhysicalPrimary(mcParticleGen)) { continue; } if (abs(mcParticleGen.y()) > 0.5) { diff --git a/Analysis/Tasks/PWGLF/raacharged.cxx b/Analysis/Tasks/PWGLF/raacharged.cxx index 373991a40c5d7..4ba0417463c27 100644 --- a/Analysis/Tasks/PWGLF/raacharged.cxx +++ b/Analysis/Tasks/PWGLF/raacharged.cxx @@ -152,7 +152,7 @@ struct raacharged { Configurable isMC{"isMC", 1, "0 - data, 1 - MC"}; - void process(soa::Join::iterator const& collision, soa::Join const& tracks, aod::McParticles& mcParticles) + void process(soa::Join::iterator const& collision, soa::Join const& tracks, aod::McParticles const& mcParticles) { if (!collision.alias()[kINT7]) { return; @@ -179,7 +179,7 @@ struct raacharged { continue; } const auto particle = track.mcParticle(); - if (MC::isPhysicalPrimary(particle)) { + if (MC::isPhysicalPrimary(particle)) { mcInfoVal = 0.0; } else { mcInfoVal = 1.0; @@ -198,7 +198,7 @@ struct raacharged { if (abs(mcParticle.eta()) > 0.8) { continue; } - if (!MC::isPhysicalPrimary(mcParticle)) { + if (!MC::isPhysicalPrimary(mcParticle)) { continue; } diff --git a/Analysis/Tasks/PWGLF/trackchecks.cxx b/Analysis/Tasks/PWGLF/trackchecks.cxx index ba24fccd4259d..87b2394f6ef8c 100644 --- a/Analysis/Tasks/PWGLF/trackchecks.cxx +++ b/Analysis/Tasks/PWGLF/trackchecks.cxx @@ -90,7 +90,7 @@ struct TrackCheckTaskEvSel { //Filters Filter collfilter = nabs(aod::collision::posZ) < cfgCutVZ; void process(soa::Filtered>::iterator const& col, - soa::Join& tracks, aod::McParticles& mcParticles) + soa::Join& tracks, aod::McParticles const& mcParticles) { //event selection @@ -110,7 +110,7 @@ struct TrackCheckTaskEvSel { const auto particle = track.mcParticle(); int pdgcode = particle.pdgCode(); - if (MC::isPhysicalPrimary(particle)) { //is primary? + if (MC::isPhysicalPrimary(particle)) { //is primary? isPrimary = true; } @@ -208,7 +208,7 @@ struct TrackCheckTaskEvSelTrackSel { const auto particle = track.mcParticle(); int pdgcode = particle.pdgCode(); - if (MC::isPhysicalPrimary(particle)) { //is primary? + if (MC::isPhysicalPrimary(particle)) { //is primary? isPrimary = true; } //Calculate y diff --git a/Analysis/Tasks/PWGPP/qaEfficiency.cxx b/Analysis/Tasks/PWGPP/qaEfficiency.cxx index b9313339818a7..ef8cb5966307e 100644 --- a/Analysis/Tasks/PWGPP/qaEfficiency.cxx +++ b/Analysis/Tasks/PWGPP/qaEfficiency.cxx @@ -229,7 +229,7 @@ struct QaTrackingEfficiency { return true; } histos.fill(h, 5); - if ((selPrim == 1) && (!MC::isPhysicalPrimary(p))) { // Requiring is physical primary + if ((selPrim == 1) && (!MC::isPhysicalPrimary(p))) { // Requiring is physical primary return true; } histos.fill(h, 6); diff --git a/Analysis/Tasks/PWGPP/qaEventTrack.cxx b/Analysis/Tasks/PWGPP/qaEventTrack.cxx index deb0d7252e3ab..55e71ba7cc60d 100644 --- a/Analysis/Tasks/PWGPP/qaEventTrack.cxx +++ b/Analysis/Tasks/PWGPP/qaEventTrack.cxx @@ -203,7 +203,7 @@ struct QaTrackingKine { if (pdgCodeSel != 0 && particle.pdgCode() != pdgCodeSel) { // Checking PDG code continue; } - if (MC::isPhysicalPrimary(particle)) { + if (MC::isPhysicalPrimary(particle)) { histos.fill(HIST("trackingPrm/pt"), t.pt()); histos.fill(HIST("trackingPrm/eta"), t.eta()); histos.fill(HIST("trackingPrm/phi"), t.phi()); @@ -223,7 +223,7 @@ struct QaTrackingKine { histos.fill(HIST("particle/pt"), particle.pt()); histos.fill(HIST("particle/eta"), particle.eta()); histos.fill(HIST("particle/phi"), particle.phi()); - if (MC::isPhysicalPrimary(particle)) { + if (MC::isPhysicalPrimary(particle)) { histos.fill(HIST("particlePrm/pt"), particle.pt()); histos.fill(HIST("particlePrm/eta"), particle.eta()); histos.fill(HIST("particlePrm/phi"), particle.phi()); @@ -376,7 +376,7 @@ struct QaTrackingResolution { if (pdgCodeSel != 0 && particle.pdgCode() != pdgCodeSel) { continue; } - if (useOnlyPhysicsPrimary && !MC::isPhysicalPrimary(particle)) { + if (useOnlyPhysicsPrimary && !MC::isPhysicalPrimary(particle)) { continue; } const double deltaPt = track.pt() - particle.pt(); diff --git a/Analysis/Tutorials/src/mcHistograms.cxx b/Analysis/Tutorials/src/mcHistograms.cxx index e5ce383a80672..740a202f89c03 100644 --- a/Analysis/Tutorials/src/mcHistograms.cxx +++ b/Analysis/Tutorials/src/mcHistograms.cxx @@ -38,14 +38,14 @@ struct AccessMcData { OutputObj etaH{TH1F("eta", "eta", 102, -2.01, 2.01)}; // group according to McCollisions - void process(aod::McCollision const& mcCollision, aod::McParticles& mcParticles) + void process(aod::McCollision const& mcCollision, aod::McParticles const& mcParticles) { // access MC truth information with mcCollision() and mcParticle() methods LOGF(info, "MC. vtx-z = %f", mcCollision.posZ()); LOGF(info, "First: %d | Length: %d", mcParticles.begin().index(), mcParticles.size()); int count = 0; for (auto& mcParticle : mcParticles) { - if (MC::isPhysicalPrimary(mcParticle)) { + if (MC::isPhysicalPrimary(mcParticle)) { phiH->Fill(mcParticle.phi()); etaH->Fill(mcParticle.eta()); count++; @@ -61,7 +61,8 @@ struct AccessMcTruth { OutputObj phiDiff{TH1F("phiDiff", ";phi_{MC} - phi_{Rec}", 100, -M_PI, M_PI)}; // group according to reconstructed Collisions - void process(soa::Join::iterator const& collision, soa::Join const& tracks, aod::McParticles const& mcParticles, aod::McCollisions const& mcCollisions) + void process(soa::Join::iterator const& collision, soa::Join const& tracks, + aod::McParticles const& mcParticles, aod::McCollisions const& mcCollisions) { // access MC truth information with mcCollision() and mcParticle() methods LOGF(info, "vtx-z (data) = %f | vtx-z (MC) = %f", collision.posZ(), collision.mcCollision().posZ()); @@ -84,11 +85,34 @@ struct AccessMcTruth { } }; +// Loop over MCColisions and get corresponding collisions (there can be more than one) +// For each of them get the corresponding tracks +struct LoopOverMcMatched { + OutputObj etaDiff{TH1F("etaDiff", ";eta_{MC} - eta_{Rec}", 100, -2, 2)}; + void process(aod::McCollision const& mcCollision, soa::Join const& collisions, + soa::Join const& tracks, aod::McParticles const& mcParticles) + { + // access MC truth information with mcCollision() and mcParticle() methods + LOGF(info, "MC collision at vtx-z = %f with %d mc particles and %d reconstructed collisions", mcCollision.posZ(), mcParticles.size(), collisions.size()); + for (auto& collision : collisions) { + LOGF(info, " Reconstructed collision at vtx-z = %f", collision.posZ()); + + // NOTE this will be replaced by a improved grouping in the future + auto groupedTracks = tracks.sliceBy(aod::track::collisionId, collision.globalIndex()); + LOGF(info, " which has %d tracks", groupedTracks.size()); + for (auto& track : groupedTracks) { + etaDiff->Fill(track.mcParticle().eta() - track.eta()); + } + } + } +}; + WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) { return WorkflowSpec{ adaptAnalysisTask(cfgc), adaptAnalysisTask(cfgc), adaptAnalysisTask(cfgc), + adaptAnalysisTask(cfgc), }; } From 18eb5f31f8c5c3095682273d4a65070a42078fa3 Mon Sep 17 00:00:00 2001 From: Anton Alkin Date: Tue, 27 Jul 2021 22:19:41 +0200 Subject: [PATCH 301/314] DPL Analysis: Introducing conditional expressions (#6753) `ifnode(condition, then, else)` operation is added to expressions. These can be nested and all three arguments can be arbitrary valid expressions. `condition` needs to have boolean result, `then` and `else` should return similar types (ideally the same - both floats, or both boolean, etc.). A `conditionalExpressions.cxx` tutorial example is added (note that it uses bitwise operations in filter expression and thus will only work as is with arrow > 3). --- Analysis/Tutorials/CMakeLists.txt | 6 + .../Tutorials/src/conditionalExpressions.cxx | 56 +++++++++ Framework/Core/include/Framework/BasicOps.h | 3 +- .../Core/include/Framework/Configurable.h | 9 ++ .../include/Framework/ExpressionHelpers.h | 23 ++-- .../Core/include/Framework/Expressions.h | 102 ++++++++++++++-- Framework/Core/src/Expressions.cxx | 109 +++++++++++++++--- Framework/Core/test/test_Expressions.cxx | 70 ++++++++++- 8 files changed, 334 insertions(+), 44 deletions(-) create mode 100644 Analysis/Tutorials/src/conditionalExpressions.cxx diff --git a/Analysis/Tutorials/CMakeLists.txt b/Analysis/Tutorials/CMakeLists.txt index 3bc60f6219bdc..52bb47e3f52a1 100644 --- a/Analysis/Tutorials/CMakeLists.txt +++ b/Analysis/Tutorials/CMakeLists.txt @@ -228,3 +228,9 @@ o2_add_dpl_workflow(multiprocess-example JOB_POOL analysis PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisCore O2::AnalysisDataModel COMPONENT_NAME AnalysisTutorial) + +o2_add_dpl_workflow(conditional-expressions + SOURCES src/conditionalExpressions.cxx + JOB_POOL analysis + PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisCore O2::AnalysisDataModel + COMPONENT_NAME AnalysisTutorial) diff --git a/Analysis/Tutorials/src/conditionalExpressions.cxx b/Analysis/Tutorials/src/conditionalExpressions.cxx new file mode 100644 index 0000000000000..07b9dbac403ed --- /dev/null +++ b/Analysis/Tutorials/src/conditionalExpressions.cxx @@ -0,0 +1,56 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. +/// +/// \brief Demonstration of conditions in filter expressions + +#include "Framework/runDataProcessing.h" +#include "Framework/AnalysisTask.h" + +using namespace o2; +using namespace o2::framework; +using namespace o2::framework::expressions; + +struct ConditionalExpressions { + Configurable useFlags{"useFlags", false, "Switch to enable using track flags for selection"}; + Filter trackFilter = nabs(aod::track::eta) < 0.9f && aod::track::pt > 0.5f && ifnode(useFlags.node() == true, (aod::track::flags & static_cast(o2::aod::track::ITSrefit)) != 0u, true); + OutputObj etapt{TH2F("etapt", ";#eta;#p_{T}", 201, -2.1, 2.1, 601, 0, 60.1)}; + void process(aod::Collision const&, soa::Filtered> const& tracks) + { + for (auto& track : tracks) { + etapt->Fill(track.eta(), track.pt()); + } + } +}; + +struct BasicOperations { + Configurable useFlags{"useFlags", false, "Switch to enable using track flags for selection"}; + Filter trackFilter = nabs(aod::track::eta) < 0.9f && aod::track::pt > 0.5f; + OutputObj etapt{TH2F("etapt", ";#eta;#p_{T}", 201, -2.1, 2.1, 601, 0, 60.1)}; + void process(aod::Collision const&, soa::Filtered> const& tracks) + { + for (auto& track : tracks) { + if (useFlags) { + if ((track.flags() & o2::aod::track::ITSrefit) != 0u) { + etapt->Fill(track.eta(), track.pt()); + } + } else { + etapt->Fill(track.eta(), track.pt()); + } + } + } +}; + +WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) +{ + return WorkflowSpec{ + adaptAnalysisTask(cfgc), + adaptAnalysisTask(cfgc)}; +} diff --git a/Framework/Core/include/Framework/BasicOps.h b/Framework/Core/include/Framework/BasicOps.h index d2a0aacb43c77..230936832f85b 100644 --- a/Framework/Core/include/Framework/BasicOps.h +++ b/Framework/Core/include/Framework/BasicOps.h @@ -41,7 +41,8 @@ enum BasicOp : unsigned int { Acos, Atan, Abs, - BitwiseNot + BitwiseNot, + Conditional }; } // namespace o2::framework diff --git a/Framework/Core/include/Framework/Configurable.h b/Framework/Core/include/Framework/Configurable.h index 3aad0f7154d90..eed9db89836dc 100644 --- a/Framework/Core/include/Framework/Configurable.h +++ b/Framework/Core/include/Framework/Configurable.h @@ -15,6 +15,11 @@ #include namespace o2::framework { +namespace expressions +{ +struct PlaceholderNode; +} + template struct ConfigurableBase { ConfigurableBase(std::string const& name, T&& defaultValue, std::string const& help) @@ -68,6 +73,10 @@ struct Configurable : IP { : IP{name, std::forward(defaultValue), help} { } + auto node() + { + return expressions::PlaceholderNode{*this}; + } }; template diff --git a/Framework/Core/include/Framework/ExpressionHelpers.h b/Framework/Core/include/Framework/ExpressionHelpers.h index d16338dcd64b2..7630e2f799bce 100644 --- a/Framework/Core/include/Framework/ExpressionHelpers.h +++ b/Framework/Core/include/Framework/ExpressionHelpers.h @@ -20,7 +20,7 @@ namespace o2::framework::expressions { /// a map between BasicOp and gandiva node definitions /// note that logical 'and' and 'or' are created separately -static std::array basicOperationsMap = { +static std::array basicOperationsMap = { "and", "or", "add", @@ -48,7 +48,8 @@ static std::array basicOperationsMap = { "acosf", "atanf", "absf", - "bitwise_not"}; + "bitwise_not", + "if"}; struct DatumSpec { /// datum spec either contains an index, a value of a literal or a binding label @@ -72,17 +73,21 @@ bool operator==(DatumSpec const& lhs, DatumSpec const& rhs); std::ostream& operator<<(std::ostream& os, DatumSpec const& spec); struct ColumnOperationSpec { + size_t index = 0; BasicOp op; DatumSpec left; DatumSpec right; + DatumSpec condition; DatumSpec result; atype::type type = atype::NA; ColumnOperationSpec() = default; - // TODO: extend this to support unary ops seamlessly - explicit ColumnOperationSpec(BasicOp op_) : op{op_}, - left{}, - right{}, - result{} + explicit ColumnOperationSpec(BasicOp op_, size_t index_ = 0) + : index{index_}, + op{op_}, + left{}, + right{}, + condition{}, + result{} { switch (op) { case BasicOp::LogicalOr: @@ -110,6 +115,10 @@ struct NodeRecord { Node* node_ptr = nullptr; size_t index = 0; explicit NodeRecord(Node* node_, size_t index_) : node_ptr(node_), index{index_} {} + bool operator!=(NodeRecord const& rhs) + { + return this->node_ptr != rhs.node_ptr; + } }; } // namespace o2::framework::expressions diff --git a/Framework/Core/include/Framework/Expressions.h b/Framework/Core/include/Framework/Expressions.h index a05bcf110990a..404ef4dc8bbf4 100644 --- a/Framework/Core/include/Framework/Expressions.h +++ b/Framework/Core/include/Framework/Expressions.h @@ -128,7 +128,7 @@ struct OpNode { /// A placeholder node for simple type configurable struct PlaceholderNode : LiteralNode { template - PlaceholderNode(Configurable v) : LiteralNode{v.value}, name{v.name} + PlaceholderNode(Configurable const& v) : LiteralNode{v.value}, name{v.name} { if constexpr (variant_trait_v::type> != VariantType::Unknown) { retrieve = [](InitContext& context, std::string const& name) { return LiteralNode::var_t{context.options().get(name.c_str())}; }; @@ -146,40 +146,54 @@ struct PlaceholderNode : LiteralNode { LiteralNode::var_t (*retrieve)(InitContext&, std::string const& name); }; +/// A conditional node +struct ConditionalNode { +}; + /// A generic tree node struct Node { - Node(LiteralNode v) : self{v}, left{nullptr}, right{nullptr} + Node(LiteralNode v) : self{v}, left{nullptr}, right{nullptr}, condition{nullptr} { } - Node(PlaceholderNode v) : self{v}, left{nullptr}, right{nullptr} + Node(PlaceholderNode v) : self{v}, left{nullptr}, right{nullptr}, condition{nullptr} { } - Node(Node&& n) : self{n.self}, left{std::move(n.left)}, right{std::move(n.right)} + Node(Node&& n) : self{n.self}, left{std::move(n.left)}, right{std::move(n.right)}, condition{std::move(n.condition)} { } - Node(BindingNode n) : self{n}, left{nullptr}, right{nullptr} + Node(BindingNode n) : self{n}, left{nullptr}, right{nullptr}, condition{nullptr} { } + Node(ConditionalNode op, Node&& then_, Node&& else_, Node&& condition_) + : self{op}, + left{std::make_unique(std::move(then_))}, + right{std::make_unique(std::move(else_))}, + condition{std::make_unique(std::move(condition_))} {} + Node(OpNode op, Node&& l, Node&& r) : self{op}, left{std::make_unique(std::move(l))}, - right{std::make_unique(std::move(r))} {} + right{std::make_unique(std::move(r))}, + condition{nullptr} {} Node(OpNode op, Node&& l) : self{op}, left{std::make_unique(std::move(l))}, - right{nullptr} {} + right{nullptr}, + condition{nullptr} {} /// variant with possible nodes - using self_t = std::variant; + using self_t = std::variant; self_t self; + size_t index = 0; /// pointers to children std::unique_ptr left; std::unique_ptr right; + std::unique_ptr condition; }; /// overloaded operators to build the tree from an expression @@ -319,20 +333,84 @@ inline Node nbitwise_not(Node left) return Node{OpNode{BasicOp::BitwiseNot}, std::move(left)}; } +/// conditionals +template +inline Node ifnode(C condition_, T then_, E else_) +{ + return Node{ConditionalNode{}, std::move(then_), std::move(else_), std::move(condition_)}; +} + +template <> +inline Node ifnode(Node condition_, Node then_, Node else_) +{ + return Node{ConditionalNode{}, std::move(then_), std::move(else_), std::move(condition_)}; +} + +template ::value || std::is_floating_point::value, bool> = true> +inline Node ifnode(Node condition_, Node then_, L else_) +{ + return Node{ConditionalNode{}, std::move(then_), LiteralNode{else_}, std::move(condition_)}; +} + +template ::value || std::is_floating_point::value, bool> = true> +inline Node ifnode(Node condition_, L then_, Node else_) +{ + return Node{ConditionalNode{}, LiteralNode{then_}, std::move(else_), std::move(condition_)}; +} + +template ::value || std::is_floating_point::value) && (std::is_integral::value || std::is_floating_point::value), bool> = true> +inline Node ifnode(Node condition_, L1 then_, L2 else_) +{ + return Node{ConditionalNode{}, LiteralNode{then_}, LiteralNode{else_}, std::move(condition_)}; +} + +template +inline Node ifnode(Configurable condition_, Node then_, Node else_) +{ + return Node{ConditionalNode{}, std::move(then_), std::move(else_), PlaceholderNode{condition_}}; +} + +template +inline Node ifnode(Node condition_, Node then_, Configurable else_) +{ + return Node{ConditionalNode{}, std::move(then_), PlaceholderNode{else_}, std::move(condition_)}; +} + +template +inline Node ifnode(Node condition_, Configurable then_, Node else_) +{ + return Node{ConditionalNode{}, PlaceholderNode{then_}, std::move(else_), std::move(condition_)}; +} + +template +inline Node ifnode(Node condition_, Configurable then_, Configurable else_) +{ + return Node{ConditionalNode{}, PlaceholderNode{then_}, PlaceholderNode{else_}, std::move(condition_)}; +} + /// A struct, containing the root of the expression tree struct Filter { - Filter(Node&& node_) : node{std::make_unique(std::move(node_))} {} - Filter(Filter&& other) : node{std::move(other.node)} {} + Filter(Node&& node_) : node{std::make_unique(std::move(node_))} + { + (void)designateSubtrees(node.get()); + } + + Filter(Filter&& other) : node{std::move(other.node)} + { + (void)designateSubtrees(node.get()); + } std::unique_ptr node; + + size_t designateSubtrees(Node* node, size_t index = 0); }; using Projector = Filter; using Selection = std::shared_ptr; /// Function for creating gandiva selection from our internal filter tree -Selection createSelection(std::shared_ptr table, Filter const& expression); +Selection createSelection(std::shared_ptr const& table, Filter const& expression); /// Function for creating gandiva selection from prepared gandiva expressions tree -Selection createSelection(std::shared_ptr table, std::shared_ptr gfilter); +Selection createSelection(std::shared_ptr const& table, std::shared_ptr gfilter); struct ColumnOperationSpec; using Operations = std::vector; diff --git a/Framework/Core/src/Expressions.cxx b/Framework/Core/src/Expressions.cxx index cd1756a9ea3d4..0d19e21a1eacb 100644 --- a/Framework/Core/src/Expressions.cxx +++ b/Framework/Core/src/Expressions.cxx @@ -26,6 +26,36 @@ using namespace o2::framework; namespace o2::framework::expressions { + +size_t Filter::designateSubtrees(Node* node, size_t index) +{ + std::stack path; + auto local_index = index; + path.emplace(node, 0); + + while (path.empty() == false) { + auto& top = path.top(); + top.node_ptr->index = local_index; + path.pop(); + if (top.node_ptr->condition != nullptr) { + // start new subtrees + index = designateSubtrees(top.node_ptr->left.get(), local_index + 1); + index = designateSubtrees(top.node_ptr->condition.get(), index + 1); + index = designateSubtrees(top.node_ptr->right.get(), index + 1); + } else { + // continue current subtree + if (top.node_ptr->left != nullptr) { + path.emplace(top.node_ptr->left.get(), 0); + } + if (top.node_ptr->right != nullptr) { + path.emplace(top.node_ptr->right.get(), 0); + } + } + } + + return index; +} + namespace { struct LiteralNodeHelper { @@ -142,8 +172,9 @@ void updatePlaceholders(Filter& filter, InitContext& context) auto& top = path.top(); updateNode(top.node_ptr); - auto leftp = top.node_ptr->left.get(); - auto rightp = top.node_ptr->right.get(); + auto* leftp = top.node_ptr->left.get(); + auto* rightp = top.node_ptr->right.get(); + auto* condp = top.node_ptr->condition.get(); path.pop(); if (leftp != nullptr) { @@ -152,6 +183,9 @@ void updatePlaceholders(Filter& filter, InitContext& context) if (rightp != nullptr) { path.emplace(rightp, 0); } + if (condp != nullptr) { + path.emplace(condp, 0); + } } } @@ -185,14 +219,15 @@ Operations createOperations(Filter const& expression) auto operationSpec = std::visit( overloaded{ - [](OpNode node) { return ColumnOperationSpec{node.op}; }, + [&](OpNode node) { return ColumnOperationSpec{node.op, top.node_ptr->index}; }, + [&](ConditionalNode) { return ColumnOperationSpec{BasicOp::Conditional, top.node_ptr->index}; }, [](auto&&) { return ColumnOperationSpec{}; }}, top.node_ptr->self); operationSpec.result = DatumSpec{top.index, operationSpec.type}; path.pop(); - auto left = top.node_ptr->left.get(); + auto* left = top.node_ptr->left.get(); bool leftLeaf = isLeaf(left); size_t li = 0; if (leftLeaf) { @@ -224,6 +259,23 @@ Operations createOperations(Filter const& expression) } } + decltype(left) condition = nullptr; + if (top.node_ptr->condition != nullptr) { + condition = top.node_ptr->condition.get(); + } + bool condleaf = condition != nullptr ? isLeaf(condition) : true; + size_t ci = 0; + if (condition != nullptr) { + if (condleaf) { + operationSpec.condition = processLeaf(condition); + } else { + ci = index; + operationSpec.condition = DatumSpec{index++, atype::BOOL}; + } + } else { + operationSpec.condition = DatumSpec{}; + } + OperationSpecs.push_back(std::move(operationSpec)); if (!leftLeaf) { path.emplace(left, li); @@ -231,6 +283,9 @@ Operations createOperations(Filter const& expression) if (!isUnary && !rightLeaf) { path.emplace(right, ri); } + if (!condleaf) { + path.emplace(condition, ci); + } } // at this stage the operations vector is created, but the field types are // only set for the logical operations and leaf nodes @@ -303,6 +358,7 @@ Operations createOperations(Filter const& expression) if (it->type == atype::NA) { it->type = type; } + it->result.type = it->type; resultTypes[std::get(it->result.datum)] = it->type; } @@ -312,12 +368,12 @@ Operations createOperations(Filter const& expression) gandiva::ConditionPtr makeCondition(gandiva::NodePtr node) { - return gandiva::TreeExprBuilder::MakeCondition(node); + return gandiva::TreeExprBuilder::MakeCondition(std::move(node)); } gandiva::ExpressionPtr makeExpression(gandiva::NodePtr node, gandiva::FieldPtr result) { - return gandiva::TreeExprBuilder::MakeExpression(node, result); + return gandiva::TreeExprBuilder::MakeExpression(std::move(node), std::move(result)); } std::shared_ptr @@ -338,7 +394,7 @@ std::shared_ptr { std::shared_ptr filter; auto s = gandiva::Filter::Make(Schema, - condition, + std::move(condition), &filter); if (!s.ok()) { throw runtime_error_f("Failed to create filter: %s", s.ToString().c_str()); @@ -351,7 +407,7 @@ std::shared_ptr { std::shared_ptr projector; auto s = gandiva::Projector::Make(Schema, - {makeExpression(createExpressionTree(opSpecs, Schema), result)}, + {makeExpression(createExpressionTree(opSpecs, Schema), std::move(result))}, &projector); if (!s.ok()) { throw runtime_error_f("Failed to create projector: %s", s.ToString().c_str()); @@ -362,10 +418,10 @@ std::shared_ptr std::shared_ptr createProjector(gandiva::SchemaPtr const& Schema, Projector&& p, gandiva::FieldPtr result) { - return createProjector(Schema, createOperations(std::move(p)), std::move(result)); + return createProjector(Schema, createOperations(p), std::move(result)); } -Selection createSelection(std::shared_ptr table, std::shared_ptr gfilter) +Selection createSelection(std::shared_ptr const& table, std::shared_ptr gfilter) { Selection selection; auto s = gandiva::SelectionVector::MakeInt64(table->num_rows(), @@ -396,13 +452,13 @@ Selection createSelection(std::shared_ptr table, std::shared_ptr table, - const Filter& expression) +Selection createSelection(std::shared_ptr const& table, + Filter const& expression) { return createSelection(table, createFilter(table->schema(), createOperations(std::move(expression)))); } -auto createProjection(std::shared_ptr table, std::shared_ptr gprojector) +auto createProjection(std::shared_ptr const& table, std::shared_ptr const& gprojector) { arrow::TableBatchReader reader(*table); std::shared_ptr batch; @@ -430,6 +486,7 @@ gandiva::NodePtr createExpressionTree(Operations const& opSpecs, opNodes.resize(opSpecs.size()); std::fill(opNodes.begin(), opNodes.end(), nullptr); std::unordered_map fieldNodes; + std::unordered_map subtrees; auto datumNode = [Schema, &opNodes, &fieldNodes](DatumSpec const& spec) { if (spec.datum.index() == 0) { @@ -490,6 +547,7 @@ gandiva::NodePtr createExpressionTree(Operations const& opSpecs, for (auto it = opSpecs.rbegin(); it != opSpecs.rend(); ++it) { auto leftNode = datumNode(it->left); auto rightNode = datumNode(it->right); + auto condNode = datumNode(it->condition); auto insertUpcastNode = [&](gandiva::NodePtr node, atype::type t) { if (t != it->type) { @@ -509,12 +567,17 @@ gandiva::NodePtr createExpressionTree(Operations const& opSpecs, } }; + gandiva::NodePtr temp_node; + switch (it->op) { case BasicOp::LogicalOr: - tree = gandiva::TreeExprBuilder::MakeOr({leftNode, rightNode}); + temp_node = gandiva::TreeExprBuilder::MakeOr({leftNode, rightNode}); break; case BasicOp::LogicalAnd: - tree = gandiva::TreeExprBuilder::MakeAnd({leftNode, rightNode}); + temp_node = gandiva::TreeExprBuilder::MakeAnd({leftNode, rightNode}); + break; + case BasicOp::Conditional: + temp_node = gandiva::TreeExprBuilder::MakeIf(condNode, leftNode, rightNode, concreteArrowType(it->type)); break; default: if (it->op < BasicOp::Sqrt) { @@ -524,14 +587,24 @@ gandiva::NodePtr createExpressionTree(Operations const& opSpecs, } else if (it->op == BasicOp::Equal || it->op == BasicOp::NotEqual) { insertEqualizeUpcastNode(leftNode, rightNode, it->left.type, it->right.type); } - tree = gandiva::TreeExprBuilder::MakeFunction(basicOperationsMap[it->op], {leftNode, rightNode}, concreteArrowType(it->type)); + temp_node = gandiva::TreeExprBuilder::MakeFunction(basicOperationsMap[it->op], {leftNode, rightNode}, concreteArrowType(it->type)); } else { leftNode = insertUpcastNode(leftNode, it->left.type); - tree = gandiva::TreeExprBuilder::MakeFunction(basicOperationsMap[it->op], {leftNode}, concreteArrowType(it->type)); + temp_node = gandiva::TreeExprBuilder::MakeFunction(basicOperationsMap[it->op], {leftNode}, concreteArrowType(it->type)); } break; } - opNodes[std::get(it->result.datum)] = tree; + if (it->index == 0) { + tree = temp_node; + } else { + auto subtree = subtrees.find(it->index); + if (subtree == subtrees.end()) { + subtrees.insert({it->index, temp_node}); + } else { + subtree->second = temp_node; + } + } + opNodes[std::get(it->result.datum)] = temp_node; } return tree; diff --git a/Framework/Core/test/test_Expressions.cxx b/Framework/Core/test/test_Expressions.cxx index 57c61a636671d..c3fdea4883045 100644 --- a/Framework/Core/test/test_Expressions.cxx +++ b/Framework/Core/test/test_Expressions.cxx @@ -37,12 +37,12 @@ static BindingNode testInt{"testInt", 6, atype::INT32}; namespace o2::aod::track { DECLARE_SOA_EXPRESSION_COLUMN(Pze, pz, float, o2::aod::track::tgl*(1.f / o2::aod::track::signed1Pt)); -} +} // namespace o2::aod::track BOOST_AUTO_TEST_CASE(TestTreeParsing) { expressions::Filter f = ((nodes::phi > 1) && (nodes::phi < 2)) && (nodes::eta < 1); - auto specs = createOperations(std::move(f)); + auto specs = createOperations(f); BOOST_REQUIRE_EQUAL(specs[0].left, (DatumSpec{1u, atype::BOOL})); BOOST_REQUIRE_EQUAL(specs[0].right, (DatumSpec{2u, atype::BOOL})); BOOST_REQUIRE_EQUAL(specs[0].result, (DatumSpec{0u, atype::BOOL})); @@ -64,7 +64,7 @@ BOOST_AUTO_TEST_CASE(TestTreeParsing) BOOST_REQUIRE_EQUAL(specs[4].result, (DatumSpec{3u, atype::BOOL})); expressions::Filter g = ((nodes::eta + 2.f) > 0.5) || ((nodes::phi - M_PI) < 3); - auto gspecs = createOperations(std::move(g)); + auto gspecs = createOperations(g); BOOST_REQUIRE_EQUAL(gspecs[0].left, (DatumSpec{1u, atype::BOOL})); BOOST_REQUIRE_EQUAL(gspecs[0].right, (DatumSpec{2u, atype::BOOL})); BOOST_REQUIRE_EQUAL(gspecs[0].result, (DatumSpec{0u, atype::BOOL})); @@ -86,7 +86,7 @@ BOOST_AUTO_TEST_CASE(TestTreeParsing) BOOST_REQUIRE_EQUAL(gspecs[4].result, (DatumSpec{4u, atype::FLOAT})); expressions::Filter h = (nodes::phi == 0) || (nodes::phi == 3); - auto hspecs = createOperations(std::move(h)); + auto hspecs = createOperations(h); BOOST_REQUIRE_EQUAL(hspecs[0].left, (DatumSpec{1u, atype::BOOL})); BOOST_REQUIRE_EQUAL(hspecs[0].right, (DatumSpec{2u, atype::BOOL})); @@ -140,7 +140,7 @@ BOOST_AUTO_TEST_CASE(TestTreeParsing) BOOST_AUTO_TEST_CASE(TestGandivaTreeCreation) { Projector pze = o2::aod::track::Pze::Projector(); - auto pzspecs = createOperations(std::move(pze)); + auto pzspecs = createOperations(pze); BOOST_REQUIRE_EQUAL(pzspecs[0].left, (DatumSpec{std::string{"fTgl"}, typeid(o2::aod::track::Tgl).hash_code(), atype::FLOAT})); BOOST_REQUIRE_EQUAL(pzspecs[0].right, (DatumSpec{1u, atype::FLOAT})); BOOST_REQUIRE_EQUAL(pzspecs[0].result, (DatumSpec{0u, atype::FLOAT})); @@ -159,7 +159,7 @@ BOOST_AUTO_TEST_CASE(TestGandivaTreeCreation) auto projector = createProjector(schema, pzspecs, resfield); Projector pte = o2::aod::track::Pt::Projector(); - auto ptespecs = createOperations(std::move(pte)); + auto ptespecs = createOperations(pte); BOOST_REQUIRE_EQUAL(ptespecs[0].left, (DatumSpec{1u, atype::FLOAT})); BOOST_REQUIRE_EQUAL(ptespecs[0].right, (DatumSpec{})); BOOST_REQUIRE_EQUAL(ptespecs[0].result, (DatumSpec{0u, atype::FLOAT})); @@ -203,3 +203,61 @@ BOOST_AUTO_TEST_CASE(TestGandivaTreeCreation) BOOST_REQUIRE(s.ok()); #endif } + +BOOST_AUTO_TEST_CASE(TestConditionalExpressions) +{ + // simple conditional + Filter cf = nabs(o2::aod::track::eta) < 1.0f && ifnode((o2::aod::track::pt < 1.0f), (o2::aod::track::phiraw > (float)(M_PI / 2.)), (o2::aod::track::phiraw < (float)(M_PI / 2.))); + auto cfspecs = createOperations(cf); + BOOST_REQUIRE_EQUAL(cfspecs[0].left, (DatumSpec{1u, atype::BOOL})); + BOOST_REQUIRE_EQUAL(cfspecs[0].right, (DatumSpec{2u, atype::BOOL})); + BOOST_REQUIRE_EQUAL(cfspecs[0].result, (DatumSpec{0u, atype::BOOL})); + + BOOST_REQUIRE_EQUAL(cfspecs[1].left, (DatumSpec{3u, atype::BOOL})); + BOOST_REQUIRE_EQUAL(cfspecs[1].right, (DatumSpec{4u, atype::BOOL})); + BOOST_REQUIRE_EQUAL(cfspecs[1].condition, (DatumSpec{5u, atype::BOOL})); + BOOST_REQUIRE_EQUAL(cfspecs[1].result, (DatumSpec{2u, atype::BOOL})); + + BOOST_REQUIRE_EQUAL(cfspecs[2].left, (DatumSpec{std::string{"fPt"}, typeid(o2::aod::track::Pt).hash_code(), atype::FLOAT})); + BOOST_REQUIRE_EQUAL(cfspecs[2].right, (DatumSpec{LiteralNode::var_t{1.0f}, atype::FLOAT})); + BOOST_REQUIRE_EQUAL(cfspecs[2].result, (DatumSpec{5u, atype::BOOL})); + + BOOST_REQUIRE_EQUAL(cfspecs[3].left, (DatumSpec{std::string{"fRawPhi"}, typeid(o2::aod::track::RawPhi).hash_code(), atype::FLOAT})); + BOOST_REQUIRE_EQUAL(cfspecs[3].right, (DatumSpec{LiteralNode::var_t{(float)(M_PI / 2.)}, atype::FLOAT})); + BOOST_REQUIRE_EQUAL(cfspecs[3].result, (DatumSpec{4u, atype::BOOL})); + + BOOST_REQUIRE_EQUAL(cfspecs[4].left, (DatumSpec{std::string{"fRawPhi"}, typeid(o2::aod::track::RawPhi).hash_code(), atype::FLOAT})); + BOOST_REQUIRE_EQUAL(cfspecs[4].right, (DatumSpec{LiteralNode::var_t{(float)(M_PI / 2.)}, atype::FLOAT})); + BOOST_REQUIRE_EQUAL(cfspecs[4].result, (DatumSpec{3u, atype::BOOL})); + + BOOST_REQUIRE_EQUAL(cfspecs[5].left, (DatumSpec{6u, atype::FLOAT})); + BOOST_REQUIRE_EQUAL(cfspecs[5].right, (DatumSpec{LiteralNode::var_t{1.0f}, atype::FLOAT})); + BOOST_REQUIRE_EQUAL(cfspecs[5].result, (DatumSpec{1u, atype::BOOL})); + + BOOST_REQUIRE_EQUAL(cfspecs[6].left, (DatumSpec{std::string{"fEta"}, typeid(o2::aod::track::Eta).hash_code(), atype::FLOAT})); + BOOST_REQUIRE_EQUAL(cfspecs[6].right, (DatumSpec{})); + BOOST_REQUIRE_EQUAL(cfspecs[6].result, (DatumSpec{6u, atype::FLOAT})); + + auto infield1 = o2::aod::track::Pt::asArrowField(); + auto infield2 = o2::aod::track::Eta::asArrowField(); + auto infield3 = o2::aod::track::RawPhi::asArrowField(); + auto schema = std::make_shared(std::vector{infield1, infield2, infield3}); + auto gandiva_tree = createExpressionTree(cfspecs, schema); + auto gandiva_condition = makeCondition(gandiva_tree); + auto gandiva_filter = createFilter(schema, gandiva_condition); + + BOOST_CHECK_EQUAL(gandiva_tree->ToString(), "bool less_than(float absf((float) fEta), (const float) 1 raw(3f800000)) && if (bool less_than((float) fPt, (const float) 1 raw(3f800000))) { bool greater_than((float) fRawPhi, (const float) 1.5708 raw(3fc90fdb)) } else { bool less_than((float) fRawPhi, (const float) 1.5708 raw(3fc90fdb)) }"); + + // nested conditional + Filter cfn = o2::aod::track::signed1Pt > 0.f && ifnode(std::move(*cf.node), nabs(o2::aod::track::x) > 1.0f, nabs(o2::aod::track::y) > 1.0f); + auto cfnspecs = createOperations(cfn); + auto infield4 = o2::aod::track::Signed1Pt::asArrowField(); + auto infield5 = o2::aod::track::X::asArrowField(); + auto infield6 = o2::aod::track::Y::asArrowField(); + auto schema2 = std::make_shared(std::vector{infield1, infield2, infield3, infield4, infield5, infield6}); + auto gandiva_tree2 = createExpressionTree(cfnspecs, schema2); + auto gandiva_condition2 = makeCondition(gandiva_tree2); + auto gandiva_filter2 = createFilter(schema2, gandiva_condition2); + BOOST_REQUIRE_EQUAL(gandiva_tree2->ToString(), + "bool greater_than((float) fSigned1Pt, (const float) 0 raw(0)) && if (bool less_than(float absf((float) fEta), (const float) 1 raw(3f800000)) && if (bool less_than((float) fPt, (const float) 1 raw(3f800000))) { bool greater_than((float) fRawPhi, (const float) 1.5708 raw(3fc90fdb)) } else { bool less_than((float) fRawPhi, (const float) 1.5708 raw(3fc90fdb)) }) { bool greater_than(float absf((float) fX), (const float) 1 raw(3f800000)) } else { bool greater_than(float absf((float) fY), (const float) 1 raw(3f800000)) }"); +} From 4827bceaffbecddf864486a0209466a18c8c1273 Mon Sep 17 00:00:00 2001 From: Paul Buehler Date: Tue, 27 Jul 2021 22:20:25 +0200 Subject: [PATCH 302/314] Added script which allows automatic update of O2 data model documentation (#6762) --- scripts/datamodel-doc/ALICEO2dataModel.py | 42 +++++--- scripts/datamodel-doc/README.md | 28 +++++ scripts/datamodel-doc/inputCard.xml | 13 +++ scripts/datamodel-doc/mdUpdate.py | 125 ++++++++++++++++++++++ 4 files changed, 196 insertions(+), 12 deletions(-) create mode 100755 scripts/datamodel-doc/mdUpdate.py diff --git a/scripts/datamodel-doc/ALICEO2dataModel.py b/scripts/datamodel-doc/ALICEO2dataModel.py index 1706569e4f657..8ac65d4447161 100644 --- a/scripts/datamodel-doc/ALICEO2dataModel.py +++ b/scripts/datamodel-doc/ALICEO2dataModel.py @@ -456,6 +456,24 @@ def printHTML(self): else: tmp = tmp.text.strip() O2href = tmp + tmp = self.initCard.find("O2general/delimAO2D") + if tmp == None: + tmp = "" + else: + tmp = tmp.text.strip() + delimAO2D = tmp + tmp = self.initCard.find("O2general/delimHelpers") + if tmp == None: + tmp = "" + else: + tmp = tmp.text.strip() + delimHelpers = tmp + tmp = self.initCard.find("O2general/delimJoins") + if tmp == None: + tmp = "" + else: + tmp = tmp.text.strip() + delimJoins = tmp # gather all tables and columns tabs = list() @@ -476,9 +494,14 @@ def printHTML(self): if len(inds) == 0: continue - if amFirst == False and HTheaderToWrite == True: - self.printHTheaderHTML() - HTheaderToWrite = False + if amFirst == True: + print(delimAO2D) + else: + if HTheaderToWrite == True: + print(delimAO2D) + print("") + print(delimHelpers) + HTheaderToWrite = False print("") print("#### ", CErelation[2]) @@ -562,7 +585,10 @@ def printHTML(self): amFirst = False # now print the usings + print(delimHelpers) if len(uses) > 0: + print("") + print(delimJoins) print("") print("") print("## List of defined joins and iterators") @@ -577,15 +603,7 @@ def printHTML(self): print(" ") print(" ") print("") - - def printHTheaderHTML(self): - print("") - print("") - print("## List of tables created with helper tasks") - print("") - print("The AO2D data files contain the basic set of data which is available for data analysis and from which other quantities are deduced. There are however quantities like PID information, V0 characteristics, etc. which are commonly used in analysis. In order to prevent that tasks to compute such quantities are repeatingly developed, a set of helper tasks is provided by the O2 framework. These tasks are listed below together with the tables they provide.") - print("") - print("Click on the labels to display the table details.") + print(delimJoins) # ----------------------------------------------------------------------------- # functions diff --git a/scripts/datamodel-doc/README.md b/scripts/datamodel-doc/README.md index a423213c0b7ba..dbda700a211da 100644 --- a/scripts/datamodel-doc/README.md +++ b/scripts/datamodel-doc/README.md @@ -74,3 +74,31 @@ Set the path in tag data/O2general/mainDir/local to the actual O2 installation p ./extractDataModel.py > htmloutput.txt - Update the markdown files with the content of htmloutput.txt. + + +### Update the markdown files automatically + +The python script mdUpdate.py allows to update the contents of the md files automatically. + +mdUpdate.py takes four arguments: + +Usage: +mdUpdate.py cc fn2u fnold fnnew + +cc: 1: AO2D, 2: Helpers, 3: Joins + +fn2u: file with new text + +fnold: file with old text + +fnnew: file with replaced text + +mdUpdate.py replaces in file fnold the block of text which is delimited by two lines containing a delimiter string by the block of text in file fn2u which is delimited by two lines containing the same delimiter string and write the output to file fnnew. The delimiter string is obtained from the inputCard.xml, depending on the value of cc. If fnnew = fnold, the content of fnold is overwritten. + +So to update the md files do: + +- ./extractDataModel.py > htmloutput.txt +- path2mds=./testing +- ./mdUpdate.py 1 htmloutput.txt $path2mds/ao2dTables.md $path2mds/ao2dTables.md +- ./mdUpdate.py 2 htmloutput.txt $path2mds/helperTaskTables.md $path2mds/helperTaskTables.md +- ./mdUpdate.py 3 htmloutput.txt $path2mds/joinsAndIterators.md $path2mds/joinsAndIterators.md diff --git a/scripts/datamodel-doc/inputCard.xml b/scripts/datamodel-doc/inputCard.xml index e9d5b0e1b76ce..537d587283c60 100644 --- a/scripts/datamodel-doc/inputCard.xml +++ b/scripts/datamodel-doc/inputCard.xml @@ -46,6 +46,19 @@ o2_add_dpl_workflow + + + <!-- Block with AO2D tables --> + + + + <!-- Block with helper tasks --> + + + + <!-- Block with joins and iterators --> + + diff --git a/scripts/datamodel-doc/mdUpdate.py b/scripts/datamodel-doc/mdUpdate.py new file mode 100755 index 0000000000000..3613c446673a7 --- /dev/null +++ b/scripts/datamodel-doc/mdUpdate.py @@ -0,0 +1,125 @@ +#!/usr/bin/python3.6 + +import sys +import xml.etree.ElementTree as ET + +# ----------------------------------------------------------------------------- +# replace the text between two lines starting with 'delimiter' in file 'fold' +# by the text between two lines starting with 'delimiter' in file 'ftouse'. +# Write new content into 'fnew' and keep the lines with the 'delimiter'. + +# ----------------------------------------------------------------------------- +# get text in file 'fn' beteween the lines starting with 'delimiter' +def blockbtwdelims (fn, delimiter): + blck = [] + + cnt = 0 + with open(fn) as f: + for line in f: + if line.startswith(delimiter): + blck.append(line.rstrip()) + if cnt > 0: + break + cnt += 1 + else: + if cnt > 0: + blck.append(line.rstrip()) + + return blck + +# ----------------------------------------------------------------------------- +# get text in file 'fn' before any line starting with 'delimiter' +def blockbefdelims (fn, delimiter): + blck = [] + + with open(fn) as f: + for line in f: + if line.startswith(delimiter): + break + blck.append(line.rstrip()) + + return blck + +# ----------------------------------------------------------------------------- +# get text in file 'fn' after the text block delimited by lines starting with +# 'delimiter' +def blockaftdelims (fn, delimiter): + blck = [] + + cnt = 0 + with open(fn) as f: + for line in f: + if line.startswith(delimiter): + if cnt < 2: + cnt += 1 + continue + + if cnt > 1: + blck.append(line.rstrip()) + + return blck + +# ----------------------------------------------------------------------------- +# concatenate two blocks of text +def addblocks(b0, b1): + b2 = b0 + for l in b1: + b2.append(l.rstrip()) + + return b2 + +# ----------------------------------------------------------------------------- +def main(initCard): + + if len(sys.argv) < 4: + print ("Wrong number of arguments!") + print ("Usage:") + print (" purger.py cc fn2u fnold fnnew") + print ("") + print (" cc: 1: AO2D, 2: Helpers, 3: Joins") + print (" fn2u: file with new text") + print (" fnold: file with old text") + print (" fnnew: file with replaced text") + print ("") + exit() + + cc = int(sys.argv[1]) + fntouse = sys.argv[2] + fnold = sys.argv[3] + fnnew = sys.argv[4] + + # get the 'delimiter' from initCard + tmp = None + if cc == 1: + tmp = initCard.find("O2general/delimAO2D") + elif cc == 2: + tmp = initCard.find("O2general/delimHelpers") + elif cc == 3: + tmp = initCard.find("O2general/delimJoins") + else: + exit() + delimiter = tmp.text.strip() + print("Replacing ",delimiter) + + # get replacement + b2u = blockbtwdelims(fntouse, delimiter) + if len(b2u) == 0: + exit() + + # entire new text + bnew = addblocks(blockbefdelims(fnold, delimiter), b2u) + bnew = addblocks(bnew, blockaftdelims(fnold, delimiter)) + + # write new text to fnnew + with open(fnnew, 'w') as f: + for l in bnew: + print(l, file=f) + +# ----------------------------------------------------------------------------- +if __name__ == "__main__": + + initCard = ET.parse("inputCard.xml") + + main(initCard) + +# ----------------------------------------------------------------------------- From 892756745dce17f15ae4c8200286ff7205372c3f Mon Sep 17 00:00:00 2001 From: akalweit Date: Wed, 28 Jul 2021 00:45:51 +0200 Subject: [PATCH 303/314] Several small bugfixes (mostly histogram binning and filling) (#6748) --- Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx | 8 ++++---- Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx | 11 +++++++---- 2 files changed, 11 insertions(+), 8 deletions(-) diff --git a/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx b/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx index cd6ef867b1765..0069f878ef89e 100644 --- a/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx +++ b/Analysis/Tasks/PWGLF/NucleiSpectraEfficiency.cxx @@ -45,8 +45,8 @@ void customize(std::vector& workflowOptions) #include "Framework/runDataProcessing.h" // important to declare after the options -struct NucleiSpectraEfficienctyVtx { - OutputObj histVertexTrueZ{TH1F("histVertexTrueZ", "MC true z position of z-vertex; vertex z (cm)", 100, -20., 20.)}; +struct NucleiSpectraEfficiencyVtx { + OutputObj histVertexTrueZ{TH1F("histVertexTrueZ", "MC true z position of z-vertex; vertex z (cm)", 200, -20., 20.)}; void process(aod::McCollision const& mcCollision) { @@ -103,7 +103,7 @@ struct NucleiSpectraEfficiencyRec { AxisSpec ptAxis = {ptBinning, "#it{p}_{T} (GeV/#it{c})"}; AxisSpec centAxis = {centBinning, "V0M (%)"}; // - spectra.add("histRecVtxZ", "collision z position", HistType::kTH1F, {{600, -20., +20., "z position (cm)"}}); + spectra.add("histRecVtxZ", "collision z position", HistType::kTH1F, {{200, -20., +20., "z position (cm)"}}); spectra.add("histRecPt", "reconstructed particles", HistType::kTH1F, {ptAxis}); spectra.add("histTpcSignal", "Specific energy loss", HistType::kTH2F, {{600, -6., 6., "#it{p} (GeV/#it{c})"}, {1400, 0, 1400, "d#it{E} / d#it{X} (a. u.)"}}); spectra.add("histTpcNsigma", "n-sigma TPC", HistType::kTH2F, {ptAxis, {200, -100., +100., "n#sigma_{He} (a. u.)"}}); @@ -167,7 +167,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) WorkflowSpec workflow{}; // if (vertex) { - workflow.push_back(adaptAnalysisTask(cfgc, TaskName{"nuclei-efficiency-vtx"})); + workflow.push_back(adaptAnalysisTask(cfgc, TaskName{"nuclei-efficiency-vtx"})); } if (gen) { workflow.push_back(adaptAnalysisTask(cfgc, TaskName{"nuclei-efficiency-gen"})); diff --git a/Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx b/Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx index 8939f7c00a765..f2a088cde5c8a 100644 --- a/Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx +++ b/Analysis/Tasks/PWGLF/NucleiSpectraTask.cxx @@ -40,13 +40,14 @@ struct NucleiSpectraTask { void init(o2::framework::InitContext&) { - std::vector ptBinning = {0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 1.8, 2.0, 2.2, 2.4, 2.8, 3.2, 3.6, 4., 5.}; + std::vector ptBinning = {0.5, 0.6, 0.7, 0.8, 0.9, 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, + 1.8, 2.0, 2.2, 2.4, 2.8, 3.2, 3.6, 4., 5., 6., 8., 10., 12., 14.}; std::vector centBinning = {0., 1., 5., 10., 20., 30., 40., 50., 70., 100.}; AxisSpec ptAxis = {ptBinning, "#it{p}_{T} (GeV/#it{c})"}; AxisSpec centAxis = {centBinning, "V0M (%)"}; - spectra.add("histRecVtxZData", "collision z position", HistType::kTH1F, {{600, -20., +20., "z position (cm)"}}); + spectra.add("histRecVtxZData", "collision z position", HistType::kTH1F, {{200, -20., +20., "z position (cm)"}}); spectra.add("histKeepEventData", "skimming histogram", HistType::kTH1F, {{2, -0.5, +1.5, "true: keep event, false: reject event"}}); spectra.add("histTpcSignalData", "Specific energy loss", HistType::kTH2F, {{600, -6., 6., "#it{p} (GeV/#it{c})"}, {1400, 0, 1400, "d#it{E} / d#it{X} (a. u.)"}}); spectra.add("histTofSignalData", "TOF signal", HistType::kTH2F, {{600, -6., 6., "#it{p} (GeV/#it{c})"}, {500, 0.0, 1.0, "#beta (TOF)"}}); @@ -94,14 +95,16 @@ struct NucleiSpectraTask { nSigmaHe3 += 94.222101 * TMath::Exp(-0.905203 * track.tpcInnerParam()); // spectra.fill(HIST("histTpcSignalData"), track.tpcInnerParam() * track.sign(), track.tpcSignal()); - spectra.fill(HIST("histTpcNsigmaData"), track.tpcInnerParam(), nSigmaHe3); + if (track.sign() < 0) { + spectra.fill(HIST("histTpcNsigmaData"), track.pt() * 2.0, nSigmaHe3); + } // // check offline-trigger (skimming) condidition // if (nSigmaHe3 > nsigmacutLow && nSigmaHe3 < nsigmacutHigh) { keepEvent = kTRUE; if (track.sign() < 0) { - spectra.fill(HIST("histDcaVsPtData"), track.pt(), track.dcaXY()); + spectra.fill(HIST("histDcaVsPtData"), track.pt() * 2.0, track.dcaXY()); } // // store tracks for invariant mass calculation From 8b722758a2a72103faec24c25da2f959051d5380 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Tue, 27 Jul 2021 11:38:53 +0200 Subject: [PATCH 304/314] Fix formatting of headers --- DataFormats/Headers/include/Headers/DataHeaderHelpers.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/DataFormats/Headers/include/Headers/DataHeaderHelpers.h b/DataFormats/Headers/include/Headers/DataHeaderHelpers.h index bf05247ee104c..b786d26c6003e 100644 --- a/DataFormats/Headers/include/Headers/DataHeaderHelpers.h +++ b/DataFormats/Headers/include/Headers/DataHeaderHelpers.h @@ -69,7 +69,7 @@ struct fmt::formatter { template auto format(const o2::header::DataHeader& h, FormatContext& ctx) { - auto res = fmt::format("Data header version %u, flags: %u\n", h.headerVersion, h.flags) + + auto res = fmt::format("Data header version {}, flags: {}\n", h.headerVersion, h.flags) + fmt::format(" origin : {}\n", h.dataOrigin.str) + fmt::format(" serialization: {}\n", h.payloadSerializationMethod.str) + fmt::format(" description : {}\n", h.dataDescription.str) + From 0c08a56dbce783811d66212ca1778e1643291e0e Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Tue, 27 Jul 2021 11:25:48 +0200 Subject: [PATCH 305/314] DPL: do not add a dummy sink if TFN is used --- Framework/Core/src/WorkflowHelpers.cxx | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/Framework/Core/src/WorkflowHelpers.cxx b/Framework/Core/src/WorkflowHelpers.cxx index 1025f51201f16..0229b969f4f47 100644 --- a/Framework/Core/src/WorkflowHelpers.cxx +++ b/Framework/Core/src/WorkflowHelpers.cxx @@ -495,6 +495,12 @@ void WorkflowHelpers::injectServiceDevices(WorkflowSpec& workflow, ConfigContext outputsInputsAOD.emplace_back(InputSpec{"tfn", "TFN", "TFNumber"}); auto fileSink = CommonDataProcessors::getGlobalAODSink(dod, outputsInputsAOD); extraSpecs.push_back(fileSink); + + auto it = std::find_if(outputsInputs.begin(), outputsInputs.end(), [](InputSpec& spec) -> bool { + return DataSpecUtils::partialMatch(spec, o2::header::DataOrigin("TFN")); + }); + size_t ii = std::distance(outputsInputs.begin(), it); + outputTypes[ii] &= ~((char)OutputType::DANGLING); } workflow.insert(workflow.end(), extraSpecs.begin(), extraSpecs.end()); From 80d980cd741b8b693898f81807b1e7f0d69d144a Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Tue, 27 Jul 2021 16:20:35 +0200 Subject: [PATCH 306/314] DPL: make sure single reader, multiple spawners works --- Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx b/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx index a028e019050bb..c2055943fad89 100644 --- a/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx +++ b/Framework/AnalysisSupport/src/AODJAlienReaderHelpers.cxx @@ -238,7 +238,10 @@ AlgorithmSpec AODJAlienReaderHelpers::rootFileReaderCallback() auto ioStart = uv_hrtime(); - for (auto route : requestedTables) { + for (auto& route : requestedTables) { + if ((device.inputTimesliceId % route.maxTimeslices) != route.timeslice) { + continue; + } // create header auto concrete = DataSpecUtils::asConcreteDataMatcher(route.matcher); From c16f5fe936a2a506980962b23e2eb48ca8c3eeff Mon Sep 17 00:00:00 2001 From: Maximiliano Puccio Date: Wed, 28 Jul 2021 09:26:46 +0200 Subject: [PATCH 307/314] Task based central trigger processor (#6758) * New task for the central event filter processor * Task configurables from table descriptions --- Analysis/EventFiltering/CMakeLists.txt | 9 +- Analysis/EventFiltering/cefp.cxx | 43 ---- Analysis/EventFiltering/cefpTask.cxx | 226 ++++++++++++++++++ .../centralEventFilterProcessor.cxx | 198 --------------- .../centralEventFilterProcessor.h | 51 ---- Analysis/EventFiltering/filterTables.h | 45 +++- 6 files changed, 269 insertions(+), 303 deletions(-) delete mode 100644 Analysis/EventFiltering/cefp.cxx create mode 100644 Analysis/EventFiltering/cefpTask.cxx delete mode 100644 Analysis/EventFiltering/centralEventFilterProcessor.cxx delete mode 100644 Analysis/EventFiltering/centralEventFilterProcessor.h diff --git a/Analysis/EventFiltering/CMakeLists.txt b/Analysis/EventFiltering/CMakeLists.txt index 3c1b5e9365790..da9749b91f0d3 100644 --- a/Analysis/EventFiltering/CMakeLists.txt +++ b/Analysis/EventFiltering/CMakeLists.txt @@ -9,14 +9,11 @@ # granted to it by virtue of its status as an Intergovernmental Organization # or submit itself to any jurisdiction. -o2_add_library(EventFiltering - SOURCES centralEventFilterProcessor.cxx - PUBLIC_LINK_LIBRARIES O2::Framework O2::DetectorsBase O2::AnalysisDataModel O2::AnalysisCore) -o2_add_dpl_workflow(central-event-filter-processor - SOURCES cefp.cxx +o2_add_dpl_workflow(central-event-filter-task + SOURCES cefpTask.cxx COMPONENT_NAME Analysis - PUBLIC_LINK_LIBRARIES O2::EventFiltering) + PUBLIC_LINK_LIBRARIES O2::Framework O2::AnalysisDataModel O2::AnalysisCore) o2_add_dpl_workflow(nuclei-filter SOURCES nucleiFilter.cxx diff --git a/Analysis/EventFiltering/cefp.cxx b/Analysis/EventFiltering/cefp.cxx deleted file mode 100644 index 981f439fc97e7..0000000000000 --- a/Analysis/EventFiltering/cefp.cxx +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -#include "CommonUtils/ConfigurableParam.h" -#include "centralEventFilterProcessor.h" - -using namespace o2::framework; - -// ------------------------------------------------------------------ - -// we need to add workflow options before including Framework/runDataProcessing -void customize(std::vector& workflowOptions) -{ - // option allowing to set parameters - workflowOptions.push_back(ConfigParamSpec{"config", o2::framework::VariantType::String, "train_config.json", {"Configuration of the filtering"}}); -} - -// ------------------------------------------------------------------ - -#include "Framework/runDataProcessing.h" -#include "Framework/Logger.h" - -WorkflowSpec defineDataProcessing(ConfigContext const& configcontext) -{ - auto config = configcontext.options().get("config"); - - if (config.empty()) { - LOG(FATAL) << "We need a configuration for the centralEventFilterProcessor"; - throw std::runtime_error("incompatible options provided"); - } - - WorkflowSpec specs; - specs.emplace_back(o2::aod::filtering::getCentralEventFilterProcessorSpec(config)); - return std::move(specs); -} diff --git a/Analysis/EventFiltering/cefpTask.cxx b/Analysis/EventFiltering/cefpTask.cxx new file mode 100644 index 0000000000000..7fcf06ac2b6ff --- /dev/null +++ b/Analysis/EventFiltering/cefpTask.cxx @@ -0,0 +1,226 @@ +// Copyright 2019-2020 CERN and copyright holders of ALICE O2. +// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. +// All rights not expressly granted are reserved. +// +// This software is distributed under the terms of the GNU General Public +// License v3 (GPL Version 3), copied verbatim in the file "COPYING". +// +// In applying this license CERN does not waive the privileges and immunities +// granted to it by virtue of its status as an Intergovernmental Organization +// or submit itself to any jurisdiction. +// O2 includes + +#include "Framework/AnalysisTask.h" +#include "Framework/AnalysisDataModel.h" +#include "Framework/ASoAHelpers.h" +#include "AnalysisDataModel/TrackSelectionTables.h" + +#include "filterTables.h" + +#include "Framework/HistogramRegistry.h" + +#include +#include +#include +#include +#include +#include + +// we need to add workflow options before including Framework/runDataProcessing +void customize(std::vector& workflowOptions) +{ + // option allowing to set parameters + std::vector options{o2::framework::ConfigParamSpec{"train_config", o2::framework::VariantType::String, "full_config.json", {"Configuration of the filtering train"}}}; + + std::swap(workflowOptions, options); +} + +#include "Framework/runDataProcessing.h" + +using namespace o2; +using namespace o2::aod; +using namespace o2::framework; +using namespace o2::framework::expressions; +using namespace rapidjson; + +namespace +{ +bool readJsonFile(std::string& config, Document& d) +{ + FILE* fp = fopen(config.data(), "rb"); + if (!fp) { + LOG(WARNING) << "Missing configuration json file: " << config; + return false; + } + + char readBuffer[65536]; + FileReadStream is(fp, readBuffer, sizeof(readBuffer)); + + d.ParseStream(is); + fclose(fp); + return true; +} + +std::unordered_map> mDownscaling; +static const std::vector downscalingName{"Downscaling"}; +static const float defaultDownscaling[32][1]{ + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}, + {1.f}}; /// Max number of columns for triggers is 32 (extendible) + +#define FILTER_CONFIGURABLE(_TYPE_) \ + Configurable> cfg##_TYPE_ { #_TYPE_, {defaultDownscaling[0], NumberOfColumns < _TYPE_>(), 1, ColumnsNames(typename _TYPE_::iterator::persistent_columns_t{}), downscalingName }, #_TYPE_ " downscalings" } + +} // namespace + +struct centralEventFilterTask { + + HistogramRegistry scalers{"scalers", {}, OutputObjHandlingPolicy::AnalysisObject, true, true}; + + FILTER_CONFIGURABLE(NucleiFilters); + FILTER_CONFIGURABLE(DiffractionFilters); + + void init(o2::framework::InitContext& initc) + { + LOG(INFO) << "Start init"; + int nCols{0}; + for (auto& table : mDownscaling) { + nCols += table.second.size(); + } + LOG(INFO) << "Middle init, total number of columns " << nCols; + + scalers.add("mScalers", "", HistType::kTH1F, {{nCols + 1, -0.5, 0.5 + nCols, ";;Number of events"}}); + scalers.add("mFiltered", "", HistType::kTH1F, {{nCols + 1, -0.5, 0.5 + nCols, ";;Number of filtered events"}}); + auto mScalers = scalers.get(HIST("mScalers")); + auto mFiltered = scalers.get(HIST("mFiltered")); + + mScalers->GetXaxis()->SetBinLabel(1, "Total number of events"); + mFiltered->GetXaxis()->SetBinLabel(1, "Total number of events"); + int bin{2}; + for (auto& table : mDownscaling) { + for (auto& column : table.second) { + mScalers->GetXaxis()->SetBinLabel(bin, column.first.data()); + mFiltered->GetXaxis()->SetBinLabel(bin++, column.first.data()); + } + if (initc.options().isDefault(table.first.data()) || !initc.options().isSet(table.first.data())) { + continue; + } + auto filterOpt = initc.mOptions.get>(table.first.data()); + for (auto& col : table.second) { + col.second = filterOpt.get(col.first.data(), 0u); + } + } + } + + void run(ProcessingContext& pc) + { + + auto mScalers = scalers.get(HIST("mScalers")); + auto mFiltered = scalers.get(HIST("mFiltered")); + int64_t nEvents{-1}; + for (auto& tableName : mDownscaling) { + auto tableConsumer = pc.inputs().get(tableName.first); + + auto tablePtr{tableConsumer->asArrowTable()}; + int64_t nRows{tablePtr->num_rows()}; + nEvents = nEvents < 0 ? nRows : nEvents; + if (nEvents != nRows) { + LOG(FATAL) << "Inconsistent number of rows across trigger tables."; + } + + auto schema{tablePtr->schema()}; + for (auto& colName : tableName.second) { + int bin{mScalers->GetXaxis()->FindBin(colName.first.data())}; + double binCenter{mScalers->GetXaxis()->GetBinCenter(bin)}; + auto column{tablePtr->GetColumnByName(colName.first)}; + double downscaling{colName.second}; + if (column) { + for (int64_t iC{0}; iC < column->num_chunks(); ++iC) { + auto chunk{column->chunk(iC)}; + auto boolArray = std::static_pointer_cast(chunk); + for (int64_t iS{0}; iS < chunk->length(); ++iS) { + if (boolArray->Value(iS)) { + mScalers->Fill(binCenter); + if (mUniformGenerator(mGeneratorEngine) < downscaling) { + mFiltered->Fill(binCenter); + } + } + } + } + } + } + } + mScalers->SetBinContent(1, mScalers->GetBinContent(1) + nEvents); + mFiltered->SetBinContent(1, mFiltered->GetBinContent(1) + nEvents); + } + + std::mt19937_64 mGeneratorEngine; + std::uniform_real_distribution mUniformGenerator = std::uniform_real_distribution(0., 1.); +}; + +WorkflowSpec defineDataProcessing(ConfigContext const& cfg) +{ + std::vector inputs; + + auto config = cfg.options().get("train_config"); + Document d; + std::unordered_map> downscalings; + FillFiltersMap(FiltersPack, downscalings); + + std::array enabledFilters = {false}; + if (readJsonFile(config, d)) { + for (auto& workflow : d["workflows"].GetArray()) { + for (uint32_t iFilter{0}; iFilter < NumberOfFilters; ++iFilter) { + if (std::string_view(workflow["workflow_name"].GetString()) == std::string_view(FilteringTaskNames[iFilter])) { + inputs.emplace_back(std::string(AvailableFilters[iFilter]), "AOD", FilterDescriptions[iFilter], 0, Lifetime::Timeframe); + enabledFilters[iFilter] = true; + break; + } + } + } + } + + for (uint32_t iFilter{0}; iFilter < NumberOfFilters; ++iFilter) { + if (!enabledFilters[iFilter]) { + LOG(INFO) << std::string_view(AvailableFilters[iFilter]) << " not present in the configuration, removing it."; + downscalings.erase(std::string(AvailableFilters[iFilter])); + } + } + + DataProcessorSpec spec{adaptAnalysisTask(cfg)}; + for (auto& input : inputs) { + spec.inputs.emplace_back(input); + } + mDownscaling.swap(downscalings); + + return WorkflowSpec{spec}; +} diff --git a/Analysis/EventFiltering/centralEventFilterProcessor.cxx b/Analysis/EventFiltering/centralEventFilterProcessor.cxx deleted file mode 100644 index de6adecd0145d..0000000000000 --- a/Analysis/EventFiltering/centralEventFilterProcessor.cxx +++ /dev/null @@ -1,198 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -/// @file centralEventFilterProcessor.cxx - -#include "centralEventFilterProcessor.h" - -#include "Framework/ControlService.h" -#include "Framework/ConfigParamRegistry.h" -#include -#include "Framework/TableConsumer.h" - -#include -#include - -#include -#include -#include -#include -#include - -using namespace o2::framework; -using namespace rapidjson; - -namespace -{ -bool readJsonFile(std::string& config, Document& d) -{ - FILE* fp = fopen(config.data(), "rb"); - if (!fp) { - LOG(ERROR) << "Missing configuration json file: " << config; - return false; - } - - char readBuffer[65536]; - FileReadStream is(fp, readBuffer, sizeof(readBuffer)); - - d.ParseStream(is); - fclose(fp); - return true; -} -} // namespace - -namespace o2::aod::filtering -{ - -void CentralEventFilterProcessor::init(framework::InitContext& ic) -{ - // JSON example - // { - // "subwagon_name" : "CentralEventFilterProcessor", - // "configuration" : { - // "NucleiFilters" : { - // "H2" : 0.1, - // "H3" : 0.3, - // "HE3" : 1., - // "HE4" : 1. - // } - // } - // } - LOG(INFO) << "Start init"; - Document d; - int nCols{0}; - if (readJsonFile(mConfigFile, d)) { - for (auto& workflow : d["workflows"].GetArray()) { - if (std::string_view(workflow["subwagon_name"].GetString()) == "CentralEventFilterProcessor") { - auto& config = workflow["configuration"]; - for (auto& filter : AvailableFilters) { - auto& filterConfig = config[filter]; - if (filterConfig.IsObject()) { - std::unordered_map tableMap; - for (auto& node : filterConfig.GetObject()) { - tableMap[node.name.GetString()] = node.value.GetDouble(); - nCols++; - } - LOG(INFO) << "Enabling downscaling map for filter: " << filter; - mDownscaling[filter] = tableMap; - } - } - break; - } - } - } - LOG(INFO) << "Middle init" << std::endl; - mScalers = new TH1D("mScalers", ";;Number of events", nCols + 1, -0.5, 0.5 + nCols); - mScalers->GetXaxis()->SetBinLabel(1, "Total number of events"); - - mFiltered = new TH1D("mFiltered", ";;Number of filtered events", nCols + 1, -0.5, 0.5 + nCols); - mFiltered->GetXaxis()->SetBinLabel(1, "Total number of events"); - - int bin{2}; - for (auto& table : mDownscaling) { - for (auto& column : table.second) { - mScalers->GetXaxis()->SetBinLabel(bin, column.first.data()); - mFiltered->GetXaxis()->SetBinLabel(bin++, column.first.data()); - } - } - - TFile test("test.root", "recreate"); - mScalers->Clone()->Write(); - test.Close(); -} - -void CentralEventFilterProcessor::run(ProcessingContext& pc) -{ - int64_t nEvents{-1}; - for (auto& tableName : mDownscaling) { - auto tableConsumer = pc.inputs().get(tableName.first); - - auto tablePtr{tableConsumer->asArrowTable()}; - int64_t nRows{tablePtr->num_rows()}; - nEvents = nEvents < 0 ? nRows : nEvents; - if (nEvents != nRows) { - LOG(FATAL) << "Inconsistent number of rows across trigger tables, fatal" << std::endl; ///TODO: move it to real fatal - } - - auto schema{tablePtr->schema()}; - for (auto& colName : tableName.second) { - int bin{mScalers->GetXaxis()->FindBin(colName.first.data())}; - double binCenter{mScalers->GetXaxis()->GetBinCenter(bin)}; - auto column{tablePtr->GetColumnByName(colName.first)}; - double downscaling{colName.second}; - if (column) { - for (int64_t iC{0}; iC < column->num_chunks(); ++iC) { - auto chunk{column->chunk(iC)}; - auto boolArray = std::static_pointer_cast(chunk); - for (int64_t iS{0}; iS < chunk->length(); ++iS) { - if (boolArray->Value(iS)) { - mScalers->Fill(binCenter); - if (mUniformGenerator(mGeneratorEngine) < downscaling) { - mFiltered->Fill(binCenter); - } - } - } - } - } - } - } - mScalers->SetBinContent(1, mScalers->GetBinContent(1) + nEvents); - mFiltered->SetBinContent(1, mFiltered->GetBinContent(1) + nEvents); -} - -void CentralEventFilterProcessor::endOfStream(EndOfStreamContext& ec) -{ - TFile output("trigger.root", "recreate"); - mScalers->Write("Scalers"); - mFiltered->Write("FilteredScalers"); - if (mScalers->GetBinContent(1) > 1.e-24) { - mScalers->Scale(1. / mScalers->GetBinContent(1)); - } - if (mFiltered->GetBinContent(1) > 1.e-24) { - mFiltered->Scale(1. / mFiltered->GetBinContent(1)); - } - mScalers->Write("Fractions"); - mFiltered->Write("FractionsDownscaled"); - output.Close(); -} - -DataProcessorSpec getCentralEventFilterProcessorSpec(std::string& config) -{ - - std::vector inputs; - Document d; - - if (readJsonFile(config, d)) { - for (auto& workflow : d["workflows"].GetArray()) { - for (unsigned int iFilter{0}; iFilter < AvailableFilters.size(); ++iFilter) { - if (std::string_view(workflow["subwagon_name"].GetString()) == std::string_view(AvailableFilters[iFilter])) { - inputs.emplace_back(std::string(AvailableFilters[iFilter]), "AOD", FilterDescriptions[iFilter], 0, Lifetime::Timeframe); - LOG(INFO) << "Adding input " << std::string_view(AvailableFilters[iFilter]) << std::endl; - break; - } - } - } - } - - std::vector outputs; - outputs.emplace_back("AOD", "Decision", 0, Lifetime::Timeframe); - outputs.emplace_back("TFN", "TFNumber", 0, Lifetime::Timeframe); - - return DataProcessorSpec{ - "o2-central-event-filter-processor", - inputs, - outputs, - AlgorithmSpec{adaptFromTask(config)}, - Options{ - {"filtering-config", VariantType::String, "", {"Path to the filtering json config file"}}}}; -} - -} // namespace o2::aod::filtering diff --git a/Analysis/EventFiltering/centralEventFilterProcessor.h b/Analysis/EventFiltering/centralEventFilterProcessor.h deleted file mode 100644 index 0e23c4f31bd56..0000000000000 --- a/Analysis/EventFiltering/centralEventFilterProcessor.h +++ /dev/null @@ -1,51 +0,0 @@ -// Copyright 2019-2020 CERN and copyright holders of ALICE O2. -// See https://alice-o2.web.cern.ch/copyright for details of the copyright holders. -// All rights not expressly granted are reserved. -// -// This software is distributed under the terms of the GNU General Public -// License v3 (GPL Version 3), copied verbatim in the file "COPYING". -// -// In applying this license CERN does not waive the privileges and immunities -// granted to it by virtue of its status as an Intergovernmental Organization -// or submit itself to any jurisdiction. - -/// @file centralEventFilterProcessor.h - -#ifndef O2_CentralEventFilterProcessor -#define O2_CentralEventFilterProcessor - -#include "Framework/DataProcessorSpec.h" -#include "Framework/Task.h" - -#include -#include "filterTables.h" - -class TH1D; - -namespace o2::aod::filtering -{ - -class CentralEventFilterProcessor : public framework::Task -{ - public: - CentralEventFilterProcessor(const std::string& config) : mConfigFile{config} {} - ~CentralEventFilterProcessor() override = default; - void init(framework::InitContext& ic) final; - void run(framework::ProcessingContext& pc) final; - void endOfStream(framework::EndOfStreamContext& ec) final; - - private: - TH1D* mScalers; - TH1D* mFiltered; - std::string mConfigFile; - std::unordered_map> mDownscaling; - std::mt19937_64 mGeneratorEngine; - std::uniform_real_distribution mUniformGenerator = std::uniform_real_distribution(0., 1.); -}; - -/// create a processor spec -framework::DataProcessorSpec getCentralEventFilterProcessorSpec(std::string& config); - -} // namespace o2::aod::filtering - -#endif /* O2_CentralEventFilterProcessor */ diff --git a/Analysis/EventFiltering/filterTables.h b/Analysis/EventFiltering/filterTables.h index a05dc7b41d488..c54fe6fd173e5 100644 --- a/Analysis/EventFiltering/filterTables.h +++ b/Analysis/EventFiltering/filterTables.h @@ -28,12 +28,9 @@ DECLARE_SOA_COLUMN(DG, hasDG, bool); //! Double Gap events, DG } // namespace filtering -DECLARE_SOA_TABLE(NucleiFilters, "AOD", "Nuclei Filters", //! +// nuclei +DECLARE_SOA_TABLE(NucleiFilters, "AOD", "NucleiFilters", //! filtering::H2, filtering::H3, filtering::He3, filtering::He4); - -constexpr std::array AvailableFilters{"NucleiFilters", "DiffractionFilters"}; -constexpr std::array FilterDescriptions{"Nuclei Filters", "DiffFilters"}; - using NucleiFilter = NucleiFilters::iterator; // diffraction @@ -41,6 +38,44 @@ DECLARE_SOA_TABLE(DiffractionFilters, "AOD", "DiffFilters", //! Diffraction filt filtering::DG); using DiffractionFilter = DiffractionFilters::iterator; +/// List of the available filters, the description of their tables and the name of the tasks +constexpr int NumberOfFilters{2}; +constexpr std::array AvailableFilters{"NucleiFilters", "DiffractionFilters"}; +constexpr std::array FilterDescriptions{"NucleiFilters", "DiffFilters"}; +constexpr std::array FilteringTaskNames{"o2-analysis-nuclei-filter", "o2-analysis-diffraction-filter"}; +constexpr o2::framework::pack FiltersPack; +static_assert(o2::framework::pack_size(FiltersPack) == NumberOfFilters); + +template +void addColumnToMap(std::unordered_map>& map) +{ + map[MetadataTrait::metadata::tableLabel()][C::columnLabel()] = 1.f; +} + +template +void addColumnsToMap(o2::framework::pack, std::unordered_map>& map) +{ + (addColumnToMap(map), ...); +} + +template +void FillFiltersMap(o2::framework::pack, std::unordered_map>& map) +{ + (addColumnsToMap(typename T::iterator::persistent_columns_t{}, map), ...); +} + +template +static std::vector ColumnsNames(o2::framework::pack) +{ + return {C::columnLabel()...}; +} + +template +unsigned int NumberOfColumns() +{ + return o2::framework::pack_size(typename T::iterator::persistent_columns_t{}); +} + } // namespace o2::aod #endif // O2_ANALYSIS_TRIGGER_H_ From 3e3112eea8df9b2899676476f3a20dd8bba88554 Mon Sep 17 00:00:00 2001 From: shahoian Date: Wed, 28 Jul 2021 00:37:18 +0200 Subject: [PATCH 308/314] median/MAD estimator + more robust log-normal fit --- Common/MathUtils/include/MathUtils/fit.h | 140 ++++++++++++++++++++--- 1 file changed, 124 insertions(+), 16 deletions(-) diff --git a/Common/MathUtils/include/MathUtils/fit.h b/Common/MathUtils/include/MathUtils/fit.h index 653270fc6e12d..52ce317d0d317 100644 --- a/Common/MathUtils/include/MathUtils/fit.h +++ b/Common/MathUtils/include/MathUtils/fit.h @@ -118,6 +118,94 @@ TFitResultPtr fit(const size_t nBins, const T* arr, const T xMin, const T xMax, return TFitResultPtr(tfr); } +/// fast median estimate of gaussian parameters for histogrammed data +/// +/// \param[in] nbins size of the array and number of histogram bins +/// \param[in] arr array with elements +/// \param[in] xMin minimum range of the array +/// \param[in] xMax maximum range of the array +/// \param[out] param return paramters of the fit (0-Constant, 1-Mean, 2-Sigma) +/// +/// \return false on failure (empty data) + +template +bool medmadGaus(size_t nBins, const T* arr, const T xMin, const T xMax, std::array& param) +{ + int bStart = 0, bEnd = -1, filled = 0; + double sum = 0, binW = double(xMax - xMin) / nBins, medVal = xMin; + for (int i = 0; i < (int)nBins; i++) { + auto v = arr[i]; + if (v) { + if (!sum) { + bStart = i; + } + sum += v; + bEnd = i; + } + } + if (bEnd < bStart) { + return false; + } + bEnd++; + double cum = 0, thresh = 0.5 * sum, frac0 = 0; + int bid = bStart, prevbid = bid; + while (bid < bEnd) { + if (arr[bid] > 0) { + cum += arr[bid]; + if (cum > thresh) { + frac0 = 1. + (thresh - cum) / float(arr[bid]); + medVal = xMin + binW * (bid + frac0); + int bdiff = bid - prevbid - 1; + if (bdiff > 0) { + medVal -= bdiff * binW * 0.5; // account for the gap + bid -= bdiff / 2; + } + break; + } + prevbid = bid; + } + bid++; + } + cum = 0.; + double edgeL = frac0 + bid, edgeR = edgeL, dist = 0., wL = 0, wR = 0; + while (1) { + float amp = 0.; + int bL = edgeL, bR = edgeR; // left and right bins + if (edgeL > bStart) { + wL = edgeL - bL; + amp += arr[bL]; + } else { + wL = 1.; + } + if (edgeR < bEnd) { + wR = 1. + bR - edgeR; + amp += arr[bR]; + } else { + wR = 1.; + } + auto wdt = std::min(wL, wR); + if (wdt < 1e-5) { + wdt = std::max(wL, wR); + } + if (amp > 0) { + amp *= wdt; + cum += amp; + if (cum >= thresh) { + dist += wdt * (cum - thresh) / amp * 0.5; + break; + } + } + dist += wdt; + edgeL -= wdt; + edgeR += wdt; + } + constexpr double SQRT2PI = 2.5066283; + param[1] = medVal; + param[2] = dist * binW * 1.4826; // MAD -> sigma + param[0] = sum * binW / (param[2] * SQRT2PI); + return true; +} + /// fast fit of an array with ranges (histogram) with gaussian function /// /// Fitting procedure: @@ -234,7 +322,6 @@ Double_t fitGaus(const size_t nBins, const T* arr, const T xMin, const T xMax, s if (TMath::Abs(par[2]) < kTol) { return -4; } - param[1] = T(par[1] / (-2. * par[2])); param[2] = T(1. / TMath::Sqrt(TMath::Abs(-2. * par[2]))); Double_t lnparam0 = par[0] + par[1] * param[1] + par[2] * param[1] * param[1]; @@ -266,31 +353,46 @@ Double_t fitGaus(const size_t nBins, const T* arr, const T xMin, const T xMax, s } // more optimal implementation of guassian fit via log-normal fit, appropriate for MT calls +// Only bins with values above minVal will be accounted. +// If applyMAD is true, the fit is done whithin the nSigmaMAD range of the preliminary estimate by MAD template double fitGaus(size_t nBins, const T* arr, const T xMin, const T xMax, std::array& param, - ROOT::Math::SMatrix>* covMat = nullptr) + ROOT::Math::SMatrix>* covMat = nullptr, + int minVal = 2, bool applyMAD = true) { - double binW = double(xMax - xMin) / nBins, x = xMin - 0.5 * binW, s0 = 0, s1 = 0, s2 = 0, s3 = 0, s4 = 0, sy0 = 0, sy1 = 0, sy2 = 0, syy = 0; + double binW = double(xMax - xMin) / nBins, s0 = 0, s1 = 0, s2 = 0, s3 = 0, s4 = 0, sy0 = 0, sy1 = 0, sy2 = 0, syy = 0, sum = 0.; int np = 0; - for (size_t i = 0; i < nBins; i++) { + int bStart = 0, bEnd = (int)nBins; + const float nSigmaMAD = 2.; + if (applyMAD) { + std::array madPar; + if (!medmadGaus(nBins, arr, xMin, xMax, madPar)) { + return -10; + } + bStart = std::max(bStart, int((madPar[1] - nSigmaMAD * madPar[2] - xMin) / binW)); + bEnd = std::min(bEnd, 1 + int((madPar[1] + nSigmaMAD * madPar[2] - xMin) / binW)); + } + float x = xMin + (bStart - 0.5) * binW; + for (int i = bStart; i < bEnd; i++) { x += binW; auto v = arr[i]; if (v < 0) { throw std::runtime_error("Log-normal fit is possible only with non-negative data"); } - if (v > 1) { - double y = std::log(v), err2i = v, err2iX = err2i, err2iY = err2i * y; - s0 += err2iX; - s1 += (err2iX *= x); - s2 += (err2iX *= x); - s3 += (err2iX *= x); - s4 += (err2iX *= x); - sy0 += err2iY; - syy += err2iY * y; - sy1 += (err2iY *= x); - sy2 += (err2iY *= x); - np++; + if (v < minVal) { + continue; } + double y = std::log(v), err2i = v, err2iX = err2i, err2iY = err2i * y; + s0 += err2iX; + s1 += (err2iX *= x); + s2 += (err2iX *= x); + s3 += (err2iX *= x); + s4 += (err2iX *= x); + sy0 += err2iY; + syy += err2iY * y; + sy1 += (err2iY *= x); + sy2 += (err2iY *= x); + np++; } if (np < 1) { return -10; @@ -315,6 +417,12 @@ double fitGaus(size_t nBins, const T* arr, const T xMin, const T xMax, std::arra return -1.; } auto v = m33i * v3; + if (v(2) > 0.) { // fit failed, use mean amd RMS + param[0] = std::exp(sy0 / s0); // recover center of gravity + param[1] = s1 / s0; // mean x; + param[2] = np == 1 ? binW / std::sqrt(12) : std::sqrt(std::abs(param[1] * param[1] - s2 / s0)); + return -3; + } double chi2 = v(0) * v(0) * s0 + v(1) * v(1) * s2 + v(2) * v(2) * s4 + syy + 2. * (v(0) * v(1) * s1 + v(0) * v(2) * s2 + v(1) * v(2) * s3 - v(0) * sy0 - v(1) * sy1 - v(2) * sy2); param[1] = -0.5 * v(1) / v(2); From 4fe5f4ed53f80668b953cbb6313bbb2a7a1c0f32 Mon Sep 17 00:00:00 2001 From: Giulio Eulisse <10544+ktf@users.noreply.github.com> Date: Fri, 23 Jul 2021 13:36:00 +0200 Subject: [PATCH 309/314] DPL: avoid warning about uninitialised usage Still not clear to me wether the condition can actually be triggered. It might explain phantom channels to the input proxy. --- Framework/Core/src/DeviceSpecHelpers.cxx | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/Framework/Core/src/DeviceSpecHelpers.cxx b/Framework/Core/src/DeviceSpecHelpers.cxx index a89e0ca6bbca6..f502028ef1198 100644 --- a/Framework/Core/src/DeviceSpecHelpers.cxx +++ b/Framework/Core/src/DeviceSpecHelpers.cxx @@ -487,6 +487,20 @@ void DeviceSpecHelpers::processInEdgeActions(std::vector& devices, return deviceIt->deviceIndex; }; + auto findConsumerForEdge = [&logicalEdges, &constDeviceIndex](size_t ei) { + auto& edge = logicalEdges[ei]; + if (!std::is_sorted(constDeviceIndex.cbegin(), constDeviceIndex.cend())) { + throw o2::framework::runtime_error("Needs a sorted vector to be correct"); + } + + DeviceId pid{edge.consumer, edge.timeIndex, 0}; + auto deviceIt = std::lower_bound(constDeviceIndex.cbegin(), constDeviceIndex.cend(), pid); + // We search for a consumer only if we know it's is already there. + assert(deviceIt != constDeviceIndex.end()); + assert(deviceIt->processorIndex == pid.processorIndex && deviceIt->timeslice == pid.timeslice); + return deviceIt->deviceIndex; + }; + // Notice that to start with, consumer exists only if they also are // producers, so we need to create one if it does not exist. Given this is // stateful, we keep an eye on what edge was last searched to make sure we @@ -708,7 +722,7 @@ void DeviceSpecHelpers::processInEdgeActions(std::vector& devices, for (size_t edge : inEdgeIndex) { auto& action = actions[edge]; - size_t consumerDevice; + size_t consumerDevice = -1; if (action.requiresNewDevice) { if (hasConsumerForEdge(edge)) { @@ -716,6 +730,8 @@ void DeviceSpecHelpers::processInEdgeActions(std::vector& devices, } else { consumerDevice = createNewDeviceForEdge(edge, acceptedOffer); } + } else { + consumerDevice = findConsumerForEdge(edge); } size_t producerDevice = findProducerForEdge(edge); From 9157d844f3deccdcb92c5da1fa2aecf1c4a7f971 Mon Sep 17 00:00:00 2001 From: Andrey Erokhin Date: Sat, 24 Jul 2021 14:54:09 +0000 Subject: [PATCH 310/314] Remove unintentional virtual specifier --- .../TOF/calibration/include/TOFCalibration/TOFDCSProcessor.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Detectors/TOF/calibration/include/TOFCalibration/TOFDCSProcessor.h b/Detectors/TOF/calibration/include/TOFCalibration/TOFDCSProcessor.h index fc9c34fa41c88..193dcd71c19f9 100644 --- a/Detectors/TOF/calibration/include/TOFCalibration/TOFDCSProcessor.h +++ b/Detectors/TOF/calibration/include/TOFCalibration/TOFDCSProcessor.h @@ -86,7 +86,7 @@ class TOFDCSProcessor //int process(const std::vector& dps); int process(const gsl::span dps); int processDP(const DPCOM& dpcom); - virtual uint64_t processFlags(uint64_t flag, const char* pid); + uint64_t processFlags(uint64_t flag, const char* pid); void updateDPsCCDB(); void getStripsConnectedToFEAC(int nDDL, int nFEAC, TOFFEACinfo& info) const; From 860585207a8f67ba3331ec584ad60859284b2707 Mon Sep 17 00:00:00 2001 From: Andrey Erokhin Date: Sat, 24 Jul 2021 14:55:12 +0000 Subject: [PATCH 311/314] Use ClassDefNV when there are no virtual functions --- Analysis/Core/include/AnalysisCore/JetFinder.h | 2 +- Analysis/Core/include/AnalysisCore/TrackSelection.h | 2 +- Analysis/EventFiltering/PWGUD/cutHolder.h | 2 +- Analysis/Tutorials/include/Analysis/configurableCut.h | 2 +- Common/Field/include/Field/MagFieldFast.h | 2 +- DataFormats/Detectors/HMPID/include/DataFormatsHMP/Hit.h | 2 +- Detectors/ITSMFT/MFT/base/include/MFTBase/Flex.h | 2 +- Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryBuilder.h | 2 +- Detectors/ITSMFT/MFT/base/include/MFTBase/HalfCone.h | 2 +- Detectors/ITSMFT/MFT/base/include/MFTBase/HeatExchanger.h | 2 +- Detectors/ITSMFT/MFT/base/include/MFTBase/PCBSupport.h | 2 +- Detectors/ITSMFT/MFT/base/include/MFTBase/PatchPanel.h | 2 +- Detectors/ITSMFT/MFT/base/include/MFTBase/PowerSupplyUnit.h | 2 +- Detectors/ITSMFT/MFT/base/include/MFTBase/Segmentation.h | 2 +- Detectors/ITSMFT/MFT/base/include/MFTBase/Support.h | 2 +- .../MFT/simulation/include/MFTSimulation/GeometryMisAligner.h | 2 +- .../simulation/include/ITSMFTSimulation/AlpideSimResponse.h | 2 +- Detectors/TRD/base/include/TRDBase/CommonParam.h | 2 +- 18 files changed, 18 insertions(+), 18 deletions(-) diff --git a/Analysis/Core/include/AnalysisCore/JetFinder.h b/Analysis/Core/include/AnalysisCore/JetFinder.h index 8b22e5d87b9bc..fb955ae7558ae 100644 --- a/Analysis/Core/include/AnalysisCore/JetFinder.h +++ b/Analysis/Core/include/AnalysisCore/JetFinder.h @@ -168,7 +168,7 @@ class JetFinder std::unique_ptr sub; std::unique_ptr constituentSub; - ClassDef(JetFinder, 1); + ClassDefNV(JetFinder, 1); }; //does this belong here? diff --git a/Analysis/Core/include/AnalysisCore/TrackSelection.h b/Analysis/Core/include/AnalysisCore/TrackSelection.h index a9bf055be2697..af3116710e869 100644 --- a/Analysis/Core/include/AnalysisCore/TrackSelection.h +++ b/Analysis/Core/include/AnalysisCore/TrackSelection.h @@ -210,7 +210,7 @@ class TrackSelection // vector of ITS requirements (minNRequiredHits in specific requiredLayers) std::vector>> mRequiredITSHits{}; - ClassDef(TrackSelection, 1); + ClassDefNV(TrackSelection, 1); }; #endif diff --git a/Analysis/EventFiltering/PWGUD/cutHolder.h b/Analysis/EventFiltering/PWGUD/cutHolder.h index ca3edb9fe3485..0bb7cf7f81345 100644 --- a/Analysis/EventFiltering/PWGUD/cutHolder.h +++ b/Analysis/EventFiltering/PWGUD/cutHolder.h @@ -93,7 +93,7 @@ class cutHolder float mMaxnSigmaTPC; // maximum nSigma TPC float mMaxnSigmaTOF; // maximum nSigma TOF - ClassDef(cutHolder, 1); + ClassDefNV(cutHolder, 1); }; #endif // O2_ANALYSIS_DIFFCUT_HOLDER_H_ diff --git a/Analysis/Tutorials/include/Analysis/configurableCut.h b/Analysis/Tutorials/include/Analysis/configurableCut.h index 5a081038ee482..b690058abf108 100644 --- a/Analysis/Tutorials/include/Analysis/configurableCut.h +++ b/Analysis/Tutorials/include/Analysis/configurableCut.h @@ -58,7 +58,7 @@ class configurableCut std::vector labels; o2::framework::Array2D cuts; - ClassDef(configurableCut, 5); + ClassDefNV(configurableCut, 5); }; std::ostream& operator<<(std::ostream& os, configurableCut const& c); diff --git a/Common/Field/include/Field/MagFieldFast.h b/Common/Field/include/Field/MagFieldFast.h index 2590a7b38807b..acff8f528ad06 100644 --- a/Common/Field/include/Field/MagFieldFast.h +++ b/Common/Field/include/Field/MagFieldFast.h @@ -86,7 +86,7 @@ class MagFieldFast float mFactorSol; // scaling factor SolParam mSolPar[kNSolRRanges][kNSolZRanges][kNQuadrants]; - ClassDef(MagFieldFast, 1); + ClassDefNV(MagFieldFast, 1); }; inline float MagFieldFast::CalcPol(const float* cf, float x, float y, float z) const diff --git a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Hit.h b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Hit.h index c607f22cdab8f..86f60fbf89a21 100644 --- a/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Hit.h +++ b/DataFormats/Detectors/HMPID/include/DataFormatsHMP/Hit.h @@ -35,7 +35,7 @@ class HitType : public o2::BasicXYZEHit public: using BasicXYZEHit::BasicXYZEHit; - ClassDef(HitType, 1); + ClassDefNV(HitType, 1); }; } // namespace hmpid diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/Flex.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/Flex.h index 4befbdbd20352..be9b258b44a41 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/Flex.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/Flex.h @@ -44,7 +44,7 @@ class Flex Double_t* mFlexOrigin; LadderSegmentation* mLadderSeg; - ClassDef(Flex, 1); + ClassDefNV(Flex, 1); }; } // namespace mft } // namespace o2 diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryBuilder.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryBuilder.h index e58615919ae5e..33092f0d5a466 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryBuilder.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/GeometryBuilder.h @@ -32,7 +32,7 @@ class GeometryBuilder void buildGeometry(); private: - ClassDef(GeometryBuilder, 1); + ClassDefNV(GeometryBuilder, 1); }; } // namespace mft } // namespace o2 diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfCone.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfCone.h index ad4c08cbb1c5c..7541895f6109f 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfCone.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/HalfCone.h @@ -43,7 +43,7 @@ class HalfCone TGeoVolumeAssembly* mHalfCone; private: - ClassDef(HalfCone, 1); + ClassDefNV(HalfCone, 1); }; } // namespace mft } // namespace o2 diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/HeatExchanger.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/HeatExchanger.h index 37de5393d24cb..0e6ea9b019021 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/HeatExchanger.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/HeatExchanger.h @@ -140,7 +140,7 @@ class HeatExchanger Double_t mAngle4fifth[4]; // angle of torus for fifth pipe of disk 4 Double_t mRadius4fifth[4]; // radius of torus for fifth pipe of disk 4 - ClassDef(HeatExchanger, 2); + ClassDefNV(HeatExchanger, 2); }; } // namespace mft } // namespace o2 diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/PCBSupport.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/PCBSupport.h index 4a442fb0cfc4a..c7f4d934b3302 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/PCBSupport.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/PCBSupport.h @@ -74,7 +74,7 @@ class PCBSupport Int_t mNumberOfHoles[5]; // Number of Holes in each PCB Double_t (*mHoles[5])[3]; // Holes on each PCB - ClassDef(PCBSupport, 1); + ClassDefNV(PCBSupport, 1); }; } // namespace mft } // namespace o2 diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/PatchPanel.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/PatchPanel.h index e11b1d9460848..aa1a340711b83 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/PatchPanel.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/PatchPanel.h @@ -35,7 +35,7 @@ class PatchPanel TGeoVolumeAssembly* createPatchPanel(); private: - ClassDef(PatchPanel, 1); + ClassDefNV(PatchPanel, 1); }; } // namespace mft } // namespace o2 diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/PowerSupplyUnit.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/PowerSupplyUnit.h index 762cdc648f15d..fe1ec8a39f308 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/PowerSupplyUnit.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/PowerSupplyUnit.h @@ -37,7 +37,7 @@ class PowerSupplyUnit TGeoVolumeAssembly* create(); private: - ClassDef(PowerSupplyUnit, 2); + ClassDefNV(PowerSupplyUnit, 2); }; } // namespace mft } // namespace o2 diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/Segmentation.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/Segmentation.h index 24af690e7f2ff..9a0a08abe5dc0 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/Segmentation.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/Segmentation.h @@ -61,7 +61,7 @@ class Segmentation private: TClonesArray* mHalves; ///< \brief Array of pointer to HalfSegmentation - ClassDef(Segmentation, 1); + ClassDefNV(Segmentation, 1); }; } // namespace mft } // namespace o2 diff --git a/Detectors/ITSMFT/MFT/base/include/MFTBase/Support.h b/Detectors/ITSMFT/MFT/base/include/MFTBase/Support.h index 1b375861a0d96..b78da4cb4c7ba 100644 --- a/Detectors/ITSMFT/MFT/base/include/MFTBase/Support.h +++ b/Detectors/ITSMFT/MFT/base/include/MFTBase/Support.h @@ -111,7 +111,7 @@ class Support Double_t mHeight_D2; Double_t (*mD2Holes[5])[2]; // Positions of D2 mm holes on disk - ClassDef(Support, 1); + ClassDefNV(Support, 1); }; //Template to reduce boilerplate for TGeo boolean operations diff --git a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h index 98be8e2e28086..4cb0958abc513 100644 --- a/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h +++ b/Detectors/ITSMFT/MFT/simulation/include/MFTSimulation/GeometryMisAligner.h @@ -240,7 +240,7 @@ class GeometryMisAligner Double_t fXYAngMisAligFactor; ///< factor (<1) to apply to angular misalignment range since range of motion is restricted out of the xy plane Double_t fZCartMisAligFactor; ///< factor (<1) to apply to cartetian misalignment range since range of motion is restricted in z direction - ClassDef(GeometryMisAligner, 0) // Geometry parametrisation + ClassDefNV(GeometryMisAligner, 0) // Geometry parametrisation }; } // namespace mft diff --git a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideSimResponse.h b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideSimResponse.h index 2b57acc65bc81..0fd27712e03bf 100644 --- a/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideSimResponse.h +++ b/Detectors/ITSMFT/common/simulation/include/ITSMFTSimulation/AlpideSimResponse.h @@ -142,7 +142,7 @@ class AlpideSimResponse const std::string& getColRowDataFmt() const { return mColRowDataFmt; } void print() const; - ClassDef(AlpideSimResponse, 1); + ClassDefNV(AlpideSimResponse, 1); }; //----------------------------------------------------- diff --git a/Detectors/TRD/base/include/TRDBase/CommonParam.h b/Detectors/TRD/base/include/TRDBase/CommonParam.h index 226cc1b20a880..6a330fd499b3d 100644 --- a/Detectors/TRD/base/include/TRDBase/CommonParam.h +++ b/Detectors/TRD/base/include/TRDBase/CommonParam.h @@ -79,7 +79,7 @@ class CommonParam /// This is a singleton, constructor is private! CommonParam() = default; - ClassDef(CommonParam, 1); // The constant parameters common to simulation and reconstruction + ClassDefNV(CommonParam, 1); // The constant parameters common to simulation and reconstruction }; } // namespace trd } // namespace o2 From 43df3da59a4484e688d732d19cc40e6ccd36c22f Mon Sep 17 00:00:00 2001 From: Sean Murray Date: Fri, 23 Jul 2021 11:19:53 +0200 Subject: [PATCH 312/314] make tracklethcheader optional in various forms --- DataFormats/Detectors/TRD/src/RawData.cxx | 10 ++++++++ .../include/TRDReconstruction/CruRawReader.h | 5 +++- .../TRDReconstruction/DataReaderTask.h | 16 ++++++------ .../TRDReconstruction/TrackletsParser.h | 4 ++- .../TRD/reconstruction/src/CruRawReader.cxx | 2 +- .../TRD/reconstruction/src/DataReader.cxx | 4 ++- .../TRD/reconstruction/src/DataReaderTask.cxx | 2 +- .../reconstruction/src/TrackletsParser.cxx | 25 ++++++++++++++++++- .../include/TRDSimulation/Trap2CRU.h | 4 +-- Detectors/TRD/simulation/src/Trap2CRU.cxx | 16 ++++++++---- Detectors/TRD/simulation/src/trap2raw.cxx | 9 +++---- 11 files changed, 72 insertions(+), 25 deletions(-) diff --git a/DataFormats/Detectors/TRD/src/RawData.cxx b/DataFormats/Detectors/TRD/src/RawData.cxx index 0d65f32c778d2..2d4e69ae07988 100644 --- a/DataFormats/Detectors/TRD/src/RawData.cxx +++ b/DataFormats/Detectors/TRD/src/RawData.cxx @@ -324,12 +324,22 @@ bool trackletHCHeaderSanityCheck(o2::trd::TrackletHCHeader& header) { bool goodheader = true; if (header.one != 1) { + LOG(warn) << "Sanity check tracklethcheader.one is not 1"; goodheader = false; } if (header.supermodule > 17) { + LOG(warn) << "Sanity check tracklethcheader.supermodule>17"; goodheader = false; } //if(header.format != ) only certain format versions are permitted come back an fill in if needed. + if (header.layer > 6) { + LOG(warn) << "Sanity check tracklethcheader.laywer>6"; + goodheader = false; + } + if (header.stack > 5) { + LOG(warn) << "Sanity check tracklethcheader.stack>5"; + goodheader = false; + } return goodheader; } diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h index 53908afa5b283..46abdeed3aefd 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/CruRawReader.h @@ -58,13 +58,14 @@ class CruRawReader void checkSummary(); void resetCounters(); - void configure(bool byteswap, bool fixdigitcorruption, bool verbose, bool headerverbose, bool dataverbose) + void configure(bool byteswap, bool fixdigitcorruption, int tracklethcheader, bool verbose, bool headerverbose, bool dataverbose) { mByteSwap = byteswap; mVerbose = verbose; mHeaderVerbose = headerverbose; mDataVerbose = dataverbose; mFixDigitEndCorruption = fixdigitcorruption; + mTrackletHCHeaderState = tracklethcheader; } void setBlob(bool returnblob) { mReturnBlob = returnblob; }; //set class to produce blobs and not vectors. (compress vs pass through)` void setDataBuffer(const char* val) @@ -130,6 +131,8 @@ class CruRawReader bool mDataVerbose{false}; bool mByteSwap{false}; bool mFixDigitEndCorruption{false}; + int mTrackletHCHeaderState{0}; + const char* mDataBuffer = nullptr; static const uint32_t mMaxHBFBufferSize = o2::trd::constants::HBFBUFFERMAX; std::array mHBFPayload; //this holds the O2 payload held with in the HBFs to pass to parsing. diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h index 104c3cc448c3b..1feb696f2a891 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/DataReaderTask.h @@ -35,7 +35,7 @@ namespace o2::trd class DataReaderTask : public Task { public: - DataReaderTask(bool compresseddata, bool byteswap, bool fixdigitendcorruption, bool verbose, bool headerverbose, bool dataverbose) : mCompressedData(compresseddata), mByteSwap(byteswap), mFixDigitEndCorruption(fixdigitendcorruption), mVerbose(verbose), mHeaderVerbose(headerverbose), mDataVerbose(dataverbose) {} + DataReaderTask(bool compresseddata, bool byteswap, bool fixdigitendcorruption, int tracklethcheader, bool verbose, bool headerverbose, bool dataverbose) : mCompressedData(compresseddata), mByteSwap(byteswap), mFixDigitEndCorruption(fixdigitendcorruption), mTrackletHCHeaderState(tracklethcheader), mVerbose(verbose), mHeaderVerbose(headerverbose), mDataVerbose(dataverbose) {} ~DataReaderTask() override = default; void init(InitContext& ic) final; void sendData(ProcessingContext& pc, bool blankframe = false); @@ -49,12 +49,14 @@ class DataReaderTask : public Task // they will internally produce a vector of digits and a vector tracklets and associated indexing. // TODO templatise this and 2 versions of datareadertask, instantiated with the relevant parser. - bool mVerbose{false}; // verbos output general debuggign and info output. - bool mDataVerbose{false}; // verbose output of data unpacking - bool mHeaderVerbose{false}; // verbose output of headers - bool mCompressedData{false}; // are we dealing with the compressed data from the flp (send via option) - bool mByteSwap{true}; // whether we are to byteswap the incoming data, mc is not byteswapped, raw data is (too be changed in cru at some point) - // o2::header::DataDescription mDataDesc; // Data description of the incoming data + bool mVerbose{false}; // verbos output general debuggign and info output. + bool mDataVerbose{false}; // verbose output of data unpacking + bool mHeaderVerbose{false}; // verbose output of headers + bool mCompressedData{false}; // are we dealing with the compressed data from the flp (send via option) + bool mByteSwap{true}; // whether we are to byteswap the incoming data, mc is not byteswapped, raw data is (too be changed in cru at some point) + // o2::header::DataDescription mDataDesc; // Data description of the incoming data + int mTrackletHCHeaderState{0}; // what to do about tracklethcheader, 0 never there, 2 always there, 1 there iff tracklet data, i.e. only there if next word is *not* endmarker 10001000. + std::string mDataDesc; o2::header::DataDescription mUserDataDescription = o2::header::gDataDescriptionInvalid; // alternative user-provided description to pick bool mFixDigitEndCorruption{false}; // fix the parsing of corrupt end of digit data. bounce over it. diff --git a/Detectors/TRD/reconstruction/include/TRDReconstruction/TrackletsParser.h b/Detectors/TRD/reconstruction/include/TRDReconstruction/TrackletsParser.h index 1b34eda6c07b1..bc619c3f38525 100644 --- a/Detectors/TRD/reconstruction/include/TRDReconstruction/TrackletsParser.h +++ b/Detectors/TRD/reconstruction/include/TRDReconstruction/TrackletsParser.h @@ -36,7 +36,7 @@ class TrackletsParser void setData(std::array* data) { mData = data; } int Parse(); // presupposes you have set everything up already. int Parse(std::array* data, std::array::iterator start, - std::array::iterator end, uint32_t feeid, int robside, int detector, int stack, int layer, bool cleardigits = false, bool disablebyteswap = false, bool verbose = true, bool headerverbose = false, bool dataverbose = false) //, std::array& lengths) // change to calling per link. + std::array::iterator end, uint32_t feeid, int robside, int detector, int stack, int layer, bool cleardigits = false, bool disablebyteswap = false, int usetracklethcheader = 0, bool verbose = true, bool headerverbose = false, bool dataverbose = false) { mStartParse = start; mEndParse = end; @@ -52,6 +52,7 @@ class TrackletsParser mDataWordsParsed = 0; mTrackletsFound = 0; mPaddingWordsCounter = 0; + mTrackletHCHeaderState = usetracklethcheader; //what to with the tracklet half chamber header 0,1,2 // mTracklets.clear(); return Parse(); }; @@ -96,6 +97,7 @@ class TrackletsParser bool mVerbose{false}; // user verbose output, put debug statement in output from commandline. bool mHeaderVerbose{false}; bool mDataVerbose{false}; + int mTrackletHCHeaderState{0}; //what to with the tracklet half chamber header 0,1,2 bool mIgnoreTrackletHCHeader{false}; // Is the data with out the tracklet HC Header? defaults to having it in. bool mByteOrderFix{false}; // simulated data is not byteswapped, real is, so deal with it accodringly. diff --git a/Detectors/TRD/reconstruction/src/CruRawReader.cxx b/Detectors/TRD/reconstruction/src/CruRawReader.cxx index 2e7f1377701f5..5916fd606396f 100644 --- a/Detectors/TRD/reconstruction/src/CruRawReader.cxx +++ b/Detectors/TRD/reconstruction/src/CruRawReader.cxx @@ -251,7 +251,7 @@ int CruRawReader::processHalfCRU(int cruhbfstartoffset) if (mVerbose) { LOG(info) << "mem copy with offset of : " << cruhbfstartoffset << " parsing tracklets with linkstart: " << linkstart << " ending at : " << linkend; } - trackletwordsread = mTrackletsParser.Parse(&mHBFPayload, linkstart, linkend, mFEEID, halfchamberside, currentdetector, stack, layer, cleardigits, mByteSwap, mVerbose, mHeaderVerbose, mDataVerbose); // this will read up to the tracnklet end marker. + trackletwordsread = mTrackletsParser.Parse(&mHBFPayload, linkstart, linkend, mFEEID, halfchamberside, currentdetector, stack, layer, cleardigits, mByteSwap, mTrackletHCHeaderState, mVerbose, mHeaderVerbose, mDataVerbose); // this will read up to the tracklet end marker. if (mVerbose) { LOG(info) << "trackletwordsread:" << trackletwordsread << " mem copy with offset of : " << cruhbfstartoffset << " parsing with linkstart: " << linkstart << " ending at : " << linkend; } diff --git a/Detectors/TRD/reconstruction/src/DataReader.cxx b/Detectors/TRD/reconstruction/src/DataReader.cxx index b79ead8772ef2..ef10151f026de 100644 --- a/Detectors/TRD/reconstruction/src/DataReader.cxx +++ b/Detectors/TRD/reconstruction/src/DataReader.cxx @@ -39,6 +39,7 @@ void customize(std::vector& workflowOptions) {"ignore-dist-stf", VariantType::Bool, false, {"do not subscribe to FLP/DISTSUBTIMEFRAME/0 message (no lost TF recovery)"}}, {"trd-datareader-fixdigitcorruptdata", VariantType::Bool, false, {"Fix the erroneous data at the end of digits"}}, {"enable-root-output", VariantType::Bool, false, {"Write the data to file"}}, + {"tracklethcheader", VariantType::Int, 0, {"Status of TrackletHalfChamberHeader 0 off always, 1 iff tracklet data, 2 on always"}}, {"trd-datareader-enablebyteswapdata", VariantType::Bool, false, {"byteswap the incoming data, raw data needs it and simulation does not."}}}; o2::raw::HBFUtilsInitializer::addConfigOption(options); @@ -63,6 +64,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) auto dataverbose = cfgc.options().get("trd-datareader-dataverbose"); auto askSTFDist = !cfgc.options().get("ignore-dist-stf"); auto fixdigitcorruption = cfgc.options().get("trd-datareader-fixdigitcorruptdata"); + auto tracklethcheader = cfgc.options().get("tracklethcheader"); std::vector outputs; outputs.emplace_back("TRD", "TRACKLETS", 0, Lifetime::Timeframe); outputs.emplace_back("TRD", "DIGITS", 0, Lifetime::Timeframe); @@ -70,7 +72,7 @@ WorkflowSpec defineDataProcessing(ConfigContext const& cfgc) //outputs.emplace_back("TRD", "FLPSTAT", 0, Lifetime::Timeframe); LOG(info) << "enablebyteswap :" << byteswap; AlgorithmSpec algoSpec; - algoSpec = AlgorithmSpec{adaptFromTask(compresseddata, byteswap, fixdigitcorruption, verbose, headerverbose, dataverbose)}; + algoSpec = AlgorithmSpec{adaptFromTask(compresseddata, byteswap, fixdigitcorruption, tracklethcheader, verbose, headerverbose, dataverbose)}; WorkflowSpec workflow; diff --git a/Detectors/TRD/reconstruction/src/DataReaderTask.cxx b/Detectors/TRD/reconstruction/src/DataReaderTask.cxx index 242c9aa86e7be..a58dab68cf742 100644 --- a/Detectors/TRD/reconstruction/src/DataReaderTask.cxx +++ b/Detectors/TRD/reconstruction/src/DataReaderTask.cxx @@ -122,7 +122,7 @@ void DataReaderTask::run(ProcessingContext& pc) } mReader.setDataBuffer(payloadIn); mReader.setDataBufferSize(payloadInSize); - mReader.configure(mByteSwap, mFixDigitEndCorruption, mVerbose, mHeaderVerbose, mDataVerbose); + mReader.configure(mByteSwap, mFixDigitEndCorruption, mTrackletHCHeaderState, mVerbose, mHeaderVerbose, mDataVerbose); mReader.run(); if (mVerbose) { LOG(info) << "relevant vectors to read : " << mReader.sumTrackletsFound() << " tracklets and " << mReader.sumDigitsFound() << " compressed digits"; diff --git a/Detectors/TRD/reconstruction/src/TrackletsParser.cxx b/Detectors/TRD/reconstruction/src/TrackletsParser.cxx index 8f528450eb50f..76792c3d3734b 100644 --- a/Detectors/TRD/reconstruction/src/TrackletsParser.cxx +++ b/Detectors/TRD/reconstruction/src/TrackletsParser.cxx @@ -77,7 +77,27 @@ int TrackletsParser::Parse() mCurrentLink = 0; mWordsRead = 0; mTrackletsFound = 0; - mState = StateTrackletHCHeader; // we start with a trackletMCMHeader + if (mTrackletHCHeaderState == 0) { + // tracklet hc header is never present + mState = StateTrackletMCMHeader; + } else { + if (mTrackletHCHeaderState == 1) { + auto nextword = std::next(mStartParse); + if (*nextword != constants::TRACKLETENDMARKER) { + //we have tracklet data so no TracletHCHeader + mState = StateTrackletHCHeader; + } else { + //we have no tracklet data so no TracletHCHeader + mState = StateTrackletMCMHeader; + } + } else { + if (mTrackletHCHeaderState != 2) { + LOG(warn) << "unknwon TrackletHCHeaderState of " << mIgnoreTrackletHCHeader; + } + // tracklet hc header is always present + mState = StateTrackletHCHeader; // we start with a trackletMCMHeader + } + } int currentLinkStart = 0; int mcmtrackletcount = 0; @@ -141,6 +161,9 @@ int TrackletsParser::Parse() LOG(info) << "state trackletHCheader and word : 0x" << std::hex << *word << " sanity check : " << trackletHCHeaderSanityCheck(*mTrackletHCHeader); } //sanity check of trackletheader ?? + if (!trackletHCHeaderSanityCheck(*mTrackletHCHeader)) { + LOG(warn) << "Sanity check Failure HCHeader : " << std::hex << *word; + } mWordsRead++; mState = StateTrackletMCMHeader; // now we should read a MCMHeader next time through loop } else { //not TrackletMCMHeader diff --git a/Detectors/TRD/simulation/include/TRDSimulation/Trap2CRU.h b/Detectors/TRD/simulation/include/TRDSimulation/Trap2CRU.h index 89cb13549d77a..f3e0e0dc09494 100644 --- a/Detectors/TRD/simulation/include/TRDSimulation/Trap2CRU.h +++ b/Detectors/TRD/simulation/include/TRDSimulation/Trap2CRU.h @@ -55,7 +55,7 @@ class Trap2CRU uint32_t buildHalfCRUHeader(HalfCRUHeader& header, const uint32_t bc, const uint32_t halfcru); // build the half cru header holding the lengths of all links amongst other things. void linkSizePadding(uint32_t linksize, uint32_t& crudatasize, uint32_t& padding); // pad the link data stream to align with 256 bit words. void openInputFiles(); - void setTrackletHCHeader(bool tracklethcheader) { mUseTrackletHCHeader = tracklethcheader; } + void setTrackletHCHeader(int tracklethcheader) { mUseTrackletHCHeader = tracklethcheader; } bool isTrackletOnLink(int link, int trackletpos); // is the current tracklet on the the current link bool isDigitOnLink(int link, int digitpos); // is the current digit on the current link int buildDigitRawData(const int digitstartindex, const int digitendindex, const int mcm, const int rob, const uint32_t triggercount); @@ -88,7 +88,7 @@ class Trap2CRU //HalfCRUHeader mHalfCRUHeader; //TrackletMCMHeader mTrackletMCMHeader; // TrackletMCMData mTrackletMCMData; - bool mUseTrackletHCHeader{false}; + int mUseTrackletHCHeader{0}; std::vector mRawData; // store for building data event for a single half cru uint32_t mRawDataPos = 0; char* mRawDataPtr{nullptr}; diff --git a/Detectors/TRD/simulation/src/Trap2CRU.cxx b/Detectors/TRD/simulation/src/Trap2CRU.cxx index 27ef0f5d3fed0..acebaaca7a991 100644 --- a/Detectors/TRD/simulation/src/Trap2CRU.cxx +++ b/Detectors/TRD/simulation/src/Trap2CRU.cxx @@ -661,10 +661,16 @@ void Trap2CRU::convertTrapData(o2::trd::TriggerRecord const& triggerrecord, cons if (isTrackletOnLink(linkid, mCurrentTracklet) || isDigitOnLink(linkid, mCurrentDigit)) { // we have some data somewhere for this link //write tracklet half chamber header irrespective of there being tracklet data - int hcheaderwords = writeTrackletHCHeader(triggercount, linkid); - linkwordswritten += hcheaderwords; - rawwords += hcheaderwords; - + if (mUseTrackletHCHeader != 0) { + if (isTrackletOnLink(linkid, mCurrentTracklet) || mUseTrackletHCHeader == 2) { + //write tracklethcheader if there is tracklet data or if we always have tracklethcheader + //first part of the if statement handles the mUseTrackletHCHeader==1 option + int hcheaderwords = writeTrackletHCHeader(triggercount, linkid); + linkwordswritten += hcheaderwords; + rawwords += hcheaderwords; + } + //else do nothing as we dont want/have tracklethcheader + } while (isTrackletOnLink(linkid, mCurrentTracklet) && mCurrentTracklet < endtrackletindex) { // still on an mcm on this link tracklets = buildTrackletRawData(mCurrentTracklet, linkid); //returns # of 32 bits, header plus trackletdata words that would have come from the mcm. @@ -683,7 +689,7 @@ void Trap2CRU::convertTrapData(o2::trd::TriggerRecord const& triggerrecord, cons adccounter = 0; rawwordsbefore = rawwords; //always write the digit hc header - hcheaderwords = writeDigitHCHeader(triggercount, linkid); + int hcheaderwords = writeDigitHCHeader(triggercount, linkid); linkwordswritten += hcheaderwords; rawwords += hcheaderwords; //although if there are trackelts there better be some digits unless the digits are switched off. diff --git a/Detectors/TRD/simulation/src/trap2raw.cxx b/Detectors/TRD/simulation/src/trap2raw.cxx index fb7dc5db13580..a56ec743b5a5a 100644 --- a/Detectors/TRD/simulation/src/trap2raw.cxx +++ b/Detectors/TRD/simulation/src/trap2raw.cxx @@ -51,7 +51,7 @@ namespace bpo = boost::program_options; void trap2raw(const std::string& inpDigitsName, const std::string& inpTrackletsName, const std::string& outDir, int digitrate, bool verbose, std::string filePerLink, - uint32_t rdhV = 6, bool noEmptyHBF = false, bool tracklethcheader = false, int superPageSizeInB = 1024 * 1024); + uint32_t rdhV = 6, bool noEmptyHBF = false, int tracklethcheader = 0, int superPageSizeInB = 1024 * 1024); int main(int argc, char** argv) { @@ -71,7 +71,7 @@ int main(int argc, char** argv) add_option("input-file-tracklets,t", bpo::value()->default_value("trdtracklets.root"), "input Trapsim tracklets file"); add_option("fileper,l", bpo::value()->default_value("halfcru"), "all : raw file(false), halfcru : cru end point, cru : one file per cru, sm: one file per supermodule"); add_option("output-dir,o", bpo::value()->default_value("./"), "output directory for raw data"); - add_option("trackletHCHeader,x", bpo::value()->default_value("false")->implicit_value(true), "include tracklet half chamber header (for run3) comes after tracklets and before the digit half chamber header, that has always been there."); + add_option("tracklethcheader,x", bpo::value()->default_value(0), "include tracklet half chamber header (for run3). 0 never, 1 if there is tracklet data, 2 always"); add_option("no-empty-hbf,e", bpo::value()->default_value(false)->implicit_value(true), "do not create empty HBF pages (except for HBF starting TF)"); add_option("rdh-version,r", bpo::value()->default_value(6), "rdh version in use default"); add_option("configKeyValues", bpo::value()->default_value(""), "comma-separated configKeyValues"); @@ -104,13 +104,12 @@ int main(int argc, char** argv) o2::conf::ConfigurableParam::updateFromString(vm["configKeyValues"].as()); std::cout << "yay it ran" << std::endl; - trap2raw(vm["input-file-digits"].as(), vm["input-file-tracklets"].as(), vm["output-dir"].as(), vm["digitrate"].as(), vm["verbosity"].as(), - vm["fileper"].as(), vm["rdh-version"].as(), vm["no-empty-hbf"].as(), vm["trackletHCHeader"].as()); + trap2raw(vm["input-file-digits"].as(), vm["input-file-tracklets"].as(), vm["output-dir"].as(), vm["digitrate"].as(), vm["verbosity"].as(), vm["fileper"].as(), vm["rdh-version"].as(), vm["no-empty-hbf"].as(), vm["tracklethcheader"].as()); return 0; } -void trap2raw(const std::string& inpDigitsName, const std::string& inpTrackletsName, const std::string& outDir, int digitrate, bool verbose, std::string filePer, uint32_t rdhV, bool noEmptyHBF, bool trackletHCHeader, int superPageSizeInB) +void trap2raw(const std::string& inpDigitsName, const std::string& inpTrackletsName, const std::string& outDir, int digitrate, bool verbose, std::string filePer, uint32_t rdhV, bool noEmptyHBF, int trackletHCHeader, int superPageSizeInB) { TStopwatch swTot; swTot.Start(); From 480b3bd979f91fa144cf52ef8ba2d5ad1c95b650 Mon Sep 17 00:00:00 2001 From: ddobrigk Date: Wed, 28 Jul 2021 13:55:47 +0200 Subject: [PATCH 313/314] Add dynamic columns for daughter prongs (#6690) --- .../AnalysisDataModel/StrangenessTables.h | 85 ++++++++++++------- 1 file changed, 52 insertions(+), 33 deletions(-) diff --git a/Analysis/DataModel/include/AnalysisDataModel/StrangenessTables.h b/Analysis/DataModel/include/AnalysisDataModel/StrangenessTables.h index 49dac7b5a8757..8a2b6a38a15ab 100644 --- a/Analysis/DataModel/include/AnalysisDataModel/StrangenessTables.h +++ b/Analysis/DataModel/include/AnalysisDataModel/StrangenessTables.h @@ -25,40 +25,40 @@ DECLARE_SOA_INDEX_COLUMN_FULL(NegTrack, negTrack, int, Tracks, "_Neg"); //! DECLARE_SOA_INDEX_COLUMN(Collision, collision); //! //General V0 properties: position, momentum -DECLARE_SOA_COLUMN(PosX, posX, float); //! -DECLARE_SOA_COLUMN(NegX, negX, float); //! -DECLARE_SOA_COLUMN(PxPos, pxpos, float); //! -DECLARE_SOA_COLUMN(PyPos, pypos, float); //! -DECLARE_SOA_COLUMN(PzPos, pzpos, float); //! -DECLARE_SOA_COLUMN(PxNeg, pxneg, float); //! -DECLARE_SOA_COLUMN(PyNeg, pyneg, float); //! -DECLARE_SOA_COLUMN(PzNeg, pzneg, float); //! -DECLARE_SOA_COLUMN(X, x, float); //! -DECLARE_SOA_COLUMN(Y, y, float); //! -DECLARE_SOA_COLUMN(Z, z, float); //! +DECLARE_SOA_COLUMN(PosX, posX, float); //! positive track X at min +DECLARE_SOA_COLUMN(NegX, negX, float); //! negative track X at min +DECLARE_SOA_COLUMN(PxPos, pxpos, float); //! positive track px at min +DECLARE_SOA_COLUMN(PyPos, pypos, float); //! positive track py at min +DECLARE_SOA_COLUMN(PzPos, pzpos, float); //! positive track pz at min +DECLARE_SOA_COLUMN(PxNeg, pxneg, float); //! negative track px at min +DECLARE_SOA_COLUMN(PyNeg, pyneg, float); //! negative track py at min +DECLARE_SOA_COLUMN(PzNeg, pzneg, float); //! negative track pz at min +DECLARE_SOA_COLUMN(X, x, float); //! decay position X +DECLARE_SOA_COLUMN(Y, y, float); //! decay position Y +DECLARE_SOA_COLUMN(Z, z, float); //! decay position Z //Saved from finding: DCAs -DECLARE_SOA_COLUMN(DCAV0Daughters, dcaV0daughters, float); //! -DECLARE_SOA_COLUMN(DCAPosToPV, dcapostopv, float); //! -DECLARE_SOA_COLUMN(DCANegToPV, dcanegtopv, float); //! +DECLARE_SOA_COLUMN(DCAV0Daughters, dcaV0daughters, float); //! DCA between V0 daughters +DECLARE_SOA_COLUMN(DCAPosToPV, dcapostopv, float); //! DCA positive prong to PV +DECLARE_SOA_COLUMN(DCANegToPV, dcanegtopv, float); //! DCA negative prong to PV //Derived expressions //Momenta -DECLARE_SOA_DYNAMIC_COLUMN(Pt, pt, //! +DECLARE_SOA_DYNAMIC_COLUMN(Pt, pt, //! V0 pT [](float pxpos, float pypos, float pxneg, float pyneg) -> float { return RecoDecay::sqrtSumOfSquares(pxpos + pxneg, pypos + pyneg); }); //Length quantities -DECLARE_SOA_DYNAMIC_COLUMN(V0Radius, v0radius, //! +DECLARE_SOA_DYNAMIC_COLUMN(V0Radius, v0radius, //! V0 decay radius (2D, centered at zero) [](float x, float y) -> float { return RecoDecay::sqrtSumOfSquares(x, y); }); //CosPA -DECLARE_SOA_DYNAMIC_COLUMN(V0CosPA, v0cosPA, //! +DECLARE_SOA_DYNAMIC_COLUMN(V0CosPA, v0cosPA, //! V0 CosPA [](float X, float Y, float Z, float Px, float Py, float Pz, float pvX, float pvY, float pvZ) -> float { return RecoDecay::CPA(array{pvX, pvY, pvZ}, array{X, Y, Z}, array{Px, Py, Pz}); }); -DECLARE_SOA_DYNAMIC_COLUMN(DCAV0ToPV, dcav0topv, //! +DECLARE_SOA_DYNAMIC_COLUMN(DCAV0ToPV, dcav0topv, //! DCA of V0 to PV [](float X, float Y, float Z, float Px, float Py, float Pz, float pvX, float pvY, float pvZ) -> float { return std::sqrt((std::pow((pvY - Y) * Pz - (pvZ - Z) * Py, 2) + std::pow((pvX - X) * Pz - (pvZ - Z) * Px, 2) + std::pow((pvX - X) * Py - (pvY - Y) * Px, 2)) / (Px * Px + Py * Py + Pz * Pz)); }); //Armenteros-Podolanski variables -DECLARE_SOA_DYNAMIC_COLUMN(Alpha, alpha, //! +DECLARE_SOA_DYNAMIC_COLUMN(Alpha, alpha, //! Armenteros Alpha [](float pxpos, float pypos, float pzpos, float pxneg, float pyneg, float pzneg) { float momTot = RecoDecay::P(pxpos + pxneg, pypos + pyneg, pzpos + pzneg); float lQlNeg = RecoDecay::dotProd(array{pxneg, pyneg, pzneg}, array{pxpos + pxneg, pypos + pyneg, pzpos + pzneg}) / momTot; @@ -66,7 +66,7 @@ DECLARE_SOA_DYNAMIC_COLUMN(Alpha, alpha, //! return (lQlPos - lQlNeg) / (lQlPos + lQlNeg); //alphav0 }); -DECLARE_SOA_DYNAMIC_COLUMN(QtArm, qtarm, //! +DECLARE_SOA_DYNAMIC_COLUMN(QtArm, qtarm, //! Armenteros Qt [](float pxpos, float pypos, float pzpos, float pxneg, float pyneg, float pzneg) { float momTot = RecoDecay::P2(pxpos + pxneg, pypos + pyneg, pzpos + pzneg); float dp = RecoDecay::dotProd(array{pxneg, pyneg, pzneg}, array{pxpos + pxneg, pypos + pyneg, pzpos + pzneg}); @@ -74,7 +74,7 @@ DECLARE_SOA_DYNAMIC_COLUMN(QtArm, qtarm, //! }); // Psi pair angle: angle between the plane defined by the electron and positron momenta and the xy plane -DECLARE_SOA_DYNAMIC_COLUMN(PsiPair, psipair, //! +DECLARE_SOA_DYNAMIC_COLUMN(PsiPair, psipair, //! psi pair angle [](float pxpos, float pypos, float pzpos, float pxneg, float pyneg, float pzneg) { auto clipToPM1 = [](float x) { return x < -1.f ? -1.f : (x > 1.f ? 1.f : x); }; float ptot2 = RecoDecay::P2(pxpos, pypos, pzpos) * RecoDecay::P2(pxneg, pyneg, pzneg); @@ -86,29 +86,42 @@ DECLARE_SOA_DYNAMIC_COLUMN(PsiPair, psipair, //! }); //Calculated on the fly with mass assumption + dynamic tables -DECLARE_SOA_DYNAMIC_COLUMN(MLambda, mLambda, //! +DECLARE_SOA_DYNAMIC_COLUMN(MLambda, mLambda, //! mass under lambda hypothesis [](float pxpos, float pypos, float pzpos, float pxneg, float pyneg, float pzneg) -> float { return RecoDecay::M(array{array{pxpos, pypos, pzpos}, array{pxneg, pyneg, pzneg}}, array{RecoDecay::getMassPDG(kProton), RecoDecay::getMassPDG(kPiPlus)}); }); -DECLARE_SOA_DYNAMIC_COLUMN(MAntiLambda, mAntiLambda, //! +DECLARE_SOA_DYNAMIC_COLUMN(MAntiLambda, mAntiLambda, //! mass under antilambda hypothesis [](float pxpos, float pypos, float pzpos, float pxneg, float pyneg, float pzneg) -> float { return RecoDecay::M(array{array{pxpos, pypos, pzpos}, array{pxneg, pyneg, pzneg}}, array{RecoDecay::getMassPDG(kPiPlus), RecoDecay::getMassPDG(kProton)}); }); -DECLARE_SOA_DYNAMIC_COLUMN(MK0Short, mK0Short, //! +DECLARE_SOA_DYNAMIC_COLUMN(MK0Short, mK0Short, //! mass under K0short hypothesis [](float pxpos, float pypos, float pzpos, float pxneg, float pyneg, float pzneg) -> float { return RecoDecay::M(array{array{pxpos, pypos, pzpos}, array{pxneg, pyneg, pzneg}}, array{RecoDecay::getMassPDG(kPiPlus), RecoDecay::getMassPDG(kPiPlus)}); }); -DECLARE_SOA_DYNAMIC_COLUMN(MGamma, mGamma, //! +DECLARE_SOA_DYNAMIC_COLUMN(MGamma, mGamma, //! mass under gamma hypothesis [](float pxpos, float pypos, float pzpos, float pxneg, float pyneg, float pzneg) -> float { return RecoDecay::M(array{array{pxpos, pypos, pzpos}, array{pxneg, pyneg, pzneg}}, array{RecoDecay::getMassPDG(kElectron), RecoDecay::getMassPDG(kElectron)}); }); -DECLARE_SOA_DYNAMIC_COLUMN(YK0Short, yK0Short, //! +DECLARE_SOA_DYNAMIC_COLUMN(YK0Short, yK0Short, //! V0 y with K0short hypothesis [](float Px, float Py, float Pz) -> float { return RecoDecay::Y(array{Px, Py, Pz}, RecoDecay::getMassPDG(kK0)); }); -DECLARE_SOA_DYNAMIC_COLUMN(YLambda, yLambda, //! +DECLARE_SOA_DYNAMIC_COLUMN(YLambda, yLambda, //! V0 y with lambda or antilambda hypothesis [](float Px, float Py, float Pz) -> float { return RecoDecay::Y(array{Px, Py, Pz}, RecoDecay::getMassPDG(kLambda0)); }); -DECLARE_SOA_DYNAMIC_COLUMN(Eta, eta, //! +DECLARE_SOA_DYNAMIC_COLUMN(Eta, eta, //! V0 eta [](float Px, float Py, float Pz) -> float { return RecoDecay::Eta(array{Px, Py, Pz}); }); -DECLARE_SOA_DYNAMIC_COLUMN(Phi, phi, //! +DECLARE_SOA_DYNAMIC_COLUMN(Phi, phi, //! V0 phi [](float Px, float Py) -> float { return RecoDecay::Phi(Px, Py); }); -DECLARE_SOA_EXPRESSION_COLUMN(Px, px, //! +DECLARE_SOA_DYNAMIC_COLUMN(NegativePt, negativept, //! negative daughter pT + [](float pxneg, float pyneg) -> float { return RecoDecay::sqrtSumOfSquares(pxneg, pyneg); }); +DECLARE_SOA_DYNAMIC_COLUMN(PositivePt, positivept, //! positive daughter pT + [](float pxpos, float pypos) -> float { return RecoDecay::sqrtSumOfSquares(pxpos, pypos); }); +DECLARE_SOA_DYNAMIC_COLUMN(NegativeEta, negativeeta, //! negative daughter eta + [](float PxNeg, float PyNeg, float PzNeg) -> float { return RecoDecay::Eta(array{PxNeg, PyNeg, PzNeg}); }); +DECLARE_SOA_DYNAMIC_COLUMN(NegativePhi, negativephi, //! negative daughter phi + [](float PxNeg, float PyNeg) -> float { return RecoDecay::Phi(PxNeg, PyNeg); }); +DECLARE_SOA_DYNAMIC_COLUMN(PositiveEta, positiveeta, //! positive daughter eta + [](float PxPos, float PyPos, float PzPos) -> float { return RecoDecay::Eta(array{PxPos, PyPos, PzPos}); }); +DECLARE_SOA_DYNAMIC_COLUMN(PositivePhi, positivephi, //! positive daughter phi + [](float PxPos, float PyPos) -> float { return RecoDecay::Phi(PxPos, PyPos); }); + +DECLARE_SOA_EXPRESSION_COLUMN(Px, px, //! V0 px float, 1.f * aod::v0data::pxpos + 1.f * aod::v0data::pxneg); -DECLARE_SOA_EXPRESSION_COLUMN(Py, py, //! +DECLARE_SOA_EXPRESSION_COLUMN(Py, py, //! V0 py float, 1.f * aod::v0data::pypos + 1.f * aod::v0data::pyneg); -DECLARE_SOA_EXPRESSION_COLUMN(Pz, pz, //! +DECLARE_SOA_EXPRESSION_COLUMN(Pz, pz, //! V0 pz float, 1.f * aod::v0data::pzpos + 1.f * aod::v0data::pzneg); } // namespace v0data @@ -139,7 +152,13 @@ DECLARE_SOA_TABLE_FULL(StoredV0Datas, "V0Datas", "AOD", "V0DATA", //! v0data::YK0Short, v0data::YLambda, v0data::Eta, - v0data::Phi); + v0data::Phi, + v0data::NegativePt, + v0data::PositivePt, + v0data::NegativeEta, + v0data::NegativePhi, + v0data::PositiveEta, + v0data::PositivePhi); // extended table with expression columns that can be used as arguments of dynamic columns DECLARE_SOA_EXTENDED_TABLE_USER(V0Datas, StoredV0Datas, "V0DATAEXT", //! From 7ad281d797167ca01c9194f8e0488ad6d05b2541 Mon Sep 17 00:00:00 2001 From: Valentina Mantovani Sarti Date: Mon, 9 Aug 2021 11:19:18 +0200 Subject: [PATCH 314/314] Fixing the ProducerTask for V0, starting to implement the filling QA for daughters --- .../FemtoDream/femtoDreamProducerTask.cxx | 39 ++++++-- .../FemtoDream/FemtoDreamTrackSelection.h | 40 ++++++-- .../FemtoDream/FemtoDreamV0Selection.h | 92 +++++++++++++------ 3 files changed, 127 insertions(+), 44 deletions(-) diff --git a/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx index 7a418ef915dba..e84bf06407734 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx +++ b/Analysis/Tasks/PWGCF/FemtoDream/femtoDreamProducerTask.cxx @@ -109,12 +109,14 @@ struct femtoDreamProducerTask { Configurable> ConfDCAV0DaughMax{"ConfDCAV0DaughMax", std::vector{1.2f, 1.5f}, "V0 sel: Max. DCA daugh from SV (cm)"}; Configurable> ConfCPAV0Min{"ConfCPAV0Min", std::vector{0.9f, 0.995f}, "V0 sel: Min. CPA"}; + Configurable> ConfV0PtMin{"ConfV0PtMin", std::vector{0.3f, 0.4f, 0.5f}, "V0 sel: Min. Pt"}; + MutableConfigurable V0DecVtxMax{"V0DecVtxMax", 100.f, "V0 sel: Max. distance from Vtx (cm)"}; MutableConfigurable V0TranRadV0Min{"V0TranRadV0Min", 0.2f, "V0 sel: Min. transverse radius (cm)"}; MutableConfigurable V0TranRadV0Max{"V0TranRadV0Max", 100.f, "V0 sel: Max. transverse radius (cm)"}; Configurable> ConfV0DaughTPCnclsMin{"ConfV0DaughTPCnclsMin", std::vector{80.f, 70.f, 60.f}, "V0 Daugh sel: Min. nCls TPC"}; - Configurable> ConfV0DaughDCAMax{"ConfV0DaughDCAMax", std::vector{0.05f, 0.06f}, "V0 Daugh sel: Max. DCA Daugh to PV (cm)"}; + Configurable> ConfV0DaughDCAMin{"ConfV0DaughDCAMin", std::vector{0.05f, 0.06f}, "V0 Daugh sel: Max. DCA Daugh to PV (cm)"}; Configurable> ConfV0DaughPIDnSigmaMax{"ConfV0DaughPIDnSigmaMax", std::vector{5.f, 4.f}, "V0 Daugh sel: Max. PID nSigma TPC"}; /// \todo should we add filter on min value pT/eta of V0 and daughters? @@ -147,15 +149,21 @@ struct femtoDreamProducerTask { v0Cuts.setSelection(ConfDCAV0DaughMax, femtoDreamV0Selection::kDCAV0DaughMax, femtoDreamSelection::kUpperLimit); v0Cuts.setSelection(ConfCPAV0Min, femtoDreamV0Selection::kCPAV0Min, femtoDreamSelection::kLowerLimit); + v0Cuts.setSelection(ConfV0PtMin, femtoDreamV0Selection::kpTV0Min, femtoDreamSelection::kLowerLimit); + v0Cuts.setChildCuts(femtoDreamV0Selection::kPosTrack, ConfTrkCharge, femtoDreamTrackSelection::kSign, femtoDreamSelection::kEqual); + v0Cuts.setChildCuts(femtoDreamV0Selection::kPosTrack, ConfTrkEta, femtoDreamTrackSelection::kEtaMax, femtoDreamSelection::kAbsUpperLimit); v0Cuts.setChildCuts(femtoDreamV0Selection::kPosTrack, ConfV0DaughTPCnclsMin, femtoDreamTrackSelection::kTPCnClsMin, femtoDreamSelection::kLowerLimit); - v0Cuts.setChildCuts(femtoDreamV0Selection::kPosTrack, ConfV0DaughDCAMax, femtoDreamTrackSelection::kDCAzMax, femtoDreamSelection::kAbsUpperLimit); + // v0Cuts.setChildCuts(femtoDreamV0Selection::kPosTrack, ConfV0DaughDCAMin, femtoDreamTrackSelection::kDCAMin, femtoDreamSelection::kAbsLowerLimit); v0Cuts.setChildCuts(femtoDreamV0Selection::kPosTrack, ConfV0DaughPIDnSigmaMax, femtoDreamTrackSelection::kPIDnSigmaMax, femtoDreamSelection::kAbsUpperLimit); v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfTrkCharge, femtoDreamTrackSelection::kSign, femtoDreamSelection::kEqual); + v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfTrkEta, femtoDreamTrackSelection::kEtaMax, femtoDreamSelection::kAbsUpperLimit); v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfV0DaughTPCnclsMin, femtoDreamTrackSelection::kTPCnClsMin, femtoDreamSelection::kLowerLimit); - v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfV0DaughDCAMax, femtoDreamTrackSelection::kDCAzMax, femtoDreamSelection::kAbsUpperLimit); + // v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfV0DaughDCAMin, femtoDreamTrackSelection::kDCAMin, femtoDreamSelection::kAbsLowerLimit); v0Cuts.setChildCuts(femtoDreamV0Selection::kNegTrack, ConfV0DaughPIDnSigmaMax, femtoDreamTrackSelection::kPIDnSigmaMax, femtoDreamSelection::kAbsUpperLimit); - v0Cuts.init(&qaRegistry); + v0Cuts.setChildPIDSpecies(femtoDreamV0Selection::kPosTrack, ConfTrkTPIDspecies); + v0Cuts.setChildPIDSpecies(femtoDreamV0Selection::kNegTrack, ConfTrkTPIDspecies); + v0Cuts.init(&qaRegistry); } void process(aod::FilteredFullCollision const& col, @@ -198,30 +206,43 @@ struct femtoDreamProducerTask { } } + printf("V0 Loop\n"); for (auto& v0 : fullV0s) { + // printf("pT of V0 candidates before selection = %.2f\n", v0.pt()); auto postrack = v0.posTrack_as(); auto negtrack = v0.negTrack_as(); ///\tocheck funnily enough if we apply the filter the sign of Pos and Neg track is always negative + // printf("+++++ In Producer 1\n"); + const auto dcaXYpos = postrack.dcaXY(); + const auto dcaZpos = postrack.dcaZ(); + const auto dcapos = std::sqrt(pow(dcaXYpos, 2.) + pow(dcaZpos, 2.)); + // printf("dcaxy Positive Daughter = %.2f\n", dcaXYpos); + // printf("dcaz Positive Daughter = %.2f\n", dcaZpos); + // printf("dca Positive Daughter = %.2f\n", dcapos); + // printf("isSelectedMinimal V0 = %i\n", v0Cuts.isSelectedMinimal(col, v0, postrack, negtrack)); if (!v0Cuts.isSelectedMinimal(col, v0, postrack, negtrack)) { continue; } - v0Cuts.fillQA(col, v0); ///\todo fill QA also for daughters + // printf("+++++2\n"); + v0Cuts.fillQA(col, v0, postrack, negtrack); ///\todo fill QA also for daughters auto cutContainerV0 = v0Cuts.getCutContainer(col, v0, postrack, negtrack); + // printf("Container in V0\n"); + // printf("cutContainerV0.at(0) = %i\n", cutContainerV0.at(0)); if ((cutContainerV0.at(0) > 0) && (cutContainerV0.at(1) > 0) && (cutContainerV0.at(2) > 0)) { + // printf("pT of V0 candidates after selection = %.2f\n", v0.pt()); + // printf("Inside Cut container!!!!!!\n"); int postrackID = v0.posTrackId(); int rowInPrimaryTrackTablePos = -1; rowInPrimaryTrackTablePos = getRowDaughters(postrackID, tmpIDtrack); childIDs[0] = rowInPrimaryTrackTablePos; childIDs[1] = 0; - ROOT::Math::PxPyPzMVector postrackVec(v0.pxpos(), v0.pypos(), v0.pzpos(), 0.); - ROOT::Math::PxPyPzMVector negtrackVec(v0.pxneg(), v0.pyneg(), v0.pzneg(), 0.); - outputTracks(outputCollision.lastIndex(), postrackVec.Pt(), postrackVec.Eta(), postrackVec.Phi(), aod::femtodreamparticle::ParticleType::kV0Child, cutContainerV0.at(1), cutContainerV0.at(2), 0., childIDs); + outputTracks(outputCollision.lastIndex(), v0.positivept(), v0.positiveeta(), v0.positivephi(), aod::femtodreamparticle::ParticleType::kV0Child, cutContainerV0.at(1), cutContainerV0.at(2), 0., childIDs); const int rowOfPosTrack = outputTracks.lastIndex(); int negtrackID = v0.negTrackId(); int rowInPrimaryTrackTableNeg = -1; rowInPrimaryTrackTableNeg = getRowDaughters(negtrackID, tmpIDtrack); childIDs[0] = 0; childIDs[1] = rowInPrimaryTrackTableNeg; - outputTracks(outputCollision.lastIndex(), negtrackVec.Pt(), negtrackVec.Eta(), negtrackVec.Phi(), aod::femtodreamparticle::ParticleType::kV0Child, cutContainerV0.at(3), cutContainerV0.at(4), 0., childIDs); + outputTracks(outputCollision.lastIndex(), v0.negativept(), v0.negativeeta(), v0.negativephi(), aod::femtodreamparticle::ParticleType::kV0Child, cutContainerV0.at(3), cutContainerV0.at(4), 0., childIDs); const int rowOfNegTrack = outputTracks.lastIndex(); int indexChildID[2] = {rowOfPosTrack, rowOfNegTrack}; outputTracks(outputCollision.lastIndex(), v0.pt(), v0.eta(), v0.phi(), aod::femtodreamparticle::ParticleType::kV0, cutContainerV0.at(0), 0, v0.v0cosPA(col.posX(), col.posY(), col.posZ()), indexChildID); diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h index 737abc6db18c9..d9c7c993064b6 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamTrackSelection.h @@ -55,7 +55,7 @@ class FemtoDreamTrackSelection : public FemtoDreamObjectSelection - void init(HistogramRegistry* registry); + void init(HistogramRegistry* registry, const std::string WhichDaugh = ""); /// Passes the species to the task for which PID needs to be stored /// \tparam T Data type of the configurable passed to the functions @@ -106,7 +106,7 @@ class FemtoDreamTrackSelection : public FemtoDreamObjectSelection - void fillQA(T const& track); + void fillQA(T const& track, const std::string WhichDaugh = ""); /// Helper function to obtain the name of a given selection criterion for consistent naming of the configurables /// \param iSel Track selection variable to be examined @@ -159,11 +159,18 @@ class FemtoDreamTrackSelection : public FemtoDreamObjectSelection -void FemtoDreamTrackSelection::init(HistogramRegistry* registry) +void FemtoDreamTrackSelection::init(HistogramRegistry* registry, const std::string WhichDaugh) { if (registry) { mHistogramRegistry = registry; - fillSelectionHistogram(); + std::string folderName; + if (WhichDaugh.empty()) { + fillSelectionHistogram(); + folderName = static_cast(o2::aod::femtodreamparticle::ParticleTypeName[part]); + } else { + printf("Are you working on Daughters? Not filling the selection criteria histogram!"); + folderName = static_cast(o2::aod::femtodreamparticle::ParticleTypeName[part]) + "/" + WhichDaugh; + } /// \todo this should be an automatic check in the parent class int nSelections = getNSelections() + mPIDspecies.size() * (getNSelections(femtoDreamTrackSelection::kPIDnSigmaMax) - 1); @@ -171,7 +178,6 @@ void FemtoDreamTrackSelection::init(HistogramRegistry* registry) LOG(FATAL) << "FemtoDreamTrackCuts: Number of selections to large for your container - quitting!"; } - std::string folderName = static_cast(o2::aod::femtodreamparticle::ParticleTypeName[part]); mHistogramRegistry->add((folderName + "/pThist").c_str(), "; #it{p}_{T} (GeV/#it{c}); Entries", kTH1F, {{1000, 0, 10}}); mHistogramRegistry->add((folderName + "/etahist").c_str(), "; #eta; Entries", kTH1F, {{1000, -1, 1}}); mHistogramRegistry->add((folderName + "/phihist").c_str(), "; #phi; Entries", kTH1F, {{1000, 0, 2. * M_PI}}); @@ -292,36 +298,56 @@ bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track) const static float dcaMin = getMinimalSelection(femtoDreamTrackSelection::kDCAMin, femtoDreamSelection::kAbsLowerLimit); const static float nSigmaPIDMax = getMinimalSelection(femtoDreamTrackSelection::kPIDnSigmaMax, femtoDreamSelection::kAbsUpperLimit); + // printf("nPtMinSel > 0 ? %i --- pT < pTMin(%.2f) ? %.2f\n", nPtMinSel, pTMin, pT); if (nPtMinSel > 0 && pT < pTMin) { + // printf("nPtMinSel false\n"); return false; } if (nPtMaxSel > 0 && pT > pTMax) { + // printf("nPtMaxSel false\n"); return false; } + // printf("nEtaSel > 0 ? %i --- eta > etaMax(%.2f) ? %.2f\n", nEtaSel, etaMax, std::abs(eta)); if (nEtaSel > 0 && std::abs(eta) > etaMax) { + // printf("nEtaSel false\n"); return false; } + // printf("nTPCnMinSel > 0 ? %i --- tpcNClsF < nClsMin(%.2f) ? %.2f\n", nTPCnMinSel, nClsMin, tpcNClsF); if (nTPCnMinSel > 0 && tpcNClsF < nClsMin) { + // printf("nTPCnMinSel false\n"); return false; } + // printf("nTPCfMinSel > 0 ? %i --- tpcRClsC < fClsMin(%.2f) ? %.2f\n", nTPCfMinSel, fClsMin, tpcRClsC); if (nTPCfMinSel > 0 && tpcRClsC < fClsMin) { + // printf("nTPCfMinSel false\n"); return false; } + // printf("nTPCcMinSel > 0 ? %i --- tpcNClsC < cTPCMin(%.2f) ? %.2f\n", nTPCcMinSel, cTPCMin, tpcNClsC); if (nTPCcMinSel > 0 && tpcNClsC < cTPCMin) { + // printf("nTPCcMinSel false\n"); return false; } + // printf("nTPCsMaxSel > 0 ? %i --- tpcNClsS > sTPCMax(%.2f) ? %.2f\n", nTPCsMaxSel, sTPCMax, tpcNClsS); if (nTPCsMaxSel > 0 && tpcNClsS > sTPCMax) { + // printf("nTPCsMaxSel false\n"); return false; } + // printf("nDCAxyMaxSel > 0 ? %i --- std::abs(dcaXY) > dcaXYMax(%.2f) ? %.2f\n", nDCAxyMaxSel, dcaXYMax, std::abs(dcaXY)); if (nDCAxyMaxSel > 0 && std::abs(dcaXY) > dcaXYMax) { + // printf("nDCAxyMaxSel false\n"); return false; } + // printf("nDCAzMaxSel > 0 ? %i --- std::abs(dcaZ) > dcaZMax(%.2f) ? %.2f\n", nDCAzMaxSel, dcaZMax, std::abs(dcaZ)); if (nDCAzMaxSel > 0 && std::abs(dcaZ) > dcaZMax) { + // printf("nDCAzMaxSel false\n"); return false; } + // printf("nDCAMinSel > 0 ? %i --- std::abs(dca) < dcaMin(%.2f) ? %.2f\n", nDCAMinSel, dcaMin, std::abs(dca)); if (nDCAMinSel > 0 && std::abs(dca) < dcaMin) { + // printf("nDCAMinSel false\n"); return false; } + // printf("nPIDnSigmaSel > 0 ? %i\n", nPIDnSigmaSel); if (nPIDnSigmaSel > 0) { bool isFulfilled = false; for (size_t i = 0; i < pidTPC.size(); ++i) { @@ -329,10 +355,12 @@ bool FemtoDreamTrackSelection::isSelectedMinimal(T const& track) auto pidTOFVal = pidTOF.at(i); auto pidComb = std::sqrt(pidTPCVal * pidTPCVal + pidTOFVal * pidTOFVal); if (std::abs(pidTPCVal) < nSigmaPIDMax || pidComb < nSigmaPIDMax) { + // printf("isFulfilled true\n"); isFulfilled = true; } } if (!isFulfilled) { + // printf("isFulfilled ? %i\n", isFulfilled); return isFulfilled; } } @@ -420,7 +448,7 @@ std::array FemtoDreamTrackSelection::getCutContainer(T cons } template -void FemtoDreamTrackSelection::fillQA(T const& track) +void FemtoDreamTrackSelection::fillQA(T const& track, const std::string WhichDaugh) { if (mHistogramRegistry) { mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/pThist"), track.pt()); diff --git a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamV0Selection.h b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamV0Selection.h index cccc9ca89baa3..6c5bea0cfc036 100644 --- a/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamV0Selection.h +++ b/Analysis/Tasks/PWGCF/FemtoDream/include/FemtoDream/FemtoDreamV0Selection.h @@ -31,8 +31,9 @@ namespace o2::analysis::femtoDream { namespace femtoDreamV0Selection { -enum V0Sel { kpTV0Min, - kpTV0Max, +/// The different selections this task is capable of doing +enum V0Sel { kpTV0Min, //!Min. p_T (GeV/c) + kpTV0Max, //!Max. p_T (GeV/c) kDCAV0DaughMax, kCPAV0Min, kTranRadV0Min, @@ -48,7 +49,7 @@ class FemtoDreamV0Selection : public FemtoDreamObjectSelection + template void init(HistogramRegistry* registry); template @@ -58,8 +59,8 @@ class FemtoDreamV0Selection : public FemtoDreamObjectSelection std::array getCutContainer(C const& col, V const& v0, T const& posTrack, T const& negTrack); - template - void fillQA(C const& col, V const& v0); + template + void fillQA(C const& col, V const& v0, T const& posTrack, T const& negTrack); template void setChildCuts(femtoDreamV0Selection::ChildTrackType child, T1 selVal, T2 selVar, femtoDreamSelection::SelectionType selType) @@ -70,35 +71,50 @@ class FemtoDreamV0Selection : public FemtoDreamObjectSelection + void setChildPIDSpecies(femtoDreamV0Selection::ChildTrackType child, T& pids) + { + if (child == femtoDreamV0Selection::kPosTrack) { + PosDaughTrack.setPIDSpecies(pids); + } else if (child == femtoDreamV0Selection::kNegTrack) { + NegDaughTrack.setPIDSpecies(pids); + } + } private: FemtoDreamTrackSelection PosDaughTrack; FemtoDreamTrackSelection NegDaughTrack; + }; // namespace femtoDream -template +template void FemtoDreamV0Selection::init(HistogramRegistry* registry) { if (registry) { mHistogramRegistry = registry; fillSelectionHistogram(); + fillSelectionHistogram(); /// \todo this should be an automatic check in the parent class, and the return type should be templated int nSelections = getNSelections(); if (8 * sizeof(cutContainerType) < nSelections) { - LOGF(error, "Number of selections to large for your container - quitting!"); + LOG(FATAL) << "FemtoDreamV0Cuts: Number of selections to large for your container - quitting!"; } + std::string folderName = static_cast(o2::aod::femtodreamparticle::ParticleTypeName[part]); /// \todo initialize histograms for children tracks of v0s - mHistogramRegistry->add("V0Cuts/pThist", "; #it{p}_{T} (GeV/#it{c}); Entries", kTH1F, {{1000, 0, 10}}); - mHistogramRegistry->add("V0Cuts/etahist", "; #eta; Entries", kTH1F, {{1000, -1, 1}}); - mHistogramRegistry->add("V0Cuts/phihist", "; #phi; Entries", kTH1F, {{1000, 0, 2. * M_PI}}); - mHistogramRegistry->add("V0Cuts/dcaDauToVtx", "; DCADaug_{Vtx} (cm); Entries", kTH1F, {{1000, 0, 10}}); - mHistogramRegistry->add("V0Cuts/transRadius", "; #it{r}_{xy} (cm); Entries", kTH1F, {{1500, 0, 150}}); - mHistogramRegistry->add("V0Cuts/decayVtxXPV", "; #it{iVtx}_{x} (cm); Entries", kTH1F, {{2000, 0, 200}}); - mHistogramRegistry->add("V0Cuts/decayVtxYPV", "; #it{iVtx}_{y} (cm)); Entries", kTH1F, {{2000, 0, 200}}); - mHistogramRegistry->add("V0Cuts/decayVtxZPV", "; #it{iVtx}_{z} (cm); Entries", kTH1F, {{2000, 0, 200}}); - mHistogramRegistry->add("V0Cuts/cpa", "; #it{cos(#alpha)}; Entries", kTH1F, {{1000, 0.9, 1.}}); - mHistogramRegistry->add("V0Cuts/cpapTBins", "; #it{p}_{T} (GeV/#it{c}); #it{cos(#alpha)}", kTH2F, {{8, 0.3, 4.3}, {1000, 0.9, 1.}}); + mHistogramRegistry->add((folderName + "/pThist").c_str(), "; #it{p}_{T} (GeV/#it{c}); Entries", kTH1F, {{1000, 0, 10}}); + mHistogramRegistry->add((folderName + "/etahist").c_str(), "; #eta; Entries", kTH1F, {{1000, -1, 1}}); + mHistogramRegistry->add((folderName + "/phihist").c_str(), "; #phi; Entries", kTH1F, {{1000, 0, 2. * M_PI}}); + mHistogramRegistry->add((folderName + "/dcaDauToVtx").c_str(), "; DCADaug_{Vtx} (cm); Entries", kTH1F, {{1000, 0, 10}}); + mHistogramRegistry->add((folderName + "/transRadius").c_str(), "; #it{r}_{xy} (cm); Entries", kTH1F, {{1500, 0, 150}}); + mHistogramRegistry->add((folderName + "/decayVtxXPV").c_str(), "; #it{iVtx}_{x} (cm); Entries", kTH1F, {{2000, 0, 200}}); + mHistogramRegistry->add((folderName + "/decayVtxYPV").c_str(), "; #it{iVtx}_{y} (cm)); Entries", kTH1F, {{2000, 0, 200}}); + mHistogramRegistry->add((folderName + "/decayVtxZPV").c_str(), "; #it{iVtx}_{z} (cm); Entries", kTH1F, {{2000, 0, 200}}); + mHistogramRegistry->add((folderName + "/cpa").c_str(), "; #it{cos(#alpha)}; Entries", kTH1F, {{1000, 0.9, 1.}}); + mHistogramRegistry->add((folderName + "/cpapTBins").c_str(), "; #it{p}_{T} (GeV/#it{c}); #it{cos(#alpha)}", kTH2F, {{8, 0.3, 4.3}, {1000, 0.9, 1.}}); + + PosDaughTrack.init(mHistogramRegistry, "Pos"); + NegDaughTrack.init(mHistogramRegistry, "Neg"); } } @@ -135,33 +151,51 @@ bool FemtoDreamV0Selection::isSelectedMinimal(C const& col, V const& v0, T const const static float TranRadV0Max = getMinimalSelection(femtoDreamV0Selection::kTranRadV0Max, femtoDreamSelection::kUpperLimit); const static float DecVtxMax = getMinimalSelection(femtoDreamV0Selection::kDecVtxMax, femtoDreamSelection::kAbsUpperLimit); + // printf("nPtV0MinSel <0 ? %i --- pT < pTV0Min(%.2f) ? %.2f\n", nPtV0MinSel, pTV0Min, pT); if (nPtV0MinSel > 0 && pT < pTV0Min) { return false; } + // printf("nPtV0MaxSel <0 ? %i --- pT < pTV0Max(%.2f) ? %.2f\n", nPtV0MaxSel, pTV0Max, pT); if (nPtV0MaxSel > 0 && pT > pTV0Max) { + // printf("nPtV0MaxSel false\n"); return false; } if (nDCAV0DaughMax > 0 && dcaDaughv0 > DCAV0DaughMax) { + // printf("nDCAV0DaughMax false\n"); return false; } if (nCPAV0Min > 0 && cpav0 < CPAV0Min) { + // printf("nCPAV0Min false\n"); return false; } if (nTranRadV0Min > 0 && tranRad < TranRadV0Min) { + // printf("nTranRadV0Min false\n"); return false; } if (nTranRadV0Max > 0 && tranRad > TranRadV0Max) { + // printf("nTranRadV0Max false\n"); return false; } for (int i = 0; i < decVtx.size(); i++) { if (nDecVtxMax > 0 && decVtx.at(i) > DecVtxMax) { + // printf("nDecVtxMax false\n"); return false; } } + // printf("Entering Positive daughter\n"); + const auto dcaXYpos = posTrack.dcaXY(); + const auto dcaZpos = posTrack.dcaZ(); + const auto dcapos = std::sqrt(pow(dcaXYpos, 2.) + pow(dcaZpos, 2.)); + // printf("dcaxy Positive Daughter = %.2f\n", dcaXYpos); + // printf("dcaz Positive Daughter = %.2f\n", dcaZpos); + // printf("dca Positive Daughter = %.2f\n",dcapos); + if (!PosDaughTrack.isSelectedMinimal(posTrack)) { + // printf("PosDaughTrack false\n"); return false; } if (!NegDaughTrack.isSelectedMinimal(negTrack)) { + // printf("NegDaughTrack false\n"); return false; } return true; @@ -215,20 +249,20 @@ std::array FemtoDreamV0Selection::getCutContainer(C const& return {{output, outputPosTrack.at(0), outputPosTrack.at(1), outputNegTrack.at(0), outputNegTrack.at(1)}}; } -template -void FemtoDreamV0Selection::fillQA(C const& col, V const& v0) +template +void FemtoDreamV0Selection::fillQA(C const& col, V const& v0, T const& posTrack, T const& negTrack) { if (mHistogramRegistry) { - mHistogramRegistry->fill(HIST("V0Cuts/pThist"), v0.pt()); - mHistogramRegistry->fill(HIST("V0Cuts/etahist"), v0.eta()); - mHistogramRegistry->fill(HIST("V0Cuts/phihist"), v0.phi()); - mHistogramRegistry->fill(HIST("V0Cuts/dcaDauToVtx"), v0.dcaV0daughters()); - mHistogramRegistry->fill(HIST("V0Cuts/transRadius"), v0.v0radius()); - mHistogramRegistry->fill(HIST("V0Cuts/decayVtxXPV"), v0.x()); - mHistogramRegistry->fill(HIST("V0Cuts/decayVtxYPV"), v0.y()); - mHistogramRegistry->fill(HIST("V0Cuts/decayVtxZPV"), v0.z()); - mHistogramRegistry->fill(HIST("V0Cuts/cpa"), v0.v0cosPA(col.posX(), col.posY(), col.posZ())); - mHistogramRegistry->fill(HIST("V0Cuts/cpapTBins"), v0.pt(), v0.v0cosPA(col.posX(), col.posY(), col.posZ())); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/pThist"), v0.pt()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/etahist"), v0.eta()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/phihist"), v0.phi()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/dcaDauToVtx"), v0.dcaV0daughters()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/transRadius"), v0.v0radius()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/decayVtxXPV"), v0.x()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/decayVtxYPV"), v0.y()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/decayVtxZPV"), v0.z()); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/cpa"), v0.v0cosPA(col.posX(), col.posY(), col.posZ())); + mHistogramRegistry->fill(HIST(o2::aod::femtodreamparticle::ParticleTypeName[part]) + HIST("/cpapTBins"), v0.pt(), v0.v0cosPA(col.posX(), col.posY(), col.posZ())); } }